@atproto/ozone 0.1.172 → 0.1.174
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 +18 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +40 -0
- package/dist/api/index.js.map +1 -1
- package/dist/api/moderation/emitEvent.d.ts.map +1 -1
- package/dist/api/moderation/emitEvent.js +31 -0
- package/dist/api/moderation/emitEvent.js.map +1 -1
- package/dist/api/queue/assignModerator.d.ts +4 -0
- package/dist/api/queue/assignModerator.d.ts.map +1 -0
- package/dist/api/queue/assignModerator.js +28 -0
- package/dist/api/queue/assignModerator.js.map +1 -0
- package/dist/api/queue/createQueue.d.ts +4 -0
- package/dist/api/queue/createQueue.d.ts.map +1 -0
- package/dist/api/queue/createQueue.js +44 -0
- package/dist/api/queue/createQueue.js.map +1 -0
- package/dist/api/queue/deleteQueue.d.ts +4 -0
- package/dist/api/queue/deleteQueue.d.ts.map +1 -0
- package/dist/api/queue/deleteQueue.js +40 -0
- package/dist/api/queue/deleteQueue.js.map +1 -0
- package/dist/api/queue/getAssignments.d.ts +4 -0
- package/dist/api/queue/getAssignments.d.ts.map +1 -0
- package/dist/api/queue/getAssignments.js +19 -0
- package/dist/api/queue/getAssignments.js.map +1 -0
- package/dist/api/queue/listQueues.d.ts +4 -0
- package/dist/api/queue/listQueues.d.ts.map +1 -0
- package/dist/api/queue/listQueues.js +29 -0
- package/dist/api/queue/listQueues.js.map +1 -0
- package/dist/api/queue/routeReports.d.ts +4 -0
- package/dist/api/queue/routeReports.d.ts.map +1 -0
- package/dist/api/queue/routeReports.js +33 -0
- package/dist/api/queue/routeReports.js.map +1 -0
- package/dist/api/queue/unassignModerator.d.ts +4 -0
- package/dist/api/queue/unassignModerator.d.ts.map +1 -0
- package/dist/api/queue/unassignModerator.js +24 -0
- package/dist/api/queue/unassignModerator.js.map +1 -0
- package/dist/api/queue/updateQueue.d.ts +4 -0
- package/dist/api/queue/updateQueue.d.ts.map +1 -0
- package/dist/api/queue/updateQueue.js +39 -0
- package/dist/api/queue/updateQueue.js.map +1 -0
- package/dist/api/report/assignModerator.d.ts +4 -0
- package/dist/api/report/assignModerator.d.ts.map +1 -0
- package/dist/api/report/assignModerator.js +33 -0
- package/dist/api/report/assignModerator.js.map +1 -0
- package/dist/api/report/createActivity.d.ts +4 -0
- package/dist/api/report/createActivity.d.ts.map +1 -0
- package/dist/api/report/createActivity.js +44 -0
- package/dist/api/report/createActivity.js.map +1 -0
- package/dist/api/report/getAssignments.d.ts +4 -0
- package/dist/api/report/getAssignments.d.ts.map +1 -0
- package/dist/api/report/getAssignments.js +19 -0
- package/dist/api/report/getAssignments.js.map +1 -0
- package/dist/api/report/getHistoricalStats.d.ts +4 -0
- package/dist/api/report/getHistoricalStats.d.ts.map +1 -0
- package/dist/api/report/getHistoricalStats.js +32 -0
- package/dist/api/report/getHistoricalStats.js.map +1 -0
- package/dist/api/report/getLatestReport.d.ts +4 -0
- package/dist/api/report/getLatestReport.d.ts.map +1 -0
- package/dist/api/report/getLatestReport.js +31 -0
- package/dist/api/report/getLatestReport.js.map +1 -0
- package/dist/api/report/getLiveStats.d.ts +4 -0
- package/dist/api/report/getLiveStats.d.ts.map +1 -0
- package/dist/api/report/getLiveStats.js +25 -0
- package/dist/api/report/getLiveStats.js.map +1 -0
- package/dist/api/report/getReport.d.ts +4 -0
- package/dist/api/report/getReport.d.ts.map +1 -0
- package/dist/api/report/getReport.js +35 -0
- package/dist/api/report/getReport.js.map +1 -0
- package/dist/api/report/listActivities.d.ts +4 -0
- package/dist/api/report/listActivities.d.ts.map +1 -0
- package/dist/api/report/listActivities.js +25 -0
- package/dist/api/report/listActivities.js.map +1 -0
- package/dist/api/report/queryReports.d.ts +4 -0
- package/dist/api/report/queryReports.d.ts.map +1 -0
- package/dist/api/report/queryReports.js +29 -0
- package/dist/api/report/queryReports.js.map +1 -0
- package/dist/api/report/reassignQueue.d.ts +4 -0
- package/dist/api/report/reassignQueue.d.ts.map +1 -0
- package/dist/api/report/reassignQueue.js +45 -0
- package/dist/api/report/reassignQueue.js.map +1 -0
- package/dist/api/report/refreshStats.d.ts +4 -0
- package/dist/api/report/refreshStats.d.ts.map +1 -0
- package/dist/api/report/refreshStats.js +26 -0
- package/dist/api/report/refreshStats.js.map +1 -0
- package/dist/api/report/unassignModerator.d.ts +4 -0
- package/dist/api/report/unassignModerator.d.ts.map +1 -0
- package/dist/api/report/unassignModerator.js +21 -0
- package/dist/api/report/unassignModerator.js.map +1 -0
- package/dist/api/util.d.ts +2 -0
- package/dist/api/util.d.ts.map +1 -1
- package/dist/api/util.js +9 -1
- package/dist/api/util.js.map +1 -1
- package/dist/assignment/index.d.ts +89 -0
- package/dist/assignment/index.d.ts.map +1 -0
- package/dist/assignment/index.js +537 -0
- package/dist/assignment/index.js.map +1 -0
- package/dist/config/config.d.ts +14 -0
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js +9 -0
- package/dist/config/config.js.map +1 -1
- package/dist/config/env.d.ts +3 -0
- package/dist/config/env.d.ts.map +1 -1
- package/dist/config/env.js +3 -0
- package/dist/config/env.js.map +1 -1
- package/dist/context.d.ts +9 -0
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +31 -10
- package/dist/context.js.map +1 -1
- package/dist/daemon/context.d.ts +6 -0
- package/dist/daemon/context.d.ts.map +1 -1
- package/dist/daemon/context.js +28 -4
- package/dist/daemon/context.js.map +1 -1
- package/dist/daemon/event-reverser.d.ts +1 -0
- package/dist/daemon/event-reverser.d.ts.map +1 -1
- package/dist/daemon/event-reverser.js +42 -1
- package/dist/daemon/event-reverser.js.map +1 -1
- package/dist/daemon/job-cursor.d.ts +5 -0
- package/dist/daemon/job-cursor.d.ts.map +1 -0
- package/dist/daemon/job-cursor.js +28 -0
- package/dist/daemon/job-cursor.js.map +1 -0
- package/dist/daemon/queue-router.d.ts +17 -0
- package/dist/daemon/queue-router.d.ts.map +1 -0
- package/dist/daemon/queue-router.js +114 -0
- package/dist/daemon/queue-router.js.map +1 -0
- package/dist/daemon/stats-computer.d.ts +51 -0
- package/dist/daemon/stats-computer.d.ts.map +1 -0
- package/dist/daemon/stats-computer.js +117 -0
- package/dist/daemon/stats-computer.js.map +1 -0
- package/dist/daemon/strike-expiry-processor.d.ts.map +1 -1
- package/dist/daemon/strike-expiry-processor.js +4 -19
- package/dist/daemon/strike-expiry-processor.js.map +1 -1
- package/dist/db/migrations/20260219T164523000Z-create-report-table.d.ts +4 -0
- package/dist/db/migrations/20260219T164523000Z-create-report-table.d.ts.map +1 -0
- package/dist/db/migrations/20260219T164523000Z-create-report-table.js +126 -0
- package/dist/db/migrations/20260219T164523000Z-create-report-table.js.map +1 -0
- package/dist/db/migrations/20260219T165302248Z-moderator-assignment.d.ts +4 -0
- package/dist/db/migrations/20260219T165302248Z-moderator-assignment.d.ts.map +1 -0
- package/dist/db/migrations/20260219T165302248Z-moderator-assignment.js +35 -0
- package/dist/db/migrations/20260219T165302248Z-moderator-assignment.js.map +1 -0
- package/dist/db/migrations/20260225T000000000Z-add-report-queue-table.d.ts +4 -0
- package/dist/db/migrations/20260225T000000000Z-add-report-queue-table.d.ts.map +1 -0
- package/dist/db/migrations/20260225T000000000Z-add-report-queue-table.js +36 -0
- package/dist/db/migrations/20260225T000000000Z-add-report-queue-table.js.map +1 -0
- package/dist/db/migrations/20260313T000000000Z-add-report-activity-table.d.ts +4 -0
- package/dist/db/migrations/20260313T000000000Z-add-report-activity-table.d.ts.map +1 -0
- package/dist/db/migrations/20260313T000000000Z-add-report-activity-table.js +39 -0
- package/dist/db/migrations/20260313T000000000Z-add-report-activity-table.js.map +1 -0
- package/dist/db/migrations/20260318T152058935Z-add-report-stat.d.ts +4 -0
- package/dist/db/migrations/20260318T152058935Z-add-report-stat.d.ts.map +1 -0
- package/dist/db/migrations/20260318T152058935Z-add-report-stat.js +34 -0
- package/dist/db/migrations/20260318T152058935Z-add-report-stat.js.map +1 -0
- package/dist/db/migrations/20260428T000000000Z-add-expiring-tag-table.d.ts +4 -0
- package/dist/db/migrations/20260428T000000000Z-add-expiring-tag-table.d.ts.map +1 -0
- package/dist/db/migrations/20260428T000000000Z-add-expiring-tag-table.js +32 -0
- package/dist/db/migrations/20260428T000000000Z-add-expiring-tag-table.js.map +1 -0
- package/dist/db/migrations/index.d.ts +6 -0
- package/dist/db/migrations/index.d.ts.map +1 -1
- package/dist/db/migrations/index.js +7 -1
- package/dist/db/migrations/index.js.map +1 -1
- package/dist/db/pagination.d.ts +31 -0
- package/dist/db/pagination.d.ts.map +1 -1
- package/dist/db/pagination.js +74 -1
- package/dist/db/pagination.js.map +1 -1
- package/dist/db/schema/expiring_tag.d.ts +15 -0
- package/dist/db/schema/expiring_tag.d.ts.map +1 -0
- package/dist/db/schema/expiring_tag.js +5 -0
- package/dist/db/schema/expiring_tag.js.map +1 -0
- package/dist/db/schema/index.d.ts +7 -1
- package/dist/db/schema/index.d.ts.map +1 -1
- package/dist/db/schema/index.js.map +1 -1
- package/dist/db/schema/moderator_assignment.d.ts +14 -0
- package/dist/db/schema/moderator_assignment.d.ts.map +1 -0
- package/dist/db/schema/moderator_assignment.js +5 -0
- package/dist/db/schema/moderator_assignment.js.map +1 -0
- package/dist/db/schema/report.d.ts +25 -0
- package/dist/db/schema/report.d.ts.map +1 -0
- package/dist/db/schema/report.js +5 -0
- package/dist/db/schema/report.js.map +1 -0
- package/dist/db/schema/report_activity.d.ts +18 -0
- package/dist/db/schema/report_activity.d.ts.map +1 -0
- package/dist/db/schema/report_activity.js +5 -0
- package/dist/db/schema/report_activity.js.map +1 -0
- package/dist/db/schema/report_queue.d.ts +19 -0
- package/dist/db/schema/report_queue.d.ts.map +1 -0
- package/dist/db/schema/report_queue.js +5 -0
- package/dist/db/schema/report_queue.js.map +1 -0
- package/dist/db/schema/report_stat.d.ts +20 -0
- package/dist/db/schema/report_stat.d.ts.map +1 -0
- package/dist/db/schema/report_stat.js +5 -0
- package/dist/db/schema/report_stat.js.map +1 -0
- package/dist/lexicon/index.d.ts +50 -0
- package/dist/lexicon/index.d.ts.map +1 -1
- package/dist/lexicon/index.js +120 -2
- package/dist/lexicon/index.js.map +1 -1
- package/dist/lexicon/lexicons.d.ts +11255 -7885
- package/dist/lexicon/lexicons.d.ts.map +1 -1
- package/dist/lexicon/lexicons.js +1900 -120
- package/dist/lexicon/lexicons.js.map +1 -1
- package/dist/lexicon/types/app/bsky/embed/external.d.ts +2 -0
- package/dist/lexicon/types/app/bsky/embed/external.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/embed/external.js.map +1 -1
- package/dist/lexicon/types/chat/bsky/actor/defs.d.ts +8 -2
- package/dist/lexicon/types/chat/bsky/actor/defs.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/actor/defs.js +9 -0
- package/dist/lexicon/types/chat/bsky/actor/defs.js.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/defs.d.ts +37 -10
- package/dist/lexicon/types/chat/bsky/convo/defs.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/defs.js +9 -0
- package/dist/lexicon/types/chat/bsky/convo/defs.js.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/getMessages.d.ts +3 -0
- package/dist/lexicon/types/chat/bsky/convo/getMessages.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/getMessages.js.map +1 -1
- package/dist/lexicon/types/tools/ozone/moderation/defs.d.ts +2 -0
- package/dist/lexicon/types/tools/ozone/moderation/defs.d.ts.map +1 -1
- package/dist/lexicon/types/tools/ozone/moderation/defs.js.map +1 -1
- package/dist/lexicon/types/tools/ozone/moderation/emitEvent.d.ts +19 -0
- package/dist/lexicon/types/tools/ozone/moderation/emitEvent.d.ts.map +1 -1
- package/dist/lexicon/types/tools/ozone/moderation/emitEvent.js +9 -0
- package/dist/lexicon/types/tools/ozone/moderation/emitEvent.js.map +1 -1
- package/dist/lexicon/types/tools/ozone/queue/assignModerator.d.ts +27 -0
- package/dist/lexicon/types/tools/ozone/queue/assignModerator.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/assignModerator.js +7 -0
- package/dist/lexicon/types/tools/ozone/queue/assignModerator.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/createQueue.d.ts +35 -0
- package/dist/lexicon/types/tools/ozone/queue/createQueue.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/createQueue.js +7 -0
- package/dist/lexicon/types/tools/ozone/queue/createQueue.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/defs.d.ts +62 -0
- package/dist/lexicon/types/tools/ozone/queue/defs.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/defs.js +34 -0
- package/dist/lexicon/types/tools/ozone/queue/defs.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/deleteQueue.d.ts +29 -0
- package/dist/lexicon/types/tools/ozone/queue/deleteQueue.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/deleteQueue.js +7 -0
- package/dist/lexicon/types/tools/ozone/queue/deleteQueue.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/getAssignments.d.ts +30 -0
- package/dist/lexicon/types/tools/ozone/queue/getAssignments.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/getAssignments.js +7 -0
- package/dist/lexicon/types/tools/ozone/queue/getAssignments.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/listQueues.d.ts +32 -0
- package/dist/lexicon/types/tools/ozone/queue/listQueues.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/listQueues.js +7 -0
- package/dist/lexicon/types/tools/ozone/queue/listQueues.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/routeReports.d.ts +31 -0
- package/dist/lexicon/types/tools/ozone/queue/routeReports.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/routeReports.js +7 -0
- package/dist/lexicon/types/tools/ozone/queue/routeReports.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/unassignModerator.d.ts +18 -0
- package/dist/lexicon/types/tools/ozone/queue/unassignModerator.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/unassignModerator.js +7 -0
- package/dist/lexicon/types/tools/ozone/queue/unassignModerator.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/updateQueue.d.ts +32 -0
- package/dist/lexicon/types/tools/ozone/queue/updateQueue.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/queue/updateQueue.js +7 -0
- package/dist/lexicon/types/tools/ozone/queue/updateQueue.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/assignModerator.d.ts +31 -0
- package/dist/lexicon/types/tools/ozone/report/assignModerator.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/assignModerator.js +7 -0
- package/dist/lexicon/types/tools/ozone/report/assignModerator.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/createActivity.d.ts +37 -0
- package/dist/lexicon/types/tools/ozone/report/createActivity.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/createActivity.js +7 -0
- package/dist/lexicon/types/tools/ozone/report/createActivity.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/defs.d.ts +185 -0
- package/dist/lexicon/types/tools/ozone/report/defs.d.ts.map +1 -1
- package/dist/lexicon/types/tools/ozone/report/defs.js +108 -0
- package/dist/lexicon/types/tools/ozone/report/defs.js.map +1 -1
- package/dist/lexicon/types/tools/ozone/report/getAssignments.d.ts +30 -0
- package/dist/lexicon/types/tools/ozone/report/getAssignments.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/getAssignments.js +7 -0
- package/dist/lexicon/types/tools/ozone/report/getAssignments.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/getHistoricalStats.d.ts +36 -0
- package/dist/lexicon/types/tools/ozone/report/getHistoricalStats.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/getHistoricalStats.js +7 -0
- package/dist/lexicon/types/tools/ozone/report/getHistoricalStats.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/getLatestReport.d.ts +21 -0
- package/dist/lexicon/types/tools/ozone/report/getLatestReport.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/getLatestReport.js +7 -0
- package/dist/lexicon/types/tools/ozone/report/getLatestReport.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/getLiveStats.d.ts +27 -0
- package/dist/lexicon/types/tools/ozone/report/getLiveStats.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/getLiveStats.js +7 -0
- package/dist/lexicon/types/tools/ozone/report/getLiveStats.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/getReport.d.ts +22 -0
- package/dist/lexicon/types/tools/ozone/report/getReport.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/getReport.js +7 -0
- package/dist/lexicon/types/tools/ozone/report/getReport.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/listActivities.d.ts +26 -0
- package/dist/lexicon/types/tools/ozone/report/listActivities.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/listActivities.js +7 -0
- package/dist/lexicon/types/tools/ozone/report/listActivities.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/queryReports.d.ts +48 -0
- package/dist/lexicon/types/tools/ozone/report/queryReports.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/queryReports.js +7 -0
- package/dist/lexicon/types/tools/ozone/report/queryReports.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/reassignQueue.d.ts +31 -0
- package/dist/lexicon/types/tools/ozone/report/reassignQueue.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/reassignQueue.js +7 -0
- package/dist/lexicon/types/tools/ozone/report/reassignQueue.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/refreshStats.d.ts +28 -0
- package/dist/lexicon/types/tools/ozone/report/refreshStats.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/refreshStats.js +7 -0
- package/dist/lexicon/types/tools/ozone/report/refreshStats.js.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/unassignModerator.d.ts +25 -0
- package/dist/lexicon/types/tools/ozone/report/unassignModerator.d.ts.map +1 -0
- package/dist/lexicon/types/tools/ozone/report/unassignModerator.js +7 -0
- package/dist/lexicon/types/tools/ozone/report/unassignModerator.js.map +1 -0
- package/dist/mod-service/expiring-tags.d.ts +27 -0
- package/dist/mod-service/expiring-tags.d.ts.map +1 -0
- package/dist/mod-service/expiring-tags.js +62 -0
- package/dist/mod-service/expiring-tags.js.map +1 -0
- package/dist/mod-service/index.d.ts +3 -1
- package/dist/mod-service/index.d.ts.map +1 -1
- package/dist/mod-service/index.js +61 -2
- package/dist/mod-service/index.js.map +1 -1
- package/dist/mod-service/report.d.ts +64 -0
- package/dist/mod-service/report.d.ts.map +1 -0
- package/dist/mod-service/report.js +282 -0
- package/dist/mod-service/report.js.map +1 -0
- package/dist/mod-service/status.d.ts +24 -0
- package/dist/mod-service/status.d.ts.map +1 -1
- package/dist/queue/service.d.ts +86 -0
- package/dist/queue/service.d.ts.map +1 -0
- package/dist/queue/service.js +430 -0
- package/dist/queue/service.js.map +1 -0
- package/dist/report/activity.d.ts +77 -0
- package/dist/report/activity.d.ts.map +1 -0
- package/dist/report/activity.js +141 -0
- package/dist/report/activity.js.map +1 -0
- package/dist/report/handle-report-update.d.ts +47 -0
- package/dist/report/handle-report-update.d.ts.map +1 -0
- package/dist/report/handle-report-update.js +178 -0
- package/dist/report/handle-report-update.js.map +1 -0
- package/dist/report/reassign.d.ts +10 -0
- package/dist/report/reassign.d.ts.map +1 -0
- package/dist/report/reassign.js +75 -0
- package/dist/report/reassign.js.map +1 -0
- package/dist/report/stats.d.ts +105 -0
- package/dist/report/stats.d.ts.map +1 -0
- package/dist/report/stats.js +619 -0
- package/dist/report/stats.js.map +1 -0
- package/dist/report/views.d.ts +111 -0
- package/dist/report/views.d.ts.map +1 -0
- package/dist/report/views.js +156 -0
- package/dist/report/views.js.map +1 -0
- package/dist/team/index.d.ts +1 -0
- package/dist/team/index.d.ts.map +1 -1
- package/dist/team/index.js +11 -0
- package/dist/team/index.js.map +1 -1
- package/package.json +3 -3
- package/src/api/index.ts +40 -0
- package/src/api/moderation/emitEvent.ts +38 -0
- package/src/api/queue/assignModerator.ts +31 -0
- package/src/api/queue/createQueue.ts +62 -0
- package/src/api/queue/deleteQueue.ts +56 -0
- package/src/api/queue/getAssignments.ts +19 -0
- package/src/api/queue/listQueues.ts +39 -0
- package/src/api/queue/routeReports.ts +44 -0
- package/src/api/queue/unassignModerator.ts +26 -0
- package/src/api/queue/updateQueue.ts +54 -0
- package/src/api/report/assignModerator.ts +36 -0
- package/src/api/report/createActivity.ts +57 -0
- package/src/api/report/getAssignments.ts +20 -0
- package/src/api/report/getHistoricalStats.ts +41 -0
- package/src/api/report/getLatestReport.ts +44 -0
- package/src/api/report/getLiveStats.ts +26 -0
- package/src/api/report/getReport.ts +55 -0
- package/src/api/report/listActivities.ts +34 -0
- package/src/api/report/queryReports.ts +44 -0
- package/src/api/report/reassignQueue.ts +68 -0
- package/src/api/report/refreshStats.ts +27 -0
- package/src/api/report/unassignModerator.ts +21 -0
- package/src/api/util.ts +12 -0
- package/src/assignment/index.ts +731 -0
- package/src/config/config.ts +27 -0
- package/src/config/env.ts +8 -0
- package/src/context.ts +31 -0
- package/src/daemon/context.ts +34 -0
- package/src/daemon/event-reverser.ts +50 -1
- package/src/daemon/job-cursor.ts +33 -0
- package/src/daemon/queue-router.ts +101 -0
- package/src/daemon/stats-computer.ts +101 -0
- package/src/daemon/strike-expiry-processor.ts +4 -20
- package/src/db/migrations/20260219T164523000Z-create-report-table.ts +155 -0
- package/src/db/migrations/20260219T165302248Z-moderator-assignment.ts +42 -0
- package/src/db/migrations/20260225T000000000Z-add-report-queue-table.ts +41 -0
- package/src/db/migrations/20260313T000000000Z-add-report-activity-table.ts +48 -0
- package/src/db/migrations/20260318T152058935Z-add-report-stat.ts +35 -0
- package/src/db/migrations/20260428T000000000Z-add-expiring-tag-table.ts +32 -0
- package/src/db/migrations/index.ts +6 -0
- package/src/db/pagination.ts +85 -0
- package/src/db/schema/expiring_tag.ts +17 -0
- package/src/db/schema/index.ts +13 -1
- package/src/db/schema/moderator_assignment.ts +16 -0
- package/src/db/schema/report.ts +27 -0
- package/src/db/schema/report_activity.ts +22 -0
- package/src/db/schema/report_queue.ts +21 -0
- package/src/db/schema/report_stat.ts +27 -0
- package/src/lexicon/index.ts +280 -0
- package/src/lexicon/lexicons.ts +2083 -214
- package/src/lexicon/types/app/bsky/embed/external.ts +2 -0
- package/src/lexicon/types/chat/bsky/actor/defs.ts +17 -1
- package/src/lexicon/types/chat/bsky/convo/defs.ts +50 -10
- package/src/lexicon/types/chat/bsky/convo/getMessages.ts +3 -0
- package/src/lexicon/types/tools/ozone/moderation/defs.ts +2 -0
- package/src/lexicon/types/tools/ozone/moderation/emitEvent.ts +24 -0
- package/src/lexicon/types/tools/ozone/queue/assignModerator.ts +46 -0
- package/src/lexicon/types/tools/ozone/queue/createQueue.ts +54 -0
- package/src/lexicon/types/tools/ozone/queue/defs.ts +99 -0
- package/src/lexicon/types/tools/ozone/queue/deleteQueue.ts +48 -0
- package/src/lexicon/types/tools/ozone/queue/getAssignments.ts +48 -0
- package/src/lexicon/types/tools/ozone/queue/listQueues.ts +50 -0
- package/src/lexicon/types/tools/ozone/queue/routeReports.ts +50 -0
- package/src/lexicon/types/tools/ozone/queue/unassignModerator.ts +37 -0
- package/src/lexicon/types/tools/ozone/queue/updateQueue.ts +51 -0
- package/src/lexicon/types/tools/ozone/report/assignModerator.ts +50 -0
- package/src/lexicon/types/tools/ozone/report/createActivity.ts +60 -0
- package/src/lexicon/types/tools/ozone/report/defs.ts +327 -0
- package/src/lexicon/types/tools/ozone/report/getAssignments.ts +48 -0
- package/src/lexicon/types/tools/ozone/report/getHistoricalStats.ts +54 -0
- package/src/lexicon/types/tools/ozone/report/getLatestReport.ts +39 -0
- package/src/lexicon/types/tools/ozone/report/getLiveStats.ts +45 -0
- package/src/lexicon/types/tools/ozone/report/getReport.ts +38 -0
- package/src/lexicon/types/tools/ozone/report/listActivities.ts +44 -0
- package/src/lexicon/types/tools/ozone/report/queryReports.ts +72 -0
- package/src/lexicon/types/tools/ozone/report/reassignQueue.ts +55 -0
- package/src/lexicon/types/tools/ozone/report/refreshStats.ts +46 -0
- package/src/lexicon/types/tools/ozone/report/unassignModerator.ts +44 -0
- package/src/mod-service/expiring-tags.ts +98 -0
- package/src/mod-service/index.ts +71 -3
- package/src/mod-service/report.ts +408 -0
- package/src/queue/service.ts +599 -0
- package/src/report/activity.ts +234 -0
- package/src/report/handle-report-update.ts +209 -0
- package/src/report/reassign.ts +109 -0
- package/src/report/stats.ts +850 -0
- package/src/report/views.ts +241 -0
- package/src/team/index.ts +11 -0
- package/tests/expiring-tags.test.ts +231 -0
- package/tests/get-report.test.ts +136 -0
- package/tests/query-reports.test.ts +608 -0
- package/tests/queue-assignment.test.ts +428 -0
- package/tests/queue-router.test.ts +306 -0
- package/tests/queues.test.ts +690 -0
- package/tests/report-action.test.ts +308 -0
- package/tests/report-activity.test.ts +567 -0
- package/tests/report-assignment.test.ts +517 -0
- package/tests/report-reassign-queue.test.ts +340 -0
- package/tests/report-routing.test.ts +245 -0
- package/tests/report-stats.test.ts +545 -0
- package/tsconfig.build.tsbuildinfo +1 -1
|
@@ -36,6 +36,8 @@ export interface External {
|
|
|
36
36
|
title: string
|
|
37
37
|
description: string
|
|
38
38
|
thumb?: BlobRef
|
|
39
|
+
/** The URI of the Atmosphere record representing this external content, if it exists. Example: a site.standard.document record. */
|
|
40
|
+
associatedRecord?: string
|
|
39
41
|
}
|
|
40
42
|
|
|
41
43
|
const hashExternal = 'external'
|
|
@@ -34,6 +34,7 @@ export interface ProfileViewBasic {
|
|
|
34
34
|
kind?:
|
|
35
35
|
| $Typed<DirectConvoMember>
|
|
36
36
|
| $Typed<GroupConvoMember>
|
|
37
|
+
| $Typed<PastGroupConvoMember>
|
|
37
38
|
| { $type: string }
|
|
38
39
|
}
|
|
39
40
|
|
|
@@ -62,7 +63,7 @@ export function validateDirectConvoMember<V>(v: V) {
|
|
|
62
63
|
return validate<DirectConvoMember & V>(v, id, hashDirectConvoMember)
|
|
63
64
|
}
|
|
64
65
|
|
|
65
|
-
/** [NOTE: This is under active development and should be considered unstable while this note is here]. */
|
|
66
|
+
/** [NOTE: This is under active development and should be considered unstable while this note is here]. A current group convo member. */
|
|
66
67
|
export interface GroupConvoMember {
|
|
67
68
|
$type?: 'chat.bsky.actor.defs#groupConvoMember'
|
|
68
69
|
addedBy?: ProfileViewBasic
|
|
@@ -78,3 +79,18 @@ export function isGroupConvoMember<V>(v: V) {
|
|
|
78
79
|
export function validateGroupConvoMember<V>(v: V) {
|
|
79
80
|
return validate<GroupConvoMember & V>(v, id, hashGroupConvoMember)
|
|
80
81
|
}
|
|
82
|
+
|
|
83
|
+
/** [NOTE: This is under active development and should be considered unstable while this note is here]. A past group convo member. */
|
|
84
|
+
export interface PastGroupConvoMember {
|
|
85
|
+
$type?: 'chat.bsky.actor.defs#pastGroupConvoMember'
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
const hashPastGroupConvoMember = 'pastGroupConvoMember'
|
|
89
|
+
|
|
90
|
+
export function isPastGroupConvoMember<V>(v: V) {
|
|
91
|
+
return is$typed(v, id, hashPastGroupConvoMember)
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
export function validatePastGroupConvoMember<V>(v: V) {
|
|
95
|
+
return validate<PastGroupConvoMember & V>(v, id, hashPastGroupConvoMember)
|
|
96
|
+
}
|
|
@@ -85,6 +85,25 @@ export function validateMessageView<V>(v: V) {
|
|
|
85
85
|
return validate<MessageView & V>(v, id, hashMessageView)
|
|
86
86
|
}
|
|
87
87
|
|
|
88
|
+
export interface SystemMessageReferredUser {
|
|
89
|
+
$type?: 'chat.bsky.convo.defs#systemMessageReferredUser'
|
|
90
|
+
did: string
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
const hashSystemMessageReferredUser = 'systemMessageReferredUser'
|
|
94
|
+
|
|
95
|
+
export function isSystemMessageReferredUser<V>(v: V) {
|
|
96
|
+
return is$typed(v, id, hashSystemMessageReferredUser)
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
export function validateSystemMessageReferredUser<V>(v: V) {
|
|
100
|
+
return validate<SystemMessageReferredUser & V>(
|
|
101
|
+
v,
|
|
102
|
+
id,
|
|
103
|
+
hashSystemMessageReferredUser,
|
|
104
|
+
)
|
|
105
|
+
}
|
|
106
|
+
|
|
88
107
|
/** [NOTE: This is under active development and should be considered unstable while this note is here]. */
|
|
89
108
|
export interface SystemMessageView {
|
|
90
109
|
$type?: 'chat.bsky.convo.defs#systemMessageView'
|
|
@@ -120,9 +139,9 @@ export function validateSystemMessageView<V>(v: V) {
|
|
|
120
139
|
/** [NOTE: This is under active development and should be considered unstable while this note is here]. System message indicating a user was added to the group convo. */
|
|
121
140
|
export interface SystemMessageDataAddMember {
|
|
122
141
|
$type?: 'chat.bsky.convo.defs#systemMessageDataAddMember'
|
|
123
|
-
member:
|
|
142
|
+
member: SystemMessageReferredUser
|
|
124
143
|
role: ChatBskyActorDefs.MemberRole
|
|
125
|
-
addedBy:
|
|
144
|
+
addedBy: SystemMessageReferredUser
|
|
126
145
|
}
|
|
127
146
|
|
|
128
147
|
const hashSystemMessageDataAddMember = 'systemMessageDataAddMember'
|
|
@@ -142,8 +161,8 @@ export function validateSystemMessageDataAddMember<V>(v: V) {
|
|
|
142
161
|
/** [NOTE: This is under active development and should be considered unstable while this note is here]. System message indicating a user was removed from the group convo. */
|
|
143
162
|
export interface SystemMessageDataRemoveMember {
|
|
144
163
|
$type?: 'chat.bsky.convo.defs#systemMessageDataRemoveMember'
|
|
145
|
-
member:
|
|
146
|
-
removedBy:
|
|
164
|
+
member: SystemMessageReferredUser
|
|
165
|
+
removedBy: SystemMessageReferredUser
|
|
147
166
|
}
|
|
148
167
|
|
|
149
168
|
const hashSystemMessageDataRemoveMember = 'systemMessageDataRemoveMember'
|
|
@@ -163,9 +182,9 @@ export function validateSystemMessageDataRemoveMember<V>(v: V) {
|
|
|
163
182
|
/** [NOTE: This is under active development and should be considered unstable while this note is here]. System message indicating a user joined the group convo via join link. */
|
|
164
183
|
export interface SystemMessageDataMemberJoin {
|
|
165
184
|
$type?: 'chat.bsky.convo.defs#systemMessageDataMemberJoin'
|
|
166
|
-
member:
|
|
185
|
+
member: SystemMessageReferredUser
|
|
167
186
|
role: ChatBskyActorDefs.MemberRole
|
|
168
|
-
approvedBy?:
|
|
187
|
+
approvedBy?: SystemMessageReferredUser
|
|
169
188
|
}
|
|
170
189
|
|
|
171
190
|
const hashSystemMessageDataMemberJoin = 'systemMessageDataMemberJoin'
|
|
@@ -185,7 +204,7 @@ export function validateSystemMessageDataMemberJoin<V>(v: V) {
|
|
|
185
204
|
/** [NOTE: This is under active development and should be considered unstable while this note is here]. System message indicating a user voluntarily left the group convo. */
|
|
186
205
|
export interface SystemMessageDataMemberLeave {
|
|
187
206
|
$type?: 'chat.bsky.convo.defs#systemMessageDataMemberLeave'
|
|
188
|
-
member:
|
|
207
|
+
member: SystemMessageReferredUser
|
|
189
208
|
}
|
|
190
209
|
|
|
191
210
|
const hashSystemMessageDataMemberLeave = 'systemMessageDataMemberLeave'
|
|
@@ -205,7 +224,7 @@ export function validateSystemMessageDataMemberLeave<V>(v: V) {
|
|
|
205
224
|
/** [NOTE: This is under active development and should be considered unstable while this note is here]. System message indicating the group convo was locked. */
|
|
206
225
|
export interface SystemMessageDataLockConvo {
|
|
207
226
|
$type?: 'chat.bsky.convo.defs#systemMessageDataLockConvo'
|
|
208
|
-
lockedBy:
|
|
227
|
+
lockedBy: SystemMessageReferredUser
|
|
209
228
|
}
|
|
210
229
|
|
|
211
230
|
const hashSystemMessageDataLockConvo = 'systemMessageDataLockConvo'
|
|
@@ -225,7 +244,7 @@ export function validateSystemMessageDataLockConvo<V>(v: V) {
|
|
|
225
244
|
/** [NOTE: This is under active development and should be considered unstable while this note is here]. System message indicating the group convo was unlocked. */
|
|
226
245
|
export interface SystemMessageDataUnlockConvo {
|
|
227
246
|
$type?: 'chat.bsky.convo.defs#systemMessageDataUnlockConvo'
|
|
228
|
-
unlockedBy:
|
|
247
|
+
unlockedBy: SystemMessageReferredUser
|
|
229
248
|
}
|
|
230
249
|
|
|
231
250
|
const hashSystemMessageDataUnlockConvo = 'systemMessageDataUnlockConvo'
|
|
@@ -245,7 +264,7 @@ export function validateSystemMessageDataUnlockConvo<V>(v: V) {
|
|
|
245
264
|
/** [NOTE: This is under active development and should be considered unstable while this note is here]. System message indicating the group convo was locked permanently. */
|
|
246
265
|
export interface SystemMessageDataLockConvoPermanently {
|
|
247
266
|
$type?: 'chat.bsky.convo.defs#systemMessageDataLockConvoPermanently'
|
|
248
|
-
lockedBy:
|
|
267
|
+
lockedBy: SystemMessageReferredUser
|
|
249
268
|
}
|
|
250
269
|
|
|
251
270
|
const hashSystemMessageDataLockConvoPermanently =
|
|
@@ -493,6 +512,7 @@ export interface GroupConvo {
|
|
|
493
512
|
name: string
|
|
494
513
|
/** The total number of members in the group conversation. */
|
|
495
514
|
memberCount: number
|
|
515
|
+
createdAt: string
|
|
496
516
|
joinLink?: ChatBskyGroupDefs.JoinLinkView
|
|
497
517
|
lockStatus: ConvoLockStatus
|
|
498
518
|
}
|
|
@@ -598,6 +618,8 @@ export interface LogCreateMessage {
|
|
|
598
618
|
rev: string
|
|
599
619
|
convoId: string
|
|
600
620
|
message: $Typed<MessageView> | $Typed<DeletedMessageView> | { $type: string }
|
|
621
|
+
/** Profiles referred to in the message view. This isn't required for compatibility, because it was added later, but should generally be present. */
|
|
622
|
+
relatedProfiles?: ChatBskyActorDefs.ProfileViewBasic[]
|
|
601
623
|
}
|
|
602
624
|
|
|
603
625
|
const hashLogCreateMessage = 'logCreateMessage'
|
|
@@ -657,6 +679,8 @@ export interface LogAddReaction {
|
|
|
657
679
|
convoId: string
|
|
658
680
|
message: $Typed<MessageView> | $Typed<DeletedMessageView> | { $type: string }
|
|
659
681
|
reaction: ReactionView
|
|
682
|
+
/** Profiles referred in the message and reaction views. This isn't required for compatibility, because it was added later, but should generally be present. */
|
|
683
|
+
relatedProfiles?: ChatBskyActorDefs.ProfileViewBasic[]
|
|
660
684
|
}
|
|
661
685
|
|
|
662
686
|
const hashLogAddReaction = 'logAddReaction'
|
|
@@ -676,6 +700,8 @@ export interface LogRemoveReaction {
|
|
|
676
700
|
convoId: string
|
|
677
701
|
message: $Typed<MessageView> | $Typed<DeletedMessageView> | { $type: string }
|
|
678
702
|
reaction: ReactionView
|
|
703
|
+
/** Profiles referred in the message and reaction views. This isn't required for compatibility, because it was added later, but should generally be present. */
|
|
704
|
+
relatedProfiles?: ChatBskyActorDefs.ProfileViewBasic[]
|
|
679
705
|
}
|
|
680
706
|
|
|
681
707
|
const hashLogRemoveReaction = 'logRemoveReaction'
|
|
@@ -716,6 +742,8 @@ export interface LogAddMember {
|
|
|
716
742
|
rev: string
|
|
717
743
|
convoId: string
|
|
718
744
|
message: SystemMessageView
|
|
745
|
+
/** Profiles referred in the system message. */
|
|
746
|
+
relatedProfiles: ChatBskyActorDefs.ProfileViewBasic[]
|
|
719
747
|
}
|
|
720
748
|
|
|
721
749
|
const hashLogAddMember = 'logAddMember'
|
|
@@ -734,6 +762,8 @@ export interface LogRemoveMember {
|
|
|
734
762
|
rev: string
|
|
735
763
|
convoId: string
|
|
736
764
|
message: SystemMessageView
|
|
765
|
+
/** Profiles referred in the system message. */
|
|
766
|
+
relatedProfiles: ChatBskyActorDefs.ProfileViewBasic[]
|
|
737
767
|
}
|
|
738
768
|
|
|
739
769
|
const hashLogRemoveMember = 'logRemoveMember'
|
|
@@ -752,6 +782,8 @@ export interface LogMemberJoin {
|
|
|
752
782
|
rev: string
|
|
753
783
|
convoId: string
|
|
754
784
|
message: SystemMessageView
|
|
785
|
+
/** Profiles referred in the system message. */
|
|
786
|
+
relatedProfiles: ChatBskyActorDefs.ProfileViewBasic[]
|
|
755
787
|
}
|
|
756
788
|
|
|
757
789
|
const hashLogMemberJoin = 'logMemberJoin'
|
|
@@ -770,6 +802,8 @@ export interface LogMemberLeave {
|
|
|
770
802
|
rev: string
|
|
771
803
|
convoId: string
|
|
772
804
|
message: SystemMessageView
|
|
805
|
+
/** Profiles referred in the system message. */
|
|
806
|
+
relatedProfiles: ChatBskyActorDefs.ProfileViewBasic[]
|
|
773
807
|
}
|
|
774
808
|
|
|
775
809
|
const hashLogMemberLeave = 'logMemberLeave'
|
|
@@ -788,6 +822,8 @@ export interface LogLockConvo {
|
|
|
788
822
|
rev: string
|
|
789
823
|
convoId: string
|
|
790
824
|
message: SystemMessageView
|
|
825
|
+
/** Profiles referred in the system message. */
|
|
826
|
+
relatedProfiles: ChatBskyActorDefs.ProfileViewBasic[]
|
|
791
827
|
}
|
|
792
828
|
|
|
793
829
|
const hashLogLockConvo = 'logLockConvo'
|
|
@@ -806,6 +842,8 @@ export interface LogUnlockConvo {
|
|
|
806
842
|
rev: string
|
|
807
843
|
convoId: string
|
|
808
844
|
message: SystemMessageView
|
|
845
|
+
/** Profiles referred in the system message. */
|
|
846
|
+
relatedProfiles: ChatBskyActorDefs.ProfileViewBasic[]
|
|
809
847
|
}
|
|
810
848
|
|
|
811
849
|
const hashLogUnlockConvo = 'logUnlockConvo'
|
|
@@ -824,6 +862,8 @@ export interface LogLockConvoPermanently {
|
|
|
824
862
|
rev: string
|
|
825
863
|
convoId: string
|
|
826
864
|
message: SystemMessageView
|
|
865
|
+
/** Profiles referred in the system message. */
|
|
866
|
+
relatedProfiles: ChatBskyActorDefs.ProfileViewBasic[]
|
|
827
867
|
}
|
|
828
868
|
|
|
829
869
|
const hashLogLockConvoPermanently = 'logLockConvoPermanently'
|
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
type OmitKey,
|
|
11
11
|
} from '../../../../util'
|
|
12
12
|
import type * as ChatBskyConvoDefs from './defs.js'
|
|
13
|
+
import type * as ChatBskyActorDefs from '../actor/defs.js'
|
|
13
14
|
|
|
14
15
|
const is$typed = _is$typed,
|
|
15
16
|
validate = _validate
|
|
@@ -30,6 +31,8 @@ export interface OutputSchema {
|
|
|
30
31
|
| $Typed<ChatBskyConvoDefs.SystemMessageView>
|
|
31
32
|
| { $type: string }
|
|
32
33
|
)[]
|
|
34
|
+
/** Set of all members who authored or reacted to the returned messages. Members referred to by system messages are also included. */
|
|
35
|
+
relatedProfiles?: ChatBskyActorDefs.ProfileViewBasic[]
|
|
33
36
|
}
|
|
34
37
|
|
|
35
38
|
export type HandlerInput = void
|
|
@@ -701,6 +701,8 @@ export interface ModEventTag {
|
|
|
701
701
|
remove: string[]
|
|
702
702
|
/** Additional comment about added/removed tags. */
|
|
703
703
|
comment?: string
|
|
704
|
+
/** Indicates how long the tags being added should remain before automatically being removed. Only applies to tags being added. */
|
|
705
|
+
durationInHours?: number
|
|
704
706
|
}
|
|
705
707
|
|
|
706
708
|
const hashModEventTag = 'modEventTag'
|
|
@@ -56,6 +56,7 @@ export interface InputSchema {
|
|
|
56
56
|
modTool?: ToolsOzoneModerationDefs.ModTool
|
|
57
57
|
/** An optional external ID for the event, used to deduplicate events from external systems. Fails when an event of same type with the same external ID exists for the same subject. */
|
|
58
58
|
externalId?: string
|
|
59
|
+
reportAction?: ReportAction
|
|
59
60
|
}
|
|
60
61
|
|
|
61
62
|
export type OutputSchema = ToolsOzoneModerationDefs.ModEventView
|
|
@@ -78,3 +79,26 @@ export interface HandlerError {
|
|
|
78
79
|
}
|
|
79
80
|
|
|
80
81
|
export type HandlerOutput = HandlerError | HandlerSuccess
|
|
82
|
+
|
|
83
|
+
/** Target specific reports when emitting a moderation event */
|
|
84
|
+
export interface ReportAction {
|
|
85
|
+
$type?: 'tools.ozone.moderation.emitEvent#reportAction'
|
|
86
|
+
/** Target specific report IDs */
|
|
87
|
+
ids?: number[]
|
|
88
|
+
/** Target reports matching these report types on the subject (fully qualified NSIDs) */
|
|
89
|
+
types?: string[]
|
|
90
|
+
/** Target ALL reports on the subject */
|
|
91
|
+
all?: boolean
|
|
92
|
+
/** Note to send to reporter(s) when actioning their report */
|
|
93
|
+
note?: string
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
const hashReportAction = 'reportAction'
|
|
97
|
+
|
|
98
|
+
export function isReportAction<V>(v: V) {
|
|
99
|
+
return is$typed(v, id, hashReportAction)
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
export function validateReportAction<V>(v: V) {
|
|
103
|
+
return validate<ReportAction & V>(v, id, hashReportAction)
|
|
104
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GENERATED CODE - DO NOT MODIFY
|
|
3
|
+
*/
|
|
4
|
+
import { type ValidationResult, BlobRef } from '@atproto/lexicon'
|
|
5
|
+
import { CID } from 'multiformats/cid'
|
|
6
|
+
import { validate as _validate } from '../../../../lexicons'
|
|
7
|
+
import {
|
|
8
|
+
type $Typed,
|
|
9
|
+
is$typed as _is$typed,
|
|
10
|
+
type OmitKey,
|
|
11
|
+
} from '../../../../util'
|
|
12
|
+
import type * as ToolsOzoneQueueDefs from './defs.js'
|
|
13
|
+
|
|
14
|
+
const is$typed = _is$typed,
|
|
15
|
+
validate = _validate
|
|
16
|
+
const id = 'tools.ozone.queue.assignModerator'
|
|
17
|
+
|
|
18
|
+
export type QueryParams = {}
|
|
19
|
+
|
|
20
|
+
export interface InputSchema {
|
|
21
|
+
/** The ID of the queue to assign the user to. */
|
|
22
|
+
queueId: number
|
|
23
|
+
/** DID to be assigned. */
|
|
24
|
+
did: string
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export type OutputSchema = ToolsOzoneQueueDefs.AssignmentView
|
|
28
|
+
|
|
29
|
+
export interface HandlerInput {
|
|
30
|
+
encoding: 'application/json'
|
|
31
|
+
body: InputSchema
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export interface HandlerSuccess {
|
|
35
|
+
encoding: 'application/json'
|
|
36
|
+
body: OutputSchema
|
|
37
|
+
headers?: { [key: string]: string }
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export interface HandlerError {
|
|
41
|
+
status: number
|
|
42
|
+
message?: string
|
|
43
|
+
error?: 'InvalidAssignment'
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export type HandlerOutput = HandlerError | HandlerSuccess
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GENERATED CODE - DO NOT MODIFY
|
|
3
|
+
*/
|
|
4
|
+
import { type ValidationResult, BlobRef } from '@atproto/lexicon'
|
|
5
|
+
import { CID } from 'multiformats/cid'
|
|
6
|
+
import { validate as _validate } from '../../../../lexicons'
|
|
7
|
+
import {
|
|
8
|
+
type $Typed,
|
|
9
|
+
is$typed as _is$typed,
|
|
10
|
+
type OmitKey,
|
|
11
|
+
} from '../../../../util'
|
|
12
|
+
import type * as ToolsOzoneQueueDefs from './defs.js'
|
|
13
|
+
|
|
14
|
+
const is$typed = _is$typed,
|
|
15
|
+
validate = _validate
|
|
16
|
+
const id = 'tools.ozone.queue.createQueue'
|
|
17
|
+
|
|
18
|
+
export type QueryParams = {}
|
|
19
|
+
|
|
20
|
+
export interface InputSchema {
|
|
21
|
+
/** Display name for the queue (must be unique) */
|
|
22
|
+
name: string
|
|
23
|
+
/** Subject types this queue accepts */
|
|
24
|
+
subjectTypes: ('account' | 'record' | 'message' | (string & {}))[]
|
|
25
|
+
/** Collection name for record subjects. Required if subjectTypes includes 'record'. */
|
|
26
|
+
collection?: string
|
|
27
|
+
/** Report reason types (fully qualified NSIDs) */
|
|
28
|
+
reportTypes: string[]
|
|
29
|
+
/** Optional description of the queue */
|
|
30
|
+
description?: string
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export interface OutputSchema {
|
|
34
|
+
queue: ToolsOzoneQueueDefs.QueueView
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export interface HandlerInput {
|
|
38
|
+
encoding: 'application/json'
|
|
39
|
+
body: InputSchema
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export interface HandlerSuccess {
|
|
43
|
+
encoding: 'application/json'
|
|
44
|
+
body: OutputSchema
|
|
45
|
+
headers?: { [key: string]: string }
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export interface HandlerError {
|
|
49
|
+
status: number
|
|
50
|
+
message?: string
|
|
51
|
+
error?: 'ConflictingQueue'
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export type HandlerOutput = HandlerError | HandlerSuccess
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GENERATED CODE - DO NOT MODIFY
|
|
3
|
+
*/
|
|
4
|
+
import { type ValidationResult, BlobRef } from '@atproto/lexicon'
|
|
5
|
+
import { CID } from 'multiformats/cid'
|
|
6
|
+
import { validate as _validate } from '../../../../lexicons'
|
|
7
|
+
import {
|
|
8
|
+
type $Typed,
|
|
9
|
+
is$typed as _is$typed,
|
|
10
|
+
type OmitKey,
|
|
11
|
+
} from '../../../../util'
|
|
12
|
+
import type * as ToolsOzoneTeamDefs from '../team/defs.js'
|
|
13
|
+
|
|
14
|
+
const is$typed = _is$typed,
|
|
15
|
+
validate = _validate
|
|
16
|
+
const id = 'tools.ozone.queue.defs'
|
|
17
|
+
|
|
18
|
+
export interface QueueView {
|
|
19
|
+
$type?: 'tools.ozone.queue.defs#queueView'
|
|
20
|
+
/** Queue ID */
|
|
21
|
+
id: number
|
|
22
|
+
/** Display name of the queue */
|
|
23
|
+
name: string
|
|
24
|
+
/** Subject types this queue accepts. */
|
|
25
|
+
subjectTypes: ('account' | 'record' | 'message' | (string & {}))[]
|
|
26
|
+
/** Collection name for record subjects (e.g., 'app.bsky.feed.post') */
|
|
27
|
+
collection?: string
|
|
28
|
+
/** Report reason types this queue accepts (fully qualified NSIDs) */
|
|
29
|
+
reportTypes: string[]
|
|
30
|
+
/** Optional description of the queue */
|
|
31
|
+
description?: string
|
|
32
|
+
/** DID of moderator who created this queue */
|
|
33
|
+
createdBy: string
|
|
34
|
+
createdAt: string
|
|
35
|
+
updatedAt: string
|
|
36
|
+
/** Whether this queue is currently active */
|
|
37
|
+
enabled: boolean
|
|
38
|
+
/** When the queue was deleted, if applicable */
|
|
39
|
+
deletedAt?: string
|
|
40
|
+
stats: QueueStats
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
const hashQueueView = 'queueView'
|
|
44
|
+
|
|
45
|
+
export function isQueueView<V>(v: V) {
|
|
46
|
+
return is$typed(v, id, hashQueueView)
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export function validateQueueView<V>(v: V) {
|
|
50
|
+
return validate<QueueView & V>(v, id, hashQueueView)
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export interface QueueStats {
|
|
54
|
+
$type?: 'tools.ozone.queue.defs#queueStats'
|
|
55
|
+
/** Number of reports in 'open' status */
|
|
56
|
+
pendingCount?: number
|
|
57
|
+
/** Number of reports in 'closed' status */
|
|
58
|
+
actionedCount?: number
|
|
59
|
+
/** Number of reports in 'escalated' status */
|
|
60
|
+
escalatedCount?: number
|
|
61
|
+
/** Reports received in this queue in the last 24 hours. */
|
|
62
|
+
inboundCount?: number
|
|
63
|
+
/** Percentage of reports actioned (actionedCount / inboundCount * 100), rounded to nearest integer. Absent when inboundCount is 0. */
|
|
64
|
+
actionRate?: number
|
|
65
|
+
/** Average time in seconds from report creation to close, for reports closed in this period. */
|
|
66
|
+
avgHandlingTimeSec?: number
|
|
67
|
+
/** When these statistics were last computed */
|
|
68
|
+
lastUpdated?: string
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
const hashQueueStats = 'queueStats'
|
|
72
|
+
|
|
73
|
+
export function isQueueStats<V>(v: V) {
|
|
74
|
+
return is$typed(v, id, hashQueueStats)
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export function validateQueueStats<V>(v: V) {
|
|
78
|
+
return validate<QueueStats & V>(v, id, hashQueueStats)
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export interface AssignmentView {
|
|
82
|
+
$type?: 'tools.ozone.queue.defs#assignmentView'
|
|
83
|
+
id: number
|
|
84
|
+
did: string
|
|
85
|
+
moderator?: ToolsOzoneTeamDefs.Member
|
|
86
|
+
queue: QueueView
|
|
87
|
+
startAt: string
|
|
88
|
+
endAt?: string
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
const hashAssignmentView = 'assignmentView'
|
|
92
|
+
|
|
93
|
+
export function isAssignmentView<V>(v: V) {
|
|
94
|
+
return is$typed(v, id, hashAssignmentView)
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export function validateAssignmentView<V>(v: V) {
|
|
98
|
+
return validate<AssignmentView & V>(v, id, hashAssignmentView)
|
|
99
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GENERATED CODE - DO NOT MODIFY
|
|
3
|
+
*/
|
|
4
|
+
import { type ValidationResult, BlobRef } from '@atproto/lexicon'
|
|
5
|
+
import { CID } from 'multiformats/cid'
|
|
6
|
+
import { validate as _validate } from '../../../../lexicons'
|
|
7
|
+
import {
|
|
8
|
+
type $Typed,
|
|
9
|
+
is$typed as _is$typed,
|
|
10
|
+
type OmitKey,
|
|
11
|
+
} from '../../../../util'
|
|
12
|
+
|
|
13
|
+
const is$typed = _is$typed,
|
|
14
|
+
validate = _validate
|
|
15
|
+
const id = 'tools.ozone.queue.deleteQueue'
|
|
16
|
+
|
|
17
|
+
export type QueryParams = {}
|
|
18
|
+
|
|
19
|
+
export interface InputSchema {
|
|
20
|
+
/** ID of the queue to delete */
|
|
21
|
+
queueId: number
|
|
22
|
+
/** Optional: migrate all reports to this queue. If not specified, reports will be set to unassigned (-1). */
|
|
23
|
+
migrateToQueueId?: number
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface OutputSchema {
|
|
27
|
+
deleted: boolean
|
|
28
|
+
/** Number of reports that were migrated (if migration occurred) */
|
|
29
|
+
reportsMigrated?: number
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export interface HandlerInput {
|
|
33
|
+
encoding: 'application/json'
|
|
34
|
+
body: InputSchema
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export interface HandlerSuccess {
|
|
38
|
+
encoding: 'application/json'
|
|
39
|
+
body: OutputSchema
|
|
40
|
+
headers?: { [key: string]: string }
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export interface HandlerError {
|
|
44
|
+
status: number
|
|
45
|
+
message?: string
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export type HandlerOutput = HandlerError | HandlerSuccess
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GENERATED CODE - DO NOT MODIFY
|
|
3
|
+
*/
|
|
4
|
+
import { type ValidationResult, BlobRef } from '@atproto/lexicon'
|
|
5
|
+
import { CID } from 'multiformats/cid'
|
|
6
|
+
import { validate as _validate } from '../../../../lexicons'
|
|
7
|
+
import {
|
|
8
|
+
type $Typed,
|
|
9
|
+
is$typed as _is$typed,
|
|
10
|
+
type OmitKey,
|
|
11
|
+
} from '../../../../util'
|
|
12
|
+
import type * as ToolsOzoneQueueDefs from './defs.js'
|
|
13
|
+
|
|
14
|
+
const is$typed = _is$typed,
|
|
15
|
+
validate = _validate
|
|
16
|
+
const id = 'tools.ozone.queue.getAssignments'
|
|
17
|
+
|
|
18
|
+
export type QueryParams = {
|
|
19
|
+
/** When true, only returns active assignments. */
|
|
20
|
+
onlyActive: boolean
|
|
21
|
+
/** If specified, returns assignments for these queues only. */
|
|
22
|
+
queueIds?: number[]
|
|
23
|
+
/** If specified, returns assignments for these moderators only. */
|
|
24
|
+
dids?: string[]
|
|
25
|
+
limit: number
|
|
26
|
+
cursor?: string
|
|
27
|
+
}
|
|
28
|
+
export type InputSchema = undefined
|
|
29
|
+
|
|
30
|
+
export interface OutputSchema {
|
|
31
|
+
cursor?: string
|
|
32
|
+
assignments: ToolsOzoneQueueDefs.AssignmentView[]
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export type HandlerInput = void
|
|
36
|
+
|
|
37
|
+
export interface HandlerSuccess {
|
|
38
|
+
encoding: 'application/json'
|
|
39
|
+
body: OutputSchema
|
|
40
|
+
headers?: { [key: string]: string }
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export interface HandlerError {
|
|
44
|
+
status: number
|
|
45
|
+
message?: string
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export type HandlerOutput = HandlerError | HandlerSuccess
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GENERATED CODE - DO NOT MODIFY
|
|
3
|
+
*/
|
|
4
|
+
import { type ValidationResult, BlobRef } from '@atproto/lexicon'
|
|
5
|
+
import { CID } from 'multiformats/cid'
|
|
6
|
+
import { validate as _validate } from '../../../../lexicons'
|
|
7
|
+
import {
|
|
8
|
+
type $Typed,
|
|
9
|
+
is$typed as _is$typed,
|
|
10
|
+
type OmitKey,
|
|
11
|
+
} from '../../../../util'
|
|
12
|
+
import type * as ToolsOzoneQueueDefs from './defs.js'
|
|
13
|
+
|
|
14
|
+
const is$typed = _is$typed,
|
|
15
|
+
validate = _validate
|
|
16
|
+
const id = 'tools.ozone.queue.listQueues'
|
|
17
|
+
|
|
18
|
+
export type QueryParams = {
|
|
19
|
+
/** Filter by enabled status. If not specified, returns all queues. */
|
|
20
|
+
enabled?: boolean
|
|
21
|
+
/** Filter queues that handle this subject type ('account' or 'record'). */
|
|
22
|
+
subjectType?: string
|
|
23
|
+
/** Filter queues by collection name (e.g. 'app.bsky.feed.post'). */
|
|
24
|
+
collection?: string
|
|
25
|
+
/** Filter queues that handle any of these report reason types. */
|
|
26
|
+
reportTypes?: string[]
|
|
27
|
+
limit: number
|
|
28
|
+
cursor?: string
|
|
29
|
+
}
|
|
30
|
+
export type InputSchema = undefined
|
|
31
|
+
|
|
32
|
+
export interface OutputSchema {
|
|
33
|
+
cursor?: string
|
|
34
|
+
queues: ToolsOzoneQueueDefs.QueueView[]
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export type HandlerInput = void
|
|
38
|
+
|
|
39
|
+
export interface HandlerSuccess {
|
|
40
|
+
encoding: 'application/json'
|
|
41
|
+
body: OutputSchema
|
|
42
|
+
headers?: { [key: string]: string }
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export interface HandlerError {
|
|
46
|
+
status: number
|
|
47
|
+
message?: string
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export type HandlerOutput = HandlerError | HandlerSuccess
|