Files
modrinth/packages/blog/compiled/ai_policy_and_disclosures.content.ts
T
755825b09a project disclosures frontend (#6955)
* begin project disclosures

* new project settings header

* begin disclosure settings, edit content rules

* togglecards

* update phrasing of the rules, prepr

* more disclosure settings structuring

* add functionality toggle

* implement functionality with staging api

* improve project settings head titles

* feat(labrinth): project disclosures model

* feat(labrinth): project disclosures database model

* feat(labrinth): project disclosures get endpoint

* feat(labrinth): censor user ids if set by moderator

* feat(labrinth): wrap disclosures in struct

* feat(labrinth): edit project disclosures endpoint

* style(labrinth): cargo fmt

* style(labrinth): fix typo

* feat(labrinth): add fields for ai content disclosure

* fix(labrinth): field typo

* chore(labrinth): update query cache

* feat(labrinth): index disclosures in search

* refactor(labrinth): use enum instead of bools

* feat(labrinth): trigger incremental index on disclosure change

* feat(labrinth): change archived status to disclosure

* feat(labrinth): use disclosure for archival status

* fix(labrinth): error type for deserialization

* fix(labrinth): migration timestamp

* fix(labrinth): add disclosures to elasticsearch schema

* disclosures in search

* update photosensitivity warning copy

* update archiving, move general project settings to v3 (start redesign there), use project id lookups for stable cache keys, advanced in server search

* blue archive banner

* display AI use types

* improve labels

* add modrinth to link

* add placeholder missing disclosure report type

* add AI metadata checking to block image uploads with notice

* update copy

* update section 4 of rules

* Update rule 6 layout

* fix(labrinth): don't remove archival disclosure when changing status via v3 api

* feat(labrinth): derive str for ai usages and telemtry consent

* feat(labrinth): include ai usages and telemetry consent in disclosure types

* Update moderation checklist (#7056)

* fix: missing delphi severity (#7054)

* Utils nav, new disclosures stage, ai button in rules

* add prefix to collect

* Finish up new disclosures stage

* update r4 messages

* new r4 msg, update showcase clarity message

* fix: version upload failing to detect mrpack loader (#7063)

* fix: mrpack exporting with zip64 (#7064)

* fix: action bar max width (#7048)

* fix: action bar max width

* fix: width

* changelog

* Rule placeholders with subsections & anchors, update messages.

* update new messages to account for new rule and placeholder layout

* Add nag for content disclosures

---------

Co-authored-by: ThatGravyBoat <gravy@thatgravyboat.tech>
Co-authored-by: chyzman <chyzalt@gmail.com>
Co-authored-by: Truman Gao <106889354+tdgao@users.noreply.github.com>
Co-authored-by: Prospector <6166773+Prospector@users.noreply.github.com>

* prepr

* refactor(labrinth): move disclosure parsing to document creation

* fix(labrinth): prevent removing moderator added archival disclosures

* fix(labrinth): dedupe ai usages

* fix(labrinth): auth logic on archived disclosure removal

* feat(labrinth): add interactions field

* style(labrinth): cargo fmt

* feat(labrinth): granular disclosure locking

* add 5.8, move 5.9, update messages and placeholders accordingly.

* move disclosures stage earlier

* include consent model info in telemetry disclosure msgs

* prepr + update date

* typo

* qa pass

* search suboptions

* add empty state

* checkboxes in column

* persistent advanced filters

* blog draft

* prepr

* support soft deletion

* reload instead of optimistically updating

* update blog

* TOS update + minor verbiage adjustment

* 45 day grace

---------

Co-authored-by: sychic <47618543+Sychic@users.noreply.github.com>
Co-authored-by: coolbot <76798835+coolbot100s@users.noreply.github.com>
Co-authored-by: ThatGravyBoat <gravy@thatgravyboat.tech>
Co-authored-by: chyzman <chyzalt@gmail.com>
Co-authored-by: Truman Gao <106889354+tdgao@users.noreply.github.com>
2026-08-13 09:01:18 -07:00

3 lines
8.1 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// AUTO-GENERATED FILE - DO NOT EDIT
export const html = `<p>This year, fully AI-generated content has begun <em>flooding</em> Modrinth. Project submissions have gone up from about 2,500 per week at the start of the year to over 5,000 per week now.</p><p>Weve never had a quality threshold for uploading to Modrinth, and we continue to believe that you should not need to make professional, perfect work in order to publish on Modrinth. But we do believe that it has to be <em>your</em> work, and generating it completely with AI is not your work. Modrinth is a community of creators. In order to be creators, you need to actually create something.</p><p>Today, were announcing a set of new features and policies aimed at informing users about things they may want to know about a project before downloading, eliminating fully AI-generated content, and enforcing transparency for content that has been made in part with generative AI.</p><p>In addition, we have made a very minor update to our <a href="/legal/terms" rel="noopener nofollow ugc">Terms of Use</a>, to prohibit the use of data on Modrinth to train AI models.</p><h2>Content disclosures</h2><p>We have introduced content disclosures to provide a standardized place for certain things that we feel it is important for users to understand before downloading a project on Modrinth.</p><p><img src="/news/article/ai-policy-and-disclosures/details.webp" alt="In the Details panel on the sidebar of a project, a couple disclosures are listed as an example. Contains paid features: Cosmetic items are purchaseable with Mod Coins; Contains opt-out telemetry: Anonymous launch analytics about game version and mod loaders."></p><p>Heres the current list of content disclosures available at this time:</p><ul><li><strong>Contains AI-generated content</strong><ul><li>Projects must enable this if they:<ul><li>contain a substantial amount of AI-generated code</li><li><em>any</em> assets that are substantially AI-generated</li><li>the projects design relies on the use of generative AI</li><li>or, if any element of your projects page such as description or publishing relies on generative AI</li></ul></li><li>There are also options available to disclose if you use it for code, assets, text, or functionality within the project.</li></ul></li><li><strong>Contains advertising</strong><ul><li>Projects that contain advertisements, sponsorships, or promotions of other works must enable this disclosure.</li><li>If the promotion has no direct monetary value <strong><em>and</em></strong> it is for something that the average person would consider <em>relevant</em> and <em>unobtrusive</em> (such as a link to your Modrinth profile in the corner of the settings page for your own mod), we would not consider that an advertisement for the purposes of this disclosure.</li></ul></li><li><strong>Contains paid features</strong><ul><li>Projects that contain features that can be obtained by spending real-world money.</li><li>You must provide a list of the types of paid features.</li></ul></li><li><strong>Contains telemetry</strong><ul><li>If your project collects any data on users (sent either to yourself or a third party), it must be disclosed here.</li><li>Theres three types of telemetry consent options you can select: Opt-in, Opt-out, and Always active</li><li>You must provide a list of the types of data that is collected.</li></ul></li><li><strong>Contains derivative content</strong><ul><li>If your project is a fork or uses substantial parts of another work, you must declare it as a derivative work of the source work.</li><li>You must at least provide the name of the work, and if available, a link. You may also provide a small explanation of how it is a derivative work, such as a brief summary of what is different about your fork.</li></ul></li><li><strong>Photosensitivity warning</strong><ul><li>If your project contains anything that you think may be dangerous to certain people who are sensitive to flashing lights or patterns, you must enable the photosensitivity disclosure.</li></ul></li><li><strong>Contains external system interactions</strong><ul><li>Projects that read or edit things on the users system outside of the game must enable this disclosure.</li><li>You must describe precisely how it interacts with the users system in the required note.</li><li>The most common usage of this is in some “horror” mods, where they may do harmless but spooky things on your computer such as adding creepy files to your desktop.</li></ul></li><li><strong>Archived</strong><ul><li>This isnt new, but were transitioning it from a project visibility status to a disclosure.</li><li>This will allow you to have an Unlisted project also be archived, previously archived projects were always Public.</li><li>You can also include a note to explain why your project has been archived.</li></ul></li></ul><p><img src="/news/article/ai-policy-and-disclosures/settings.webp" alt="In project settings, there is a new Disclosures tab. On it, you can toggle disclosures on and off, and some of them have additional fields you need to fill out."></p><p>Projects with disclosures youd like to avoid can be filtered out in search under the “Advanced exclusions” options. When filtering out projects with photosensitivity warnings, we will warn the user that not all projects without the warning are guaranteed to be safe for users with photosensitivities. Advanced exclusion filters will be persistent across searches in your browser so that you don't have to apply them every time you search.</p><p><img src="/news/article/ai-policy-and-disclosures/filters.webp" alt="At the bottom of the search filters, there is an &quot;Advanced exclusions&quot; section. You can select different disclosures to exclude from your search results."></p><h2>New AI policy</h2><p>Weve added Section 6 to the <a href="/legal/rules" rel="noopener nofollow ugc">Content Rules</a>, which is as follows:</p><div id="rule-6"></div><p>To summarize:</p><ul><li>AI images as project icons, banners, gallery images, or in their descriptions are no longer allowed.</li><li>Fully or nearly fully AI-generated projects are no longer allowed.</li><li>AI-assisted projects, where the human creator contributed in a primary and significant way, are allowed but must disclose that AI assistance was used.</li></ul><h2>Enforcement</h2><p>Obviously, this is a big change and creators will need to take some time to update their projects to have all necessary disclosures or take down projects that are no longer allowed. For this reason, we will have a 45 day grace period to give everyone enough time to get their projects in order.</p><p>During this grace period, we will not be accepting reports for projects in violation of the new AI policy or for missing content disclosures to give them a fair chance to update them. The 45-day grace period ends on <strong>September 27, 2026</strong>.</p><p>In addition, we will not tolerate witch-hunting on the Modrinth platform. These disclosures are to inform users and provide transparency between user and creator. Anyone using them to shame, insult, belittle, or harass others will be swiftly and permanently removed from the Modrinth platform and community Discord server. Be kind to each other.</p><h2>Terms of Use update</h2><p>Modrinth's <a href="/legal/terms" rel="noopener nofollow ugc">Terms of Use</a> have been updated in a very minor way to prohibit the use of data on Modrinth to train AI models. The exact change is as follows:</p><blockquote><p>Additionally, you agree not to:</p><ul><li>[...]</li><li>Use any data, content, or materials available on or through the Service to train, develop, or improve any artificial intelligence or machine learning models.</li></ul></blockquote><p>A larger TOU update will be coming in the future to address other issues since the last update was in 2023, but we felt it was important to address this sooner rather than later.</p><p>—</p><p>Thank you for your patience with us on this feature. We know its been long-requested and overdue, but we wanted to make sure we shipped something comprehensive, enforceable, and more than just a publicity stunt.</p><p>Thank you as always for continuing to support us. It means a lot. 💚</p>`;