* 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
* 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
* 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): soft delete disclosures
* feat(labrinth): return soft-deleted disclosures
* fix(labrinth): update disclosure on removal
---------
Co-authored-by: Prospector <6166773+Prospector@users.noreply.github.com>
* draft: rejected projects go to ghost on delete
* don't free slug
* fix sqlx
* free slugs but different
* add auto reject for processing items given to ghost, as well as send thread messages with a little info on who it came from
* cleaup app layout, add missing translations to it
* remove feature flag in backend
* add app-messages
* clean up nav slightly
* allow more than 3 quick instances
* make quick instances resizable
* Begin external projects moderator database frontend
* add copy link button
* begin project page permissions settings
* MEL database backend routes
* include filename in external files
* wip: when uploading a version file, fetch its overrides as a list
* wip: override license checks
* improve FileHost ref counting
* file host read capability
* scan files when inserting version file
* add dependency sha1 field
* clean up version files
* wip: attributions
* update s3 file host
* attribution scanning basic works
* works
* insert attribution info after resolving
* add routes
* remove dep sha1 stuff
* prepr
* wip: override file sources
* add files_missing_attributions to versions
* return extended version info + attributed at/by
* hook up frontend to backend (mostly)
* expose version date published
* withholding version visibility
* frontend work
* prepr
* use api-client for img upload
* moar frontend
* prepr
* Add schema to attribution resolution and Flame project results
* sqlx prepare
* changes
* remove feature flag, fix optional proof images
* fix schema
* fmt
* fix deletion and file fetch
* prepare
* fix admonition
* update frontend stuff to new schema
* prepr
* attribution on dependencies
* fixes
* sqlx prepare
* fixes
* routes
* fix routes
* Version grandfathering
* prepare
* wip: bulk routes
* pushing what i've got rn
* include link in NoPermission
* change hash insert to bulk route
* query flame even if entry in MEL
* delete file with weird name
* Prioritise putting override files in existing groups even with ExternalLicense
* fix how hex bytes are handled in route
* feat: coolbot moderation changes (#6215)
* Update moderator checklist
* move permissions stage order
* Updated nagContext.versions to v3, added nag for permissions
* Update permissions.vue default messages
* prepr
---------
Co-authored-by: coolbot100s <76798835+coolbot100s@users.noreply.github.com>
* QA
* prepr
* should group by project
* return attribution resolution correctly
* updated by moderator info
* Track what moderator reviewed an attribution moderation status
* default deser FMA field
* new version page
* clean up fetching + add a couple missing features
* qa items
* prepr
* provide moderation package stuff with DI
* format?
* don't redact moderated_at
* move supplementary resources
* Reorganize moderation messages.
* Quick replies for external content permissions.
* prepare
* QA
* allow exempting projects
* Ignore Flame projects which 404
* fix ci
* fix cross project attribution stuff
* Fix permission error
* change what files get cscanned
* add more logging
* QA Jun 22
* fix
* idempotency
* Expose route for rescanning
* update blog link
---------
Co-authored-by: aecsocket <aecsocket@tutanota.com>
Co-authored-by: coolbot100s <76798835+coolbot100s@users.noreply.github.com>
Co-authored-by: aecsocket <43144841+aecsocket@users.noreply.github.com>