@atproto/ozone 0.1.60 → 0.1.61
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/api/moderation/emitEvent.d.ts.map +1 -1
- package/dist/api/moderation/emitEvent.js +5 -1
- package/dist/api/moderation/emitEvent.js.map +1 -1
- package/dist/api/report/createReport.d.ts.map +1 -1
- package/dist/api/report/createReport.js +2 -1
- package/dist/api/report/createReport.js.map +1 -1
- package/dist/lexicon/index.d.ts +2 -2
- package/dist/lexicon/index.d.ts.map +1 -1
- package/dist/lexicon/lexicons.d.ts +4 -0
- package/dist/lexicon/lexicons.d.ts.map +1 -1
- package/dist/lexicon/lexicons.js +2 -0
- package/dist/lexicon/lexicons.js.map +1 -1
- package/dist/mod-service/index.d.ts +2 -0
- package/dist/mod-service/index.d.ts.map +1 -1
- package/dist/mod-service/index.js +34 -1
- package/dist/mod-service/index.js.map +1 -1
- package/dist/tag-service/index.d.ts +1 -1
- package/dist/tag-service/index.d.ts.map +1 -1
- package/dist/tag-service/index.js +15 -6
- package/dist/tag-service/index.js.map +1 -1
- package/dist/tag-service/util.d.ts +3 -0
- package/dist/tag-service/util.d.ts.map +1 -0
- package/dist/tag-service/util.js +8 -0
- package/dist/tag-service/util.js.map +1 -0
- package/package.json +4 -4
- package/src/api/moderation/emitEvent.ts +6 -1
- package/src/api/report/createReport.ts +2 -1
- package/src/lexicon/index.ts +2 -2
- package/src/lexicon/lexicons.ts +3 -0
- package/src/mod-service/index.ts +41 -6
- package/src/tag-service/index.ts +16 -5
- package/src/tag-service/util.ts +5 -0
- package/tests/__snapshots__/get-record.test.ts.snap +4 -0
- package/tests/__snapshots__/get-records.test.ts.snap +2 -0
- package/tests/__snapshots__/get-repo.test.ts.snap +2 -0
- package/tests/__snapshots__/get-repos.test.ts.snap +2 -0
- package/tests/__snapshots__/moderation-events.test.ts.snap +7 -3
- package/tests/__snapshots__/moderation-statuses.test.ts.snap +6 -0
- package/tests/__snapshots__/moderation.test.ts.snap +4 -4
- package/tests/content-tagger.test.ts +29 -0
- package/tests/moderation-status-tags.test.ts +37 -0
- package/tests/report-muting.test.ts +1 -1
- package/tsconfig.build.tsbuildinfo +1 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { SelectQueryBuilder } from 'kysely';
|
|
1
2
|
import { CID } from 'multiformats/cid';
|
|
2
3
|
import { AtUri } from '@atproto/syntax';
|
|
3
4
|
import { Keypair } from '@atproto/crypto';
|
|
@@ -137,6 +138,7 @@ export declare class ModerationService {
|
|
|
137
138
|
event: ModerationEventRow;
|
|
138
139
|
subjectStatus: ModerationSubjectStatusRow | null;
|
|
139
140
|
}>;
|
|
141
|
+
applyTagFilter: (builder: SelectQueryBuilder<any, any, any>, tags: string[]) => SelectQueryBuilder<any, any, any>;
|
|
140
142
|
getSubjectStatuses({ includeAllUserRecords, cursor, limit, takendown, appealed, reviewState, reviewedAfter, reviewedBefore, reportedAfter, reportedBefore, includeMuted, hostingDeletedBefore, hostingDeletedAfter, hostingUpdatedBefore, hostingUpdatedAfter, hostingStatuses, onlyMuted, ignoreSubjects, sortDirection, lastReviewedBy, sortField, subject, tags, excludeTags, collections, subjectType, }: {
|
|
141
143
|
includeAllUserRecords?: boolean;
|
|
142
144
|
cursor?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mod-service/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mod-service/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -95,6 +95,39 @@ class ModerationService {
|
|
|
95
95
|
return authHeaders;
|
|
96
96
|
})
|
|
97
97
|
});
|
|
98
|
+
Object.defineProperty(this, "applyTagFilter", {
|
|
99
|
+
enumerable: true,
|
|
100
|
+
configurable: true,
|
|
101
|
+
writable: true,
|
|
102
|
+
value: (builder, tags) => {
|
|
103
|
+
const { ref } = this.db.db.dynamic;
|
|
104
|
+
// Build an array of conditions
|
|
105
|
+
const conditions = tags
|
|
106
|
+
.map((tag) => {
|
|
107
|
+
if (tag.includes('&&')) {
|
|
108
|
+
// Split by '&&' for AND logic
|
|
109
|
+
const subTags = tag
|
|
110
|
+
.split('&&')
|
|
111
|
+
// Make sure spaces on either sides of '&&' are trimmed
|
|
112
|
+
.map((subTag) => subTag.trim())
|
|
113
|
+
// Remove empty strings after trimming is applied
|
|
114
|
+
.filter(Boolean);
|
|
115
|
+
if (!subTags.length)
|
|
116
|
+
return null;
|
|
117
|
+
return (0, kysely_1.sql) `(${kysely_1.sql.join(subTags.map((subTag) => (0, kysely_1.sql) `${ref('moderation_subject_status.tags')} ? ${subTag}`), (0, kysely_1.sql) ` AND `)})`;
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
// Single tag condition
|
|
121
|
+
return (0, kysely_1.sql) `${ref('moderation_subject_status.tags')} ? ${tag}`;
|
|
122
|
+
}
|
|
123
|
+
})
|
|
124
|
+
.filter(Boolean);
|
|
125
|
+
if (!conditions.length)
|
|
126
|
+
return builder;
|
|
127
|
+
// Combine all conditions with OR
|
|
128
|
+
return builder.where((0, kysely_1.sql) `(${kysely_1.sql.join(conditions, (0, kysely_1.sql) ` OR `)})`);
|
|
129
|
+
}
|
|
130
|
+
});
|
|
98
131
|
}
|
|
99
132
|
static creator(signingKey, signingKeyId, cfg, backgroundQueue, idResolver, eventPusher, appviewAgent, createAuthHeaders, imgInvalidator) {
|
|
100
133
|
return (db) => new ModerationService(db, signingKey, signingKeyId, cfg, backgroundQueue, idResolver, eventPusher, appviewAgent, createAuthHeaders, imgInvalidator);
|
|
@@ -669,7 +702,7 @@ class ModerationService {
|
|
|
669
702
|
.orWhere('muteReportingUntil', '>', new Date().toISOString()));
|
|
670
703
|
}
|
|
671
704
|
if (tags.length) {
|
|
672
|
-
builder =
|
|
705
|
+
builder = this.applyTagFilter(builder, tags);
|
|
673
706
|
}
|
|
674
707
|
if (excludeTags.length) {
|
|
675
708
|
builder = builder.where((qb) => qb
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mod-service/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mod-service/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,6 @@ export declare class TagService {
|
|
|
8
8
|
private moderationService;
|
|
9
9
|
private taggers;
|
|
10
10
|
constructor(subject: ModSubject, subjectStatus: ModerationSubjectStatusRow | null, taggerDid: string, moderationService: ModerationService);
|
|
11
|
-
evaluateForSubject(): Promise<void>;
|
|
11
|
+
evaluateForSubject(initialTags?: Iterable<string>): Promise<void>;
|
|
12
12
|
}
|
|
13
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tag-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAKnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAA;AAEjE,qBAAa,UAAU;IAInB,OAAO,CAAC,OAAO;IACf,SAAS,CAAC,aAAa,EAAE,0BAA0B,GAAG,IAAI;IAC1D,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,iBAAiB;IAN3B,OAAO,CAAC,OAAO,CAAiB;gBAGtB,OAAO,EAAE,UAAU,EACjB,aAAa,EAAE,0BAA0B,GAAG,IAAI,EAClD,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,iBAAiB;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tag-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAKnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAA;AAEjE,qBAAa,UAAU;IAInB,OAAO,CAAC,OAAO;IACf,SAAS,CAAC,aAAa,EAAE,0BAA0B,GAAG,IAAI;IAC1D,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,iBAAiB;IAN3B,OAAO,CAAC,OAAO,CAAiB;gBAGtB,OAAO,EAAE,UAAU,EACjB,aAAa,EAAE,0BAA0B,GAAG,IAAI,EAClD,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,iBAAiB;IAUxC,kBAAkB,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC;CA4CxD"}
|
|
@@ -42,25 +42,34 @@ class TagService {
|
|
|
42
42
|
// Add more taggers as needed
|
|
43
43
|
];
|
|
44
44
|
}
|
|
45
|
-
|
|
45
|
+
// Allow the caller to seed the initial tags
|
|
46
|
+
async evaluateForSubject(initialTags) {
|
|
46
47
|
try {
|
|
47
|
-
const tags =
|
|
48
|
+
const tags = new Set(initialTags);
|
|
48
49
|
await Promise.all(this.taggers.map(async (tagger) => {
|
|
49
50
|
try {
|
|
50
51
|
const newTags = await tagger.getTags();
|
|
51
|
-
|
|
52
|
-
tags.
|
|
52
|
+
for (const newTag of newTags) {
|
|
53
|
+
tags.add(newTag);
|
|
54
|
+
}
|
|
53
55
|
}
|
|
54
56
|
catch (e) {
|
|
55
57
|
// Don't let one tagger error stop the rest from running
|
|
56
58
|
logger_1.langLogger.error({ subject: this.subject, err: e }, 'Error applying tagger');
|
|
57
59
|
}
|
|
58
60
|
}));
|
|
59
|
-
|
|
61
|
+
// Ensure that before inserting new tags, we discard any tag that may
|
|
62
|
+
// have been evaluated to be added but is already present in the subject
|
|
63
|
+
if (this.subjectStatus?.tags?.length) {
|
|
64
|
+
for (const tag of this.subjectStatus.tags) {
|
|
65
|
+
tags.delete(tag);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
if (tags.size) {
|
|
60
69
|
await this.moderationService.logEvent({
|
|
61
70
|
event: {
|
|
62
71
|
$type: 'tools.ozone.moderation.defs#modEventTag',
|
|
63
|
-
add: tags,
|
|
72
|
+
add: [...tags],
|
|
64
73
|
remove: [],
|
|
65
74
|
},
|
|
66
75
|
subject: this.subject,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tag-service/index.ts"],"names":[],"mappings":";;;AAEA,sCAA6C;AAE7C,uDAAkD;AAClD,iDAA4C;AAG5C,MAAa,UAAU;IAGrB,YACU,OAAmB,EACjB,aAAgD,EAClD,SAAiB,EACjB,iBAAoC;QAH5C;;;;mBAAQ,OAAO;WAAY;QAC3B;;;;mBAAU,aAAa;WAAmC;QAC1D;;;;mBAAQ,SAAS;WAAQ;QACzB;;;;mBAAQ,iBAAiB;WAAmB;QANtC;;;;;WAAwB;QAQ9B,IAAI,CAAC,OAAO,GAAG;YACb,IAAI,gCAAc,CAAC,OAAO,EAAE,aAAa,EAAE,iBAAiB,CAAC;YAC7D,IAAI,0BAAW,CAAC,OAAO,EAAE,aAAa,EAAE,iBAAiB,CAAC;YAC1D,6BAA6B;SAC9B,CAAA;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tag-service/index.ts"],"names":[],"mappings":";;;AAEA,sCAA6C;AAE7C,uDAAkD;AAClD,iDAA4C;AAG5C,MAAa,UAAU;IAGrB,YACU,OAAmB,EACjB,aAAgD,EAClD,SAAiB,EACjB,iBAAoC;QAH5C;;;;mBAAQ,OAAO;WAAY;QAC3B;;;;mBAAU,aAAa;WAAmC;QAC1D;;;;mBAAQ,SAAS;WAAQ;QACzB;;;;mBAAQ,iBAAiB;WAAmB;QANtC;;;;;WAAwB;QAQ9B,IAAI,CAAC,OAAO,GAAG;YACb,IAAI,gCAAc,CAAC,OAAO,EAAE,aAAa,EAAE,iBAAiB,CAAC;YAC7D,IAAI,0BAAW,CAAC,OAAO,EAAE,aAAa,EAAE,iBAAiB,CAAC;YAC1D,6BAA6B;SAC9B,CAAA;IACH,CAAC;IAED,4CAA4C;IAC5C,KAAK,CAAC,kBAAkB,CAAC,WAA8B;QACrD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAA;YAEjC,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBAChC,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,CAAA;oBACtC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;wBAC7B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;oBAClB,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,wDAAwD;oBACxD,mBAAG,CAAC,KAAK,CACP,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,EACjC,uBAAuB,CACxB,CAAA;gBACH,CAAC;YACH,CAAC,CAAC,CACH,CAAA;YAED,qEAAqE;YACrE,wEAAwE;YACxE,IAAI,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;gBACrC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;oBAC1C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAClB,CAAC;YACH,CAAC;YAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC;oBACpC,KAAK,EAAE;wBACL,KAAK,EAAE,yCAAyC;wBAChD,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;wBACd,MAAM,EAAE,EAAE;qBACX;oBACD,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;iBAC1B,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,mBAAG,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,uBAAuB,CAAC,CAAA;QACpE,CAAC;IACH,CAAC;CACF;AA7DD,gCA6DC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/tag-service/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAA;AAEzE,eAAO,MAAM,eAAe,eAAgB,UAAU,WAErD,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTagForReport = void 0;
|
|
4
|
+
const getTagForReport = (reasonType) => {
|
|
5
|
+
return `report:${reasonType.replace('com.atproto.moderation.defs#reason', '').toLowerCase()}`;
|
|
6
|
+
};
|
|
7
|
+
exports.getTagForReport = getTagForReport;
|
|
8
|
+
//# sourceMappingURL=util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/tag-service/util.ts"],"names":[],"mappings":";;;AAEO,MAAM,eAAe,GAAG,CAAC,UAAsB,EAAE,EAAE;IACxD,OAAO,UAAU,UAAU,CAAC,OAAO,CAAC,oCAAoC,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAAA;AAC/F,CAAC,CAAA;AAFY,QAAA,eAAe,mBAE3B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atproto/ozone",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.61",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Backend service for moderating the Bluesky network.",
|
|
6
6
|
"keywords": [
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"structured-headers": "^1.0.1",
|
|
33
33
|
"typed-emitter": "^2.1.0",
|
|
34
34
|
"uint8arrays": "3.0.0",
|
|
35
|
-
"@atproto/api": "^0.13.
|
|
35
|
+
"@atproto/api": "^0.13.22",
|
|
36
36
|
"@atproto/common": "^0.4.5",
|
|
37
37
|
"@atproto/crypto": "^0.4.2",
|
|
38
38
|
"@atproto/identity": "^0.4.3",
|
|
@@ -52,8 +52,8 @@
|
|
|
52
52
|
"jest": "^28.1.2",
|
|
53
53
|
"ts-node": "^10.8.2",
|
|
54
54
|
"typescript": "^5.6.3",
|
|
55
|
-
"@atproto/lex-cli": "^0.5.
|
|
56
|
-
"@atproto/pds": "^0.4.
|
|
55
|
+
"@atproto/lex-cli": "^0.5.4",
|
|
56
|
+
"@atproto/pds": "^0.4.78"
|
|
57
57
|
},
|
|
58
58
|
"scripts": {
|
|
59
59
|
"codegen": "lex gen-server --yes ./src/lexicon ../../lexicons/com/atproto/*/* ../../lexicons/app/bsky/*/* ../../lexicons/chat/bsky/*/* ../../lexicons/tools/ozone/*/*",
|
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
isModEventEmail,
|
|
8
8
|
isModEventLabel,
|
|
9
9
|
isModEventMuteReporter,
|
|
10
|
+
isModEventReport,
|
|
10
11
|
isModEventReverseTakedown,
|
|
11
12
|
isModEventTag,
|
|
12
13
|
isModEventTakedown,
|
|
@@ -21,6 +22,7 @@ import { ModeratorOutput, AdminTokenOutput } from '../../auth-verifier'
|
|
|
21
22
|
import { SettingService } from '../../setting/service'
|
|
22
23
|
import { ProtectedTagSettingKey } from '../../setting/constants'
|
|
23
24
|
import { ProtectedTagSetting } from '../../setting/types'
|
|
25
|
+
import { getTagForReport } from '../../tag-service/util'
|
|
24
26
|
|
|
25
27
|
const handleModerationEvent = async ({
|
|
26
28
|
ctx,
|
|
@@ -160,7 +162,10 @@ const handleModerationEvent = async ({
|
|
|
160
162
|
ctx.cfg.service.did,
|
|
161
163
|
moderationTxn,
|
|
162
164
|
)
|
|
163
|
-
|
|
165
|
+
const initialTags = isModEventReport(event)
|
|
166
|
+
? [getTagForReport(event.reportType)]
|
|
167
|
+
: undefined
|
|
168
|
+
await tagService.evaluateForSubject(initialTags)
|
|
164
169
|
|
|
165
170
|
if (subject.isRepo()) {
|
|
166
171
|
if (isTakedownEvent) {
|
|
@@ -5,6 +5,7 @@ import { subjectFromInput } from '../../mod-service/subject'
|
|
|
5
5
|
import { REASONAPPEAL } from '../../lexicon/types/com/atproto/moderation/defs'
|
|
6
6
|
import { ForbiddenError } from '@atproto/xrpc-server'
|
|
7
7
|
import { TagService } from '../../tag-service'
|
|
8
|
+
import { getTagForReport } from '../../tag-service/util'
|
|
8
9
|
|
|
9
10
|
export default function (server: Server, ctx: AppContext) {
|
|
10
11
|
server.com.atproto.moderation.createReport({
|
|
@@ -37,7 +38,7 @@ export default function (server: Server, ctx: AppContext) {
|
|
|
37
38
|
ctx.cfg.service.did,
|
|
38
39
|
moderationTxn,
|
|
39
40
|
)
|
|
40
|
-
await tagService.evaluateForSubject()
|
|
41
|
+
await tagService.evaluateForSubject([getTagForReport(reasonType)])
|
|
41
42
|
|
|
42
43
|
return reportEvent
|
|
43
44
|
})
|
package/src/lexicon/index.ts
CHANGED
|
@@ -2638,13 +2638,13 @@ export class ToolsOzoneTeamNS {
|
|
|
2638
2638
|
|
|
2639
2639
|
type SharedRateLimitOpts<T> = {
|
|
2640
2640
|
name: string
|
|
2641
|
-
calcKey?: (ctx: T) => string
|
|
2641
|
+
calcKey?: (ctx: T) => string | null
|
|
2642
2642
|
calcPoints?: (ctx: T) => number
|
|
2643
2643
|
}
|
|
2644
2644
|
type RouteRateLimitOpts<T> = {
|
|
2645
2645
|
durationMs: number
|
|
2646
2646
|
points: number
|
|
2647
|
-
calcKey?: (ctx: T) => string
|
|
2647
|
+
calcKey?: (ctx: T) => string | null
|
|
2648
2648
|
calcPoints?: (ctx: T) => number
|
|
2649
2649
|
}
|
|
2650
2650
|
type HandlerOpts = { blobLimit?: number }
|
package/src/lexicon/lexicons.ts
CHANGED
|
@@ -12498,6 +12498,9 @@ export const schemaDict = {
|
|
|
12498
12498
|
type: 'array',
|
|
12499
12499
|
items: {
|
|
12500
12500
|
type: 'string',
|
|
12501
|
+
maxLength: 25,
|
|
12502
|
+
description:
|
|
12503
|
+
'Items in this array are applied with OR filters. To apply AND filter, put all tags in the same string and separate using && characters',
|
|
12501
12504
|
},
|
|
12502
12505
|
},
|
|
12503
12506
|
excludeTags: {
|
package/src/mod-service/index.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import net from 'node:net'
|
|
2
|
-
import { Insertable, sql } from 'kysely'
|
|
2
|
+
import { Insertable, SelectQueryBuilder, sql } from 'kysely'
|
|
3
3
|
import { CID } from 'multiformats/cid'
|
|
4
4
|
import { AtUri, INVALID_HANDLE } from '@atproto/syntax'
|
|
5
5
|
import { InvalidRequestError } from '@atproto/xrpc-server'
|
|
@@ -791,6 +791,45 @@ export class ModerationService {
|
|
|
791
791
|
return result
|
|
792
792
|
}
|
|
793
793
|
|
|
794
|
+
applyTagFilter = (
|
|
795
|
+
builder: SelectQueryBuilder<any, any, any>,
|
|
796
|
+
tags: string[],
|
|
797
|
+
) => {
|
|
798
|
+
const { ref } = this.db.db.dynamic
|
|
799
|
+
// Build an array of conditions
|
|
800
|
+
const conditions = tags
|
|
801
|
+
.map((tag) => {
|
|
802
|
+
if (tag.includes('&&')) {
|
|
803
|
+
// Split by '&&' for AND logic
|
|
804
|
+
const subTags = tag
|
|
805
|
+
.split('&&')
|
|
806
|
+
// Make sure spaces on either sides of '&&' are trimmed
|
|
807
|
+
.map((subTag) => subTag.trim())
|
|
808
|
+
// Remove empty strings after trimming is applied
|
|
809
|
+
.filter(Boolean)
|
|
810
|
+
|
|
811
|
+
if (!subTags.length) return null
|
|
812
|
+
|
|
813
|
+
return sql`(${sql.join(
|
|
814
|
+
subTags.map(
|
|
815
|
+
(subTag) =>
|
|
816
|
+
sql`${ref('moderation_subject_status.tags')} ? ${subTag}`,
|
|
817
|
+
),
|
|
818
|
+
sql` AND `,
|
|
819
|
+
)})`
|
|
820
|
+
} else {
|
|
821
|
+
// Single tag condition
|
|
822
|
+
return sql`${ref('moderation_subject_status.tags')} ? ${tag}`
|
|
823
|
+
}
|
|
824
|
+
})
|
|
825
|
+
.filter(Boolean)
|
|
826
|
+
|
|
827
|
+
if (!conditions.length) return builder
|
|
828
|
+
|
|
829
|
+
// Combine all conditions with OR
|
|
830
|
+
return builder.where(sql`(${sql.join(conditions, sql` OR `)})`)
|
|
831
|
+
}
|
|
832
|
+
|
|
794
833
|
async getSubjectStatuses({
|
|
795
834
|
includeAllUserRecords,
|
|
796
835
|
cursor,
|
|
@@ -958,11 +997,7 @@ export class ModerationService {
|
|
|
958
997
|
}
|
|
959
998
|
|
|
960
999
|
if (tags.length) {
|
|
961
|
-
builder =
|
|
962
|
-
sql`${ref('moderation_subject_status.tags')} ?| array[${sql.join(
|
|
963
|
-
tags,
|
|
964
|
-
)}]::TEXT[]`,
|
|
965
|
-
)
|
|
1000
|
+
builder = this.applyTagFilter(builder, tags)
|
|
966
1001
|
}
|
|
967
1002
|
|
|
968
1003
|
if (excludeTags.length) {
|
package/src/tag-service/index.ts
CHANGED
|
@@ -22,15 +22,18 @@ export class TagService {
|
|
|
22
22
|
]
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
// Allow the caller to seed the initial tags
|
|
26
|
+
async evaluateForSubject(initialTags?: Iterable<string>) {
|
|
26
27
|
try {
|
|
27
|
-
const tags
|
|
28
|
+
const tags = new Set(initialTags)
|
|
28
29
|
|
|
29
30
|
await Promise.all(
|
|
30
31
|
this.taggers.map(async (tagger) => {
|
|
31
32
|
try {
|
|
32
33
|
const newTags = await tagger.getTags()
|
|
33
|
-
|
|
34
|
+
for (const newTag of newTags) {
|
|
35
|
+
tags.add(newTag)
|
|
36
|
+
}
|
|
34
37
|
} catch (e) {
|
|
35
38
|
// Don't let one tagger error stop the rest from running
|
|
36
39
|
log.error(
|
|
@@ -41,11 +44,19 @@ export class TagService {
|
|
|
41
44
|
}),
|
|
42
45
|
)
|
|
43
46
|
|
|
44
|
-
|
|
47
|
+
// Ensure that before inserting new tags, we discard any tag that may
|
|
48
|
+
// have been evaluated to be added but is already present in the subject
|
|
49
|
+
if (this.subjectStatus?.tags?.length) {
|
|
50
|
+
for (const tag of this.subjectStatus.tags) {
|
|
51
|
+
tags.delete(tag)
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
if (tags.size) {
|
|
45
56
|
await this.moderationService.logEvent({
|
|
46
57
|
event: {
|
|
47
58
|
$type: 'tools.ozone.moderation.defs#modEventTag',
|
|
48
|
-
add: tags,
|
|
59
|
+
add: [...tags],
|
|
49
60
|
remove: [],
|
|
50
61
|
},
|
|
51
62
|
subject: this.subject,
|
|
@@ -46,7 +46,9 @@ Object {
|
|
|
46
46
|
"subjectBlobCids": Array [],
|
|
47
47
|
"subjectRepoHandle": "alice.test",
|
|
48
48
|
"tags": Array [
|
|
49
|
+
"report:spam",
|
|
49
50
|
"lang:en",
|
|
51
|
+
"report:other",
|
|
50
52
|
],
|
|
51
53
|
"takendown": true,
|
|
52
54
|
"updatedAt": "1970-01-01T00:00:00.000Z",
|
|
@@ -150,7 +152,9 @@ Object {
|
|
|
150
152
|
"subjectBlobCids": Array [],
|
|
151
153
|
"subjectRepoHandle": "alice.test",
|
|
152
154
|
"tags": Array [
|
|
155
|
+
"report:spam",
|
|
153
156
|
"lang:en",
|
|
157
|
+
"report:other",
|
|
154
158
|
],
|
|
155
159
|
"takendown": true,
|
|
156
160
|
"updatedAt": "1970-01-01T00:00:00.000Z",
|