{"latest_posts":[{"id":2017752,"name":"Jakke Flemming","username":"Jagster","avatar_template":"/user_avatar/meta.discourse.org/jagster/{size}/192154_2.png","created_at":"2026-08-02T09:12:55.669Z","cooked":"<p>Só não consigo encontrar ou lembrar como fiz isso antes…</p>\n<p>A configuração de categoria <code>Fechar tópico automaticamente após:</code>: como desativá-la? Agora ela só permite alterar intervalos de tempo.</p>","post_number":1,"post_type":1,"posts_count":1,"updated_at":"2026-08-02T09:12:55.669Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":4,"readers_count":3,"score":0,"yours":false,"topic_id":409075,"topic_slug":"disabling-autoclose-topics","topic_title":"Disabling autoclose topics?","topic_html_title":"Disabling autoclose topics?","category_id":6,"display_username":"Jakke Flemming","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","bookmarked":false,"raw":"I just can’t find or recall how I did this earlier…\n\nThe category setting `Auto-close topic after:`: how do I disable it? Now it allows change time ranges only.","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":83631,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I just can’t find or recall how I did this earlier… \nThe category setting Auto-close topic after:: how do I disable it? Now it allows change time ranges only.","truncated":true,"post_url":"/t/disabling-autoclose-topics/409075/1","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"calendar_details":[],"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null,"can_vote":false},{"id":2017747,"name":"Coin-coin le Canapin","username":"Canapin","avatar_template":"/user_avatar/meta.discourse.org/canapin/{size}/119591_2.png","created_at":"2026-08-02T08:29:56.924Z","cooked":"<p>E quanto a essas informações? Todas elas. Onde eu encontro? <img src=\"https://emoji.discourse-cdn.com/twitter/thinking.png?v=15\" title=\":thinking:\" class=\"emoji\" alt=\":thinking:\" loading=\"lazy\" width=\"20\" height=\"20\"><br>\n<div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/b/f/c/bfc44b8b121fb6810948809513d8f7c381a8e248.jpeg\" data-download-href=\"/uploads/short-url/rmrKWtCkY1tbJ39kt3LCcplSKxi.jpeg?dl=1\" title=\"Screenshot_20260802_102644_Chrome\"><img src=\"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/b/f/c/bfc44b8b121fb6810948809513d8f7c381a8e248_2_230x500.jpeg\" alt=\"Screenshot_20260802_102644_Chrome\" data-base62-sha1=\"rmrKWtCkY1tbJ39kt3LCcplSKxi\" width=\"230\" height=\"500\" srcset=\"https://global.discourse-cdn.com/meta/optimized/4X/b/f/c/bfc44b8b121fb6810948809513d8f7c381a8e248_2_230x500.jpeg, https://global.discourse-cdn.com/meta/optimized/4X/b/f/c/bfc44b8b121fb6810948809513d8f7c381a8e248_2_345x750.jpeg 1.5x, https://global.discourse-cdn.com/meta/optimized/4X/b/f/c/bfc44b8b121fb6810948809513d8f7c381a8e248_2_460x1000.jpeg 2x\" data-dominant-color=\"2B2C2C\" aria-description=\"Captura de tela de um aplicativo móvel exibindo estatísticas de usuários por tipo e nível de confiança, além de informações sobre backups e arquivos enviados. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">Screenshot_20260802_102644_Chrome</span><span class=\"informations\">1080×2340 189 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>","post_number":6,"post_type":1,"posts_count":6,"updated_at":"2026-08-02T08:29:56.924Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":8,"readers_count":7,"score":16.2,"yours":false,"topic_id":407416,"topic_slug":"where-did-the-version-information-go","topic_title":"Where did the version information go?","topic_html_title":"Where did the version information go?","category_id":6,"display_username":"Coin-coin le Canapin","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Solution Institution","title_is_group":false,"bookmarked":false,"raw":"What about this info? All of it. Where do I find it? :thinking: \n![Screenshot_20260802_102644_Chrome|230x500](upload://rmrKWtCkY1tbJ39kt3LCcplSKxi.jpeg)","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":35474,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"What about this info? All of it. Where do I find it? :thinking: \n <a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/b/f/c/bfc44b8b121fb6810948809513d8f7c381a8e248.jpeg\" data-download-href=\"/uploads/short-url/rmrKWtCkY1tbJ39kt3LCcplSKxi.jpeg?dl=1\" title=\"Screenshot_20260802_102644_Chrome\">[Screenshot_20260802_102644_Chrome]</a>","truncated":true,"post_url":"/t/where-did-the-version-information-go/407416/6","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017746,"name":"Kjell Morgenstern","username":"Kjell","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/k/5daacb/{size}.png","created_at":"2026-08-02T08:14:37.099Z","cooked":"<p>O novo painel agora está limitado a estatísticas de uso? Como o painel é a página inicial ao acessar a área de administração, eu preferiria ter muitas mais opções de widgets para escolher para o painel. Nenhuma das opções de visualização atuais é interessante para mim no dia a dia. Acho que há mais usuários como eu que preferem que o painel seja mais técnico e menos focado em marketing?</p>","post_number":5,"post_type":1,"posts_count":6,"updated_at":"2026-08-02T08:14:37.099Z","reply_count":0,"reply_to_post_number":2,"quote_count":0,"incoming_link_count":1,"reads":10,"readers_count":9,"score":36.6,"yours":false,"topic_id":407416,"topic_slug":"where-did-the-version-information-go","topic_title":"Where did the version information go?","topic_html_title":"Where did the version information go?","category_id":6,"display_username":"Kjell Morgenstern","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":null,"reply_to_user":{"id":95552,"username":"Moin","name":"","avatar_template":"/user_avatar/meta.discourse.org/moin/{size}/554653_2.png"},"bookmarked":false,"raw":"The new dashboard is now limited to usage statistics? Since the dashboard is the landing page when going to the admin area, I'd prefer to have many more partials to select from for the dashboard. None of the current views options is interesting to me on a daily basis. I guess there are more users like me that prefer the dashboard to be more technical, less marketing?","actions_summary":[{"id":2,"count":2}],"moderator":false,"admin":false,"staff":false,"user_id":72855,"hidden":false,"trust_level":1,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"The new dashboard is now limited to usage statistics? Since the dashboard is the landing page when going to the admin area, I’d prefer to have many more partials to select from for the dashboard. None of the current views options is interesting to me on a daily basis. I guess there are more users li&hellip;","truncated":true,"post_url":"/t/where-did-the-version-information-go/407416/5","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":2}],"current_user_reaction":null,"reaction_users_count":2,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017745,"name":"Jakke Flemming","username":"Jagster","avatar_template":"/user_avatar/meta.discourse.org/jagster/{size}/192154_2.png","created_at":"2026-08-02T07:32:41.064Z","cooked":"<p>Não entendo nada de programação nem do mundo do desenvolvimento, além de ter feito uma coisa básica de <em>hello world</em> com Visual Basic há muito, muito tempo. Mas consigo fazer algumas coisas, porque sei administrar melhor meus servidores WordPress e Mastodon/Pixelfed, e de algum jeito também meu Discourse. Além disso, por aí existe aquela tal coisa chamada IA (que não é tão fácil para um iniciante quanto a propaganda faz parecer).</p>\n<p>Não sei se isso é de alguma forma possível com o Discourse por causa do Docker, mas no mundo comum de Nginx-Varnish-WordPress, eu construí um sistema onde um servidor Plesk recebe informações sobre erros 50x e exibe uma página de erro. Na verdade, tenho três configurações: o Nginx da frente exibe o conteúdo de um snapshot gerado se o Varnish cair, o Varnish passa a usar o snapshot para conteúdo não em cache quando o backend relacionado ao WordPress cai, e a terceira é uma página de erro caso o Nginx da frente não responda.</p>\n<p>As coisas do Varnish não são possíveis para o Discourse, mas não vejo nenhum motivo pelo qual não se poderia construir essa teia de segurança no mundo do Docker também, onde qualquer erro 50x exibiria uma página de erro.</p>\n<p>Esse poderia ser um sistema muito propenso a erros, no entanto. E não faço a mínima ideia do que aconteceria se houvesse mais do que uma mão cheia de usuários.</p>\n<p>Existe também a resposta mais óbvia, é claro: usar um Nginx antes do Discourse. Eu usei isso antes de migrar para a configuração de 2 containers.</p>","post_number":19,"post_type":1,"posts_count":19,"updated_at":"2026-08-02T07:33:50.496Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":8,"readers_count":7,"score":1.4,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":"Jakke Flemming","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","bookmarked":false,"raw":"I do not know coding and dev-world at all more than I did one *hello world* thing with Visual Basic long long time ago. But I can do some things, because I know better how to admin my WordPress and Mastodon/Pixelfed servers, and somehow my Discourse. Plus out there is thingy named AI (that isn’t such easy for a novice than is advertized).\n\nI don’t know if this is even remotely possible with Discourse because of Docker, but in ordinary Nginx-Varnish-WordPress world I build a system where a plesk server gets information of 50x error and shows an error page. Actually I have three setups, where frontend nginx shows generated snapshot content if Varnish is down, Varnish starts use snapshot for uncached content when WordPress-related backend is down and third one is error page if frontend nginx doesn’t answer.\n\nVarnish things aren’t possible for Discourse, but I can’t see any reasons why one couldn’t build such spiderweb into Docker-world too where any 50x error would show an errorpage.\n\nThat could be very error prone system though. And I have no idea what so ever what would happend if there is more than handful users.\n\nThere is the most obvious answer too, of course: has i.e. Nginx before Discourse. I used that before I moved on to 2-container.","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":83631,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I do not know coding and dev-world at all more than I did one hello world thing with Visual Basic long long time ago. But I can do some things, because I know better how to admin my WordPress and Mastodon/Pixelfed servers, and somehow my Discourse. Plus out there is thingy named AI (that isn’t such &hellip;","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/19","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017739,"name":"system","username":"system","avatar_template":"/user_avatar/meta.discourse.org/system/{size}/443519_2.png","created_at":"2026-08-02T05:01:13.811Z","cooked":"<h1><a name=\"p-2017739-today-on-metadiscourseorg-1\" class=\"anchor\" href=\"#p-2017739-today-on-metadiscourseorg-1\" aria-label=\"Heading link\"></a>Today on <a href=\"http://meta.discourse.org\">meta.discourse.org</a>…</h1>\n<h2><a name=\"p-2017739-key-stats-2\" class=\"anchor\" href=\"#p-2017739-key-stats-2\" aria-label=\"Heading link\"></a>Key Stats</h2>\n<ul>\n<li><strong>Total new posts:</strong> 99</li>\n<li><strong>Total new topics:</strong> 29</li>\n<li><strong>Top users by likes &amp; posts:</strong>\n<ul>\n<li><a class=\"mention\" href=\"/u/lilly\">Lilly</a> (16 likes, 6 posts)</li>\n<li><a class=\"mention\" href=\"/u/moin\">Moin</a> (11 likes, 11 posts)</li>\n<li><a class=\"mention\" href=\"/u/canapin\">Canapin</a> (11 likes, 4 posts)</li>\n<li><a class=\"mention\" href=\"/u/merefield\">Merefield</a> (9 likes, 6 posts)</li>\n<li><a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a> (8 likes, 5 posts)</li>\n</ul>\n</li>\n</ul>\n<h2><a name=\"p-2017739-interesting-topics-3\" class=\"anchor\" href=\"#p-2017739-interesting-topics-3\" aria-label=\"Heading link\"></a>Interesting Topics</h2>\n<h3><a name=\"p-2017739-self-hosting-4\" class=\"anchor\" href=\"#p-2017739-self-hosting-4\" aria-label=\"Heading link\"></a><span class=\"hashtag-raw\">#Self-hosting</span></h3>\n<ul>\n<li>\n<p><strong>Any cheaper alternatives to Hetzner?</strong> – <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> kicked off a hunt for budget VPS options after Hetzner raised prices. <a class=\"mention\" href=\"/u/canapin\">Canapin</a> clarified the difference between CX and CPX servers, while <a class=\"mention\" href=\"/u/lilly\">Lilly</a> shared a <a href=\"https://meta.discourse.org/t/any-cheaper-alternatives-to-hetzner/409037/8?silent=true\">bash script</a> that monitors Hetzner stock and posts alerts to Discourse. Other members suggested Netcup and <a href=\"http://advinservers.com\">advinservers.com</a>. <a href=\"https://meta.discourse.org/t/any-cheaper-alternatives-to-hetzner/409037?silent=true\">read more</a></p>\n</li>\n<li>\n<p><strong>Maintenance page workaround – can this be done?</strong> – <a class=\"mention\" href=\"/u/lilly\">Lilly</a> provided a detailed guide on using a <a href=\"https://meta.discourse.org/t/maintenance-page-workaround-can-this-be-done/408967/6?silent=true\">Cloudflare Worker</a> to display a custom maintenance page during container swaps. <a class=\"mention\" href=\"/u/merefield\">Merefield</a> debated its usefulness and stressed the importance of adequate server specs, while <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> weighed the costs and benefits. <a href=\"https://meta.discourse.org/t/maintenance-page-workaround-can-this-be-done/408967?silent=true\">read more</a></p>\n</li>\n</ul>\n<h3><a name=\"p-2017739-ux-5\" class=\"anchor\" href=\"#p-2017739-ux-5\" aria-label=\"Heading link\"></a><a class=\"hashtag-cooked\" href=\"/tag/ux/835\" data-type=\"tag\" data-slug=\"ux\" data-id=\"835\" data-style-type=\"icon\" data-icon=\"tag\"><span class=\"hashtag-icon-placeholder\"><svg class=\"fa d-icon d-icon-square-full svg-icon svg-node\"><use href=\"#square-full\"></use></svg></span><span>ux</span></a></h3>\n<ul>\n<li>\n<p><strong>“Start Updating” button lacks a button styling</strong> – <a class=\"mention\" href=\"/u/canapin\">Canapin</a> noted the button doesn’t look interactive. <a class=\"mention\" href=\"/u/moin\">Moin</a> confirmed it’s a regression from the “modernize Foundation” change and showed a <a href=\"https://meta.discourse.org/t/start-updating-button-lacks-a-button-styling/409034/3?silent=true\">screenshot of the previous style</a>. <a href=\"https://meta.discourse.org/t/start-updating-button-lacks-a-button-styling/409034?silent=true\">read more</a></p>\n</li>\n<li>\n<p><strong>About nesting subcategories on dropdown</strong> – <a class=\"mention\" href=\"/u/satonotdead\">Satonotdead</a> proposed displaying subcategories nested in the main dropdown to reduce noise for new users. <a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a> agreed it’s worth exploring and suggested possible checkbox interactions. <a href=\"https://meta.discourse.org/t/about-nesting-subcategories-on-dropdown/409046?silent=true\">read more</a></p>\n</li>\n<li>\n<p><strong>Remove the pure white on text</strong> – <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> shared frustration with the brightness of text in dark themes. <a class=\"mention\" href=\"/u/moin\">Moin</a> suggested trying the “dark” palette, and <a class=\"mention\" href=\"/u/awesomerobot\">Awesomerobot</a> chimed in with color palette options. <a href=\"https://meta.discourse.org/t/remove-the-pure-white-on-text/408966?silent=true\">read more</a></p>\n</li>\n</ul>\n<h3><a name=\"p-2017739-development-6\" class=\"anchor\" href=\"#p-2017739-development-6\" aria-label=\"Heading link\"></a><a class=\"hashtag-cooked\" href=\"/tag/development/278\" data-type=\"tag\" data-slug=\"development\" data-id=\"278\" data-style-type=\"icon\" data-icon=\"tag\"><span class=\"hashtag-icon-placeholder\"><svg class=\"fa d-icon d-icon-square-full svg-icon svg-node\"><use href=\"#square-full\"></use></svg></span><span>development</span></a></h3>\n<ul>\n<li>\n<p><strong>Can someone clarify the ‘posts read’ TL3 promotion logic?</strong> – <a class=\"mention\" href=\"/u/natedhaliwal\">NateDhaliwal</a> asked about the formula in <code>TrustLevel3Requirements</code>. <a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a> explained that <code>tl3_requires_posts_read</code> is a percentage, capped by <code>tl3_requires_posts_read_cap</code>. <a href=\"https://meta.discourse.org/t/can-someone-clarify-the-posts-read-tl3-promotion-logic/409057?silent=true\">read more</a></p>\n</li>\n<li>\n<p><strong>New core features system specs in plugins and themes</strong> – <a class=\"mention\" href=\"/u/gormus\">Gormus</a> shared a code snippet showing how to set <code>SiteSetting.theme_authorized_extensions</code> within RSpec to enable core feature testing. <a href=\"https://meta.discourse.org/t/new-core-features-system-specs-in-plugins-and-themes/361381?silent=true\">read more</a></p>\n</li>\n</ul>\n<h3><a name=\"p-2017739-support-7\" class=\"anchor\" href=\"#p-2017739-support-7\" aria-label=\"Heading link\"></a><a class=\"hashtag-cooked\" href=\"/c/support/6\" data-type=\"category\" data-slug=\"support\" data-id=\"6\" data-style-type=\"icon\" data-icon=\"circle-question\"><span class=\"hashtag-icon-placeholder\"><svg class=\"fa d-icon d-icon-square-full svg-icon svg-node\"><use href=\"#square-full\"></use></svg></span><span>Support</span></a></h3>\n<ul>\n<li>\n<p><strong>Has something changed with pasting html into the composer?</strong> – <a class=\"mention\" href=\"/u/one1\">One1</a> reported unwanted <code>lang</code> spans appearing when pasting HTML. <a class=\"mention\" href=\"/u/moin\">Moin</a> pointed to a <a href=\"https://github.com/discourse/discourse/pull/42163\">pull request</a> that fixes the issue. <a href=\"https://meta.discourse.org/t/has-something-changed-with-pasting-html-into-the-composer/407661?silent=true\">read more</a></p>\n</li>\n<li>\n<p><strong>Broken Wizards</strong> – <a class=\"mention\" href=\"/u/lebron\">Lebron</a> came back from a long absence and described that the Custom Wizard plugin works for admins but not regular users after an upgrade. <a class=\"mention\" href=\"/u/natedhaliwal\">NateDhaliwal</a> suggested posting in the plugin’s topic for better visibility. <a href=\"https://meta.discourse.org/t/broken-wizards/409036?silent=true\">read more</a></p>\n</li>\n<li>\n<p><strong>Mobile Firefox scrolling to bottom of topic on screen lock</strong> – <a class=\"mention\" href=\"/u/riking\">Riking</a> identified the culprit: the <code>better-osm-org</code> user script, not a core bug, after testing in <a href=\"https://meta.discourse.org/t/53504?silent=true\">safe mode</a> and on Meta. <a href=\"https://meta.discourse.org/t/mobile-firefox-scrolling-to-bottom-of-topic-on-screen-lock/409013?silent=true\">read more</a></p>\n</li>\n<li>\n<p><strong>Automatic deletion of old and closed topics?</strong> – <a class=\"mention\" href=\"/u/tealk\">Tealk</a> shared a <a href=\"https://git.rollenspiel.monster/Tealk/discourse-topic-pruner\">topic‑pruning script</a> that deletes posts via the API, with <a class=\"mention\" href=\"/u/moin\">Moin</a> asking about the criteria used. <a href=\"https://meta.discourse.org/t/automatic-deletion-of-old-and-closed-topics/330646?silent=true\">read more</a></p>\n</li>\n<li>\n<p><strong>Idea‑voting, two different styles?</strong> – <a class=\"mention\" href=\"/u/ecki\">Ecki</a> noticed inconsistent voting interfaces in the same category. <a class=\"mention\" href=\"/u/moin\">Moin</a> explained the difference between the topic voting plugin (when category type is “Idea”) and the post voting plugin. <a href=\"https://meta.discourse.org/t/idea-voting-two-different-styles/409044?silent=true\">read more</a></p>\n</li>\n</ul>\n<h3><a name=\"p-2017739-bug-8\" class=\"anchor\" href=\"#p-2017739-bug-8\" aria-label=\"Heading link\"></a><a class=\"hashtag-cooked\" href=\"/tag/bug/1056\" data-type=\"tag\" data-slug=\"bug\" data-id=\"1056\" data-style-type=\"icon\" data-icon=\"tag\"><span class=\"hashtag-icon-placeholder\"><svg class=\"fa d-icon d-icon-square-full svg-icon svg-node\"><use href=\"#square-full\"></use></svg></span><span>bug</span></a></h3>\n<ul>\n<li><strong>Tag‑icons plugin icon display issue</strong> – <a class=\"mention\" href=\"/u/iouvps\">Iouvps</a> reported missing icons after an upgrade. <a class=\"mention\" href=\"/u/moin\">Moin</a> discovered that the plugin now requires tag slugs instead of names, and provided a <a href=\"https://meta.discourse.org/t/tag-icons/409042/2?silent=true\">step‑by‑step walkthrough</a> that solved the problem. <a href=\"https://meta.discourse.org/t/tag-icons/409042?silent=true\">read more</a></li>\n</ul>\n<h3><a name=\"p-2017739-feature-9\" class=\"anchor\" href=\"#p-2017739-feature-9\" aria-label=\"Heading link\"></a><span class=\"hashtag-raw\">#Feature</span></h3>\n<ul>\n<li><strong>Combining Category types</strong> – <a class=\"mention\" href=\"/u/ecki\">Ecki</a> tried to combine solved, topic voting, and events in one category and found conflicts. <a class=\"mention\" href=\"/u/moin\">Moin</a> asked how the plugins were used before the category‑type system was introduced, sparking a discussion on design trade‑offs. <a href=\"https://meta.discourse.org/t/combining-category-types/409045?silent=true\">read more</a></li>\n</ul>\n<h3><a name=\"p-2017739-plugin-10\" class=\"anchor\" href=\"#p-2017739-plugin-10\" aria-label=\"Heading link\"></a><span class=\"hashtag-raw\">#Plugin</span></h3>\n<ul>\n<li><strong>Event Duplicator: duplicate calendar events/topics into a new time period</strong> – <a class=\"mention\" href=\"/u/lou\">Lou</a> announced v1.1.0, adding a “Shift (months)” field to the review page, responding to <a class=\"mention\" href=\"/u/nathank\">Nathank</a>’s request for monthly duplication. <a href=\"https://meta.discourse.org/t/event-duplicator-duplicate-calendar-events-topics-into-a-new-time-period/409003?silent=true\">read more</a></li>\n</ul>\n<h3><a name=\"p-2017739-announcements-11\" class=\"anchor\" href=\"#p-2017739-announcements-11\" aria-label=\"Heading link\"></a><span class=\"hashtag-raw\">#Announcements</span></h3>\n<ul>\n<li><strong>Solved improvements: Allowing members to indicate they’re experiencing a reported issue</strong> – <a class=\"mention\" href=\"/u/ericgt\">EricGT</a> asked about a “Me too” report, and <a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a> provided a ready‑to‑use <a href=\"https://meta.discourse.org/t/solved-improvements-allowing-members-to-indicate-theyre-experiencing-a-reported-issue/402498/58?silent=true\">SQL query</a> to generate one via <a href=\"https://meta.discourse.org/t/32566?silent=true\">Data Explorer</a>. <a href=\"https://meta.discourse.org/t/solved-improvements-allowing-members-to-indicate-theyre-experiencing-a-reported-issue/402498?silent=true\">read more</a></li>\n</ul>\n<h2><a name=\"p-2017739-activity-by-the-a-classmention-hrefuteamteama-group-12\" class=\"anchor\" href=\"#p-2017739-activity-by-the-a-classmention-hrefuteamteama-group-12\" aria-label=\"Heading link\"></a>Activity by the <a class=\"mention\" href=\"/u/team\">Team</a> Group</h2>\n<ul>\n<li><strong><a class=\"mention\" href=\"/u/lilly\">Lilly</a></strong> was exceptionally active, sharing a <a href=\"https://meta.discourse.org/t/any-cheaper-alternatives-to-hetzner/409037/8?silent=true\">Hetzner tracking script</a> and a comprehensive <a href=\"https://meta.discourse.org/t/maintenance-page-workaround-can-this-be-done/408967/6?silent=true\">Cloudflare maintenance page guide</a>. She also discussed server requirements and countered <a class=\"mention\" href=\"/u/merefield\">Merefield</a>’s skepticism about the maintenance page, emphasizing its value during container swaps.</li>\n<li><strong><a class=\"mention\" href=\"/u/moin\">Moin</a></strong> provided clear answers across multiple topics: explaining the <code>tl3_requires_posts_read</code> percentage (in the <a href=\"https://meta.discourse.org/t/can-someone-clarify-the-posts-read-tl3-promotion-logic/409057?silent=true\">TL3 logic topic</a>), diagnosing the <a href=\"https://meta.discourse.org/t/tag-icons/409042/2?silent=true\">tag‑icons slug issue</a>, and linking to the <a href=\"https://github.com/discourse/discourse/pull/42163\">composer fix PR</a>. He also discussed the “Start Updating” button styling and offered advice on category types.</li>\n<li><strong><a class=\"mention\" href=\"/u/canapin\">Canapin</a></strong> flagged the “Start Updating” button styling and pointed out that Hetzner’s CX servers are often sold out, noting the price increase.</li>\n<li><strong><a class=\"mention\" href=\"/u/merefield\">Merefield</a></strong> shared opinions on the maintenance page (calling it extra infrastructure) and gave practical advice on server sizing for the dual‑container setup, recommending at least 4GB RAM and 3 vCPUs.</li>\n<li><strong><a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a></strong> explained the TL3 promotion logic and provided a custom SQL query for the “Me too” report in the solved improvements topic. He also supported the idea of nesting subcategories in dropdowns.</li>\n<li><strong><a class=\"mention\" href=\"/u/natedhaliwal\">NateDhaliwal</a></strong> asked the clarifying question about TL3 and later confirmed he understood the answer. He also advised <a class=\"mention\" href=\"/u/lebron\">Lebron</a> to post the wizard issue in the plugin topic.</li>\n<li><strong><a class=\"mention\" href=\"/u/sam\">Sam</a></strong> mentioned a new PR for the Workflows plugin that adds interaction API support, inviting testing.</li>\n</ul>\n<h2><a name=\"p-2017739-fun-sign-off-13\" class=\"anchor\" href=\"#p-2017739-fun-sign-off-13\" aria-label=\"Heading link\"></a>Fun Sign-off</h2>\n<blockquote>\n<p>Between hunting for budget servers, building Cloudflare maintenance pages, and tweaking TL3 requirements, the community certainly had a day full of <em>dynamic</em> solutions—let’s hope your forums stay as sleek as that “Start Updating” button will look once it gets its border back!</p>\n</blockquote>","post_number":914,"post_type":1,"posts_count":683,"updated_at":"2026-08-02T05:01:13.811Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":2,"readers_count":1,"score":0.4,"yours":false,"topic_id":291851,"topic_slug":"daily-summary-5am-utc","topic_title":"Daily Summary (5am UTC)","topic_html_title":"Daily Summary (5am UTC)","category_id":157,"display_username":"system","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":null,"bookmarked":false,"raw":"# Today on meta.discourse.org...\n\n## Key Stats\n- **Total new posts:** 99  \n- **Total new topics:** 29  \n- **Top users by likes & posts:**  \n  - <a class=\"mention\" href=\"/u/lilly\">Lilly</a> (16 likes, 6 posts)  \n  - <a class=\"mention\" href=\"/u/moin\">Moin</a> (11 likes, 11 posts)  \n  - <a class=\"mention\" href=\"/u/canapin\">Canapin</a> (11 likes, 4 posts)  \n  - <a class=\"mention\" href=\"/u/merefield\">Merefield</a> (9 likes, 6 posts)  \n  - <a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a> (8 likes, 5 posts)  \n\n## Interesting Topics\n\n### #Self-hosting\n- **Any cheaper alternatives to Hetzner?** – <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> kicked off a hunt for budget VPS options after Hetzner raised prices. <a class=\"mention\" href=\"/u/canapin\">Canapin</a> clarified the difference between CX and CPX servers, while <a class=\"mention\" href=\"/u/lilly\">Lilly</a> shared a [bash script](https://meta.discourse.org/t/any-cheaper-alternatives-to-hetzner/409037/8?silent=true) that monitors Hetzner stock and posts alerts to Discourse. Other members suggested Netcup and advinservers.com. [read more](https://meta.discourse.org/t/any-cheaper-alternatives-to-hetzner/409037?silent=true)  \n\n- **Maintenance page workaround – can this be done?** – <a class=\"mention\" href=\"/u/lilly\">Lilly</a> provided a detailed guide on using a [Cloudflare Worker](https://meta.discourse.org/t/maintenance-page-workaround-can-this-be-done/408967/6?silent=true) to display a custom maintenance page during container swaps. <a class=\"mention\" href=\"/u/merefield\">Merefield</a> debated its usefulness and stressed the importance of adequate server specs, while <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> weighed the costs and benefits. [read more](https://meta.discourse.org/t/maintenance-page-workaround-can-this-be-done/408967?silent=true)  \n\n### #UX\n- **“Start Updating” button lacks a button styling** – <a class=\"mention\" href=\"/u/canapin\">Canapin</a> noted the button doesn’t look interactive. <a class=\"mention\" href=\"/u/moin\">Moin</a> confirmed it’s a regression from the “modernize Foundation” change and showed a [screenshot of the previous style](https://meta.discourse.org/t/start-updating-button-lacks-a-button-styling/409034/3?silent=true). [read more](https://meta.discourse.org/t/start-updating-button-lacks-a-button-styling/409034?silent=true)  \n\n- **About nesting subcategories on dropdown** – <a class=\"mention\" href=\"/u/satonotdead\">Satonotdead</a> proposed displaying subcategories nested in the main dropdown to reduce noise for new users. <a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a> agreed it’s worth exploring and suggested possible checkbox interactions. [read more](https://meta.discourse.org/t/about-nesting-subcategories-on-dropdown/409046?silent=true)  \n\n- **Remove the pure white on text** – <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> shared frustration with the brightness of text in dark themes. <a class=\"mention\" href=\"/u/moin\">Moin</a> suggested trying the “dark” palette, and <a class=\"mention\" href=\"/u/awesomerobot\">Awesomerobot</a> chimed in with color palette options. [read more](https://meta.discourse.org/t/remove-the-pure-white-on-text/408966?silent=true)  \n\n### #Development\n- **Can someone clarify the ‘posts read’ TL3 promotion logic?** – <a class=\"mention\" href=\"/u/natedhaliwal\">NateDhaliwal</a> asked about the formula in `TrustLevel3Requirements`. <a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a> explained that `tl3_requires_posts_read` is a percentage, capped by `tl3_requires_posts_read_cap`. [read more](https://meta.discourse.org/t/can-someone-clarify-the-posts-read-tl3-promotion-logic/409057?silent=true)  \n\n- **New core features system specs in plugins and themes** – <a class=\"mention\" href=\"/u/gormus\">Gormus</a> shared a code snippet showing how to set `SiteSetting.theme_authorized_extensions` within RSpec to enable core feature testing. [read more](https://meta.discourse.org/t/new-core-features-system-specs-in-plugins-and-themes/361381?silent=true)  \n\n### #Support\n- **Has something changed with pasting html into the composer?** – <a class=\"mention\" href=\"/u/one1\">One1</a> reported unwanted `lang` spans appearing when pasting HTML. <a class=\"mention\" href=\"/u/moin\">Moin</a> pointed to a [pull request](https://github.com/discourse/discourse/pull/42163) that fixes the issue. [read more](https://meta.discourse.org/t/has-something-changed-with-pasting-html-into-the-composer/407661?silent=true)  \n\n- **Broken Wizards** – <a class=\"mention\" href=\"/u/lebron\">Lebron</a> came back from a long absence and described that the Custom Wizard plugin works for admins but not regular users after an upgrade. <a class=\"mention\" href=\"/u/natedhaliwal\">NateDhaliwal</a> suggested posting in the plugin’s topic for better visibility. [read more](https://meta.discourse.org/t/broken-wizards/409036?silent=true)  \n\n- **Mobile Firefox scrolling to bottom of topic on screen lock** – <a class=\"mention\" href=\"/u/riking\">Riking</a> identified the culprit: the `better-osm-org` user script, not a core bug, after testing in safe mode and on Meta. [read more](https://meta.discourse.org/t/mobile-firefox-scrolling-to-bottom-of-topic-on-screen-lock/409013?silent=true)  \n\n- **Automatic deletion of old and closed topics?** – <a class=\"mention\" href=\"/u/tealk\">Tealk</a> shared a [topic‑pruning script](https://git.rollenspiel.monster/Tealk/discourse-topic-pruner) that deletes posts via the API, with <a class=\"mention\" href=\"/u/moin\">Moin</a> asking about the criteria used. [read more](https://meta.discourse.org/t/automatic-deletion-of-old-and-closed-topics/330646?silent=true)  \n\n- **Idea‑voting, two different styles?** – <a class=\"mention\" href=\"/u/ecki\">Ecki</a> noticed inconsistent voting interfaces in the same category. <a class=\"mention\" href=\"/u/moin\">Moin</a> explained the difference between the topic voting plugin (when category type is “Idea”) and the post voting plugin. [read more](https://meta.discourse.org/t/idea-voting-two-different-styles/409044?silent=true)  \n\n### #Bug\n- **Tag‑icons plugin icon display issue** – <a class=\"mention\" href=\"/u/iouvps\">Iouvps</a> reported missing icons after an upgrade. <a class=\"mention\" href=\"/u/moin\">Moin</a> discovered that the plugin now requires tag slugs instead of names, and provided a [step‑by‑step walkthrough](https://meta.discourse.org/t/tag-icons/409042/2?silent=true) that solved the problem. [read more](https://meta.discourse.org/t/tag-icons/409042?silent=true)  \n\n### #Feature\n- **Combining Category types** – <a class=\"mention\" href=\"/u/ecki\">Ecki</a> tried to combine solved, topic voting, and events in one category and found conflicts. <a class=\"mention\" href=\"/u/moin\">Moin</a> asked how the plugins were used before the category‑type system was introduced, sparking a discussion on design trade‑offs. [read more](https://meta.discourse.org/t/combining-category-types/409045?silent=true)  \n\n### #Plugin\n- **Event Duplicator: duplicate calendar events/topics into a new time period** – <a class=\"mention\" href=\"/u/lou\">Lou</a> announced v1.1.0, adding a “Shift (months)” field to the review page, responding to <a class=\"mention\" href=\"/u/nathank\">Nathank</a>’s request for monthly duplication. [read more](https://meta.discourse.org/t/event-duplicator-duplicate-calendar-events-topics-into-a-new-time-period/409003?silent=true)  \n\n### #Announcements\n- **Solved improvements: Allowing members to indicate they’re experiencing a reported issue** – <a class=\"mention\" href=\"/u/ericgt\">EricGT</a> asked about a “Me too” report, and <a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a> provided a ready‑to‑use [SQL query](https://meta.discourse.org/t/solved-improvements-allowing-members-to-indicate-theyre-experiencing-a-reported-issue/402498/58?silent=true) to generate one via Data Explorer. [read more](https://meta.discourse.org/t/solved-improvements-allowing-members-to-indicate-theyre-experiencing-a-reported-issue/402498?silent=true)  \n\n## Activity by the <a class=\"mention\" href=\"/u/team\">Team</a> Group\n\n- **<a class=\"mention\" href=\"/u/lilly\">Lilly</a>** was exceptionally active, sharing a [Hetzner tracking script](https://meta.discourse.org/t/any-cheaper-alternatives-to-hetzner/409037/8?silent=true) and a comprehensive [Cloudflare maintenance page guide](https://meta.discourse.org/t/maintenance-page-workaround-can-this-be-done/408967/6?silent=true). She also discussed server requirements and countered <a class=\"mention\" href=\"/u/merefield\">Merefield</a>’s skepticism about the maintenance page, emphasizing its value during container swaps.  \n- **<a class=\"mention\" href=\"/u/moin\">Moin</a>** provided clear answers across multiple topics: explaining the `tl3_requires_posts_read` percentage (in the [TL3 logic topic](https://meta.discourse.org/t/can-someone-clarify-the-posts-read-tl3-promotion-logic/409057?silent=true)), diagnosing the [tag‑icons slug issue](https://meta.discourse.org/t/tag-icons/409042/2?silent=true), and linking to the [composer fix PR](https://github.com/discourse/discourse/pull/42163). He also discussed the “Start Updating” button styling and offered advice on category types.  \n- **<a class=\"mention\" href=\"/u/canapin\">Canapin</a>** flagged the “Start Updating” button styling and pointed out that Hetzner’s CX servers are often sold out, noting the price increase.  \n- **<a class=\"mention\" href=\"/u/merefield\">Merefield</a>** shared opinions on the maintenance page (calling it extra infrastructure) and gave practical advice on server sizing for the dual‑container setup, recommending at least 4GB RAM and 3 vCPUs.  \n- **<a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a>** explained the TL3 promotion logic and provided a custom SQL query for the “Me too” report in the solved improvements topic. He also supported the idea of nesting subcategories in dropdowns.  \n- **<a class=\"mention\" href=\"/u/natedhaliwal\">NateDhaliwal</a>** asked the clarifying question about TL3 and later confirmed he understood the answer. He also advised <a class=\"mention\" href=\"/u/lebron\">Lebron</a> to post the wizard issue in the plugin topic.  \n- **<a class=\"mention\" href=\"/u/sam\">Sam</a>** mentioned a new PR for the Workflows plugin that adds interaction API support, inviting testing.\n\n## Fun Sign-off\n\n> Between hunting for budget servers, building Cloudflare maintenance pages, and tweaking TL3 requirements, the community certainly had a day full of *dynamic* solutions—let’s hope your forums stay as sleek as that “Start Updating” button will look once it gets its border back!","actions_summary":[],"moderator":true,"admin":true,"staff":true,"user_id":-1,"hidden":false,"trust_level":4,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"<a name=\"p-2017739-today-on-metadiscourseorg-1\" class=\"anchor\" href=\"#p-2017739-today-on-metadiscourseorg-1\" aria-label=\"Heading link\"></a>Today on <a href=\"http://meta.discourse.org\">meta.discourse.org</a>…\n<a name=\"p-2017739-key-stats-2\" class=\"anchor\" href=\"#p-2017739-key-stats-2\" aria-label=\"Heading link\"></a>Key Stats\n\nTotal new posts: 99\nTotal new topics: 29\nTop users by likes &amp; posts:\n\n<a class=\"mention\" href=\"/u/lilly\">Lilly</a> (16 likes, 6 posts)\n<a class=\"mention\" href=\"/u/moin\">Moin</a> (11 likes, 11 posts)\n<a class=\"mention\" href=\"/u/canapin\">Canapin</a> (11 likes, 4 posts)\n<a class=\"mention\" href=\"/u/merefield\">Merefield</a> (9 likes, 6 posts)\n<a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a> (8 likes, 5 posts)\n\n\n\n<a name=\"p-2017739-interesting-topics-3\" class=\"anchor\" href=\"#p-2017739-interesting-topics-3\" aria-label=\"Heading link\"></a>Interesting Topics\n<a name=\"p-2017739-self-hosting-4\" class=\"anchor\" href=\"#p-2017739-self-hosting-4\" aria-label=\"Heading link\"></a>#Self-hosting\n\n\nAny cheaper alt&hellip;","truncated":true,"post_url":"/t/daily-summary-5am-utc/291851/914","locale":null,"is_localized":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017721,"name":"Sam Saffron","username":"sam","avatar_template":"/user_avatar/meta.discourse.org/sam/{size}/102149_2.png","created_at":"2026-08-02T02:35:55.554Z","cooked":"<p>Acabei de criar um PR que adiciona suporte à API de interação. Se você tiver um ambiente de teste, ficaria grato por mais testes.</p>","post_number":13,"post_type":1,"posts_count":13,"updated_at":"2026-08-02T02:35:55.554Z","reply_count":0,"reply_to_post_number":12,"quote_count":0,"incoming_link_count":1,"reads":6,"readers_count":5,"score":6.2,"yours":false,"topic_id":407100,"topic_slug":"discourse-workflows","topic_title":"Discourse Workflows","topic_html_title":"Discourse Workflows","category_id":22,"display_username":"Sam Saffron","primary_group_name":"team","flair_name":"team","flair_url":"https://global.discourse-cdn.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_bg_color":"","flair_color":"111","flair_group_id":47,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"co-founder","title_is_group":false,"reply_to_user":{"id":155728,"username":"dennisjbr","name":"","avatar_template":"/user_avatar/meta.discourse.org/dennisjbr/{size}/444916_2.png"},"bookmarked":false,"raw":"I just made a pr that add support for interaction api, if you have a test env would be happy with some more testing","actions_summary":[],"moderator":false,"admin":true,"staff":true,"user_id":1,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I just made a pr that add support for interaction api, if you have a test env would be happy with some more testing","truncated":true,"post_url":"/t/discourse-workflows/407100/13","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017720,"name":"James","username":"cuo_wu","avatar_template":"/user_avatar/meta.discourse.org/cuo_wu/{size}/498442_2.png","created_at":"2026-08-02T02:31:53.074Z","cooked":"<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/d/0/e/d0e6f4ebdecbe820df209758edf95e7820a1878e.png\" data-download-href=\"/uploads/short-url/tO28s8F0PCYpXstdOIuwcQsoJyu.png?dl=1\" title=\"image\"><img src=\"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/d/0/e/d0e6f4ebdecbe820df209758edf95e7820a1878e_2_620x500.png\" alt=\"image\" data-base62-sha1=\"tO28s8F0PCYpXstdOIuwcQsoJyu\" width=\"620\" height=\"500\" srcset=\"https://global.discourse-cdn.com/meta/optimized/4X/d/0/e/d0e6f4ebdecbe820df209758edf95e7820a1878e_2_620x500.png, https://global.discourse-cdn.com/meta/original/4X/d/0/e/d0e6f4ebdecbe820df209758edf95e7820a1878e.png 1.5x, https://global.discourse-cdn.com/meta/original/4X/d/0/e/d0e6f4ebdecbe820df209758edf95e7820a1878e.png 2x\" data-dominant-color=\"E2E5E4\" aria-description=\"Uma janela de pop-up de interface de usuário mostrando os detalhes de um convite criado, incluindo um link, papel de membro e restrições de uso. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">723×583 34.5 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>\n<p>Quando quero remover a restrição.</p>\n<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/d/6/f/d6fcf991351dcd42beba02f3cad2e5724141c8d8.png\" data-download-href=\"/uploads/short-url/uFSaQ5aexaNmFMrf6JU8UltJBiw.png?dl=1\" title=\"image\"><img src=\"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/d/6/f/d6fcf991351dcd42beba02f3cad2e5724141c8d8_2_679x500.png\" alt=\"image\" data-base62-sha1=\"uFSaQ5aexaNmFMrf6JU8UltJBiw\" width=\"679\" height=\"500\" srcset=\"https://global.discourse-cdn.com/meta/optimized/4X/d/6/f/d6fcf991351dcd42beba02f3cad2e5724141c8d8_2_679x500.png, https://global.discourse-cdn.com/meta/original/4X/d/6/f/d6fcf991351dcd42beba02f3cad2e5724141c8d8.png 1.5x, https://global.discourse-cdn.com/meta/original/4X/d/6/f/d6fcf991351dcd42beba02f3cad2e5724141c8d8.png 2x\" data-dominant-color=\"D7DBDA\" aria-description=\"Uma janela de diálogo para editar um convite, mostrando um campo de entrada para restringir o acesso a um domínio específico. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">731×538 39 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>\n<p>Atualização.</p>\n<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/4/e/1/4e101972182d0144b4b202ac608504b378213469.png\" data-download-href=\"/uploads/short-url/b8zJBeURKA27uvDudsobBRFuB0l.png?dl=1\" title=\"image\"><img src=\"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/4/e/1/4e101972182d0144b4b202ac608504b378213469_2_633x499.png\" alt=\"image\" data-base62-sha1=\"b8zJBeURKA27uvDudsobBRFuB0l\" width=\"633\" height=\"499\" srcset=\"https://global.discourse-cdn.com/meta/optimized/4X/4/e/1/4e101972182d0144b4b202ac608504b378213469_2_633x499.png, https://global.discourse-cdn.com/meta/original/4X/4/e/1/4e101972182d0144b4b202ac608504b378213469.png 1.5x, https://global.discourse-cdn.com/meta/original/4X/4/e/1/4e101972182d0144b4b202ac608504b378213469.png 2x\" data-dominant-color=\"DEE0E0\" aria-description=\"Um pop-up de confirmação de convite criado exibe um link compartilhável, detalhes de configuração como função, restrições de domínio e data de expiração, além de opções para copiar o link ou editar o convite. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">745×588 37.9 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>\n<p>A restrição ainda existe.</p>","post_number":1,"post_type":1,"posts_count":1,"updated_at":"2026-08-02T02:31:53.074Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":13,"reads":8,"readers_count":7,"score":66.6,"yours":false,"topic_id":409058,"topic_slug":"invite-restricted-cant-remove","topic_title":"Invite Restricted can't remove","topic_html_title":"Invite Restricted can&rsquo;t remove","category_id":1,"display_username":"James","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Plugin Author","title_is_group":false,"bookmarked":false,"raw":"\n\n![image|620x500](upload://tO28s8F0PCYpXstdOIuwcQsoJyu.png)\n\nWhen I want to remove the restrict.\n\n![image|679x500](upload://uFSaQ5aexaNmFMrf6JU8UltJBiw.png)\n\nUpdate.\n\n![image|633x499](upload://b8zJBeURKA27uvDudsobBRFuB0l.png)\n\nThe restrict still exist.","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":173987,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"<a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/d/0/e/d0e6f4ebdecbe820df209758edf95e7820a1878e.png\" data-download-href=\"/uploads/short-url/tO28s8F0PCYpXstdOIuwcQsoJyu.png?dl=1\" title=\"image\" rel=\"noopener nofollow ugc\">[image]</a> \nWhen I want to remove the restrict. \n <a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/d/6/f/d6fcf991351dcd42beba02f3cad2e5724141c8d8.png\" data-download-href=\"/uploads/short-url/uFSaQ5aexaNmFMrf6JU8UltJBiw.png?dl=1\" title=\"image\" rel=\"noopener nofollow ugc\">[image]</a> \nUpdate. \n <a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/4/e/1/4e101972182d0144b4b202ac608504b378213469.png\" data-download-href=\"/uploads/short-url/b8zJBeURKA27uvDudsobBRFuB0l.png?dl=1\" title=\"image\" rel=\"noopener nofollow ugc\">[image]</a> \nThe restrict still exist.","truncated":true,"post_url":"/t/invite-restricted-cant-remove/409058/1","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"calendar_details":[],"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null,"can_vote":false},{"id":2017718,"name":"Dave McClure","username":"mcwumbly","avatar_template":"/user_avatar/meta.discourse.org/mcwumbly/{size}/103861_2.png","created_at":"2026-08-02T02:16:30.574Z","cooked":"<p>Sim, <code>tl3_requires_posts_read</code> poderia, argumentavelmente, ter um nome melhor, como <code>tl3_requires_percent_posts_read</code>.</p>","post_number":4,"post_type":1,"posts_count":4,"updated_at":"2026-08-02T02:16:30.574Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":7,"readers_count":6,"score":31.4,"yours":false,"topic_id":409057,"topic_slug":"can-someone-clarify-the-posts-read-tl3-promotion-logic","topic_title":"Can someone clarify the 'posts read' TL3 promotion logic?","topic_html_title":"Can someone clarify the &lsquo;posts read&rsquo; TL3 promotion logic?","category_id":7,"display_username":"Dave McClure","primary_group_name":"team","flair_name":"team","flair_url":"https://global.discourse-cdn.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_bg_color":"","flair_color":"111","flair_group_id":47,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Director of Product","title_is_group":false,"bookmarked":false,"raw":"Yeah, `tl3_requires_posts_read` could arguably be better named something like `tl3_requires_percent_posts_read`.","actions_summary":[{"id":2,"count":2}],"moderator":false,"admin":true,"staff":true,"user_id":4263,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Yeah, tl3_requires_posts_read could arguably be better named something like tl3_requires_percent_posts_read.","truncated":true,"post_url":"/t/can-someone-clarify-the-posts-read-tl3-promotion-logic/409057/4","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":2}],"current_user_reaction":null,"reaction_users_count":2,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":true},{"id":2017717,"name":"Nate Dhaliwal","username":"NateDhaliwal","avatar_template":"/user_avatar/meta.discourse.org/natedhaliwal/{size}/313494_2.png","created_at":"2026-08-02T02:14:04.625Z","cooked":"<p>Bem, acho que preciso ler as descrições das configurações com mais atenção da próxima vez. Faz todo o sentido, obrigado!</p>","post_number":3,"post_type":1,"posts_count":4,"updated_at":"2026-08-02T02:14:04.625Z","reply_count":0,"reply_to_post_number":2,"quote_count":0,"incoming_link_count":0,"reads":8,"readers_count":7,"score":16.6,"yours":false,"topic_id":409057,"topic_slug":"can-someone-clarify-the-posts-read-tl3-promotion-logic","topic_title":"Can someone clarify the 'posts read' TL3 promotion logic?","topic_html_title":"Can someone clarify the &lsquo;posts read&rsquo; TL3 promotion logic?","category_id":7,"display_username":"Nate Dhaliwal","primary_group_name":null,"flair_name":"theme_authors","flair_url":"paintbrush","flair_bg_color":"ddd","flair_color":"111","flair_group_id":73,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Senior Tester","title_is_group":false,"reply_to_user":{"id":4263,"username":"mcwumbly","name":"Dave McClure","avatar_template":"/user_avatar/meta.discourse.org/mcwumbly/{size}/103861_2.png"},"bookmarked":false,"raw":"Well, I guess I need to read the setting descriptions more carefully next time. Makes perfect sense, thanks!","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":135392,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Well, I guess I need to read the setting descriptions more carefully next time. Makes perfect sense, thanks!","truncated":true,"post_url":"/t/can-someone-clarify-the-posts-read-tl3-promotion-logic/409057/3","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":true},{"id":2017715,"name":"Dave McClure","username":"mcwumbly","avatar_template":"/user_avatar/meta.discourse.org/mcwumbly/{size}/103861_2.png","created_at":"2026-08-02T01:58:11.090Z","cooked":"<p>A configuração do site <code>tl3_requires_posts_read</code> é uma porcentagem. Digamos que seja <code>10</code>. Enquanto o limite mantém o requisito vinculado a algo razoável. Digamos que seja <code>100</code>.</p>\n<p>“Um usuário deve ler <strong>10%</strong> de todas as publicações no período, mas não mais de <strong>100</strong>”</p>\n<p>Digamos que tenham sido feitas 500 publicações nesse período.</p>\n<p>Nesse caso, seriam necessárias 50 publicações lidas para atender ao requisito (10% dessas publicações)</p>\n<p>A aritmética é feita como <code>500 * (10.0/100.0)</code> para obter o resultado <code>50</code></p>\n<p>O limite estabelece um limite superior, no entanto.</p>\n<p>Se o seu limite for maior que 50 (digamos 100), então não terá efeito.</p>\n<p><code>[50, 100].min</code> retorna <code>50</code></p>\n<p>Mas e se houver 100.000 publicações em um mês? Nesse caso, sem o limite, alguém teria que ler 10.000 publicações para atender ao requisito.</p>\n<p>O limite de 100 mantém isso sob controle</p>\n<p><code>[100000 * (10.0/100.0), 100].min</code> retorna <code>100</code></p>\n<p>Isso faz sentido?</p>","post_number":2,"post_type":1,"posts_count":4,"updated_at":"2026-08-02T02:02:29.028Z","reply_count":1,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":9,"readers_count":8,"score":51.8,"yours":false,"topic_id":409057,"topic_slug":"can-someone-clarify-the-posts-read-tl3-promotion-logic","topic_title":"Can someone clarify the 'posts read' TL3 promotion logic?","topic_html_title":"Can someone clarify the &lsquo;posts read&rsquo; TL3 promotion logic?","category_id":7,"display_username":"Dave McClure","primary_group_name":"team","flair_name":"team","flair_url":"https://global.discourse-cdn.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_bg_color":"","flair_color":"111","flair_group_id":47,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Director of Product","title_is_group":false,"bookmarked":false,"raw":"The `tl3_requires_posts_read` site setting is a percentage. Let's say it's `10`. While the cap keeps the requirement bound to something reasonable. Let's say it's `100`.\n\n\"A user must read **10%** of all the posts in the period, but not more than **100**\"\n\nLet's say there were 500 posts made in that period.\n\nIn that case, it'd take reading 50 posts to meet the requirement (10% of those posts)\n\nThe arithmetic happens to be done as `500 * (10.0/100.0)` to get the result `50`\n\nThe cap sets an upper bound though.\n\nIf your cap is bigger than 50 (say 100), then it has no effect.\n\n`[50, 100].min` returns `50`\n\nBut what if there are 100,000 posts one month? In that case, without the cap, someone would have to read 10,000 posts to meet the requirement.\n\nThe 100 cap keeps that under control \n\n`[100000 * (10.0/100.0), 100].min` returns `100`\n\nThat make sense?","actions_summary":[{"id":2,"count":3}],"moderator":false,"admin":true,"staff":true,"user_id":4263,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"The tl3_requires_posts_read site setting is a percentage. Let’s say it’s 10. While the cap keeps the requirement bound to something reasonable. Let’s say it’s 100. \n“A user must read 10% of all the posts in the period, but not more than 100” \nLet’s say there were 500 posts made in that period. \nIn t&hellip;","truncated":true,"post_url":"/t/can-someone-clarify-the-posts-read-tl3-promotion-logic/409057/2","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"exploding_head","type":"emoji","count":2},{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":3,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":true,"topic_accepted_answer":true},{"id":2017710,"name":"Lillian ","username":"Lilly","avatar_template":"/user_avatar/meta.discourse.org/lilly/{size}/572196_2.png","created_at":"2026-08-02T01:38:01.237Z","cooked":"<aside class=\"quote no-group\" data-username=\"alltiagocom\" data-post=\"11\" data-topic=\"409037\">\n<div class=\"title\">\n<div class=\"quote-controls\"></div>\n<img alt=\"\" width=\"24\" height=\"24\" src=\"https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/alltiagocom/48/492709_2.png\" class=\"avatar\"> alltiagocom:</div>\n<blockquote>\n<p>Como não sou um desenvolvedor experiente, eu conseguiria criar um pequeno aplicativo implantado no Railway (que é o que eu uso) e configurá-lo para que o Brevo disparasse essas notificações por e-mail?</p>\n</blockquote>\n</aside>\n<p>não faço ideia. não uso Railway nem Brevo. desculpe <img src=\"https://emoji.discourse-cdn.com/twitter/woman_shrugging/2.png?v=15\" title=\":woman_shrugging:t2:\" class=\"emoji\" alt=\":woman_shrugging:t2:\" loading=\"lazy\" width=\"20\" height=\"20\"></p>\n<p>peço desculpas, achei que você já tivesse uma instância do Discourse funcionando, com base em toda sua atividade anterior aqui.</p>","post_number":18,"post_type":1,"posts_count":19,"updated_at":"2026-08-02T01:44:42.060Z","reply_count":0,"reply_to_post_number":11,"quote_count":1,"incoming_link_count":0,"reads":15,"readers_count":14,"score":2.8,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":"Lillian ","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":2,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","bookmarked":false,"raw":"[quote=\"alltiagocom, post:11, topic:409037\"]\nSince I’m not an experienced developer, would I be able to build a small app deployed to Railway (which is what I use) and set it so I could have Brevo to trigger those email notifications?\n[/quote]\n\ni have no idea. i do not use railway or brevo.  sorry :woman_shrugging:t2:\n\napologies, i thought you already had a working Discourse instance based on all your previous activity here.\n\nyea, dual container installs, and using bash and shell scripts with Discourse and cron jobs is kind of advanced server stuff.  i have never even tried a dual container install on a 4GB server so i don't know if it will work. :thinking:","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":127856,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"i have no idea. i do not use railway or brevo.  sorry :woman_shrugging:t2: \napologies, i thought you already had a working Discourse instance based on all your previous activity here. \nyea, dual container installs, and using bash and shell scripts with Discourse and cron jobs is kind of advanced se&hellip;","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/18","locale":"en","is_localized":true,"language":"en","localization_outdated":true,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017709,"name":"Nate Dhaliwal","username":"NateDhaliwal","avatar_template":"/user_avatar/meta.discourse.org/natedhaliwal/{size}/313494_2.png","created_at":"2026-08-02T01:35:11.584Z","cooked":"<p>Tem esse trecho de código que está me deixando na dúvida:</p>\n<aside class=\"onebox githubblob\" data-onebox-src=\"https://github.com/discourse/discourse/blob/7d635130bfcf20154c5fe6b613777ed481f3cd53/app/models/trust_level3_requirements.rb#L155-L163\">\n  <header class=\"source\">\n\n      <a href=\"https://github.com/discourse/discourse/blob/7d635130bfcf20154c5fe6b613777ed481f3cd53/app/models/trust_level3_requirements.rb#L155-L163\" target=\"_blank\" rel=\"noopener\">github.com/discourse/discourse</a>\n  </header>\n\n  <article class=\"onebox-body\">\n    <h4><a href=\"https://github.com/discourse/discourse/blob/7d635130bfcf20154c5fe6b613777ed481f3cd53/app/models/trust_level3_requirements.rb#L155-L163\" target=\"_blank\" rel=\"noopener\">app/models/trust_level3_requirements.rb</a></h4>\n\n<div class=\"git-blob-info\">\n  <a href=\"https://github.com/discourse/discourse/blob/7d635130bfcf20154c5fe6b613777ed481f3cd53/app/models/trust_level3_requirements.rb#L155-L163\" rel=\"noopener\"><code>7d635130b</code></a>\n</div>\n\n\n\n    <pre class=\"onebox\"><code class=\"lang-rb\">\n      <ol class=\"start lines\" start=\"155\" style=\"counter-reset: li-counter 154 ;\">\n          <li>def min_posts_read</li>\n          <li>  [</li>\n          <li>    (</li>\n          <li>      TrustLevel3Requirements.num_posts_in_time_period.to_i *</li>\n          <li>        (SiteSetting.tl3_requires_posts_read.to_f / 100.0)</li>\n          <li>    ).round,</li>\n          <li>    SiteSetting.tl3_requires_posts_read_cap,</li>\n          <li>  ].min</li>\n          <li>end</li>\n      </ol>\n    </code></pre>\n\n\n\n  </article>\n\n  <div class=\"onebox-metadata\">\n    \n    \n  </div>\n\n  <div style=\"clear: both\"></div>\n</aside>\n\n<p>Por mais que eu tente, não consigo entender por que o número de publicações feitas no período é multiplicado pela porcentagem de publicações lidas exigidas, e depois esse resultado é usado como valor mínimo. Se a intenção aqui é calcular a porcentagem de publicações lidas, não seria o número de publicações lidas dividido pelo total de publicações, multiplicado por 100?</p>\n<p>Supondo que tenham sido feitas 9 publicações nos últimos x dias, e a configuração exija apenas 2, não deveria o método simplesmente retornar 2, já que é menor que o limite máximo de publicações?</p>\n<p>Para referência, aqui estão todos os valores:</p>\n<pre data-code-wrap=\"ruby\"><code class=\"lang-ruby\">[2] pry(main)&gt; TrustLevel3Requirements.num_posts_in_time_period.to_i\n=&gt; 9\n[3] pry(main)&gt; SiteSetting.tl3_requires_posts_read.to_f\n=&gt; 2.0\n[4] pry(main)&gt; (\n[4] pry(main)&gt;         TrustLevel3Requirements.num_posts_in_time_period.to_i *\n[4] pry(main)&gt;           (SiteSetting.tl3_requires_posts_read.to_f / 100.0)\n[4] pry(main)&gt;       ).round\n=&gt; 0\n[5] pry(main)&gt; 9*0.02\n=&gt; 0.18\n[6] pry(main)&gt; SiteSetting.tl3_requires_posts_read_cap\n=&gt; 2000\n</code></pre>\n<p>Estou interpretando mal a intenção do método? Obrigado.</p>","post_number":1,"post_type":1,"posts_count":4,"updated_at":"2026-08-02T01:35:33.405Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":2,"reads":10,"readers_count":9,"score":12.0,"yours":false,"topic_id":409057,"topic_slug":"can-someone-clarify-the-posts-read-tl3-promotion-logic","topic_title":"Can someone clarify the 'posts read' TL3 promotion logic?","topic_html_title":"Can someone clarify the &lsquo;posts read&rsquo; TL3 promotion logic?","category_id":7,"display_username":"Nate Dhaliwal","primary_group_name":null,"flair_name":"theme_authors","flair_url":"paintbrush","flair_bg_color":"ddd","flair_color":"111","flair_group_id":73,"badges_granted":[],"version":2,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Senior Tester","title_is_group":false,"bookmarked":false,"raw":"There's this piece of code that's been bugging me:\n\nhttps://github.com/discourse/discourse/blob/7d635130bfcf20154c5fe6b613777ed481f3cd53/app/models/trust_level3_requirements.rb#L155-L163\n\nFor the life of me, I cannot figure out why the posts made in the time period is multiplied by the percentage of required posts read, then taken as the minimum value. If the intention here is the percentage of posts read, then wouldn't it be the posts read / number of posts, multiplied by 100?\n\nSupposing there have been 9 posts in the last x days, and the setting only requires 2, then shouldn't the method simply return 2 since it's less than the post cap?\n\nFor reference, here are all the values:\n\n```ruby\n[2] pry(main)> TrustLevel3Requirements.num_posts_in_time_period.to_i\n=> 9\n[3] pry(main)> SiteSetting.tl3_requires_posts_read.to_f\n=> 2.0\n[4] pry(main)> (\n[4] pry(main)>         TrustLevel3Requirements.num_posts_in_time_period.to_i *\n[4] pry(main)>           (SiteSetting.tl3_requires_posts_read.to_f / 100.0)\n[4] pry(main)>       ).round\n=> 0\n[5] pry(main)> 9*0.02\n=> 0.18\n[6] pry(main)> SiteSetting.tl3_requires_posts_read_cap\n=> 2000\n```\n\nAm I misunderstanding the intention of the method? Thanks.","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":135392,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"There’s this piece of code that’s been bugging me: \n\n\nFor the life of me, I cannot figure out why the posts made in the time period is multiplied by the percentage of required posts read, then taken as the minimum value. If the intention here is the percentage of posts read, then wouldn’t it be the &hellip;","truncated":true,"post_url":"/t/can-someone-clarify-the-posts-read-tl3-promotion-logic/409057/1","locale":"en","is_localized":true,"language":"en","localization_outdated":true,"event":null,"calendar_details":[],"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":true,"can_vote":false},{"id":2017708,"name":"Lillian ","username":"Lilly","avatar_template":"/user_avatar/meta.discourse.org/lilly/{size}/572196_2.png","created_at":"2026-08-02T01:19:03.263Z","cooked":"<aside class=\"quote no-group\" data-username=\"alltiagocom\" data-post=\"21\" data-topic=\"408967\">\n<div class=\"title\">\n<div class=\"quote-controls\"></div>\n<img alt=\"\" width=\"24\" height=\"24\" src=\"https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/alltiagocom/48/492709_2.png\" class=\"avatar\"> alltiagocom:</div>\n<blockquote>\n<p>Por que você adiciona e remove a rota do worker, se deixá-la ativa não é um problema? Então, se eu adicionar a página de manutenção, posso realmente configurá-la uma vez e, a partir desse momento, sempre fazer SSH no meu servidor via Terminal e fazer tudo lá como faço com um único container, sem nunca precisar ir ao Cloudflare?</p>\n</blockquote>\n</aside>\n<p>Haha, estou feliz que você tenha perguntado, porque eu não tive tempo para explicar essa parte (eu deveria ter – há muito o que explicar e o Cloudflare é complexo!).</p>\n<p>Quando a rota do worker está configurada, cada carregamento de imagem e visualização de página no fórum passa por esse worker.</p>\n<p>O plano gratuito de CDN do Cloudflare inclui um limite de <a href=\"https://developers.cloudflare.com/workers/platform/pricing/#workers\" rel=\"noopener nofollow ugc\">100.000 solicitações por dia em uma rota de worker</a>.</p>\n<p>Portanto, se você tiver um fórum relativamente movimentado, para evitar atingir o limite do plano gratuito em um dia, é uma boa ideia não mantê-lo ativo o tempo todo. Isso se refere apenas à rota do worker, não à página de manutenção – você pode deixar a página de manutenção ativa o tempo todo; ela só será acessada se a rota do worker estiver ativa. Trata-se apenas da <a href=\"https://meta.discourse.org/t/maintenance-page-workaround-can-this-be-done/408967/6#p-2017547-step-2-add-the-route-2\">etapa 2 onde você atribuiu a rota</a> (que é fácil de configurar e remover). A menos que você esteja usando um plano pago do Cloudflare, é uma boa prática mantê-lo ativo apenas quando estiver realizando sua própria manutenção.</p>\n<ol>\n<li>Acesse a página de rotas de workers do Cloudflare para seu domínio e clique no botão no lado direito da rota.</li>\n</ol>\n<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/a/c/3/ac31a19c4a09656bd9250147a86a3389a40d499d.png\" data-download-href=\"/uploads/short-url/ozisuc3AWG3rmiJbc0LDO3cpCyN.png?dl=1\" title=\"Screenshot 2026-08-01 at 5.06.14 PM\"><img src=\"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/a/c/3/ac31a19c4a09656bd9250147a86a3389a40d499d_2_690x230.png\" alt=\"Screenshot 2026-08-01 at 5.06.14 PM\" data-base62-sha1=\"ozisuc3AWG3rmiJbc0LDO3cpCyN\" width=\"690\" height=\"230\" srcset=\"https://global.discourse-cdn.com/meta/optimized/4X/a/c/3/ac31a19c4a09656bd9250147a86a3389a40d499d_2_690x230.png, https://global.discourse-cdn.com/meta/optimized/4X/a/c/3/ac31a19c4a09656bd9250147a86a3389a40d499d_2_1035x345.png 1.5x, https://global.discourse-cdn.com/meta/optimized/4X/a/c/3/ac31a19c4a09656bd9250147a86a3389a40d499d_2_1380x460.png 2x\" data-dominant-color=\"F6F3F4\" aria-description=\"Uma seta vermelha aponta para o botão 'Edit' na interface de gerenciamento de rotas do Cloudflare Workers. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">Screenshot 2026-08-01 at 5.06.14 PM</span><span class=\"informations\">1652×552 43.9 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>\n<ol start=\"2\">\n<li>Na parte inferior da tela de edição, clique no botão <code>remove</code> para desanexar a página do worker da rota.</li>\n</ol>\n<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/e/9/6/e96be50fae2b89573431e5fa7d8583edf406c5a3.png\" data-download-href=\"/uploads/short-url/xiWpFMh5L38K4l7Eo8UXhWBA6sj.png?dl=1\" title=\"Screenshot 2026-08-01 at 5.09.01 PM\"><img src=\"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/e/9/6/e96be50fae2b89573431e5fa7d8583edf406c5a3_2_422x375.png\" alt=\"Screenshot 2026-08-01 at 5.09.01 PM\" data-base62-sha1=\"xiWpFMh5L38K4l7Eo8UXhWBA6sj\" width=\"422\" height=\"375\" srcset=\"https://global.discourse-cdn.com/meta/optimized/4X/e/9/6/e96be50fae2b89573431e5fa7d8583edf406c5a3_2_422x375.png, https://global.discourse-cdn.com/meta/optimized/4X/e/9/6/e96be50fae2b89573431e5fa7d8583edf406c5a3_2_633x562.png 1.5x, https://global.discourse-cdn.com/meta/original/4X/e/9/6/e96be50fae2b89573431e5fa7d8583edf406c5a3.png 2x\" data-dominant-color=\"E8E5E6\" aria-description=\"Uma janela de edição de rota mostra um botão 'Remove' destacado por uma seta vermelha. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">Screenshot 2026-08-01 at 5.09.01 PM</span><span class=\"informations\">742×658 40.5 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>\n<ol start=\"3\">\n<li>Não se preocupe, o código do worker em si não será excluído, apenas a regra de roteamento. Da próxima vez que você fizer uma reconstrução/atualização, basta adicioná-lo novamente como na <a href=\"https://meta.discourse.org/t/maintenance-page-workaround-can-this-be-done/408967/6#p-2017547-step-2-add-the-route-2\">Etapa 2 acima</a>.</li>\n</ol>\n<p>Se você estiver em um plano pago do Cloudflare, não há nada com que se preocupar. No entanto, nesse caso, você pode usar as páginas de erro do Cloudflare em vez de uma página de worker… (eu mencionei que o Cloudflare é bastante complexo? LOL)</p>\n<h4><a name=\"warning-configurao-avanada-de-administrador-abaixo-1\" class=\"anchor\" href=\"#warning-configurao-avanada-de-administrador-abaixo-1\" aria-label=\"Heading link\"></a><img src=\"https://emoji.discourse-cdn.com/twitter/warning.png?v=15\" title=\":warning:\" class=\"emoji\" alt=\":warning:\" loading=\"lazy\" width=\"20\" height=\"20\"> configuração avançada de administrador abaixo</h4>\n<p>Se alguém quiser automatizar totalmente suas atualizações no plano gratuito, deve usar um token de API do Cloudflare, seu ID de zona e um comando <code>curl</code> para obter o <code>route id</code> (ID da rota) do worker. Em seguida, edite o script <code>/root/update-web.sh</code> com algumas coisas mais divertidas para ativar e desativar a rota do worker automaticamente:</p>\n<pre><code class=\"lang-plaintext\">#!/bin/bash\ncd /var/discourse\n\nCF_TOKEN=\"your_actual_token_here\" #&lt;---Token de API do Cloudflare\nZONE_ID=\"xxxx\" #&lt;---da sua página de perfil do Cloudflare\nROUTE_ID=\"xxxx\"\nWORKER_NAME=\"my-site-maintenance-page\"\n\necho \"➡️ Baixando os scripts mais recentes do Docker do Discourse...\"\ngit pull\n\necho \"➡️ Iniciando o container web novo em segundo plano...\"\n./launcher bootstrap web_only\n\nif [ $? -eq 0 ]; then\n    echo \"✅ Bootstrap bem-sucedido!\"\n    \n    # Ativar o Worker de Manutenção do Cloudflare\n    echo \"🚧 Habilitando a Página de Manutenção...\"\n    curl -s -X PUT \"https://api.cloudflare.com/client/v4/zones/$ZONE_ID/workers/routes/$ROUTE_ID\" \\\n         -H \"Authorization: Bearer $CF_TOKEN\" \\\n         -H \"Content-Type: application/json\" \\\n         --data '{\"pattern\":\"*your-site.com/*\",\"script\":\"'$WORKER_NAME'\"}' &gt; /dev/null\n\n    # Trocar os containers (Janela de indisponibilidade de 30 segundos)\n    echo \"🔄 Trocando containers...\"\n    ./launcher destroy web_only &amp;&amp; ./launcher start web_only\n    \n    # Desativar o Worker de Manutenção do Cloudflare\n    echo \"🌍 Desabilitando a Página de Manutenção...\"\n    curl -s -X PUT \"https://api.cloudflare.com/client/v4/zones/$ZONE_ID/workers/routes/$ROUTE_ID\" \\\n         -H \"Authorization: Bearer $CF_TOKEN\" \\\n         -H \"Content-Type: application/json\" \\\n         --data '{\"pattern\":\"*your-site.com/*\",\"script\":null}' &gt; /dev/null\n\n    echo \"🚀 Concluído! Site atualizado com zero indisponibilidade visível.\"\nelse\n    echo \"❌ Bootstrap falhou! Abortando a troca para manter o site atual online.\"\nfi \n</code></pre>\n<p>Eu uso a versão anterior do script porque não me importo em automatizar tudo e gosto de estar presente para fazer atualizações/reconstruções. Eu apenas adiciono a rota do worker logo antes de fazer uma atualização e a removo depois. Leva apenas alguns segundos para fazer.</p>\n<p>Minhas etapas gerais são:</p>\n<ol>\n<li>Adicionar a rota do worker no Cloudflare</li>\n<li>Fazer SSH no Hetzner</li>\n<li>Fazer quaisquer atualizações do sistema (ex: <code>sudo apt update &amp;&amp; sudo apt upgrade -y</code>, e reiniciar o servidor se necessário)</li>\n<li>Fazer SSH novamente se precisei reiniciar</li>\n<li>Executar <code>./update-web.sh</code></li>\n<li>Remover a rota do worker no Cloudflare</li>\n</ol>","post_number":23,"post_type":1,"posts_count":22,"updated_at":"2026-08-02T03:22:54.494Z","reply_count":0,"reply_to_post_number":21,"quote_count":1,"incoming_link_count":0,"reads":7,"readers_count":6,"score":1.4,"yours":false,"topic_id":408967,"topic_slug":"maintenance-page-workaround-can-this-be-done","topic_title":"Maintenance page workaround - can this be done?","topic_html_title":"Maintenance page workaround - can this be done?","category_id":31,"display_username":"Lillian ","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":6,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","bookmarked":false,"raw":"[quote=\"alltiagocom, post:21, topic:408967\"]\nWhy do you add and delete workers route page, if leaving them is not an issue? So, if I do add the maintenance page, can I really just set it up once, and from that moment on, I always just SSH my server via Terminal and do everything there like I do with a single container, without ever having to go to Cloudflare?\n[/quote]\n\nhaha i am glad you asked because i did not take the time to explain this part (i should have - there is a lot to explain and Cloudflare is complex!) \n\nwhen the workers route page is set, every single image load and page view on the forum is routing through that worker.\n\nthe Cloudflare free CDN plan includes free [100,000 requests/day limit on a worker route](https://developers.cloudflare.com/workers/platform/pricing/#workers).\n\nthus, if you have a relatively busy forum, in order to prevent hitting your free tier cap in a day it is a good idea not to have it on all the time.  \n\nso this is just the worker route, not the maintenance page - you can leave the maintenance page up the whole time - it does not get hit unless you have the worker route on it. this is just that [Step 2 part where you assigned the route](https://meta.discourse.org/t/maintenance-page-workaround-can-this-be-done/408967/6#p-2017547-step-2-add-the-route-2) (which is easy to setup and delete). unless you are using a cloudflare paid plan, it is thus good practice to only have it on when you are doing your own maintenance.\n\n1. go to the Cloudflare workers route page for your domain and click the button on the right side of the route.\n\n![Screenshot 2026-08-01 at 5.06.14 PM|690x230](upload://ozisuc3AWG3rmiJbc0LDO3cpCyN.png)\n\n2. at the bottom of the edit screen, click the `remove` button to detach the worker page from the route.\n\n![Screenshot 2026-08-01 at 5.09.01 PM|563x500, 75%](upload://xiWpFMh5L38K4l7Eo8UXhWBA6sj.png)\n\n\n3. don’t worry, the worker code itself won’t be deleted, just the routing rule.  then next time you do your rebuilt / update, you can just add it again like in [Step 2 above](https://meta.discourse.org/t/maintenance-page-workaround-can-this-be-done/408967/6#p-2017547-step-2-add-the-route-2).\n\nif you are on a paid Cloudflare plan then you have nothing to worry about. However, then you can use the Cloudflare error pages instead of a workers page... (did i mention that Cloudflare is pretty complex? LOL)\n\n\nmy general steps are:\n\n1. add the workers route on Cloudflare\n2. ssh into hetzner \n3. do any system updates (eg: `sudo apt update && sudo apt upgrade -y`), then reboot the server if necessary (i use `shutdown -r now` to do a full shut down and restart)\n4. ssh in again if i needed to restart my server\n5. run `./update-web.sh`\n6. once the shell script is complete and my forum loads again, i remove the workers route on Cloudflare","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":127856,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"haha i am glad you asked because i did not take the time to explain this part (i should have - there is a lot to explain and Cloudflare is complex!) \nwhen the workers route page is set, every single image load and page view on the forum is routing through that worker. \nthe Cloudflare free CDN plan &hellip;","truncated":true,"post_url":"/t/maintenance-page-workaround-can-this-be-done/408967/23","locale":"en","is_localized":true,"language":"en","localization_outdated":true,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017707,"name":"Kane York","username":"riking","avatar_template":"/user_avatar/meta.discourse.org/riking/{size}/170938_2.png","created_at":"2026-08-01T23:34:52.492Z","cooked":"<p>Obrigado pela dica, parece que isso se deve ao script de usuário <code>better-osm-org</code>!</p>\n<p>(Verifiquei no Meta, não foi possível reproduzir, desativei as extensões e me lembrei do script.)</p>","post_number":3,"post_type":1,"posts_count":3,"updated_at":"2026-08-01T23:34:52.492Z","reply_count":0,"reply_to_post_number":2,"quote_count":0,"incoming_link_count":0,"reads":9,"readers_count":8,"score":46.8,"yours":false,"topic_id":409013,"topic_slug":"mobile-firefox-scrolling-to-bottom-of-topic-on-screen-lock","topic_title":"Mobile Firefox scrolling to bottom of topic on screen lock","topic_html_title":"Mobile Firefox scrolling to bottom of topic on screen lock","category_id":6,"display_username":"Kane York","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","reply_to_user":{"id":113000,"username":"chapoi","name":"","avatar_template":"/user_avatar/meta.discourse.org/chapoi/{size}/537252_2.png"},"bookmarked":false,"raw":"Thank you for the prompt, it appears that this is due to the `better-osm-org` user script! \n\n(Checked on Meta, no repro, disabled extensions and was reminded of the script.)","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":6626,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Thank you for the prompt, it appears that this is due to the better-osm-org user script! \n(Checked on Meta, no repro, disabled extensions and was reminded of the script.)","truncated":true,"post_url":"/t/mobile-firefox-scrolling-to-bottom-of-topic-on-screen-lock/409013/3","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":true,"topic_accepted_answer":true},{"id":2017704,"name":"","username":"satonotdead","avatar_template":"/user_avatar/meta.discourse.org/satonotdead/{size}/447830_2.png","created_at":"2026-08-01T21:52:01.085Z","cooked":"<p>Eu entendo que esse tipo de filtro funciona para usuários muito específicos, mas a maioria só quer ver:</p>\n<ol>\n<li>Categorias com tudo dentro delas (ou apenas essas categorias, se os administradores desativarem a listagem de ‘subcategorias’ nelas).</li>\n<li>Subcategorias específicas sem nada mais.</li>\n</ol>\n<p>Então, acho que o filtro de busca poderia ser útil para aqueles que desejam um filtro mais granular.</p>\n<p>Ou uma simples ‘marcação’ em cada subcategoria também seria uma boa opção para quem quer ler algumas subcategorias nas listagens de tópicos das categorias também.</p>\n<p>Apenas pensamentos em voz alta, acho que isso precisa ser proposto/discutido. Obrigado por compartilhar seu caso de uso <img src=\"https://emoji.discourse-cdn.com/twitter/ok_hand.png?v=15\" title=\":ok_hand:\" class=\"emoji\" alt=\":ok_hand:\" loading=\"lazy\" width=\"20\" height=\"20\"></p>","post_number":5,"post_type":1,"posts_count":5,"updated_at":"2026-08-01T21:53:02.460Z","reply_count":0,"reply_to_post_number":3,"quote_count":0,"incoming_link_count":0,"reads":7,"readers_count":6,"score":1.4,"yours":false,"topic_id":409046,"topic_slug":"about-nesting-subcategories-on-dropdown","topic_title":"About nesting subcategories on dropdown","topic_html_title":"About nesting subcategories on dropdown","category_id":9,"display_username":"","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","reply_to_user":{"id":95552,"username":"Moin","name":"","avatar_template":"/user_avatar/meta.discourse.org/moin/{size}/554653_2.png"},"bookmarked":false,"raw":"I understand that type of filters works for very specific users but the majority just want to see:\n\n1) Categories with everything inside (or just that categories if admins disabled the 'subcategories' listing on them).\n2) Specific subcategories without anything else.\n\nThen I think the search filter could be useful for those who want to proper granular filter.\n\nOr a simple 'tick' on every subcategory can be also a good to have for those who wants to read some subcategories on the categories topic listings as well.\n\nJust loud thinking, I think it needs to be proposed/discussed. Thanks for sharing your use-case 👌","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":71041,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I understand that type of filters works for very specific users but the majority just want to see: \n\nCategories with everything inside (or just that categories if admins disabled the ‘subcategories’ listing on them).\nSpecific subcategories without anything else.\n\nThen I think the search filter could&hellip;","truncated":true,"post_url":"/t/about-nesting-subcategories-on-dropdown/409046/5","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017698,"name":"Tiago","username":"alltiagocom","avatar_template":"/user_avatar/meta.discourse.org/alltiagocom/{size}/492709_2.png","created_at":"2026-08-01T21:16:09.883Z","cooked":"<p>A mesma coisa:</p>\n<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/b/d/8/bd811244282b0da35bf1c9646a443b4107868295.png\" data-download-href=\"/uploads/short-url/r2qM6ZrlKiZMczIIXB9ueloF2yV.png?dl=1\" title=\"image\"><img src=\"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/4X/b/d/8/bd811244282b0da35bf1c9646a443b4107868295.png\" alt=\"image\" data-base62-sha1=\"r2qM6ZrlKiZMczIIXB9ueloF2yV\" width=\"274\" height=\"500\" data-dominant-color=\"2A2A2A\" aria-description=\"A interface de configuração de perfil do usuário 'alltiagocom', exibindo opções para personalização de tema, paleta de cores e tamanho do texto. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">286×521 22.1 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>\n<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/d/c/b/dcb47aeff57c1fd75cdfaf909120a2f056e331c5.png\" data-download-href=\"/uploads/short-url/vurIFY2QqRAEVDnOOsw1P1LRp89.png?dl=1\" title=\"image\"><img src=\"https://global.discourse-cdn.com/meta/original/4X/d/c/b/dcb47aeff57c1fd75cdfaf909120a2f056e331c5.png\" alt=\"image\" data-base62-sha1=\"vurIFY2QqRAEVDnOOsw1P1LRp89\" width=\"589\" height=\"372\" aria-description=\"A interface de software exibindo uma lista de categorias na barra lateral esquerda e comentários de usuários na área principal à direita. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">589×372 28.8 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>\n<p>Não tão brilhante quanto o branco puro, mas ainda assim não tão bom quanto a minha última imagem, onde o texto tem o mesmo cinza da barra lateral.</p>\n<p>Mas, mesmo assim, eu gosto mais do tema Meta Branded, então a Foundation não seria uma opção nesse caso de qualquer forma.</p>","post_number":12,"post_type":1,"posts_count":12,"updated_at":"2026-08-01T21:17:49.661Z","reply_count":0,"reply_to_post_number":11,"quote_count":0,"incoming_link_count":0,"reads":8,"readers_count":7,"score":16.6,"yours":false,"topic_id":408966,"topic_slug":"remove-the-pure-white-on-text","topic_title":"Remove the pure white on text","topic_html_title":"Remove the pure white on text","category_id":9,"display_username":"Tiago","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","reply_to_user":{"id":95552,"username":"Moin","name":"","avatar_template":"/user_avatar/meta.discourse.org/moin/{size}/554653_2.png"},"bookmarked":false,"raw":"Same thing:\n\n![image|274x500](upload://r2qM6ZrlKiZMczIIXB9ueloF2yV.png)\n\n![image|589x372](upload://vurIFY2QqRAEVDnOOsw1P1LRp89.png)\n\nNot as bright as the pure white, but still not as great as my last image where the text is the same gray as the one in the sidebar.\n\nBut still, I like the Meta Branded theme better, so the Foundation would not be an option in this case anyway.","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":171937,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Same thing: \n <a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/b/d/8/bd811244282b0da35bf1c9646a443b4107868295.png\" data-download-href=\"/uploads/short-url/r2qM6ZrlKiZMczIIXB9ueloF2yV.png?dl=1\" title=\"image\" rel=\"noopener nofollow ugc\">[image]</a> \n <a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/d/c/b/dcb47aeff57c1fd75cdfaf909120a2f056e331c5.png\" data-download-href=\"/uploads/short-url/vurIFY2QqRAEVDnOOsw1P1LRp89.png?dl=1\" title=\"image\" rel=\"noopener nofollow ugc\">[image]</a> \nNot as bright as the pure white, but still not as great as my last image where the text is the same gray as the one in the sidebar. \nBut still, I like the Meta Branded theme better, so the Foundation would not be an option in this case anyway.","truncated":true,"post_url":"/t/remove-the-pure-white-on-text/408966/12","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017697,"name":"system","username":"system","avatar_template":"/user_avatar/meta.discourse.org/system/{size}/443519_2.png","created_at":"2026-08-01T21:01:14.576Z","cooked":"<h1><a name=\"p-2017697-today-on-metadiscourseorg-1\" class=\"anchor\" href=\"#p-2017697-today-on-metadiscourseorg-1\" aria-label=\"Heading link\"></a>Today on <a href=\"http://meta.discourse.org\">meta.discourse.org</a>…</h1>\n<h2><a name=\"p-2017697-key-stats-2\" class=\"anchor\" href=\"#p-2017697-key-stats-2\" aria-label=\"Heading link\"></a>Key Stats</h2>\n<p>In the last 24 hours, the community saw <strong>166 new posts</strong> across <strong>49 new topics</strong>, generating <strong>180 likes</strong>. The most active members were:</p>\n<ul>\n<li><a class=\"mention\" href=\"/u/moin\">Moin</a> (18 posts, 21 likes)</li>\n<li><a class=\"mention\" href=\"/u/lilly\">Lilly</a> (7 posts, 17 likes)</li>\n<li><a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> (24 posts, 15 likes)</li>\n<li><a class=\"mention\" href=\"/u/zogstrip\">Zogstrip</a> (4 posts, 14 likes)</li>\n<li><a class=\"mention\" href=\"/u/merefield\">Merefield</a> (7 posts, 12 likes)</li>\n</ul>\n<p>From hosting discussions to UX refinements, it was a day of practical problem-solving and community collaboration.</p>\n<hr>\n<h2><a name=\"p-2017697-interesting-topics-3\" class=\"anchor\" href=\"#p-2017697-interesting-topics-3\" aria-label=\"Heading link\"></a>Interesting Topics</h2>\n<h3><a name=\"p-2017697-self-hosting-4\" class=\"anchor\" href=\"#p-2017697-self-hosting-4\" aria-label=\"Heading link\"></a><span class=\"hashtag-raw\">#Self-hosting</span></h3>\n<ul>\n<li>\n<p><a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> opened a <a href=\"https://meta.discourse.org/t/-/408967?silent=true\">detailed discussion on implementing a maintenance page</a>, exploring a Cloudflare Worker solution suggested by Claude. <a class=\"mention\" href=\"/u/lilly\">Lilly</a> provided a comprehensive, step-by-step guide using Workers to intercept 502 errors during container swaps, while <a class=\"mention\" href=\"/u/merefield\">Merefield</a> argued the dual-container approach makes a maintenance page unnecessary. The thread became a rich debate on balancing user experience, server cost, and implementation complexity. <a href=\"https://meta.discourse.org/t/-/408967?silent=true\">read more</a></p>\n</li>\n<li>\n<p>In <a href=\"https://meta.discourse.org/t/-/409037?silent=true\">Any cheaper alternatives to Hetzner?</a>, <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> lamented the rising cost of Hetzner VPS. <a class=\"mention\" href=\"/u/canapin\">Canapin</a> pointed out the cheaper CAX line, and <a class=\"mention\" href=\"/u/lilly\">Lilly</a> shared a bash script that automatically posts a Discourse topic when budget 8GB instances become available. <a class=\"mention\" href=\"/u/tealk\">Tealk</a> and <a class=\"mention\" href=\"/u/david_ghost\">David_Ghost</a> weighed in with alternatives like Netcup and Advinservers, sparking a wide-ranging conversation about the true cost of self-hosting. <a href=\"https://meta.discourse.org/t/-/409037?silent=true\">read more</a></p>\n</li>\n</ul>\n<h3><a name=\"p-2017697-ux-5\" class=\"anchor\" href=\"#p-2017697-ux-5\" aria-label=\"Heading link\"></a><a class=\"hashtag-cooked\" href=\"/tag/ux/835\" data-type=\"tag\" data-slug=\"ux\" data-id=\"835\" data-style-type=\"icon\" data-icon=\"tag\"><span class=\"hashtag-icon-placeholder\"><svg class=\"fa d-icon d-icon-square-full svg-icon svg-node\"><use href=\"#square-full\"></use></svg></span><span>ux</span></a></h3>\n<ul>\n<li>\n<p><a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> <a href=\"https://meta.discourse.org/t/-/408966?silent=true\">highlighted the harsh pure white text</a> in dark mode, suggesting the sidebar link color as a softer alternative. <a class=\"mention\" href=\"/u/awesomerobot\">Awesomerobot</a> and <a class=\"mention\" href=\"/u/moin\">Moin</a> confirmed that while the default “dark” palette uses <span class=\"hashtag-raw\">#ddd</span>, the newer Horizon palettes use <span class=\"hashtag-raw\">#fff</span>, and <a class=\"mention\" href=\"/u/moin\">Moin</a> guided users on selecting the right palette in the Foundation theme. This led to a nuanced discussion about contrast and accessibility. <a href=\"https://meta.discourse.org/t/-/408966?silent=true\">read more</a></p>\n</li>\n<li>\n<p>In <a href=\"https://meta.discourse.org/t/-/409034?silent=true\">“Start Updating” button lacks a button styling</a>, <a class=\"mention\" href=\"/u/canapin\">Canapin</a> pointed out that the update button looks too plain. <a class=\"mention\" href=\"/u/moin\">Moin</a> showed that it previously had a grey background, and that disabling the “modernize Foundation” change restores it. The report was quickly acknowledged as a valid UX regression. <a href=\"https://meta.discourse.org/t/-/409034?silent=true\">read more</a></p>\n</li>\n<li>\n<p><a class=\"mention\" href=\"/u/satonotdead\">Satonotdead</a> asked about <a href=\"https://meta.discourse.org/t/-/409046?silent=true\">nesting subcategories in the category dropdown</a> to simplify navigation. <a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a> agreed it’s worth exploring, and <a class=\"mention\" href=\"/u/moin\">Moin</a> delved into the technical challenges of filtering subcategories when they’re merged into a single dropdown. <a href=\"https://meta.discourse.org/t/-/409046?silent=true\">read more</a></p>\n</li>\n</ul>\n<h3><a name=\"p-2017697-plugin-6\" class=\"anchor\" href=\"#p-2017697-plugin-6\" aria-label=\"Heading link\"></a><span class=\"hashtag-raw\">#Plugin</span></h3>\n<ul>\n<li>\n<p><a class=\"mention\" href=\"/u/falco\">Falco</a> showcased <a href=\"https://meta.discourse.org/t/-/389056?silent=true\">significant updates to the Resenha voice rooms plugin</a>: support for private STUN/TURN via coturn auth, session recording with LiveKit, flagging participants, right-click menus, and opt-in higher bitrate. <a class=\"mention\" href=\"/u/satonotdead\">Satonotdead</a> asked about linking to specific rooms, and <a class=\"mention\" href=\"/u/falco\">Falco</a> confirmed direct URLs are now possible. <a class=\"mention\" href=\"/u/nathank\">Nathank</a> reported and received fixes for two issues. <a href=\"https://meta.discourse.org/t/-/389056?silent=true\">read more</a></p>\n</li>\n<li>\n<p><a class=\"mention\" href=\"/u/lou\">Lou</a> introduced the <a href=\"https://meta.discourse.org/t/-/409003?silent=true\">Event Duplicator plugin</a>, which automates duplicating calendar events into new time periods. <a class=\"mention\" href=\"/u/nathank\">Nathank</a> requested monthly duplication support, and within hours <a class=\"mention\" href=\"/u/lou\">Lou</a> shipped v1.1.0 with a configurable “shift (months)” field. The plugin is a practical solution for recurring events. <a href=\"https://meta.discourse.org/t/-/409003?silent=true\">read more</a></p>\n</li>\n</ul>\n<h3><a name=\"p-2017697-community-building-7\" class=\"anchor\" href=\"#p-2017697-community-building-7\" aria-label=\"Heading link\"></a><span class=\"hashtag-raw\">#Community</span> Building</h3>\n<ul>\n<li>\n<p>The long-running conversation about <a href=\"https://meta.discourse.org/t/-/405401?silent=true\">declining support-forum activity</a> continued passionately. <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> and <a class=\"mention\" href=\"/u/nickdb\">Nickdb</a> debated whether AI can replace forums; <a class=\"mention\" href=\"/u/tris20\">Tris20</a> expressed fatigue with AI-generated content, longing for “messy human text.” The thread remains a thoughtful reflection on the value of authentic human interaction. <a href=\"https://meta.discourse.org/t/-/405401?silent=true\">read more</a></p>\n</li>\n<li>\n<p><a class=\"mention\" href=\"/u/nickdb\">Nickdb</a> shared insights on <a href=\"https://meta.discourse.org/t/-/405659?silent=true\">running a forum that forbids AI content</a>, including low-cost AI detection tools. <a class=\"mention\" href=\"/u/jordan451\">Jordan451</a> noted the irony of requiring humans to prove they’re human. The discussion raised important questions about authenticity in online communities. <a href=\"https://meta.discourse.org/t/-/405659?silent=true\">read more</a></p>\n</li>\n</ul>\n<h3><a name=\"p-2017697-feature-8\" class=\"anchor\" href=\"#p-2017697-feature-8\" aria-label=\"Heading link\"></a><span class=\"hashtag-raw\">#Feature</span></h3>\n<ul>\n<li>\n<p><a class=\"mention\" href=\"/u/zogstrip\">Zogstrip</a> and <a class=\"mention\" href=\"/u/renato\">Renato</a> collaborated on <a href=\"https://meta.discourse.org/t/-/408827?silent=true\">adding input support for manually mapped boolean fields in workflows</a>. <a class=\"mention\" href=\"/u/per1234\">Per1234</a> thanked them for the rapid implementation, noting the new Workflows plugin is very useful. Two PRs were merged to cover the same feature. <a href=\"https://meta.discourse.org/t/-/408827?silent=true\">read more</a></p>\n</li>\n<li>\n<p>In a <a href=\"https://meta.discourse.org/t/-/316008?silent=true\">request to provide discounts based on trust levels</a>, <a class=\"mention\" href=\"/u/satonotdead\">Satonotdead</a> wanted automatic lifetime discounts for specific groups. <a class=\"mention\" href=\"/u/pfaffman\">Pfaffman</a> suggested using coupons or a hidden product via CSS, but <a class=\"mention\" href=\"/u/satonotdead\">Satonotdead</a> stressed that zero-friction recognition converts ~50% better. The discussion continues on the best technical approach. <a href=\"https://meta.discourse.org/t/-/316008?silent=true\">read more</a></p>\n</li>\n</ul>\n<h3><a name=\"p-2017697-announcements-9\" class=\"anchor\" href=\"#p-2017697-announcements-9\" aria-label=\"Heading link\"></a><span class=\"hashtag-raw\">#Announcements</span></h3>\n<ul>\n<li>\n<p><a class=\"mention\" href=\"/u/david\">David</a> announced <a href=\"https://meta.discourse.org/t/-/409017?silent=true\">intermediate releases for July 31st, 2026</a>, including critical security fixes across several branches. <a class=\"mention\" href=\"/u/ecki\">Ecki</a> noted an unexpected jump from 2026.1.6 to 2026.7.1 during rebuild, which <a class=\"mention\" href=\"/u/david\">David</a> clarified was due to the monthly ESR release. <a href=\"https://meta.discourse.org/t/-/409017?silent=true\">read more</a></p>\n</li>\n<li>\n<p>The <a href=\"https://meta.discourse.org/t/-/385007?silent=true\">Discourse ID availability announcement</a> saw <a class=\"mention\" href=\"/u/karthik_k1\">Karthik_K1</a> reporting that the login page displays “Discourse” instead of their forum name. <a class=\"mention\" href=\"/u/moin\">Moin</a> suggested it might take time to update, but the issue persisted, prompting further investigation. <a href=\"https://meta.discourse.org/t/-/385007?silent=true\">read more</a></p>\n</li>\n</ul>\n<h3><a name=\"p-2017697-bug-10\" class=\"anchor\" href=\"#p-2017697-bug-10\" aria-label=\"Heading link\"></a><a class=\"hashtag-cooked\" href=\"/tag/bug/1056\" data-type=\"tag\" data-slug=\"bug\" data-id=\"1056\" data-style-type=\"icon\" data-icon=\"tag\"><span class=\"hashtag-icon-placeholder\"><svg class=\"fa d-icon d-icon-square-full svg-icon svg-node\"><use href=\"#square-full\"></use></svg></span><span>bug</span></a></h3>\n<ul>\n<li><a class=\"mention\" href=\"/u/zogstrip\">Zogstrip</a> identified that <a href=\"https://meta.discourse.org/t/-/400459?silent=true\">the forum opening on old topics</a> was caused by <code>bfcache-compatible</code> headers, and submitted a fix (PR <span class=\"hashtag-raw\">#42207</span>). <a class=\"mention\" href=\"/u/natedhaliwal\">NateDhaliwal</a> expressed relief: “Finally, a fix!!” <a href=\"https://meta.discourse.org/t/-/400459?silent=true\">read more</a></li>\n</ul>\n<h3><a name=\"p-2017697-support-11\" class=\"anchor\" href=\"#p-2017697-support-11\" aria-label=\"Heading link\"></a><a class=\"hashtag-cooked\" href=\"/c/support/6\" data-type=\"category\" data-slug=\"support\" data-id=\"6\" data-style-type=\"icon\" data-icon=\"circle-question\"><span class=\"hashtag-icon-placeholder\"><svg class=\"fa d-icon d-icon-square-full svg-icon svg-node\"><use href=\"#square-full\"></use></svg></span><span>Support</span></a></h3>\n<ul>\n<li><a class=\"mention\" href=\"/u/riking\">Riking</a> reported a <a href=\"https://meta.discourse.org/t/-/409013?silent=true\">mobile Firefox bug where scrolling jumps to bottom on screen lock</a>. <a class=\"mention\" href=\"/u/chapoi\">Chapoi</a> asked to test in <a href=\"https://meta.discourse.org/t/53504?silent=true\">safe mode</a>, and the community is investigating whether it reproduces on Meta. <a href=\"https://meta.discourse.org/t/-/409013?silent=true\">read more</a></li>\n</ul>\n<hr>\n<h2><a name=\"p-2017697-activity-by-the-a-classmention-hrefuteamteama-group-12\" class=\"anchor\" href=\"#p-2017697-activity-by-the-a-classmention-hrefuteamteama-group-12\" aria-label=\"Heading link\"></a>Activity by the <a class=\"mention\" href=\"/u/team\">Team</a> Group</h2>\n<ul>\n<li>\n<p><a class=\"mention\" href=\"/u/david\">David</a> posted the <a href=\"https://meta.discourse.org/t/-/409017?silent=true\">July 31st intermediate releases</a>, linking to changelogs for v2026.8.0-latest, v2026.7.1, v2026.6.2, and v2026.1.7. He also clarified how the ESR release affected upgrade paths. <a href=\"https://meta.discourse.org/t/-/409017/3?silent=true\">read more</a></p>\n</li>\n<li>\n<p><a class=\"mention\" href=\"/u/zogstrip\">Zogstrip</a> made several impactful contributions: he fixed the <a href=\"https://meta.discourse.org/t/-/400459?silent=true\">forum opening old topics bug</a> with a PR, added a <a href=\"https://meta.discourse.org/t/-/225660?silent=true\">“Suspend” action to review queue options</a> (PR <span class=\"hashtag-raw\">#42205</span>), and pushed a <a href=\"https://meta.discourse.org/t/-/408827?silent=true\">workaround for boolean field mapping</a> alongside <a class=\"mention\" href=\"/u/renato\">Renato</a>. <a href=\"https://meta.discourse.org/t/-/408827?silent=true\">read more</a></p>\n</li>\n<li>\n<p><a class=\"mention\" href=\"/u/sam\">Sam</a> responded in the <a href=\"https://meta.discourse.org/t/-/407100?silent=true\">Discourse Workflows topic</a>, mentioning he is spiking a move to the interactions API for better Gemini model stability. <a href=\"https://meta.discourse.org/t/-/407100/10?silent=true\">read more</a></p>\n</li>\n<li>\n<p><a class=\"mention\" href=\"/u/awesomerobot\">Awesomerobot</a> joined the <a href=\"https://meta.discourse.org/t/-/408966?silent=true\">dark contrast discussion</a>, noting that the default dark palette uses <span class=\"hashtag-raw\">#ddd</span> and offering to investigate the Meta branded theme. <a href=\"https://meta.discourse.org/t/-/408966/3?silent=true\">read more</a></p>\n</li>\n<li>\n<p><a class=\"mention\" href=\"/u/chapoi\">Chapoi</a> requested testing in <a href=\"https://meta.discourse.org/t/53504?silent=true\">safe mode</a> for the <a href=\"https://meta.discourse.org/t/-/409013?silent=true\">mobile Firefox scrolling bug</a> and provided guidance on the <a href=\"https://meta.discourse.org/t/-/404528?silent=true\">admin dashboard redesign</a> location of version info. <a href=\"https://meta.discourse.org/t/-/409013/2?silent=true\">read more</a></p>\n</li>\n<li>\n<p><a class=\"mention\" href=\"/u/markvanlan\">Markvanlan</a> clarified the expected behavior of <a href=\"https://meta.discourse.org/t/-/408969?silent=true\">nested replies appearing at the top</a> after posting, and noted the suggestion for a scroll-to-post behavior. <a href=\"https://meta.discourse.org/t/-/408969/2?silent=true\">read more</a></p>\n</li>\n</ul>\n<hr>\n<p>That’s a wrap on a day full of server hunts, CSS tweaks, and a fair share of gossip about AI—who knew the self‑hosting crowd could make VPS pricing so entertaining?</p>","post_number":941,"post_type":1,"posts_count":683,"updated_at":"2026-08-01T21:01:14.576Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":3,"readers_count":2,"score":45.6,"yours":false,"topic_id":291850,"topic_slug":"daily-summary-9pm-utc","topic_title":"Daily Summary (9pm UTC)","topic_html_title":"Daily Summary (9pm UTC)","category_id":157,"display_username":"system","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":null,"bookmarked":false,"raw":"# Today on meta.discourse.org...\n\n## Key Stats\n\nIn the last 24 hours, the community saw **166 new posts** across **49 new topics**, generating **180 likes**. The most active members were:\n\n- <a class=\"mention\" href=\"/u/moin\">Moin</a> (18 posts, 21 likes)\n- <a class=\"mention\" href=\"/u/lilly\">Lilly</a> (7 posts, 17 likes)\n- <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> (24 posts, 15 likes)\n- <a class=\"mention\" href=\"/u/zogstrip\">Zogstrip</a> (4 posts, 14 likes)\n- <a class=\"mention\" href=\"/u/merefield\">Merefield</a> (7 posts, 12 likes)\n\nFrom hosting discussions to UX refinements, it was a day of practical problem-solving and community collaboration.\n\n---\n\n## Interesting Topics\n\n### #Self-hosting\n\n- <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> opened a [detailed discussion on implementing a maintenance page](https://meta.discourse.org/t/-/408967?silent=true), exploring a Cloudflare Worker solution suggested by Claude. <a class=\"mention\" href=\"/u/lilly\">Lilly</a> provided a comprehensive, step-by-step guide using Workers to intercept 502 errors during container swaps, while <a class=\"mention\" href=\"/u/merefield\">Merefield</a> argued the dual-container approach makes a maintenance page unnecessary. The thread became a rich debate on balancing user experience, server cost, and implementation complexity. [read more](https://meta.discourse.org/t/-/408967?silent=true)\n\n- In [Any cheaper alternatives to Hetzner?](https://meta.discourse.org/t/-/409037?silent=true), <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> lamented the rising cost of Hetzner VPS. <a class=\"mention\" href=\"/u/canapin\">Canapin</a> pointed out the cheaper CAX line, and <a class=\"mention\" href=\"/u/lilly\">Lilly</a> shared a bash script that automatically posts a Discourse topic when budget 8GB instances become available. <a class=\"mention\" href=\"/u/tealk\">Tealk</a> and <a class=\"mention\" href=\"/u/david_ghost\">David_Ghost</a> weighed in with alternatives like Netcup and Advinservers, sparking a wide-ranging conversation about the true cost of self-hosting. [read more](https://meta.discourse.org/t/-/409037?silent=true)\n\n### #UX\n\n- <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> [highlighted the harsh pure white text](https://meta.discourse.org/t/-/408966?silent=true) in dark mode, suggesting the sidebar link color as a softer alternative. <a class=\"mention\" href=\"/u/awesomerobot\">Awesomerobot</a> and <a class=\"mention\" href=\"/u/moin\">Moin</a> confirmed that while the default \"dark\" palette uses #ddd, the newer Horizon palettes use #fff, and <a class=\"mention\" href=\"/u/moin\">Moin</a> guided users on selecting the right palette in the Foundation theme. This led to a nuanced discussion about contrast and accessibility. [read more](https://meta.discourse.org/t/-/408966?silent=true)\n\n- In [“Start Updating” button lacks a button styling](https://meta.discourse.org/t/-/409034?silent=true), <a class=\"mention\" href=\"/u/canapin\">Canapin</a> pointed out that the update button looks too plain. <a class=\"mention\" href=\"/u/moin\">Moin</a> showed that it previously had a grey background, and that disabling the \"modernize Foundation\" change restores it. The report was quickly acknowledged as a valid UX regression. [read more](https://meta.discourse.org/t/-/409034?silent=true)\n\n- <a class=\"mention\" href=\"/u/satonotdead\">Satonotdead</a> asked about [nesting subcategories in the category dropdown](https://meta.discourse.org/t/-/409046?silent=true) to simplify navigation. <a class=\"mention\" href=\"/u/mcwumbly\">Mcwumbly</a> agreed it’s worth exploring, and <a class=\"mention\" href=\"/u/moin\">Moin</a> delved into the technical challenges of filtering subcategories when they’re merged into a single dropdown. [read more](https://meta.discourse.org/t/-/409046?silent=true)\n\n### #Plugin\n\n- <a class=\"mention\" href=\"/u/falco\">Falco</a> showcased [significant updates to the Resenha voice rooms plugin](https://meta.discourse.org/t/-/389056?silent=true): support for private STUN/TURN via coturn auth, session recording with LiveKit, flagging participants, right-click menus, and opt-in higher bitrate. <a class=\"mention\" href=\"/u/satonotdead\">Satonotdead</a> asked about linking to specific rooms, and <a class=\"mention\" href=\"/u/falco\">Falco</a> confirmed direct URLs are now possible. <a class=\"mention\" href=\"/u/nathank\">Nathank</a> reported and received fixes for two issues. [read more](https://meta.discourse.org/t/-/389056?silent=true)\n\n- <a class=\"mention\" href=\"/u/lou\">Lou</a> introduced the [Event Duplicator plugin](https://meta.discourse.org/t/-/409003?silent=true), which automates duplicating calendar events into new time periods. <a class=\"mention\" href=\"/u/nathank\">Nathank</a> requested monthly duplication support, and within hours <a class=\"mention\" href=\"/u/lou\">Lou</a> shipped v1.1.0 with a configurable \"shift (months)\" field. The plugin is a practical solution for recurring events. [read more](https://meta.discourse.org/t/-/409003?silent=true)\n\n### #Community Building\n\n- The long-running conversation about [declining support-forum activity](https://meta.discourse.org/t/-/405401?silent=true) continued passionately. <a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> and <a class=\"mention\" href=\"/u/nickdb\">Nickdb</a> debated whether AI can replace forums; <a class=\"mention\" href=\"/u/tris20\">Tris20</a> expressed fatigue with AI-generated content, longing for \"messy human text.\" The thread remains a thoughtful reflection on the value of authentic human interaction. [read more](https://meta.discourse.org/t/-/405401?silent=true)\n\n- <a class=\"mention\" href=\"/u/nickdb\">Nickdb</a> shared insights on [running a forum that forbids AI content](https://meta.discourse.org/t/-/405659?silent=true), including low-cost AI detection tools. <a class=\"mention\" href=\"/u/jordan451\">Jordan451</a> noted the irony of requiring humans to prove they’re human. The discussion raised important questions about authenticity in online communities. [read more](https://meta.discourse.org/t/-/405659?silent=true)\n\n### #Feature\n\n- <a class=\"mention\" href=\"/u/zogstrip\">Zogstrip</a> and <a class=\"mention\" href=\"/u/renato\">Renato</a> collaborated on [adding input support for manually mapped boolean fields in workflows](https://meta.discourse.org/t/-/408827?silent=true). <a class=\"mention\" href=\"/u/per1234\">Per1234</a> thanked them for the rapid implementation, noting the new Workflows plugin is very useful. Two PRs were merged to cover the same feature. [read more](https://meta.discourse.org/t/-/408827?silent=true)\n\n- In a [request to provide discounts based on trust levels](https://meta.discourse.org/t/-/316008?silent=true), <a class=\"mention\" href=\"/u/satonotdead\">Satonotdead</a> wanted automatic lifetime discounts for specific groups. <a class=\"mention\" href=\"/u/pfaffman\">Pfaffman</a> suggested using coupons or a hidden product via CSS, but <a class=\"mention\" href=\"/u/satonotdead\">Satonotdead</a> stressed that zero-friction recognition converts ~50% better. The discussion continues on the best technical approach. [read more](https://meta.discourse.org/t/-/316008?silent=true)\n\n### #Announcements\n\n- <a class=\"mention\" href=\"/u/david\">David</a> announced [intermediate releases for July 31st, 2026](https://meta.discourse.org/t/-/409017?silent=true), including critical security fixes across several branches. <a class=\"mention\" href=\"/u/ecki\">Ecki</a> noted an unexpected jump from 2026.1.6 to 2026.7.1 during rebuild, which <a class=\"mention\" href=\"/u/david\">David</a> clarified was due to the monthly ESR release. [read more](https://meta.discourse.org/t/-/409017?silent=true)\n\n- The [Discourse ID availability announcement](https://meta.discourse.org/t/-/385007?silent=true) saw <a class=\"mention\" href=\"/u/karthik_k1\">Karthik_K1</a> reporting that the login page displays \"Discourse\" instead of their forum name. <a class=\"mention\" href=\"/u/moin\">Moin</a> suggested it might take time to update, but the issue persisted, prompting further investigation. [read more](https://meta.discourse.org/t/-/385007?silent=true)\n\n### #Bug\n\n- <a class=\"mention\" href=\"/u/zogstrip\">Zogstrip</a> identified that [the forum opening on old topics](https://meta.discourse.org/t/-/400459?silent=true) was caused by `bfcache-compatible` headers, and submitted a fix (PR #42207). <a class=\"mention\" href=\"/u/natedhaliwal\">NateDhaliwal</a> expressed relief: \"Finally, a fix!!\" [read more](https://meta.discourse.org/t/-/400459?silent=true)\n\n### #Support\n\n- <a class=\"mention\" href=\"/u/riking\">Riking</a> reported a [mobile Firefox bug where scrolling jumps to bottom on screen lock](https://meta.discourse.org/t/-/409013?silent=true). <a class=\"mention\" href=\"/u/chapoi\">Chapoi</a> asked to test in safe mode, and the community is investigating whether it reproduces on Meta. [read more](https://meta.discourse.org/t/-/409013?silent=true)\n\n---\n\n## Activity by the <a class=\"mention\" href=\"/u/team\">Team</a> Group\n\n- <a class=\"mention\" href=\"/u/david\">David</a> posted the [July 31st intermediate releases](https://meta.discourse.org/t/-/409017?silent=true), linking to changelogs for v2026.8.0-latest, v2026.7.1, v2026.6.2, and v2026.1.7. He also clarified how the ESR release affected upgrade paths. [read more](https://meta.discourse.org/t/-/409017/3?silent=true)\n\n- <a class=\"mention\" href=\"/u/zogstrip\">Zogstrip</a> made several impactful contributions: he fixed the [forum opening old topics bug](https://meta.discourse.org/t/-/400459?silent=true) with a PR, added a [“Suspend” action to review queue options](https://meta.discourse.org/t/-/225660?silent=true) (PR #42205), and pushed a [workaround for boolean field mapping](https://meta.discourse.org/t/-/408827?silent=true) alongside <a class=\"mention\" href=\"/u/renato\">Renato</a>. [read more](https://meta.discourse.org/t/-/408827?silent=true)\n\n- <a class=\"mention\" href=\"/u/sam\">Sam</a> responded in the [Discourse Workflows topic](https://meta.discourse.org/t/-/407100?silent=true), mentioning he is spiking a move to the interactions API for better Gemini model stability. [read more](https://meta.discourse.org/t/-/407100/10?silent=true)\n\n- <a class=\"mention\" href=\"/u/awesomerobot\">Awesomerobot</a> joined the [dark contrast discussion](https://meta.discourse.org/t/-/408966?silent=true), noting that the default dark palette uses #ddd and offering to investigate the Meta branded theme. [read more](https://meta.discourse.org/t/-/408966/3?silent=true)\n\n- <a class=\"mention\" href=\"/u/chapoi\">Chapoi</a> requested testing in safe mode for the [mobile Firefox scrolling bug](https://meta.discourse.org/t/-/409013?silent=true) and provided guidance on the [admin dashboard redesign](https://meta.discourse.org/t/-/404528?silent=true) location of version info. [read more](https://meta.discourse.org/t/-/409013/2?silent=true)\n\n- <a class=\"mention\" href=\"/u/markvanlan\">Markvanlan</a> clarified the expected behavior of [nested replies appearing at the top](https://meta.discourse.org/t/-/408969?silent=true) after posting, and noted the suggestion for a scroll-to-post behavior. [read more](https://meta.discourse.org/t/-/408969/2?silent=true)\n\n---\n\nThat’s a wrap on a day full of server hunts, CSS tweaks, and a fair share of gossip about AI—who knew the self‑hosting crowd could make VPS pricing so entertaining?","actions_summary":[{"id":2,"count":1}],"moderator":true,"admin":true,"staff":true,"user_id":-1,"hidden":false,"trust_level":4,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"<a name=\"p-2017697-today-on-metadiscourseorg-1\" class=\"anchor\" href=\"#p-2017697-today-on-metadiscourseorg-1\" aria-label=\"Heading link\"></a>Today on <a href=\"http://meta.discourse.org\">meta.discourse.org</a>…\n<a name=\"p-2017697-key-stats-2\" class=\"anchor\" href=\"#p-2017697-key-stats-2\" aria-label=\"Heading link\"></a>Key Stats\nIn the last 24 hours, the community saw 166 new posts across 49 new topics, generating 180 likes. The most active members were: \n\n<a class=\"mention\" href=\"/u/moin\">Moin</a> (18 posts, 21 likes)\n<a class=\"mention\" href=\"/u/lilly\">Lilly</a> (7 posts, 17 likes)\n<a class=\"mention\" href=\"/u/alltiagocom\">Alltiagocom</a> (24 posts, 15 likes)\n<a class=\"mention\" href=\"/u/zogstrip\">Zogstrip</a> (4 posts, 14 likes)\n<a class=\"mention\" href=\"/u/merefield\">Merefield</a> (7 post&hellip;","truncated":true,"post_url":"/t/daily-summary-9pm-utc/291850/941","locale":null,"is_localized":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017696,"name":"Dave McClure","username":"mcwumbly","avatar_template":"/user_avatar/meta.discourse.org/mcwumbly/{size}/103861_2.png","created_at":"2026-08-01T20:56:05.362Z","cooked":"<p>Sim, não tenho certeza. Talvez haja uma caixa de seleção que apareça quando você seleciona uma categoria principal, permitindo escolher se deseja incluir as subcategorias ou não.</p>\n<p>Essa é uma parte do problema que precisaria ser explorada por quem começar a investigar mais a fundo as possibilidades aqui, como parte desse trabalho de design.</p>\n<p>Mas acho que um designer ou alguém disposto a fazer um pensamento de design mais aprofundado poderia propor algumas opções que valham a pena ser consideradas.</p>","post_number":4,"post_type":1,"posts_count":5,"updated_at":"2026-08-01T20:56:12.502Z","reply_count":0,"reply_to_post_number":3,"quote_count":0,"incoming_link_count":0,"reads":9,"readers_count":8,"score":16.8,"yours":false,"topic_id":409046,"topic_slug":"about-nesting-subcategories-on-dropdown","topic_title":"About nesting subcategories on dropdown","topic_html_title":"About nesting subcategories on dropdown","category_id":9,"display_username":"Dave McClure","primary_group_name":"team","flair_name":"team","flair_url":"https://global.discourse-cdn.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_bg_color":"","flair_color":"111","flair_group_id":47,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Director of Product","title_is_group":false,"reply_to_user":{"id":95552,"username":"Moin","name":"","avatar_template":"/user_avatar/meta.discourse.org/moin/{size}/554653_2.png"},"bookmarked":false,"raw":"Yeah not sure. Perhaps there's a checkbox if you select a parent category that appears and lets you choose whether to include subcategories or not.\n\nThat's a part of the problem that would need to be explored by whomever starts to dig deeper into the possibilities here as part of this design work.\n\nBut I think a designer or something willing to do some deeper design thinking could come up with some options worth considering.","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":true,"staff":true,"user_id":4263,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Yeah not sure. Perhaps there’s a checkbox if you select a parent category that appears and lets you choose whether to include subcategories or not. \nThat’s a part of the problem that would need to be explored by whomever starts to dig deeper into the possibilities here as part of this design work. \nB&hellip;","truncated":true,"post_url":"/t/about-nesting-subcategories-on-dropdown/409046/4","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017695,"name":"","username":"Moin","avatar_template":"/user_avatar/meta.discourse.org/moin/{size}/554653_2.png","created_at":"2026-08-01T20:44:01.186Z","cooked":"<p>Talvez eu esteja perdendo algo. Como você exclui as subcategorias se não houver um filtro separado para elas?<br>\nVamos pegar, por exemplo, a categoria <a class=\"hashtag-cooked\" href=\"/c/support/6\" data-type=\"category\" data-slug=\"support\" data-id=\"6\" data-style-type=\"icon\" data-icon=\"circle-question\"><span class=\"hashtag-icon-placeholder\"><svg class=\"fa d-icon d-icon-square-full svg-icon svg-node\"><use href=\"#square-full\"></use></svg></span><span>Support</span></a> aqui no Meta: Se eu usar o menu suspenso e selecionar <a class=\"hashtag-cooked\" href=\"/c/support/6\" data-type=\"category\" data-slug=\"support\" data-id=\"6\" data-style-type=\"icon\" data-icon=\"circle-question\"><span class=\"hashtag-icon-placeholder\"><svg class=\"fa d-icon d-icon-square-full svg-icon svg-node\"><use href=\"#square-full\"></use></svg></span><span>Support</span></a>, recebo uma lista com tópicos em support e nas subcategorias. Sei que os administradores podem configurar se eu recebo a visualização apenas da categoria principal ou da categoria principal e das subcategorias por padrão, mas como eu mudo com um único menu suspenso contendo todas as categorias?</p>","post_number":3,"post_type":1,"posts_count":5,"updated_at":"2026-08-01T20:44:01.186Z","reply_count":2,"reply_to_post_number":2,"quote_count":0,"incoming_link_count":1,"reads":10,"readers_count":9,"score":17.0,"yours":false,"topic_id":409046,"topic_slug":"about-nesting-subcategories-on-dropdown","topic_title":"About nesting subcategories on dropdown","topic_html_title":"About nesting subcategories on dropdown","category_id":9,"display_username":"","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Kluges Köpfchen","title_is_group":false,"reply_to_user":{"id":4263,"username":"mcwumbly","name":"Dave McClure","avatar_template":"/user_avatar/meta.discourse.org/mcwumbly/{size}/103861_2.png"},"bookmarked":false,"raw":"Maybe I am missing something. How do you exclude the subcategories if there is no separate filter for them?\nLet's take for example #support here on Meta: If I use the dropdown and select #support I get a list with topics in support and the subcategories. I know admins can configure if I get the parent-category-only or parent-and-subcategory view by default, but how do I switch with one dropdown containing all the categories?","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":95552,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Maybe I am missing something. How do you exclude the subcategories if there is no separate filter for them? \nLet’s take for example <a class=\"hashtag-cooked\" href=\"/c/support/6\" data-type=\"category\" data-slug=\"support\" data-id=\"6\" data-style-type=\"icon\" data-icon=\"circle-question\"><span class=\"hashtag-icon-placeholder\"></span>Support</span></a> here on Meta: If I use the dropdown and select <a class=\"hashtag-cooked\" href=\"/c/support/6\" data-type=\"category\" data-slug=\"support\" data-id=\"6\" data-style-type=\"icon\" data-icon=\"circle-question\"><span class=\"hashtag-icon-placeholder\"></span>Support</span></a> I get a list with topics in support and the subcategories. I know admins can configure if I get the paren&hellip;","truncated":true,"post_url":"/t/about-nesting-subcategories-on-dropdown/409046/3","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017694,"name":"","username":"Moin","avatar_template":"/user_avatar/meta.discourse.org/moin/{size}/554653_2.png","created_at":"2026-08-01T20:32:44.806Z","cooked":"<p>Eu estava falando sobre o tema Foundation e a paleta de cores “escura” — não o modo escuro. O título da paleta de cores é um pouco confuso quando os menus suspensos das paletas estão ausentes.<br>\nAssim como aqui<br>\n<div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/6/8/c/68cb2e4ea2610bdf810c07dba37a92827bc33693.jpeg\" data-download-href=\"/uploads/short-url/eX2Y8z48346SfjZrYojFKbT49Lt.jpeg?dl=1\" title=\"Screenshot_20260801_223205_Firefox\"><img src=\"https://global.discourse-cdn.com/meta/original/4X/6/8/c/68cb2e4ea2610bdf810c07dba37a92827bc33693.jpeg\" alt=\"Screenshot_20260801_223205_Firefox\" data-base62-sha1=\"eX2Y8z48346SfjZrYojFKbT49Lt\" width=\"272\" height=\"188\" aria-description=\"A interface de configuração de tema e paleta de cores, exibindo opções como 'Foundation (full-width)' e modos de cor 'Dark' e 'Auto'. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">Screenshot_20260801_223205_Firefox</span><span class=\"informations\">545×377 33.8 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div><br>\nO modo não importa quando ambas as paletas são iguais. Claro que você também pode selecionar uma paleta clara que seja realmente clara.</p>","post_number":11,"post_type":1,"posts_count":12,"updated_at":"2026-08-01T20:33:47.341Z","reply_count":1,"reply_to_post_number":10,"quote_count":0,"incoming_link_count":1,"reads":9,"readers_count":8,"score":11.8,"yours":false,"topic_id":408966,"topic_slug":"remove-the-pure-white-on-text","topic_title":"Remove the pure white on text","topic_html_title":"Remove the pure white on text","category_id":9,"display_username":"","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Kluges Köpfchen","title_is_group":false,"reply_to_user":{"id":171937,"username":"alltiagocom","name":"Tiago","avatar_template":"/user_avatar/meta.discourse.org/alltiagocom/{size}/492709_2.png"},"bookmarked":false,"raw":"I was talking about Foundation theme and the color palette \"dark\" - not dark mode. The color palette heading is a little confusing when the palette dropdowns are missing.\nLike this\n![Screenshot_20260801_223205_Firefox|545x377, 50%](upload://eX2Y8z48346SfjZrYojFKbT49Lt.jpeg)\nMode doesn't matter when both palettes are the same. Of course you can also select a light palette that is really light.","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":95552,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I was talking about Foundation theme and the color palette “dark” - not dark mode. The color palette heading is a little confusing when the palette dropdowns are missing. \nLike this \n <a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/6/8/c/68cb2e4ea2610bdf810c07dba37a92827bc33693.jpeg\" data-download-href=\"/uploads/short-url/eX2Y8z48346SfjZrYojFKbT49Lt.jpeg?dl=1\" title=\"Screenshot_20260801_223205_Firefox\">[Screenshot_20260801_223205_Firefox]</a> \nMode doesn’t matter when both palettes are the same. Of course you can also se&hellip;","truncated":true,"post_url":"/t/remove-the-pure-white-on-text/408966/11","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017690,"name":"Tiago","username":"alltiagocom","avatar_template":"/user_avatar/meta.discourse.org/alltiagocom/{size}/492709_2.png","created_at":"2026-08-01T19:48:14.165Z","cooked":"<p>Obrigado! Este também parece muito promissor <img src=\"https://emoji.discourse-cdn.com/twitter/raising_hands.png?v=15\" title=\":raising_hands:\" class=\"emoji\" alt=\":raising_hands:\" loading=\"lazy\" width=\"20\" height=\"20\"></p>","post_number":17,"post_type":1,"posts_count":19,"updated_at":"2026-08-01T19:48:14.165Z","reply_count":0,"reply_to_post_number":7,"quote_count":0,"incoming_link_count":0,"reads":22,"readers_count":21,"score":4.2,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":"Tiago","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","reply_to_user":{"id":80880,"username":"asa","name":"","avatar_template":"/user_avatar/meta.discourse.org/asa/{size}/184869_2.png"},"bookmarked":false,"raw":"Thanks! This one looks very promising as well 🙌","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":171937,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Thanks! This one looks very promising as well :raising_hands:","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/17","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017689,"name":"Robert","username":"merefield","avatar_template":"/user_avatar/meta.discourse.org/merefield/{size}/176214_2.png","created_at":"2026-08-01T19:46:07.624Z","cooked":"<p>Sim, eu faria isso em etapas:</p>\n<ol>\n<li>adquirir um servidor um pouco mais potente</li>\n<li>fazer a instalação dos dois contêineres funcionar</li>\n</ol>\n<p>se nesse ponto você estiver satisfeito, pare por aqui, ou:</p>\n<ol start=\"3\">\n<li>implemente a página de manutenção usando o excelente guia do <a class=\"mention\" href=\"/u/lilly\">@Lilly</a> acima. <img src=\"https://emoji.discourse-cdn.com/twitter/+1.png?v=15\" title=\":+1:\" class=\"emoji\" alt=\":+1:\" loading=\"lazy\" width=\"20\" height=\"20\"></li>\n</ol>","post_number":22,"post_type":1,"posts_count":22,"updated_at":"2026-08-01T19:46:47.393Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":11,"readers_count":10,"score":47.2,"yours":false,"topic_id":408967,"topic_slug":"maintenance-page-workaround-can-this-be-done","topic_title":"Maintenance page workaround - can this be done?","topic_html_title":"Maintenance page workaround - can this be done?","category_id":31,"display_username":"Robert","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Plugin Author","title_is_group":false,"bookmarked":false,"raw":"Yeah, I would do it in stages:\n\n1. get a slightly more powerful server\n2. get the two container installation working\n\nif at this point you are satisfied, stop here, or:\n\n3. implement the maintenance page using @Lilly's excellent guide above. :+1:","actions_summary":[{"id":2,"count":3}],"moderator":false,"admin":false,"staff":false,"user_id":27384,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Yeah, I would do it in stages: \n\nget a slightly more powerful server\nget the two container installation working\n\nif at this point you are satisfied, stop here, or: \n\nimplement the maintenance page using <a class=\"mention\" href=\"/u/lilly\">@Lilly</a>’s excellent guide above. :+1:","truncated":true,"post_url":"/t/maintenance-page-workaround-can-this-be-done/408967/22","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":3}],"current_user_reaction":null,"reaction_users_count":3,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017687,"name":"Tiago","username":"alltiagocom","avatar_template":"/user_avatar/meta.discourse.org/alltiagocom/{size}/492709_2.png","created_at":"2026-08-01T19:37:09.779Z","cooked":"<p>Isso não seria semelhante (ou melhor) do que eu estava usando com a Hetzner?</p>\n<p>Advin<br>\n<div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/d/0/3/d03051100f5e9d245d6c01a2ab201ebabe4682fa.png\" data-download-href=\"/uploads/short-url/tHIPzrz5zna22yViel6TI17grWO.png?dl=1\" title=\"image\"><img src=\"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/d/0/3/d03051100f5e9d245d6c01a2ab201ebabe4682fa_2_690x101.png\" alt=\"image\" data-base62-sha1=\"tHIPzrz5zna22yViel6TI17grWO\" width=\"690\" height=\"101\" srcset=\"https://global.discourse-cdn.com/meta/optimized/4X/d/0/3/d03051100f5e9d245d6c01a2ab201ebabe4682fa_2_690x101.png, https://global.discourse-cdn.com/meta/original/4X/d/0/3/d03051100f5e9d245d6c01a2ab201ebabe4682fa.png 1.5x, https://global.discourse-cdn.com/meta/original/4X/d/0/3/d03051100f5e9d245d6c01a2ab201ebabe4682fa.png 2x\" data-dominant-color=\"F6F6F6\" aria-description=\"A imagem exibe uma tabela com as especificações de um servidor chamado 'Standard XS', incluindo 4 vCPU, 8GB de memória, 80GB NVMe SSD de armazenamento, 5TB de largura de banda e status 'Instant'. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">802×118 8.93 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>\n<p>Hetzner:<br>\n<div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/2/2/1/221ee554a515946bae322b6c378d03f0a2a61c59.png\" data-download-href=\"/uploads/short-url/4RQqxc5RhbQJxlFUm9q6zpsDHHr.png?dl=1\" title=\"image\"><img src=\"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/2/2/1/221ee554a515946bae322b6c378d03f0a2a61c59_2_690x126.png\" alt=\"image\" data-base62-sha1=\"4RQqxc5RhbQJxlFUm9q6zpsDHHr\" width=\"690\" height=\"126\" srcset=\"https://global.discourse-cdn.com/meta/optimized/4X/2/2/1/221ee554a515946bae322b6c378d03f0a2a61c59_2_690x126.png, https://global.discourse-cdn.com/meta/original/4X/2/2/1/221ee554a515946bae322b6c378d03f0a2a61c59.png 1.5x, https://global.discourse-cdn.com/meta/original/4X/2/2/1/221ee554a515946bae322b6c378d03f0a2a61c59.png 2x\" data-dominant-color=\"F6F7F8\" aria-description=\"A imagem mostra uma interface de configuração de servidor com opções de VCPU, RAM e SSD, indicando que o modelo CX23 está indisponível. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">691×127 12.7 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>\n<p>Sou novo nisso, então tenham paciência comigo…</p>","post_number":16,"post_type":1,"posts_count":19,"updated_at":"2026-08-01T19:37:09.779Z","reply_count":0,"reply_to_post_number":14,"quote_count":0,"incoming_link_count":0,"reads":23,"readers_count":22,"score":4.4,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":"Tiago","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","reply_to_user":{"id":144474,"username":"David_Ghost","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/d/c37758/{size}.png"},"bookmarked":false,"raw":"Wouldn't this be similar (or better) than what I was using with Hetzner?\n\nAdvin\n![image|690x101](upload://tHIPzrz5zna22yViel6TI17grWO.png)\n\nHetzner:\n![image|690x126](upload://4RQqxc5RhbQJxlFUm9q6zpsDHHr.png)\n\nI'm new to this, so bear with me...","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":171937,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Wouldn’t this be similar (or better) than what I was using with Hetzner? \nAdvin \n <a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/d/0/3/d03051100f5e9d245d6c01a2ab201ebabe4682fa.png\" data-download-href=\"/uploads/short-url/tHIPzrz5zna22yViel6TI17grWO.png?dl=1\" title=\"image\" rel=\"noopener nofollow ugc\">[image]</a> \nHetzner: \n <a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/2/2/1/221ee554a515946bae322b6c378d03f0a2a61c59.png\" data-download-href=\"/uploads/short-url/4RQqxc5RhbQJxlFUm9q6zpsDHHr.png?dl=1\" title=\"image\" rel=\"noopener nofollow ugc\">[image]</a> \nI’m new to this, so bear with me…","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/16","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017686,"name":"Lou","username":"Lou","avatar_template":"/user_avatar/meta.discourse.org/lou/{size}/544605_2.png","created_at":"2026-08-01T19:34:30.171Z","cooked":"<p><a class=\"mention\" href=\"/u/nathank\">@nathank</a> O recurso Shift (months) foi lançado na versão v1.1.0.</p>\n<p>A página de revisão agora possui um campo “Shift (months)” ao lado do menu suspenso da regra de Data. O valor padrão é 12, mantendo o mesmo comportamento de antes, mas você pode substituí-lo em cada execução. Há também uma nova configuração de site chamada event_duplicator_default_shift_months caso você queira um padrão diferente para todo o site.</p>\n<p>Ele funciona com ambas as regras de data. Uma série mensal ou trimestral que precise de um dia específico da semana ainda recebe o tratamento de “mesmo dia da semana do mês”, apenas no intervalo de meses que você definir, em vez de um ano fixo.</p>\n<p>Atualize para a versão v1.1.0 para obtê-lo (reconstrua se o seu app.yml estiver fixado em uma tag específica). A issue <span class=\"hashtag-raw\">#19</span> tem os detalhes da implementação, caso queira conferir.</p>\n<p>Acho que faz sentido atualizar também o primeiro post. Vou fazer isso até amanhã, provavelmente.</p>","post_number":5,"post_type":1,"posts_count":5,"updated_at":"2026-08-01T19:37:40.461Z","reply_count":0,"reply_to_post_number":4,"quote_count":0,"incoming_link_count":1,"reads":4,"readers_count":3,"score":20.8,"yours":false,"topic_id":409003,"topic_slug":"event-duplicator-duplicate-calendar-events-topics-into-a-new-time-period","topic_title":"Event Duplicator: duplicate calendar events/topics into a new time period","topic_html_title":"Event Duplicator: duplicate calendar events/topics into a new time period","category_id":22,"display_username":"Lou","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":2,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Plugin Author","title_is_group":false,"reply_to_user":{"id":57788,"username":"nathank","name":"Nathan Kershaw","avatar_template":"/user_avatar/meta.discourse.org/nathank/{size}/290039_2.png"},"bookmarked":false,"raw":"@nathank Shift (months) shipped in v1.1.0.\n\nThe review page now has a Shift (months) field next to the Date rule dropdown. It defaults to 12, same behavior as before, but you can override it per run. There's also a new event_duplicator_default_shift_months site setting if you want a different site-wide default.\n\nIt works with both date rules. A monthly or quarterly series that needs a specific weekday still gets the \"same weekday of month\" treatment, just at whatever month interval you set instead of a fixed year.\n\nUpdate to v1.1.0 to get it (rebuild if your app.yml pins a specific tag). Issue #19 has the implementation details if you're curious.\n\nI think it makes sense to also update the OP. I'll get to that by tomorrow, probably.","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":185304,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"<a class=\"mention\" href=\"/u/nathank\">@nathank</a> Shift (months) shipped in v1.1.0. \nThe review page now has a Shift (months) field next to the Date rule dropdown. It defaults to 12, same behavior as before, but you can override it per run. There’s also a new event_duplicator_default_shift_months site setting if you want a different site-w&hellip;","truncated":true,"post_url":"/t/event-duplicator-duplicate-calendar-events-topics-into-a-new-time-period/409003/5","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"rocket","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017685,"name":"Tiago","username":"alltiagocom","avatar_template":"/user_avatar/meta.discourse.org/alltiagocom/{size}/492709_2.png","created_at":"2026-08-01T19:29:05.970Z","cooked":"<aside class=\"quote no-group\" data-username=\"Lilly\" data-post=\"6\" data-topic=\"408967\">\n<div class=\"title\">\n<div class=\"quote-controls\"></div>\n<img alt=\"\" width=\"24\" height=\"24\" src=\"https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lilly/48/572196_2.png\" class=\"avatar\"> Lilly:</div>\n<blockquote>\n<p>eu costumo adicionar e remover a página de rota dos meus workers sempre que faço manutenção, mas algumas pessoas preferem deixá-la lá o tempo todo (eu deixo o código real da página, apenas adiciono e removo a rota).</p>\n</blockquote>\n</aside>\n<p>Você pode esclarecer isso de uma forma que uma pessoa leiga como eu possa entender? Ainda não estou familiarizado com workers…</p>\n<p>Por que você adiciona e remove a página de rota dos workers, se deixá-la não é um problema? Então, se eu adicionar a página de manutenção, posso realmente configurá-la uma vez e, a partir desse momento, sempre acessar meu servidor via SSH no Terminal e fazer tudo lá, como faço com um único container, sem nunca precisar ir ao Cloudflare?</p>\n<p><a class=\"mention\" href=\"/u/merefield\">@merefield</a> mencionou que isso (página de manutenção, workers, etc.) também é algo que precisa ser mantido, então me pergunto se é realmente algo que você configura e esquece, ou se há algo que precisa ser feito de vez em quando?</p>","post_number":21,"post_type":1,"posts_count":22,"updated_at":"2026-08-01T19:30:00.482Z","reply_count":1,"reply_to_post_number":6,"quote_count":1,"incoming_link_count":0,"reads":10,"readers_count":9,"score":7.0,"yours":false,"topic_id":408967,"topic_slug":"maintenance-page-workaround-can-this-be-done","topic_title":"Maintenance page workaround - can this be done?","topic_html_title":"Maintenance page workaround - can this be done?","category_id":31,"display_username":"Tiago","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","bookmarked":false,"raw":"[quote=\"Lilly, post:6, topic:408967\"]\ni tend to add and delete my workers route page whenever i am doing maintenance, but some like to just leave it there all the time (i leave the actual code for the page though, i just add and remove the route).\n[/quote]\n\nCan you clarify this, in a way that a basic person like me can understand? I'm still not familiar with workers...\n\nWhy do you add and delete workers route page, if leaving them is not an issue? So, if I do add the maintenance page, can I really just set it up once, and from that moment on, I always just SSH my server via Terminal and do everything there like I do with a single container, without ever having to go to Cloudflare? \n\n@merefield mentioned that this (maintenance page, workers, etc) is also something that needs to be maintained, so I wonder if it's really something that you set and forget, or if there's anything that needs to be done every once in a while?","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":171937,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Can you clarify this, in a way that a basic person like me can understand? I’m still not familiar with workers… \nWhy do you add and delete workers route page, if leaving them is not an issue? So, if I do add the maintenance page, can I really just set it up once, and from that moment on, I always j&hellip;","truncated":true,"post_url":"/t/maintenance-page-workaround-can-this-be-done/408967/21","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017684,"name":"Tiago","username":"alltiagocom","avatar_template":"/user_avatar/meta.discourse.org/alltiagocom/{size}/492709_2.png","created_at":"2026-08-01T19:25:29.569Z","cooked":"<p>Acho que estou no meio do caminho agora. Entendo o que você quer dizer, assim como <a class=\"mention\" href=\"/u/merefield\">@merefield</a>. É um toque bacana ter isso, e se for configurado apenas uma vez, não é um grande problema, eu acho?</p>\n<p>Ao mesmo tempo, se realmente levar até 60 segundos, no pior dos casos, nem todo mundo vai acessar o site exatamente no segundo 0 e ter que esperar 60 segundos. Algumas pessoas verão a página feia por 5 segundos, outras por 20, outras por 60. Algumas pessoas nem verão (acho?) por exemplo, se estiverem apenas lendo uma resposta ou escrevendo uma, essa troca pode acontecer antes que elas cliquem em ENVIAR ou antes que parem de ler o tópico e cliquem em RESPONDER (ou acessem outra página).</p>\n<p>Minha questão com a rota do nginx estava mais relacionada à coisa dos 20 minutos em uma configuração de um único container. Com a opção de ter 2 e passar de 20 minutos para talvez no máximo 60 segundos, me pergunto se é realmente relevante? Especialmente se eu puder adicionar um anúncio no topo dizendo que as coisas ficarão indisponíveis por apenas alguns segundos, em um horário de baixo tráfego, isso não será um grande problema?</p>\n<p>Preciso sentar e pensar sobre isso. A configuração de 2 containers definitivamente será algo a implementar, se eu encontrar uma boa oferta de servidor.</p>","post_number":20,"post_type":1,"posts_count":22,"updated_at":"2026-08-01T19:25:29.569Z","reply_count":0,"reply_to_post_number":19,"quote_count":0,"incoming_link_count":0,"reads":12,"readers_count":11,"score":2.4,"yours":false,"topic_id":408967,"topic_slug":"maintenance-page-workaround-can-this-be-done","topic_title":"Maintenance page workaround - can this be done?","topic_html_title":"Maintenance page workaround - can this be done?","category_id":31,"display_username":"Tiago","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","reply_to_user":{"id":127856,"username":"Lilly","name":"Lillian ","avatar_template":"/user_avatar/meta.discourse.org/lilly/{size}/572196_2.png"},"bookmarked":false,"raw":"I guess I'm in the middle right now. I understand what you mean, as well as @merefield. It's a nice touch to have it and if it's only set up once, not a big deal, I guess?\n\nAt the same time, if it does indeed take up to 60 seconds, worst case scenario, not everyone will visit the website exactly at the 0 second mark and have to wait 60 seconds. Some people will see the ugly page for 5 seconds, some 20, some 60. Some people will not even see it (I believe?) for example if they are just reading a reply or writing one, that switch could happen before they hit SEND or before they stop reading the topic and hit REPLY (or visit another page).\n\nMy issue with the nginx route, was more related to the 20 minute thing on a one container setup. With the option to have 2 and going from 20 minutes to maybe 60 seconds tops, I wonder if it's really relevant? Especially, if I am able to add an announcement at the top saying where things will go down just for a few seconds, on a low-traffic time, this won't be a big issue?\n\nI have to sit and think about it. The 2 container setup will definitely be something to implement, if I find a good server deal, though.","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":171937,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I guess I’m in the middle right now. I understand what you mean, as well as <a class=\"mention\" href=\"/u/merefield\">@merefield</a>. It’s a nice touch to have it and if it’s only set up once, not a big deal, I guess? \nAt the same time, if it does indeed take up to 60 seconds, worst case scenario, not everyone will visit the website exactly at &hellip;","truncated":true,"post_url":"/t/maintenance-page-workaround-can-this-be-done/408967/20","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017681,"name":null,"username":"Tealk","avatar_template":"/user_avatar/meta.discourse.org/tealk/{size}/525923_2.png","created_at":"2026-08-01T19:23:53.681Z","cooked":"<p>Não, essa é a primeira vez que ouço falar deles, embora eu não tenha exatamente requisitos padrão de servidor. Minha máquina atual na Hetzner:</p>\n<pre><code class=\"lang-plaintext\">36 x Intel(R) Xeon(R) W-2295 CPU\n512 GB RAM\n4 TB SSD\n12 TB HDD\n</code></pre>\n<p>Incluindo um servidor adicional para backups, isso dá um total de €347,91 por mês.</p>","post_number":15,"post_type":1,"posts_count":19,"updated_at":"2026-08-01T19:23:53.681Z","reply_count":0,"reply_to_post_number":13,"quote_count":0,"incoming_link_count":0,"reads":24,"readers_count":23,"score":19.8,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":null,"primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":null,"reply_to_user":{"id":171937,"username":"alltiagocom","name":"Tiago","avatar_template":"/user_avatar/meta.discourse.org/alltiagocom/{size}/492709_2.png"},"bookmarked":false,"raw":"No, that's the first I'm hearing of them, although I don't exactly have standard server requirements. My current machine at Hetzner:\n\n```\n36 x Intel(R) Xeon(R) W-2295 CPU\n512 GB RAM\n4 TB SSD\n12 TB HDD\n```\n\nIncluding an additional server for backups, that comes to €347.91 per month.","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":132988,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"No, that’s the first I’m hearing of them, although I don’t exactly have standard server requirements. My current machine at Hetzner: \n36 x Intel(R) Xeon(R) W-2295 CPU\n512 GB RAM\n4 TB SSD\n12 TB HDD\n\nIncluding an additional server for backups, that comes to €347.91 per month.","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/15","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"exploding_head","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017676,"name":"Tiago","username":"alltiagocom","avatar_template":"/user_avatar/meta.discourse.org/alltiagocom/{size}/492709_2.png","created_at":"2026-08-01T19:16:54.059Z","cooked":"<p>Essa é a que eu tenho agora:</p>\n<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/9/9/d/99de84a029c9c48d2235e98c7f20b8aff10154dc.png\" data-download-href=\"/uploads/short-url/lXbNkPK4lY0bvNH8BGnP68szuIk.png?dl=1\" title=\"image\"><img src=\"https://global.discourse-cdn.com/meta/original/4X/9/9/d/99de84a029c9c48d2235e98c7f20b8aff10154dc.png\" alt=\"image\" data-base62-sha1=\"lXbNkPK4lY0bvNH8BGnP68szuIk\" width=\"251\" height=\"235\" aria-description=\"A interface de configurações exibe opções para selecionar o tema e a paleta de cores em modo escuro. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">251×235 7.65 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>\n<p>Essa seria perfeita para mim:</p>\n<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/a/0/f/a0f174f2bb4a8dbb9487a0e05b2d9bcfe38b25c1.png\" data-download-href=\"/uploads/short-url/mXLIh9XskJEZgmHEdnWOL7AbY09.png?dl=1\" title=\"image\"><img src=\"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/a/0/f/a0f174f2bb4a8dbb9487a0e05b2d9bcfe38b25c1_2_690x188.png\" alt=\"image\" data-base62-sha1=\"mXLIh9XskJEZgmHEdnWOL7AbY09\" width=\"690\" height=\"188\" srcset=\"https://global.discourse-cdn.com/meta/optimized/4X/a/0/f/a0f174f2bb4a8dbb9487a0e05b2d9bcfe38b25c1_2_690x188.png, https://global.discourse-cdn.com/meta/optimized/4X/a/0/f/a0f174f2bb4a8dbb9487a0e05b2d9bcfe38b25c1_2_1035x282.png 1.5x, https://global.discourse-cdn.com/meta/original/4X/a/0/f/a0f174f2bb4a8dbb9487a0e05b2d9bcfe38b25c1.png 2x\" data-dominant-color=\"2A2728\" aria-description=\"Uma captura de tela de um fórum mostrando um usuário discutindo a preferência por um tema escuro devido ao brilho excessivo do tema padrão, com anotações destacando o feedback visual e o código CSS correspondente. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">1280×349 79.4 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>","post_number":10,"post_type":1,"posts_count":12,"updated_at":"2026-08-01T19:16:54.059Z","reply_count":1,"reply_to_post_number":9,"quote_count":0,"incoming_link_count":0,"reads":9,"readers_count":8,"score":6.8,"yours":false,"topic_id":408966,"topic_slug":"remove-the-pure-white-on-text","topic_title":"Remove the pure white on text","topic_html_title":"Remove the pure white on text","category_id":9,"display_username":"Tiago","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","reply_to_user":{"id":95552,"username":"Moin","name":"","avatar_template":"/user_avatar/meta.discourse.org/moin/{size}/554653_2.png"},"bookmarked":false,"raw":"That's the one I have now:\n\n![image|251x235](upload://lXbNkPK4lY0bvNH8BGnP68szuIk.png)\n\nThis would be perfect for me:\n\n![image|690x188](upload://mXLIh9XskJEZgmHEdnWOL7AbY09.png)","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":171937,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"That’s the one I have now: \n <a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/9/9/d/99de84a029c9c48d2235e98c7f20b8aff10154dc.png\" data-download-href=\"/uploads/short-url/lXbNkPK4lY0bvNH8BGnP68szuIk.png?dl=1\" title=\"image\" rel=\"noopener nofollow ugc\">[image]</a> \nThis would be perfect for me: \n <a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/a/0/f/a0f174f2bb4a8dbb9487a0e05b2d9bcfe38b25c1.png\" data-download-href=\"/uploads/short-url/mXLIh9XskJEZgmHEdnWOL7AbY09.png?dl=1\" title=\"image\" rel=\"noopener nofollow ugc\">[image]</a>","truncated":true,"post_url":"/t/remove-the-pure-white-on-text/408966/10","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017675,"name":"","username":"David_Ghost","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/d/c37758/{size}.png","created_at":"2026-08-01T19:11:07.793Z","cooked":"<p>Estou usando uma configuração com Ryzen, 4 vCPUs, 8 GB de RAM e 256 GB de NVMe por US$ 10 por mês. Não está mais disponível no momento, mas funciona muito bem. Você também pode entrar no Discord deles. É bem ativo.</p>","post_number":14,"post_type":1,"posts_count":19,"updated_at":"2026-08-01T19:11:07.793Z","reply_count":1,"reply_to_post_number":13,"quote_count":0,"incoming_link_count":1,"reads":26,"readers_count":25,"score":15.0,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":"","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Regular","title_is_group":false,"reply_to_user":{"id":171937,"username":"alltiagocom","name":"Tiago","avatar_template":"/user_avatar/meta.discourse.org/alltiagocom/{size}/492709_2.png"},"bookmarked":false,"raw":"I'm using an config with ryzen, 4vcpu, 8gb ram and 256gb nvme for $10 a month. It's no longer available right now, but it's works very well. You can join their discord too. Its very active.","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":144474,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I’m using an config with ryzen, 4vcpu, 8gb ram and 256gb nvme for $10 a month. It’s no longer available right now, but it’s works very well. You can join their discord too. Its very active.","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/14","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017672,"name":"Tiago","username":"alltiagocom","avatar_template":"/user_avatar/meta.discourse.org/alltiagocom/{size}/492709_2.png","created_at":"2026-08-01T19:02:36.588Z","cooked":"<p>Como sugerido por <a class=\"mention\" href=\"/u/david_ghost\">@David_Ghost</a>, o <a href=\"http://advinservers.com\" rel=\"noopener nofollow ugc\">advinservers.com</a> parece ter boas configurações e preços. Você já ouviu falar deles? Alguns comentários que li online e no Trustpilot parecem positivos, mas, nos dias de hoje, qualquer coisa na internet pode ser falsa, então…</p>","post_number":13,"post_type":1,"posts_count":19,"updated_at":"2026-08-01T19:02:36.588Z","reply_count":2,"reply_to_post_number":9,"quote_count":0,"incoming_link_count":0,"reads":27,"readers_count":26,"score":30.2,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":"Tiago","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","reply_to_user":{"id":132988,"username":"Tealk","name":null,"avatar_template":"/user_avatar/meta.discourse.org/tealk/{size}/525923_2.png"},"bookmarked":false,"raw":"As @David_Ghost suggested, advinservers.com seem to have some good setups and prices. Have you ever heard of them? Some reviews I was reading online and Trustpilot seem positive, but these days, anything online can be fake, so...","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":171937,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"As <a class=\"mention\" href=\"/u/david_ghost\">@David_Ghost</a> suggested, <a href=\"http://advinservers.com\" rel=\"noopener nofollow ugc\">advinservers.com</a> seem to have some good setups and prices. Have you ever heard of them? Some reviews I was reading online and Trustpilot seem positive, but these days, anything online can be fake, so…","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/13","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017671,"name":"Tiago","username":"alltiagocom","avatar_template":"/user_avatar/meta.discourse.org/alltiagocom/{size}/492709_2.png","created_at":"2026-08-01T19:00:51.810Z","cooked":"<p>Acabei de verificar a página deles e parece bem semelhante ao que a Hetzner oferece. Obrigado por compartilhar!</p>","post_number":12,"post_type":1,"posts_count":19,"updated_at":"2026-08-01T19:01:08.080Z","reply_count":0,"reply_to_post_number":10,"quote_count":0,"incoming_link_count":1,"reads":27,"readers_count":26,"score":25.2,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":"Tiago","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","reply_to_user":{"id":144474,"username":"David_Ghost","name":"","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/d/c37758/{size}.png"},"bookmarked":false,"raw":"I just checked their page and it seems pretty similar to what Hetzner has to offer. Thanks for sharing!","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":171937,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I just checked their page and it seems pretty similar to what Hetzner has to offer. Thanks for sharing!","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/12","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017669,"name":"Tiago","username":"alltiagocom","avatar_template":"/user_avatar/meta.discourse.org/alltiagocom/{size}/492709_2.png","created_at":"2026-08-01T18:57:15.864Z","cooked":"<p>Você está arrasando com as respostas detalhadas. Muito obrigado! <img src=\"https://emoji.discourse-cdn.com/twitter/raising_hands.png?v=15\" title=\":raising_hands:\" class=\"emoji\" alt=\":raising_hands:\" loading=\"lazy\" width=\"20\" height=\"20\"><br>\nComo não sou um desenvolvedor experiente, eu conseguiria criar um pequeno aplicativo implantado no Railway (que é o que eu uso) e configurá-lo para que o Brevo dispare essas notificações por e-mail?</p>\n<p>Só estou querendo saber se isso seria possível, não estou pedindo que você personalize seu script. Estou curioso, pois como ainda não estou instalando o Discourse, seu script não me ajudaria por enquanto.</p>","post_number":11,"post_type":1,"posts_count":19,"updated_at":"2026-08-01T18:57:15.864Z","reply_count":1,"reply_to_post_number":8,"quote_count":0,"incoming_link_count":0,"reads":27,"readers_count":26,"score":10.2,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":"Tiago","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","reply_to_user":{"id":127856,"username":"Lilly","name":"Lillian ","avatar_template":"/user_avatar/meta.discourse.org/lilly/{size}/572196_2.png"},"bookmarked":false,"raw":"You're on fire with the detailed replies. Really appreciate it! 🙌 \nSince I'm not an experienced developer, would I be able to build a small app deployed to Railway (which is what I use) and set it so I could have Brevo to trigger those email notifications?\n\nJust wondering if that would be possible, not asking you to customize your script. I'm curious, because since I'm not installing Discourse just yet, your script wouldn't help for now.","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":171937,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"You’re on fire with the detailed replies. Really appreciate it! :raising_hands: \nSince I’m not an experienced developer, would I be able to build a small app deployed to Railway (which is what I use) and set it so I could have Brevo to trigger those email notifications? \nJust wondering if that would&hellip;","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/11","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017668,"name":"","username":"David_Ghost","avatar_template":"https://avatars.discourse-cdn.com/v4/letter/d/c37758/{size}.png","created_at":"2026-08-01T18:28:42.025Z","cooked":"<p>Estou usando o <a href=\"http://advinservers.com\" rel=\"noopener nofollow ugc\">advinservers.com</a> há 1 ano e realmente gosto muito.</p>","post_number":10,"post_type":1,"posts_count":19,"updated_at":"2026-08-01T18:28:42.025Z","reply_count":1,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":27,"readers_count":26,"score":25.4,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":"","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Regular","title_is_group":false,"bookmarked":false,"raw":"I'm using advinservers.com from 1 year now and i really like it","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":144474,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I’m using <a href=\"http://advinservers.com\">advinservers.com</a> from 1 year now and i really like it","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/10","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017667,"name":"Dave McClure","username":"mcwumbly","avatar_template":"/user_avatar/meta.discourse.org/mcwumbly/{size}/103861_2.png","created_at":"2026-08-01T18:25:48.401Z","cooked":"<p>Acho que essa ideia certamente merece ser explorada.</p>","post_number":2,"post_type":1,"posts_count":5,"updated_at":"2026-08-01T18:25:48.401Z","reply_count":1,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":1,"reads":13,"readers_count":12,"score":42.6,"yours":false,"topic_id":409046,"topic_slug":"about-nesting-subcategories-on-dropdown","topic_title":"About nesting subcategories on dropdown","topic_html_title":"About nesting subcategories on dropdown","category_id":9,"display_username":"Dave McClure","primary_group_name":"team","flair_name":"team","flair_url":"https://global.discourse-cdn.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_bg_color":"","flair_color":"111","flair_group_id":47,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Director of Product","title_is_group":false,"bookmarked":false,"raw":"I think this idea is certainly worth some exploration.","actions_summary":[{"id":2,"count":2}],"moderator":false,"admin":true,"staff":true,"user_id":4263,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I think this idea is certainly worth some exploration.","truncated":true,"post_url":"/t/about-nesting-subcategories-on-dropdown/409046/2","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"chefs_kiss","type":"emoji","count":1},{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":2,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017664,"name":null,"username":"Tealk","avatar_template":"/user_avatar/meta.discourse.org/tealk/{size}/525923_2.png","created_at":"2026-08-01T18:08:05.800Z","cooked":"<p>Infelizmente, a Hetzner é praticamente insubstituível em termos de preço; para VMs, a Netcup funciona, mas quando se trata de servidores maiores, nunca encontrei nada com preço semelhante.<br>\nTambém gostaria de saber quais são as alternativas, especialmente as europeias.</p>","post_number":9,"post_type":1,"posts_count":19,"updated_at":"2026-08-01T18:08:05.800Z","reply_count":2,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":27,"readers_count":26,"score":30.4,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":null,"primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":null,"bookmarked":false,"raw":"Unfortunately, Hetzner is pretty much without alternative when it comes to price; for VMs, Netcup works, but as soon as it's about larger servers, I've never found anything that's similar in price.\nI'd also like to know what the alternatives are, especially European ones.","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":132988,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Unfortunately, Hetzner is pretty much without alternative when it comes to price; for VMs, Netcup works, but as soon as it’s about larger servers, I’ve never found anything that’s similar in price. \nI’d also like to know what the alternatives are, especially European ones.","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/9","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017661,"name":"","username":"markvanlan","avatar_template":"/user_avatar/meta.discourse.org/markvanlan/{size}/160087_2.png","created_at":"2026-08-01T17:12:58.872Z","cooked":"<p>Não acho que sim, não… mas anotado como sugestão!</p>","post_number":4,"post_type":1,"posts_count":4,"updated_at":"2026-08-01T17:12:58.872Z","reply_count":0,"reply_to_post_number":3,"quote_count":0,"incoming_link_count":1,"reads":9,"readers_count":8,"score":6.8,"yours":false,"topic_id":408969,"topic_slug":"nested-replies-appear-at-the-top","topic_title":"Nested replies appear at the top","topic_html_title":"Nested replies appear at the top","category_id":9,"display_username":"","primary_group_name":"team","flair_name":"team","flair_url":"https://global.discourse-cdn.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_bg_color":"","flair_color":"111","flair_group_id":47,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"team","title_is_group":true,"reply_to_user":{"id":73430,"username":"Damian_Boon","name":"Damian Boon","avatar_template":"/user_avatar/meta.discourse.org/damian_boon/{size}/165479_2.png"},"bookmarked":false,"raw":"I don’t think so, no… but noted as a suggestion!","actions_summary":[],"moderator":false,"admin":true,"staff":true,"user_id":68554,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I don’t think so, no… but noted as a suggestion!","truncated":true,"post_url":"/t/nested-replies-appear-at-the-top/408969/4","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017660,"name":"Damian Boon","username":"Damian_Boon","avatar_template":"/user_avatar/meta.discourse.org/damian_boon/{size}/165479_2.png","created_at":"2026-08-01T17:09:08.786Z","cooked":"<p>Não seria visualmente melhor atualizar a página e ir para o comentário enviado?</p>","post_number":3,"post_type":1,"posts_count":4,"updated_at":"2026-08-01T17:09:08.786Z","reply_count":1,"reply_to_post_number":2,"quote_count":0,"incoming_link_count":0,"reads":11,"readers_count":10,"score":7.2,"yours":false,"topic_id":408969,"topic_slug":"nested-replies-appear-at-the-top","topic_title":"Nested replies appear at the top","topic_html_title":"Nested replies appear at the top","category_id":9,"display_username":"Damian Boon","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":null,"reply_to_user":{"id":68554,"username":"markvanlan","name":"","avatar_template":"/user_avatar/meta.discourse.org/markvanlan/{size}/160087_2.png"},"bookmarked":false,"raw":"Wouldn't it be visually better to do a refresh and go to submitted comment","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":73430,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Wouldn’t it be visually better to do a refresh and go to submitted comment","truncated":true,"post_url":"/t/nested-replies-appear-at-the-top/408969/3","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017659,"name":"","username":"Overgrow","avatar_template":"/user_avatar/meta.discourse.org/overgrow/{size}/478189_2.png","created_at":"2026-08-01T16:51:20.131Z","cooked":"<p>Dando continuidade à depreciação mencionada acima… na versão atual do core (v2026.8.0-latest.1), não se trata mais apenas de um aviso; a própria página do relatório parece estar quebrada.</p>\n<p><code>/admin/plugins/fingerprint</code> retorna uma lista vazia de “últimas correspondências” e itens sinalizados, e o console exibe:</p>\n<pre><code class=\"lang-plaintext\">Uncaught (in promise) TypeError: Cannot convert undefined or null to object\n    at Object.values (&lt;anonymous&gt;)\n    at fingerprint-report.js:58\n</code></pre>","post_number":72,"post_type":1,"posts_count":63,"updated_at":"2026-08-01T16:51:20.131Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":1,"reads":9,"readers_count":8,"score":6.8,"yours":false,"topic_id":114890,"topic_slug":"discourse-fingerprint-browser-fingerprinting-plugin","topic_title":"Discourse Fingerprint - Browser Fingerprinting Plugin","topic_html_title":"Discourse Fingerprint - Browser Fingerprinting Plugin","category_id":22,"display_username":"","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","bookmarked":false,"raw":"Following up on the deprecation above.. on current core (v2026.8.0-latest.1) it's not just a warning any more, the report page itself looks broken.\n\n`/admin/plugins/fingerprint` comes up with an empty \"latest matches\" and flagged list, and the console throws:\n\n\n```\nUncaught (in promise) TypeError: Cannot convert undefined or null to object\n    at Object.values (<anonymous>)\n    at fingerprint-report.js:58\n```","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":22774,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Following up on the deprecation above.. on current core (v2026.8.0-latest.1) it’s not just a warning any more, the report page itself looks broken. \n/admin/plugins/fingerprint comes up with an empty “latest matches” and flagged list, and the console throws: \nUncaught (in promise) TypeError: Cannot c&hellip;","truncated":true,"post_url":"/t/discourse-fingerprint-browser-fingerprinting-plugin/114890/72","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017658,"name":"Jay Pfaffman","username":"pfaffman","avatar_template":"/user_avatar/meta.discourse.org/pfaffman/{size}/120154_2.png","created_at":"2026-08-01T16:30:31.126Z","cooked":"<p>Isso não é difícil. Me pergunto em qual tema eu estava trabalhando ou se resolvi o problema! <img src=\"https://emoji.discourse-cdn.com/twitter/person_shrugging.png?v=15\" title=\":person_shrugging:\" class=\"emoji\" alt=\":person_shrugging:\" loading=\"lazy\" width=\"20\" height=\"20\"></p>","post_number":6,"post_type":1,"posts_count":6,"updated_at":"2026-08-01T16:30:31.126Z","reply_count":0,"reply_to_post_number":5,"quote_count":0,"incoming_link_count":1,"reads":14,"readers_count":13,"score":7.8,"yours":false,"topic_id":361381,"topic_slug":"new-core-features-system-specs-in-plugins-and-themes","topic_title":"New core features system specs in plugins and themes","topic_html_title":"New core features system specs in plugins and themes","category_id":7,"display_username":"Jay Pfaffman","primary_group_name":null,"flair_name":"support-experts","flair_url":"https://global.discourse-cdn.com/meta/original/3X/e/2/e250ec403580530d19e6a9ed42d0d525a51a9dbe.svg","flair_bg_color":"FFFFFF","flair_color":"","flair_group_id":142,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Support Expert","title_is_group":false,"reply_to_user":{"id":127446,"username":"gormus","name":"Osman Görmüş","avatar_template":"/user_avatar/meta.discourse.org/gormus/{size}/428592_2.png"},"bookmarked":false,"raw":"That's not hard. I wonder what theme I was working on or if I solved the problem! :person_shrugging:","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":15209,"hidden":false,"trust_level":4,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"That’s not hard. I wonder what theme I was working on or if I solved the problem! :person_shrugging:","truncated":true,"post_url":"/t/new-core-features-system-specs-in-plugins-and-themes/361381/6","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017657,"name":"Tobias Eigen","username":"tobiaseigen","avatar_template":"/user_avatar/meta.discourse.org/tobiaseigen/{size}/539204_2.png","created_at":"2026-08-01T16:22:33.482Z","cooked":"<p>Acabei de perceber que também estou enfrentando isso, depois de mudar o URL do meu site para <a href=\"http://digitallysovereign.org\" rel=\"noopener nofollow ugc\">digitallysovereign.org</a>.</p>\n<p>Parece que realmente não há como evitar desinstalar e reinstalar o plugin, e recriar todos os atores, porque os seguidores existentes no Mastodon ou em qualquer outro lugar não saberão automaticamente sobre a mudança de domínio. Seus servidores armazenaram em cache o URL antigo do seu ator.</p>\n<p>Eu só tinha dois seguidores até agora, então desinstalar e reinstalar é uma decisão fácil.</p>\n<p>Edição: esqueci que desinstalar e reinstalar não remove os dados do plugin. Este comando Rails resolveu o problema.</p>\n<pre><code class=\"lang-plaintext\">tables = [\n  \"discourse_activity_pub_actors\",\n  \"discourse_activity_pub_follows\",\n  \"discourse_activity_pub_activities\",\n  \"discourse_activity_pub_attachments\",\n  \"discourse_activity_pub_authorizations\",\n  \"discourse_activity_pub_clients\",\n  \"discourse_activity_pub_collections\",\n  \"discourse_activity_pub_logs\",\n  \"discourse_activity_pub_objects\"\n]\n\nActiveRecord::Base.connection.execute(\"TRUNCATE #{tables.join(', ')} CASCADE\")\nputs \"All ActivityPub tables cleared!\"\n</code></pre>","post_number":3,"post_type":1,"posts_count":3,"updated_at":"2026-08-01T18:39:17.261Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":4,"reads":10,"readers_count":9,"score":22.0,"yours":false,"topic_id":408845,"topic_slug":"activitypub-and-changed-domains","topic_title":"Activitypub and changed domains","topic_html_title":"Activitypub and changed domains","category_id":6,"display_username":"Tobias Eigen","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":3,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","bookmarked":false,"raw":"I just realized I am faced with this as well, after changing my site's url to digitallysovereign.org.\n\nLooks like there is actually no way around removing and reinstalling the plugin, and recreating all the actors, because existing followers on Mastodon or wherever else won’t automatically know about your domain change. Their servers cached your old actor URL.\n\nI only had two followers so far so removing and reinstalling is a no brainer.\n\nEdit: forgot that removing and reinstalling doesn't remove plugin data. This rails command did the trick. \n\n\n```\ntables = [\n  \"discourse_activity_pub_actors\",\n  \"discourse_activity_pub_follows\",\n  \"discourse_activity_pub_activities\",\n  \"discourse_activity_pub_attachments\",\n  \"discourse_activity_pub_authorizations\",\n  \"discourse_activity_pub_clients\",\n  \"discourse_activity_pub_collections\",\n  \"discourse_activity_pub_logs\",\n  \"discourse_activity_pub_objects\"\n]\n\nActiveRecord::Base.connection.execute(\"TRUNCATE #{tables.join(', ')} CASCADE\")\nputs \"All ActivityPub tables cleared!\"\n```\n\nEdit 2: I can confirm that doing the above rails command and recreating the actor worked - I did not have to remove and reinstall the plugin.","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":8571,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I just realized I am faced with this as well, after changing my site’s url to <a href=\"http://digitallysovereign.org\" rel=\"noopener nofollow ugc\">digitallysovereign.org</a>. \nLooks like there is actually no way around removing and reinstalling the plugin, and recreating all the actors, because existing followers on Mastodon or wherever else won’t automatically know abou&hellip;","truncated":true,"post_url":"/t/activitypub-and-changed-domains/408845/3","locale":"en","is_localized":true,"language":"en","localization_outdated":true,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017651,"name":"Andrea Ross","username":"42aross","avatar_template":"/user_avatar/meta.discourse.org/42aross/{size}/569643_2.png","created_at":"2026-08-01T15:49:46.758Z","cooked":"<p>Apenas passando para dar um alô. Se houver algo que eu possa fazer para ajudar, por favor, me avise. Obrigado <img src=\"https://emoji.discourse-cdn.com/twitter/purple_heart.png?v=15\" title=\":purple_heart:\" class=\"emoji\" alt=\":purple_heart:\" loading=\"lazy\" width=\"20\" height=\"20\"></p>","post_number":4,"post_type":1,"posts_count":3,"updated_at":"2026-08-01T15:49:46.758Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":1,"reads":12,"readers_count":11,"score":7.4,"yours":false,"topic_id":406846,"topic_slug":"add-username-as-a-template-param-in-ai-persona-system-prompts","topic_title":"Add {username} as a template param in AI persona system prompts","topic_html_title":"Add {username} as a template param in AI persona system prompts","category_id":2,"display_username":"Andrea Ross","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":null,"bookmarked":false,"raw":"Just touching base. If there is anything I can do to help, please let me now. Thank you :purple_heart:","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":195877,"hidden":false,"trust_level":1,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Just touching base. If there is anything I can do to help, please let me now. Thank you :purple_heart:","truncated":true,"post_url":"/t/add-username-as-a-template-param-in-ai-persona-system-prompts/406846/4","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017650,"name":"Lillian ","username":"Lilly","avatar_template":"/user_avatar/meta.discourse.org/lilly/{size}/572196_2.png","created_at":"2026-08-01T15:41:00.297Z","cooked":"<p>pessoalmente, eu não executaria uma configuração de contêiner dual em qualquer coisa com menos de 8 GB de RAM, 4 CPUs e 80 GB de disco, mas sua experiência e situação podem ser diferentes. estou executando um fórum relativamente movimentado nesta configuração da Hetzner com cerca de 300 usuários ativos, e de 70 a 100 DEU.</p>\n<h2><a name=\"script-bash-para-encontrar-servidor-hetzner-1\" class=\"anchor\" href=\"#script-bash-para-encontrar-servidor-hetzner-1\" aria-label=\"Heading link\"></a>script bash para encontrar servidor Hetzner</h2>\n<p>ok, isso pode ajudar você e outros que lerem isso. é específico para a Hetzner, mas provavelmente pode ser adaptado para outros fornecedores de VPS (não me peça para fazer isso por você).</p>\n<p>este é um script bash simples que verificará a cada 5 minutos se há um servidor Hetzner CAX21 ou CX33 disponível e publicará como um tópico em uma categoria na sua instância atual do Discourse (você pode alterar o script para a configuração de sua escolha). funciona de maneira semelhante a uma categoria de feed RSS.</p>\n<p>você precisará de um token da Hetzner e de uma chave de API do Discourse, além do ID da categoria do seu fórum Discourse desejado para onde os tópicos serão publicados. o script pode ser alterado para incluir um filtro que especifique a localização também (este procura em todas as suas localizações).</p>\n<h3><a name=\"etapa-1-obter-tokens-de-api-2\" class=\"anchor\" href=\"#etapa-1-obter-tokens-de-api-2\" aria-label=\"Heading link\"></a>etapa 1: obter tokens de API</h3>\n<ul>\n<li><strong>token de API da Hetzner:</strong> vá para o console da nuvem da Hetzner → selecione seu projeto → depois clique em <strong>segurança</strong> à esquerda → tokens de API → gerar token (somente leitura é suficiente). copie e salve esta chave.</li>\n<li><strong>chave de API do Discourse:</strong> vá para o administrador do Discourse → API → crie uma nova chave (usuário do sistema, todos os endpoints é suficiente). copie e salve esta também.</li>\n</ul>\n<h3><a name=\"etapa-2-instalar-jq-3\" class=\"anchor\" href=\"#etapa-2-instalar-jq-3\" aria-label=\"Heading link\"></a>etapa 2: instalar <code>jq</code></h3>\n<p>faça login via SSH no seu servidor Hetzner atual e instale o analisador JSON <code>jq</code> (leva apenas alguns segundos):</p>\n<pre><code class=\"lang-plaintext\">apt-get update\napt-get install jq -y\n</code></pre>\n<h3><a name=\"etapa-3-configurar-o-script-de-rastreamento-4\" class=\"anchor\" href=\"#etapa-3-configurar-o-script-de-rastreamento-4\" aria-label=\"Heading link\"></a>etapa 3: configurar o script de rastreamento</h3>\n<p>no seu servidor Hetzner atual, crie o seguinte script bash:</p>\n<pre><code class=\"lang-plaintext\">nano /root/hetzner_tracker.sh\n</code></pre>\n<p>cole este código dentro (você precisará inserir suas chaves de API reais, a URL do seu fórum e o ID da categoria onde deseja que os tópicos sejam publicados).</p>\n<pre data-code-wrap=\"bash\"><code class=\"lang-bash\">#!/bin/bash\n\nHETZNER_TOKEN=\"coloque_seu_novo_token_da_hetzner_aqui\" \nDISCOURSE_URL=\"https://seu-forum.com\"\nDISCOURSE_USER=\"system\"\nDISCOURSE_API_KEY=\"coloque_sua_nova_chave_de_api_do_discourse_aqui\"\nCATEGORY_ID=XX # ID da categoria do seu fórum Discourse\n\n# 1. Peça à Hetzner os modelos de servidor e obtenha APENAS os IDs dos modelos baratos de 8 GB (CAX21 ou CX33)\nTYPES_JSON=$(curl -s -H \"Authorization: Bearer $HETZNER_TOKEN\" \"https://api.hetzner.cloud/v1/server_types\")\nTARGET_IDS=$(echo \"$TYPES_JSON\" | jq -c '[.server_types[] | select(.name == \"cax21\" or .name == \"cx33\") | .id]')\n\n# 2. Peça à Hetzner os níveis de estoque em tempo real de todos os datacenters.\nDC_JSON=$(curl -s -H \"Authorization: Bearer $HETZNER_TOKEN\" \"https://api.hetzner.cloud/v1/datacenters\")\n\n# 3. Verifique TODAS as localizações para ver se nossos modelos específicos estão na lista \"disponível\".\nMATCHES=$(echo \"$DC_JSON\" | jq -r --argjson targets \"$TARGET_IDS\" '\n  .datacenters[] | \n  .location.name as $loc |\n  .name as $dc |\n  .server_types.available[] | \n  select(. as $avail | $targets | index($avail)) | \n  \"- Localização: \\($loc | ascii_upcase) (\\($dc)) - ID do Modelo de Servidor: \\(.)\"\n')\n\n# 4. Se encontrarmos uma correspondência, construa a publicação do Discourse e envie!\nif [ -n \"$MATCHES\" ]; then\n  \n  RAW_TEXT=\"Um servidor de 8 GB econômico (CAX21 ou CX33) está agora disponível!\n\n**Correspondências encontradas:**\n$MATCHES\n\n[Vá para o console da Hetzner agora!](https://console.hetzner.cloud/)\"\n\n  PAYLOAD=$(jq -n --arg title \"🚨 ALERTA HETZNER: Servidor de 8 GB em Estoque!\" \\\n                   --arg raw \"$RAW_TEXT\" \\\n                   --argjson cat \"$CATEGORY_ID\" \\\n                   '{title: $title, raw: $raw, category: $cat}')\n\n  curl -s -X POST \"$DISCOURSE_URL/posts.json\" \\\n    -H \"Api-Key: $DISCOURSE_API_KEY\" \\\n    -H \"Api-Username: $DISCOURSE_USER\" \\\n    -H \"Content-Type: application/json\" \\\n    -d \"$PAYLOAD\"\n\n  # Desabilite o script após a execução para que não spame seu fórum\n  chmod -x \"$0\"\nfi\n</code></pre>\n<p>salve o arquivo (<code>ctrl+o</code>, <code>enter</code>, <code>ctrl+x</code>) e, em seguida, torne-o executável:</p>\n<pre><code class=\"lang-plaintext\">chmod +x /root/hetzner_tracker.sh\n</code></pre>\n<h3><a name=\"etapa-4-automatizar-o-script-5\" class=\"anchor\" href=\"#etapa-4-automatizar-o-script-5\" aria-label=\"Heading link\"></a>etapa 4: automatizar o script</h3>\n<p>abra um arquivo de configuração de agendamento cron:</p>\n<pre><code class=\"lang-plaintext\">crontab -e\n</code></pre>\n<p>Adicione esta linha ao final do código existente:</p>\n<pre><code class=\"lang-plaintext\">*/5 * * * * /root/hetzner_tracker.sh\n</code></pre>\n<hr>\n<h3><a name=\"como-funciona-6\" class=\"anchor\" href=\"#como-funciona-6\" aria-label=\"Heading link\"></a>como funciona:</h3>\n<p>a cada 5 minutos, seu servidor perguntará silenciosamente à Hetzner: <em>“você tem algum servidor disponível hoje?”</em></p>\n<p>se a Hetzner disser sim, o script usará imediatamente sua API do Discourse para criar um novo tópico na categoria especificada e, se você tiver o Discourse configurado para notificá-lo sobre novos tópicos, seu e-mail e/ou telefone devem vibrar.</p>\n<p>aqui está um exemplo de publicação de tópico de quando eu estava procurando um servidor específico de 8 GB CPX31 na área dos EUA.</p>\n<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/f/3/4/f3486619093b00de87f73bd4737d7a8fc6513e47.png\" data-download-href=\"/uploads/short-url/yIb8CBmuqUmCYkfbAUCuToqn6iH.png?dl=1\" title=\"image\"><img src=\"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/f/3/4/f3486619093b00de87f73bd4737d7a8fc6513e47_2_690x268.png\" alt=\"image\" data-base62-sha1=\"yIb8CBmuqUmCYkfbAUCuToqn6iH\" width=\"690\" height=\"268\" srcset=\"https://global.discourse-cdn.com/meta/optimized/4X/f/3/4/f3486619093b00de87f73bd4737d7a8fc6513e47_2_690x268.png, https://global.discourse-cdn.com/meta/optimized/4X/f/3/4/f3486619093b00de87f73bd4737d7a8fc6513e47_2_1035x402.png 1.5x, https://global.discourse-cdn.com/meta/optimized/4X/f/3/4/f3486619093b00de87f73bd4737d7a8fc6513e47_2_1380x536.png 2x\" data-dominant-color=\"F5F4F5\" aria-description=\"Uma notificação de alerta da Hetzner anuncia que um servidor de 8GB está disponível em datacenters da América do Norte. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">1786×694 64.3 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>\n<p>uma vez que a publicação for bem-sucedida, o script desabilita suas próprias permissões de execução (<code>chmod -x</code>) para que não spame seu fórum com centenas de publicações enquanto o servidor estiver em estoque.</p>\n<p>não se preocupe, já usei isso muitas vezes e não vai atingir o limite de taxa para você.</p>","post_number":8,"post_type":1,"posts_count":19,"updated_at":"2026-08-01T16:14:12.897Z","reply_count":1,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":34,"readers_count":33,"score":101.8,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":"Lillian ","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":5,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","bookmarked":false,"raw":"personally, i would not run a dual container configuration on anything less than an 8GB RAM 4CPU 80GB disk, but your mileage and situation may differ.  i'm running a relatively busy forum on this hetzner setup with around 300 active users, and anywhere from 70-100 DEU. \n\n## bash script to find hetzner server\n\nok, this might help you and others who read this. it is specific to hetzner but can probably be adapted for other vps vendors, (don't ask me to do it for you though).\n\nthis is a simple bash script that will check every 5 minutes for a hetzner server CAX21 or CX33 and post it as a topic to a category on your current Discourse instance (you can alter the script for the configuration of your choice though). it works similarly to an RSS feed category.\n\nyou will need a hetzner token and a Discourse api key, and the category id of your desired Discourse category for it to post topics to. the script can be altered to include a filter to specify location too (this one searches for all their locations). \n\n### step 1: get api tokens\n\n* **hetzner api token:** go to your hetzner cloud console → select your project → then click security on the left → api tokens → generate token (read-only is fine). copy and save this key.\n* **Discourse api key:** go to your Discourse admin → api → create a new key (system user, all endpoints is fine). copy and save this one too.\n\n### step 2: install `jq`\n\nssh into your current hetzner server and install the `jq` json parser (it only takes a few seconds):\n\n```\napt-get update\napt-get install jq -y\n```\n\n### step 3: setup the tracker script\n\non your current hetzner server, create the following bash script:\n\n```\nnano /root/hetzner_tracker.sh\n```\n\npaste this code inside (you will need to insert in your actual api keys, your forum URL, and the category ID where you want it to post).\n\n\n```bash\n#!/bin/bash\n\nHETZNER_TOKEN=\"put_your_new_hetzner_token_here\" \nDISCOURSE_URL=\"https://your-forum.com\"\nDISCOURSE_USER=\"system\"\nDISCOURSE_API_KEY=\"put_your_new_discourse_api_key_here\"\nCATEGORY_ID=XX # your Discourse forum category ID\n\n# 1. Ask Hetzner for the server models, and ONLY get the IDs for the cheap 8GB models (CAX21 or CX33)\nTYPES_JSON=$(curl -s -H \"Authorization: Bearer $HETZNER_TOKEN\" \"https://api.hetzner.cloud/v1/server_types\")\nTARGET_IDS=$(echo \"$TYPES_JSON\" | jq -c '[.server_types[] | select(.name == \"cax21\" or .name == \"cx33\") | .id]')\n\n# 2. Ask Hetzner for the real-time stock levels of all datacenters.\nDC_JSON=$(curl -s -H \"Authorization: Bearer $HETZNER_TOKEN\" \"https://api.hetzner.cloud/v1/datacenters\")\n\n# 3. Check ALL locations to see if our specific models are in the \"available\" list.\nMATCHES=$(echo \"$DC_JSON\" | jq -r --argjson targets \"$TARGET_IDS\" '\n  .datacenters[] | \n  .location.name as $loc |\n  .name as $dc |\n  .server_types.available[] | \n  select(. as $avail | $targets | index($avail)) | \n  \"- Location: \\($loc | ascii_upcase) (\\($dc)) - Server Model ID: \\(.)\"\n')\n\n# 4. If we found a match, build the Discourse post and fire it!\nif [ -n \"$MATCHES\" ]; then\n  \n  RAW_TEXT=\"A budget 8GB server (CAX21 or CX33) is now available!\n\n**Matches found:**\n$MATCHES\n\n[Go to the Hetzner console now!](https://console.hetzner.cloud/)\"\n\n  PAYLOAD=$(jq -n --arg title \"🚨 HETZNER ALERT: 8GB Server in Stock!\" \\\n                   --arg raw \"$RAW_TEXT\" \\\n                   --argjson cat \"$CATEGORY_ID\" \\\n                   '{title: $title, raw: $raw, category: $cat}')\n\n  curl -s -X POST \"$DISCOURSE_URL/posts.json\" \\\n    -H \"Api-Key: $DISCOURSE_API_KEY\" \\\n    -H \"Api-Username: $DISCOURSE_USER\" \\\n    -H \"Content-Type: application/json\" \\\n    -d \"$PAYLOAD\"\n\n  # Disable script after firing so it doesn't spam your forum\n  chmod -x \"$0\"\nfi\n```\n\nsave the file (`ctrl+o`, `enter`, `ctrl+x`), and then make it executable:\n\n```\nchmod +x /root/hetzner_tracker.sh\n```\n\n### step 4: automate the script\n\nopen a cron task schedule file:\n\n```\ncrontab -e\n```\n\nAdd this line to the very bottom of the existing code:\n\n```\n*/5 * * * * /root/hetzner_tracker.sh\n```\n***\n### how it works:\n\nevery 5 minutes, your server will quietly ask hetzner, *\"do you have any available servers today?\"*\n\nif hetzner says yes, the script immediately uses your Discourse api to create a brand new topic in your specified category, and if you have Discourse set up to notify you of new topics, your email and/or phone should buzz you.\n\nhere is an example topic post from when i was looking for an specific 8GB CPX31 server in US area.\n\n![image|690x268](upload://yIb8CBmuqUmCYkfbAUCuToqn6iH.png)\n\n\nonce it successfully posts, the script disables its own execution permissions (`chmod -x`) so it doesn’t spam your forum with 100's of posts while the server is in stock.\n\ndon't worry, i've used this many times and it will not rate limit you. and you can change the timing interval to something like 10 or 15 minutes if you wish.","actions_summary":[{"id":2,"count":6}],"moderator":false,"admin":false,"staff":false,"user_id":127856,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"personally, i would not run a dual container configuration on anything less than an 8GB RAM 4CPU 80GB disk, but your mileage and situation may differ.  i’m running a relatively busy forum on this hetzner setup with around 300 active users, and anywhere from 70-100 DEU. \n<a name=\"p-2017650-bash-script-to-find-hetzner-server-1\" class=\"anchor\" href=\"#p-2017650-bash-script-to-find-hetzner-server-1\" aria-label=\"Heading link\"></a>bash script to find hetzner s&hellip;","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/8","locale":"en","is_localized":true,"language":"en","localization_outdated":true,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":5},{"id":"+1","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":6,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017649,"name":"Dave McClure","username":"mcwumbly","avatar_template":"/user_avatar/meta.discourse.org/mcwumbly/{size}/103861_2.png","created_at":"2026-08-01T15:26:54.637Z","cooked":"<aside class=\"quote no-group\" data-username=\"EricGT\" data-post=\"56\" data-topic=\"402498\">\n<div class=\"title\">\n<div class=\"quote-controls\"></div>\n<img alt=\"\" width=\"24\" height=\"24\" src=\"https://avatars.discourse-cdn.com/v4/letter/e/f1d935/48.png\" class=\"avatar\"> EricGT:</div>\n<blockquote>\n<p>Essa funcionalidade inclui um relatório administrativo mostrando quais tópicos receberam cliques em “Eu também”, de preferência ordenados por contagem em ordem decrescente?</p>\n</blockquote>\n</aside>\n<p>Usei sua pergunta como um prompt diretamente na interface do <a href=\"https://meta.discourse.org/t/32566?silent=true\">Data Explorer</a> para criar um:</p>\n<p>Prompt:</p>\n<blockquote>\n<p>um relatório administrativo mostrando quais tópicos receberam cliques em “Eu também”, de preferência ordenados por contagem em ordem decrescente, filtrados para tópicos abertos, com um parâmetro para intervalo de datas quando o tópico foi atualizado pela última vez</p>\n</blockquote>\n<p>Consulta:</p>\n<pre data-code-wrap=\"sql\"><code class=\"lang-sql\">-- [params]\n-- date :start_date = 2026-02-01\n-- date :end_date = 2026-08-01\n\nSELECT\n  t.id AS topic_id,\n  t.title,\n  COUNT(si.id) AS me_too_count,\n  t.bumped_at AS last_bumped_at\nFROM discourse_solved_shared_issues si\nJOIN topics t ON t.id = si.topic_id\nJOIN categories c ON c.id = t.category_id\nWHERE t.deleted_at IS NULL\n  AND t.archetype = 'regular'\n  AND t.closed IS FALSE\n  AND t.archived IS FALSE\n  AND t.visible IS TRUE\n  AND c.read_restricted IS FALSE\n  AND t.bumped_at &gt;= CAST(:start_date AS date)\n  AND t.bumped_at &lt; CAST(:end_date AS date) + INTERVAL '1 day'\nGROUP BY t.id, t.title, t.bumped_at\nORDER BY me_too_count DESC\n</code></pre>\n<p>E isso também pode ser adicionado ao painel, se desejado.</p>\n<hr>\n<p>Dito isso, eu poderia imaginar isso sendo integrado diretamente na seção “suporte” do novo painel também.</p>","post_number":58,"post_type":1,"posts_count":47,"updated_at":"2026-08-01T15:26:54.637Z","reply_count":0,"reply_to_post_number":56,"quote_count":1,"incoming_link_count":0,"reads":7,"readers_count":6,"score":16.4,"yours":false,"topic_id":402498,"topic_slug":"solved-improvements-allowing-members-to-indicate-theyre-experiencing-a-reported-issue","topic_title":"Solved improvements: Allowing members to indicate they're experiencing a reported issue","topic_html_title":"Solved improvements: Allowing members to indicate they&rsquo;re experiencing a reported issue","category_id":67,"display_username":"Dave McClure","primary_group_name":"team","flair_name":"team","flair_url":"https://global.discourse-cdn.com/meta/original/3X/e/b/ebee30bd98aef20357e4a177a5a1e45b877ce088.svg","flair_bg_color":"","flair_color":"111","flair_group_id":47,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Director of Product","title_is_group":false,"bookmarked":false,"raw":"[quote=\"EricGT, post:56, topic:402498\"]\nDoes this feature include an admin report showing which topics have received “Me too” clicks, preferably sorted by count in descending order?\n[/quote]\n\nUsed your question as a prompt directly in the data explorer UI to create one:\n\nPrompt:\n\n> an admin report showing which topics have received “Me too” clicks, preferably sorted by count in descending order, filtered to open topics, with a params for date range when topic was last bumped\n\nQuery:\n\n```sql\n-- [params]\n-- date :start_date = 2026-02-01\n-- date :end_date = 2026-08-01\n\nSELECT\n  t.id AS topic_id,\n  t.title,\n  COUNT(si.id) AS me_too_count,\n  t.bumped_at AS last_bumped_at\nFROM discourse_solved_shared_issues si\nJOIN topics t ON t.id = si.topic_id\nJOIN categories c ON c.id = t.category_id\nWHERE t.deleted_at IS NULL\n  AND t.archetype = 'regular'\n  AND t.closed IS FALSE\n  AND t.archived IS FALSE\n  AND t.visible IS TRUE\n  AND c.read_restricted IS FALSE\n  AND t.bumped_at >= CAST(:start_date AS date)\n  AND t.bumped_at < CAST(:end_date AS date) + INTERVAL '1 day'\nGROUP BY t.id, t.title, t.bumped_at\nORDER BY me_too_count DESC\n```\n\nAnd that can be added in the dashboard as well, if desired.\n\n---\n\nThat said, I could imagine this being directly integrated into the \"support\" section of the new dashboard as well.","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":true,"staff":true,"user_id":4263,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Used your question as a prompt directly in the <a href=\"https://meta.discourse.org/t/32566?silent=true\">data explorer</a> UI to create one: \nPrompt: \n\nan admin report showing which topics have received “Me too” clicks, preferably sorted by count in descending order, filtered to open topics, with a params for date range when topic was last bumped \n\nQuery: \n--&hellip;","truncated":true,"post_url":"/t/solved-improvements-allowing-members-to-indicate-theyre-experiencing-a-reported-issue/402498/58","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017647,"name":"","username":"satonotdead","avatar_template":"/user_avatar/meta.discourse.org/satonotdead/{size}/447830_2.png","created_at":"2026-08-01T14:41:55.166Z","cooked":"<p>Me pergunto se é possível exibir as subcategorias aninhadas no menu suspenso principal, replicando a exibição de categorias com o componente de tema aninhado na barra lateral.</p>\n<p>Estou reduzindo o <em>ruído</em> para nossos usuários inexperientes em nossa instância, e o comportamento atual parece estranho para eles.</p>\n<p>O menu suspenso de categorias atual poderia listar as subcategorias aninhadas, e o painel de navegação no mobile poderia ser simplificado em uma única linha. Se eu pudesse mover as subcategorias para o menu suspenso das categorias principais, conseguiria fazer isso.</p>","post_number":1,"post_type":1,"posts_count":5,"updated_at":"2026-08-01T18:24:46.781Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":2,"reads":15,"readers_count":14,"score":88.0,"yours":false,"topic_id":409046,"topic_slug":"about-nesting-subcategories-on-dropdown","topic_title":"About nesting subcategories on dropdown","topic_html_title":"About nesting subcategories on dropdown","category_id":9,"display_username":"","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":2,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"","bookmarked":false,"raw":"I wonder if it is possible to display subcategories nested in the main dropdown, replicating the categories display with the nested theme component in the sidebar.\n\nI'm cutting *noise* for our unexperienced users on our instance, and the current behavior is strange to them.\n\nThe current category dropdown could list the subcategories nested, and the navigation panel on mobile could be simplified into one line. If I can move the subcategories to the main categories dropdown, I would be able to do it.","actions_summary":[{"id":2,"count":3}],"moderator":false,"admin":false,"staff":false,"user_id":71041,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"I wonder if it is possible to display subcategories nested in the main dropdown, replicating the categories display with the nested theme component in the sidebar. \nI’m cutting noise for our unexperienced users on our instance, and the current behavior is strange to them. \nThe current category dropd&hellip;","truncated":true,"post_url":"/t/about-nesting-subcategories-on-dropdown/409046/1","locale":"en","is_localized":true,"language":"en","localization_outdated":true,"event":null,"calendar_details":[],"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":2},{"id":"+1","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":3,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null,"can_vote":false},{"id":2017645,"name":"","username":"Moin","avatar_template":"/user_avatar/meta.discourse.org/moin/{size}/554653_2.png","created_at":"2026-08-01T14:29:24.568Z","cooked":"<p>Esse é um bom ponto. Acho que há um bug. Parece que o menu suspenso exibe o ícone com base no nome, mas a lista os exibe com base no slug.</p>\n<p>Para que o ícone seja exibido em todos os lugares, isso precisa ser corrigido.</p>","post_number":5,"post_type":1,"posts_count":5,"updated_at":"2026-08-01T14:29:24.568Z","reply_count":0,"reply_to_post_number":3,"quote_count":0,"incoming_link_count":0,"reads":10,"readers_count":9,"score":17.0,"yours":false,"topic_id":409042,"topic_slug":"tag-icons","topic_title":"Tag-icons插件 图标显示问题","topic_html_title":"Tag-icons插件 图标显示问题","category_id":1,"display_username":"","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Kluges Köpfchen","title_is_group":false,"reply_to_user":{"id":184434,"username":"iouvps","name":"Iouvps","avatar_template":"/user_avatar/meta.discourse.org/iouvps/{size}/527360_2.png"},"bookmarked":false,"raw":"This is a good point. I think there is a bug. It seems the dropdown shows the icon based on the name, but the list shows them based on the slug.\n\nTo get the icon everywhere this needs to be fixed.","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":95552,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"This is a good point. I think there is a bug. It seems the dropdown shows the icon based on the name, but the list shows them based on the slug. \nTo get the icon everywhere this needs to be fixed.","truncated":true,"post_url":"/t/tag-icons/409042/5","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017644,"name":"","username":"asa","avatar_template":"/user_avatar/meta.discourse.org/asa/{size}/184869_2.png","created_at":"2026-08-01T14:25:00.866Z","cooked":"<p>Eu uso a Netcup e estou muito satisfeito. O preço também é bom.</p><aside class=\"onebox allowlistedgeneric\" data-onebox-src=\"https://www.netcup.com/en/server\">\n  <header class=\"source\">\n      <img src=\"https://global.discourse-cdn.com/meta/original/4X/7/6/e/76e44eea890656a603345f9e6027e617f95986c2.png\" class=\"site-icon\" alt=\"\" data-dominant-color=\"3F8893\" width=\"64\" height=\"64\">\n\n      <a href=\"https://www.netcup.com/en/server\" target=\"_blank\" rel=\"nofollow ugc noopener\">netcup</a>\n  </header>\n\n  <article class=\"onebox-body\">\n    <div class=\"aspect-image\" style=\"--aspect-ratio:178/208;\"><img src=\"https://global.discourse-cdn.com/meta/original/4X/d/0/a/d0a3b284393c6da0231cbf19d49825b0acf0c7e6.svg\" class=\"thumbnail\" alt=\"\" data-dominant-color=\"\" width=\"178\" height=\"208\"></div>\n\n<h3><a href=\"https://www.netcup.com/en/server\" target=\"_blank\" rel=\"nofollow ugc noopener\">Server hosting for every requirement - affordable &amp; secure | netcup</a></h3>\n\n  <p>Powerful servers, root servers &amp; ARM servers from Germany. For more digital sovereignty in Europe! Flexible, affordable &amp; secure. Discover now!</p>\n\n\n  </article>\n\n  <div class=\"onebox-metadata\">\n    \n    \n  </div>\n\n  <div style=\"clear: both\"></div>\n</aside>\n","post_number":7,"post_type":1,"posts_count":19,"updated_at":"2026-08-01T14:25:00.866Z","reply_count":1,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":36,"readers_count":35,"score":27.2,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":"","primary_group_name":null,"flair_name":"translators","flair_url":"globe","flair_bg_color":"ddd","flair_color":"111","flair_group_id":50,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Bug Reporter","title_is_group":false,"bookmarked":false,"raw":"Ich nutze Netcup und bin sehr zufrieden. Der Preis ist auch okay.\nhttps://www.netcup.com/en/server","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":80880,"hidden":false,"trust_level":2,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Ich nutze Netcup und bin sehr zufrieden. Der Preis ist auch okay.","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/7","locale":"de","is_localized":true,"language":"de","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017643,"name":"Iouvps","username":"iouvps","avatar_template":"/user_avatar/meta.discourse.org/iouvps/{size}/527360_2.png","created_at":"2026-08-01T14:25:00.143Z","cooked":"<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/b/f/c/bfc24bb111e36d30ab8484ae4bda07078c186cfb.png\" data-download-href=\"/uploads/short-url/rmntlMUCnrqM779T8X7I901FSJR.png?dl=1\" title=\"image\"><img src=\"https://global.discourse-cdn.com/meta/original/4X/b/f/c/bfc24bb111e36d30ab8484ae4bda07078c186cfb.png\" alt=\"image\" data-base62-sha1=\"rmntlMUCnrqM779T8X7I901FSJR\" width=\"454\" height=\"253\" aria-description=\"A interface de software exibe uma lista de categorias de tópicos, como 'Inteligência' e 'iOS', acompanhadas de contadores numéricos em um fundo escuro. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">454×253 13.9 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div><br>\nAcabei de testar e realmente funciona; parece que esse resultado foi causado pela tradução automática. Obrigado.</p>","post_number":4,"post_type":1,"posts_count":5,"updated_at":"2026-08-01T14:25:00.143Z","reply_count":0,"reply_to_post_number":2,"quote_count":0,"incoming_link_count":1,"reads":10,"readers_count":9,"score":22.0,"yours":false,"topic_id":409042,"topic_slug":"tag-icons","topic_title":"Tag-icons插件 图标显示问题","topic_html_title":"Tag-icons插件 图标显示问题","category_id":1,"display_username":"Iouvps","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":null,"reply_to_user":{"id":95552,"username":"Moin","name":"","avatar_template":"/user_avatar/meta.discourse.org/moin/{size}/554653_2.png"},"bookmarked":false,"raw":"![image|454x253](upload://rmntlMUCnrqM779T8X7I901FSJR.png)\n刚试过了，确实有效，应该就是自动翻译造成的这个结果。感谢。","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":184434,"hidden":false,"trust_level":1,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"<a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/b/f/c/bfc24bb111e36d30ab8484ae4bda07078c186cfb.png\" data-download-href=\"/uploads/short-url/rmntlMUCnrqM779T8X7I901FSJR.png?dl=1\" title=\"image\" rel=\"noopener nofollow ugc\">[image]</a> \n刚试过了，确实有效，应该就是自动翻译造成的这个结果。感谢。","truncated":true,"post_url":"/t/tag-icons/409042/4","locale":"zh_CN","is_localized":true,"language":"zh_CN","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017642,"name":"Iouvps","username":"iouvps","avatar_template":"/user_avatar/meta.discourse.org/iouvps/{size}/527360_2.png","created_at":"2026-08-01T14:22:09.848Z","cooked":"<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/6/e/d/6ed3df8068d49abff62c67296094097a339aa248.png\" data-download-href=\"/uploads/short-url/fOqsni5WP6usvoAlLvzmfCm13N6.png?dl=1\" title=\"image\"><img src=\"https://global.discourse-cdn.com/meta/original/4X/6/e/d/6ed3df8068d49abff62c67296094097a339aa248.png\" alt=\"image\" data-base62-sha1=\"fOqsni5WP6usvoAlLvzmfCm13N6\" width=\"378\" height=\"284\" aria-description=\"A interface de usuário exibe uma lista de tags coloridas, incluindo opções como '情报', '羊毛', 'VPS', '转载' e '公告', com uma caixa de pesquisa no topo. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">378×284 11.5 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div><br>\nPercebi que, nas configurações, ele é exibido normalmente.<br>\nO que você disse pode realmente ser verdade, vou testar.</p>","post_number":3,"post_type":1,"posts_count":5,"updated_at":"2026-08-01T14:22:09.848Z","reply_count":1,"reply_to_post_number":2,"quote_count":0,"incoming_link_count":1,"reads":10,"readers_count":9,"score":27.0,"yours":false,"topic_id":409042,"topic_slug":"tag-icons","topic_title":"Tag-icons插件 图标显示问题","topic_html_title":"Tag-icons插件 图标显示问题","category_id":1,"display_username":"Iouvps","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":null,"reply_to_user":{"id":95552,"username":"Moin","name":"","avatar_template":"/user_avatar/meta.discourse.org/moin/{size}/554653_2.png"},"bookmarked":false,"raw":"![image|378x284](upload://fOqsni5WP6usvoAlLvzmfCm13N6.png)\n我发现在设置这里是正常可以显示的。\n你说的这个还真有可能，我试试","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":184434,"hidden":false,"trust_level":1,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"<a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/6/e/d/6ed3df8068d49abff62c67296094097a339aa248.png\" data-download-href=\"/uploads/short-url/fOqsni5WP6usvoAlLvzmfCm13N6.png?dl=1\" title=\"image\" rel=\"noopener nofollow ugc\">[image]</a> \n我发现在设置这里是正常可以显示的。 \n你说的这个还真有可能，我试试","truncated":true,"post_url":"/t/tag-icons/409042/3","locale":"zh_CN","is_localized":true,"language":"zh_CN","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017641,"name":"","username":"sniper756","avatar_template":"/user_avatar/meta.discourse.org/sniper756/{size}/545002_2.png","created_at":"2026-08-01T14:19:54.485Z","cooked":"<p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/6/1/8/618449764074a380a368c1daf139417e05ef75e3.jpeg\" data-download-href=\"/uploads/short-url/dUFJLpkj8hYsjPujXKHkqMB3tnB.jpeg?dl=1\" title=\"xianyu_1785593906330\"><img src=\"//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/6/1/8/618449764074a380a368c1daf139417e05ef75e3_2_690x267.jpeg\" alt=\"xianyu_1785593906330\" data-base62-sha1=\"dUFJLpkj8hYsjPujXKHkqMB3tnB\" width=\"690\" height=\"267\" srcset=\"https://global.discourse-cdn.com/meta/optimized/4X/6/1/8/618449764074a380a368c1daf139417e05ef75e3_2_690x267.jpeg, https://global.discourse-cdn.com/meta/optimized/4X/6/1/8/618449764074a380a368c1daf139417e05ef75e3_2_1035x400.jpeg 1.5x, https://global.discourse-cdn.com/meta/original/4X/6/1/8/618449764074a380a368c1daf139417e05ef75e3.jpeg 2x\" data-dominant-color=\"DBDFE8\" aria-description=\"Uma captura de tela do painel de controle do iON Cloud, exibindo os detalhes de um serviço VPS ativo em Los Angeles. (Captioned by AI)\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">xianyu_1785593906330</span><span class=\"informations\">1200×466 119 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p>\n<p>US$ 86,40 por ano ion VPS Cloud - Los Angeles - 2vCPU/4G/80GB/4TB-ION-L04</p>","post_number":6,"post_type":1,"posts_count":19,"updated_at":"2026-08-01T14:19:54.485Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":37,"readers_count":36,"score":7.4,"yours":false,"topic_id":409037,"topic_slug":"any-cheaper-alternatives-to-hetzner","topic_title":"Any cheaper alternatives to Hetzner?","topic_html_title":"Any cheaper alternatives to Hetzner?","category_id":31,"display_username":"","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Scribe","title_is_group":false,"bookmarked":false,"raw":"\n![xianyu_1785593906330|690x267](upload://dUFJLpkj8hYsjPujXKHkqMB3tnB.jpeg)\n\n年付$86.40  ion VPS Cloud - Los Angeles - 2vCPU/4G/80GB/4TB-ION-L04","actions_summary":[],"moderator":false,"admin":false,"staff":false,"user_id":185831,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"<a class=\"lightbox\" href=\"https://global.discourse-cdn.com/meta/original/4X/6/1/8/618449764074a380a368c1daf139417e05ef75e3.jpeg\" data-download-href=\"/uploads/short-url/dUFJLpkj8hYsjPujXKHkqMB3tnB.jpeg?dl=1\" title=\"xianyu_1785593906330\">[xianyu_1785593906330]</a> \n年付$86.40  ion VPS Cloud - Los Angeles - 2vCPU/4G/80GB/4TB-ION-L04","truncated":true,"post_url":"/t/any-cheaper-alternatives-to-hetzner/409037/6","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[],"current_user_reaction":null,"reaction_users_count":0,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null},{"id":2017640,"name":"","username":"Moin","avatar_template":"/user_avatar/meta.discourse.org/moin/{size}/554653_2.png","created_at":"2026-08-01T14:19:50.594Z","cooked":"<p>São dois plugins diferentes. O <a href=\"https://meta.discourse.org/t/discourse-topic-voting/40121\">votação em tópicos</a> serve para votar em um tópico. É o plugin usado na categoria <a class=\"hashtag-cooked\" href=\"/c/contribute/feature/2\" data-type=\"category\" data-slug=\"feature\" data-id=\"2\" data-style-type=\"square\" data-ref=\"contribute:feature\"><span class=\"hashtag-icon-placeholder\"><svg class=\"fa d-icon d-icon-square-full svg-icon svg-node\"><use href=\"#square-full\"></use></svg></span><span>Contribute &gt; Feature</span></a> aqui no Meta. Ele está conectado ao novo tipo “ideia” para categorias.<br>\nO plugin de <a href=\"https://meta.discourse.org/t/discourse-post-voting/227808\">votação em posts</a> permite que você vote nos posts dentro do tópico.</p>","post_number":2,"post_type":1,"posts_count":2,"updated_at":"2026-08-01T14:19:50.594Z","reply_count":0,"reply_to_post_number":null,"quote_count":0,"incoming_link_count":0,"reads":10,"readers_count":9,"score":47.0,"yours":false,"topic_id":409044,"topic_slug":"idea-voting-two-different-styles","topic_title":"Idea-voting, two different styles?","topic_html_title":"Idea-voting, two different styles?","category_id":6,"display_username":"","primary_group_name":null,"flair_name":null,"flair_url":null,"flair_bg_color":null,"flair_color":null,"flair_group_id":null,"badges_granted":[],"version":1,"can_edit":false,"can_delete":false,"can_recover":false,"can_see_hidden_post":false,"can_wiki":false,"user_title":"Kluges Köpfchen","title_is_group":false,"bookmarked":false,"raw":"Those are two different plugins. [Topic voting](https://meta.discourse.org/t/discourse-topic-voting/40121) is for voting on a topic. It's the plugin used in the #contribute:feature category here on Meta. It's connected to the new \"idea\" type for categories.\nThe [post voting](https://meta.discourse.org/t/discourse-post-voting/227808) plugin allows you to vote on posts within the topic.","actions_summary":[{"id":2,"count":1}],"moderator":false,"admin":false,"staff":false,"user_id":95552,"hidden":false,"trust_level":3,"deleted_at":null,"user_deleted":false,"edit_reason":null,"can_view_edit_history":true,"wiki":false,"excerpt":"Those are two different plugins. <a href=\"https://meta.discourse.org/t/discourse-topic-voting/40121\">Topic voting</a> is for voting on a topic. It’s the plugin used in the <a class=\"hashtag-cooked\" href=\"/c/contribute/feature/2\" data-type=\"category\" data-slug=\"feature\" data-id=\"2\" data-style-type=\"square\" data-ref=\"contribute:feature\"><span class=\"hashtag-icon-placeholder\"></span>Contribute &gt; Feature</span></a> category here on Meta. It’s connected to the new “idea” type for categories. \nThe <a href=\"https://meta.discourse.org/t/discourse-post-voting/227808\">post voting</a> plugin allows you to vote on posts within the topic.","truncated":true,"post_url":"/t/idea-voting-two-different-styles/409044/2","locale":"en","is_localized":true,"language":"en","localization_outdated":false,"event":null,"customer_flair_customer":null,"reactions":[{"id":"heart","type":"emoji","count":1}],"current_user_reaction":null,"reaction_users_count":1,"current_user_used_main_reaction":false,"can_accept_answer":false,"can_unaccept_answer":false,"accepted_answer":false,"topic_accepted_answer":null}]}