mirror of
https://github.com/modrinth/code.git
synced 2026-08-27 18:14:49 +00:00
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>
This commit is contained in:
co-authored by
ThatGravyBoat
chyzman
Truman Gao
sychic
coolbot
parent
06b7c44dcc
commit
755825b09a
@@ -2,6 +2,7 @@
|
||||
import { type Component, computed } from 'vue'
|
||||
|
||||
import PrideCollectionWidget from './PrideCollectionWidget.vue'
|
||||
import Rule6Widget from './Rule6Widget.vue'
|
||||
import SparkLiveWidget from './SparkLiveWidget.vue'
|
||||
import SparkLiveWidgetEmbed from './SparkLiveWidgetEmbed.vue'
|
||||
|
||||
@@ -9,6 +10,7 @@ const ARTICLE_WIDGETS: Record<string, Component> = {
|
||||
'spark-live-widget': SparkLiveWidget,
|
||||
'spark-live-widget-embed': SparkLiveWidgetEmbed,
|
||||
'pride-collection-widget': PrideCollectionWidget,
|
||||
'rule-6': Rule6Widget,
|
||||
}
|
||||
|
||||
type ArticleBodyPart = { type: 'html'; content: string } | { type: 'widget'; id: string }
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
<template>
|
||||
<div
|
||||
id="rule-6"
|
||||
class="rounded-2xl border border-solid border-surface-4 bg-surface-3 markdown-body p-4"
|
||||
>
|
||||
<nuxt-link to="/legal/rules#generative-ai" target="_blank">
|
||||
<h2 class="!mt-0">6. Usage of Generative "AI"</h2>
|
||||
</nuxt-link>
|
||||
|
||||
<p>
|
||||
Projects must be forthright and honest about the usage of generative AI in their production,
|
||||
publication, and within the project itself. Projects cannot be entirely or primarily comprised
|
||||
of content created or derived from generative AI output.
|
||||
</p>
|
||||
|
||||
<h3 id="disclosure-of-ai-generated-content">6.1. Disclosure of AI generated content</h3>
|
||||
|
||||
<p>You must apply the appropriate “Contains AI-generated content” content disclosure when:</p>
|
||||
<ol type="a">
|
||||
<li>a substantial portion of the project's code is a product of AI output.</li>
|
||||
<li>
|
||||
the project includes any assets that are primarily or entirely a product of AI output.
|
||||
</li>
|
||||
<li>the project's design or functionality relies on the use of generative AI.</li>
|
||||
<li>
|
||||
any element of the project's page such as description or publishing relies on generative AI.
|
||||
</li>
|
||||
</ol>
|
||||
|
||||
<h3 id="prohibited-usage-of-ai">6.2. Prohibited AI generated content</h3>
|
||||
|
||||
<ol type="a">
|
||||
<li>
|
||||
No images uploaded to a gallery, icon, description, or any other part of a project page may
|
||||
be created or derived from generative AI output. Any such images may be removed.
|
||||
</li>
|
||||
<li>
|
||||
Projects may not be published publicly if the contents are primarily or entirely a product
|
||||
of AI output.
|
||||
</li>
|
||||
</ol>
|
||||
</div>
|
||||
</template>
|
||||
<style scoped>
|
||||
.markdown-body h2 {
|
||||
@apply mb-3 mt-5 pb-1 pt-0 text-xl font-semibold text-contrast;
|
||||
}
|
||||
.markdown-body h3 {
|
||||
@apply mb-1 mt-5 p-0 text-lg font-semibold text-contrast;
|
||||
}
|
||||
|
||||
.markdown-body a {
|
||||
@apply !font-semibold !text-brand !no-underline hover:!text-brand hover:!underline;
|
||||
}
|
||||
|
||||
.markdown-body p {
|
||||
@apply leading-normal;
|
||||
}
|
||||
|
||||
.markdown-body ol {
|
||||
@apply mb-3;
|
||||
}
|
||||
|
||||
.markdown-body ol ol {
|
||||
@apply mb-2;
|
||||
}
|
||||
|
||||
.markdown-body li {
|
||||
@apply mb-1;
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user