feat(enforcement): record decisions and send notices (#3492)

This commit is contained in:
Hampus authored and GitHub committed 2026-10-15 07:12:46 +02:00
1 parent da1842ecab
commit f5c30fdf8f
383 files changed
+29692 -4139

No files matched your search

+24 -1
View File
@@ -10,7 +10,6 @@ export const ValidationErrorCodes = {
ALL_CHANNELS_MUST_BELONG_TO_GUILD: 'ALL_CHANNELS_MUST_BELONG_TO_GUILD',
ANIMATED_AVATARS_REQUIRE_PREMIUM: 'ANIMATED_AVATARS_REQUIRE_PREMIUM',
ANIMATED_GUILD_BANNER_REQUIRES_FEATURE: 'ANIMATED_GUILD_BANNER_REQUIRES_FEATURE',
AT_LEAST_ONE_ENTRY_IS_REQUIRED: 'AT_LEAST_ONE_ENTRY_IS_REQUIRED',
AT_LEAST_ONE_RECIPIENT_REQUIRED: 'AT_LEAST_ONE_RECIPIENT_REQUIRED',
ATTACHMENT_ID_NOT_FOUND_IN_MESSAGE: 'ATTACHMENT_ID_NOT_FOUND_IN_MESSAGE',
ATTACHMENT_MUST_BE_IMAGE: 'ATTACHMENT_MUST_BE_IMAGE',
@@ -72,6 +71,27 @@ export const ValidationErrorCodes = {
EMAIL_TOKEN_EXPIRED: 'EMAIL_TOKEN_EXPIRED',
EMAIL_DOMAIN_CANNOT_RECEIVE_MAIL: 'EMAIL_DOMAIN_CANNOT_RECEIVE_MAIL',
EMAIL_DOMAIN_NOT_ALLOWED_FOR_SSO: 'EMAIL_DOMAIN_NOT_ALLOWED_FOR_SSO',
ENFORCEMENT_CONFIRMATIONS_REQUIRED: 'ENFORCEMENT_CONFIRMATIONS_REQUIRED',
ENFORCEMENT_EVIDENCE_DM_UNREPORTED: 'ENFORCEMENT_EVIDENCE_DM_UNREPORTED',
ENFORCEMENT_EVIDENCE_NOT_ALLOWED: 'ENFORCEMENT_EVIDENCE_NOT_ALLOWED',
ENFORCEMENT_EVIDENCE_NOT_FOUND: 'ENFORCEMENT_EVIDENCE_NOT_FOUND',
ENFORCEMENT_EVIDENCE_NOT_SUBJECT: 'ENFORCEMENT_EVIDENCE_NOT_SUBJECT',
ENFORCEMENT_EVIDENCE_REQUIRED: 'ENFORCEMENT_EVIDENCE_REQUIRED',
ENFORCEMENT_FACTS_REQUIRED: 'ENFORCEMENT_FACTS_REQUIRED',
ENFORCEMENT_INTERNAL_NOTE_REQUIRED: 'ENFORCEMENT_INTERNAL_NOTE_REQUIRED',
ENFORCEMENT_KIND_NOT_ALLOWED: 'ENFORCEMENT_KIND_NOT_ALLOWED',
ENFORCEMENT_LIMIT_END_INVALID: 'ENFORCEMENT_LIMIT_END_INVALID',
ENFORCEMENT_LIMIT_NOT_ALLOWED: 'ENFORCEMENT_LIMIT_NOT_ALLOWED',
ENFORCEMENT_NETWORK_BLOCK_NOT_ALLOWED: 'ENFORCEMENT_NETWORK_BLOCK_NOT_ALLOWED',
ENFORCEMENT_NETWORK_SHARED: 'ENFORCEMENT_NETWORK_SHARED',
ENFORCEMENT_NETWORK_UNKNOWN: 'ENFORCEMENT_NETWORK_UNKNOWN',
ENFORCEMENT_OUTCOME_NOT_ALLOWED: 'ENFORCEMENT_OUTCOME_NOT_ALLOWED',
ENFORCEMENT_PERMANENT_REQUIRED: 'ENFORCEMENT_PERMANENT_REQUIRED',
ENFORCEMENT_REPORT_MISMATCH: 'ENFORCEMENT_REPORT_MISMATCH',
ENFORCEMENT_REPORT_REQUIRED: 'ENFORCEMENT_REPORT_REQUIRED',
ENFORCEMENT_RIGHTS_HOLDER_NOT_ALLOWED: 'ENFORCEMENT_RIGHTS_HOLDER_NOT_ALLOWED',
ENFORCEMENT_RIGHTS_HOLDER_REQUIRED: 'ENFORCEMENT_RIGHTS_HOLDER_REQUIRED',
ENFORCEMENT_STATEMENT_NOT_ALLOWED: 'ENFORCEMENT_STATEMENT_NOT_ALLOWED',
EMBED_INDEX_OUT_OF_BOUNDS: 'EMBED_INDEX_OUT_OF_BOUNDS',
EMBED_SPLASH_REQUIRES_FEATURE: 'EMBED_SPLASH_REQUIRES_FEATURE',
EMBEDS_EXCEED_MAX_CHARACTERS: 'EMBEDS_EXCEED_MAX_CHARACTERS',
@@ -83,6 +103,7 @@ export const ValidationErrorCodes = {
FAVORITE_MEME_NOT_FOUND: 'FAVORITE_MEME_NOT_FOUND',
FILE_INDEX_EXCEEDS_MAXIMUM: 'FILE_INDEX_EXCEEDS_MAXIMUM',
FILE_NOT_FOUND: 'FILE_NOT_FOUND',
FLAG_REQUIRES_ENFORCEMENT_ROUTE: 'FLAG_REQUIRES_ENFORCEMENT_ROUTE',
FILENAME_LENGTH_INVALID: 'FILENAME_LENGTH_INVALID',
FORWARD_MESSAGES_CANNOT_CONTAIN_CONTENT: 'FORWARD_MESSAGES_CANNOT_CONTAIN_CONTENT',
FORWARD_REFERENCE_REQUIRES_CHANNEL_AND_MESSAGE: 'FORWARD_REFERENCE_REQUIRES_CHANNEL_AND_MESSAGE',
@@ -149,6 +170,7 @@ export const ValidationErrorCodes = {
MESSAGE_IDS_CANNOT_BE_EMPTY: 'MESSAGE_IDS_CANNOT_BE_EMPTY',
MESSAGES_ARRAY_REQUIRED_AND_NOT_EMPTY: 'MESSAGES_ARRAY_REQUIRED_AND_NOT_EMPTY',
MESSAGES_WITH_SNAPSHOTS_CANNOT_BE_EDITED: 'MESSAGES_WITH_SNAPSHOTS_CANNOT_BE_EDITED',
MODERATION_BASIS_REQUIRED: 'MODERATION_BASIS_REQUIRED',
MULTIPLE_FILES_FOR_INDEX_NOT_ALLOWED: 'MULTIPLE_FILES_FOR_INDEX_NOT_ALLOWED',
MUST_AGREE_TO_TOS_AND_PRIVACY_POLICY: 'MUST_AGREE_TO_TOS_AND_PRIVACY_POLICY',
MUST_BE_MINIMUM_AGE: 'MUST_BE_MINIMUM_AGE',
@@ -180,6 +202,7 @@ export const ValidationErrorCodes = {
RECIPIENT_IDS_MUST_BE_STRINGS: 'RECIPIENT_IDS_MUST_BE_STRINGS',
RECIPIENT_IDS_MUST_BE_VALID_SNOWFLAKES: 'RECIPIENT_IDS_MUST_BE_VALID_SNOWFLAKES',
REFERENCED_ATTACHMENT_NOT_FOUND: 'REFERENCED_ATTACHMENT_NOT_FOUND',
REPORT_OUTCOME_INVALID: 'REPORT_OUTCOME_INVALID',
SESSION_TIMEOUT: 'SESSION_TIMEOUT',
SETUP_TOKEN_INVALID: 'SETUP_TOKEN_INVALID',
SETUP_TOKEN_REQUIRED: 'SETUP_TOKEN_REQUIRED',