@mastra/factory 0.10.2-alpha.2 → 0.11.0

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.
Files changed (77) hide show
  1. package/CHANGELOG.md +60 -0
  2. package/dist/factory.d.ts.map +1 -1
  3. package/dist/factory.js +18 -2
  4. package/dist/factory.js.map +1 -1
  5. package/dist/routes/attention-providers.d.ts +101 -0
  6. package/dist/routes/attention-providers.d.ts.map +1 -0
  7. package/dist/routes/attention-providers.js +384 -0
  8. package/dist/routes/attention-providers.js.map +1 -0
  9. package/dist/routes/attention.d.ts +11 -9
  10. package/dist/routes/attention.d.ts.map +1 -1
  11. package/dist/routes/attention.js +143 -193
  12. package/dist/routes/attention.js.map +1 -1
  13. package/dist/routes/surface.d.ts +2 -0
  14. package/dist/routes/surface.d.ts.map +1 -1
  15. package/dist/routes/surface.js +3 -1
  16. package/dist/routes/surface.js.map +1 -1
  17. package/dist/routes/work-items.d.ts +3 -0
  18. package/dist/routes/work-items.d.ts.map +1 -1
  19. package/dist/routes/work-items.js +3 -1
  20. package/dist/routes/work-items.js.map +1 -1
  21. package/dist/rules/dispatcher.d.ts +3 -0
  22. package/dist/rules/dispatcher.d.ts.map +1 -1
  23. package/dist/rules/dispatcher.js +9 -1
  24. package/dist/rules/dispatcher.js.map +1 -1
  25. package/dist/rules/start-coordinator.d.ts +2 -1
  26. package/dist/rules/start-coordinator.d.ts.map +1 -1
  27. package/dist/rules/start-coordinator.js +10 -2
  28. package/dist/rules/start-coordinator.js.map +1 -1
  29. package/dist/storage/domains/audit/domain.d.ts.map +1 -1
  30. package/dist/storage/domains/audit/domain.js +2 -5
  31. package/dist/storage/domains/audit/domain.js.map +1 -1
  32. package/dist/storage/domains/channel-identity/base.d.ts +4 -0
  33. package/dist/storage/domains/channel-identity/base.d.ts.map +1 -1
  34. package/dist/storage/domains/channel-identity/base.js +15 -0
  35. package/dist/storage/domains/channel-identity/base.js.map +1 -1
  36. package/dist/storage/domains/comments/actor.d.ts +51 -0
  37. package/dist/storage/domains/comments/actor.d.ts.map +1 -0
  38. package/dist/storage/domains/comments/actor.js +38 -0
  39. package/dist/storage/domains/comments/actor.js.map +1 -0
  40. package/dist/storage/domains/comments/base.d.ts +230 -0
  41. package/dist/storage/domains/comments/base.d.ts.map +1 -0
  42. package/dist/storage/domains/comments/base.js +490 -0
  43. package/dist/storage/domains/comments/base.js.map +1 -0
  44. package/dist/storage/domains/comments/domain.d.ts +125 -0
  45. package/dist/storage/domains/comments/domain.d.ts.map +1 -0
  46. package/dist/storage/domains/comments/domain.js +270 -0
  47. package/dist/storage/domains/comments/domain.js.map +1 -0
  48. package/dist/storage/domains/comments/feed-context.d.ts +20 -0
  49. package/dist/storage/domains/comments/feed-context.d.ts.map +1 -0
  50. package/dist/storage/domains/comments/feed-context.js +74 -0
  51. package/dist/storage/domains/comments/feed-context.js.map +1 -0
  52. package/dist/storage/domains/comments/feed-sync.d.ts +38 -0
  53. package/dist/storage/domains/comments/feed-sync.d.ts.map +1 -0
  54. package/dist/storage/domains/comments/feed-sync.js +1 -0
  55. package/dist/storage/domains/comments/parse.d.ts +22 -0
  56. package/dist/storage/domains/comments/parse.d.ts.map +1 -0
  57. package/dist/storage/domains/comments/parse.js +90 -0
  58. package/dist/storage/domains/comments/parse.js.map +1 -0
  59. package/dist/storage/domains/comments/routes.d.ts +22 -0
  60. package/dist/storage/domains/comments/routes.d.ts.map +1 -0
  61. package/dist/storage/domains/comments/routes.js +248 -0
  62. package/dist/storage/domains/comments/routes.js.map +1 -0
  63. package/dist/storage/domains/comments/schema.d.ts +4 -0
  64. package/dist/storage/domains/comments/schema.d.ts.map +1 -0
  65. package/dist/storage/domains/comments/schema.js +135 -0
  66. package/dist/storage/domains/comments/schema.js.map +1 -0
  67. package/dist/storage/domains/comments/wire.d.ts +40 -0
  68. package/dist/storage/domains/comments/wire.d.ts.map +1 -0
  69. package/dist/storage/domains/comments/wire.js +37 -0
  70. package/dist/storage/domains/comments/wire.js.map +1 -0
  71. package/dist/storage/domains/work-items/base.d.ts +14 -10
  72. package/dist/storage/domains/work-items/base.d.ts.map +1 -1
  73. package/dist/storage/domains/work-items/base.js +109 -22
  74. package/dist/storage/domains/work-items/base.js.map +1 -1
  75. package/factory-skills/factory-rereview/SKILL.md +20 -12
  76. package/factory-skills/factory-review/SKILL.md +17 -12
  77. package/package.json +7 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wire.js","names":[],"sources":["../../../../src/storage/domains/comments/wire.ts"],"sourcesContent":["import type { FactoryActorKind, FactoryActorRef } from './actor.js';\nimport type { FactoryMentionRef, WorkItemCommentReplyRef, WorkItemCommentRow } from './base.js';\n\n/**\n * Display-only author. The stored `FactoryActorRef` also carries the platform\n * join keys (team, message, bot flag) that linked a sender to a tenant user;\n * those never reach a thread reader.\n */\nexport interface WireCommentAuthor {\n kind: FactoryActorKind;\n id: string;\n displayName?: string;\n avatarUrl?: string;\n}\n\nexport interface WireComment {\n id: string;\n workItemId: string;\n kind: string;\n body: string;\n bodyFormat: string;\n author: WireCommentAuthor;\n replyTo?: WorkItemCommentReplyRef;\n mentions: FactoryMentionRef[];\n /** The viewer's own local sends only, so their client can match pending rows. */\n clientToken?: string;\n origin?: { integrationId: string; type: string; url?: string };\n revision: number;\n occurredAt: string;\n editedAt?: string;\n deletedAt?: string;\n}\n\nexport interface WireCommentPage {\n comments: WireComment[];\n nextCursor?: string;\n}\n\nconst LOCAL_SOURCE_KEY_PREFIX = 'local:comment:';\n\nfunction toWireAuthor({ kind, id, displayName, avatarUrl }: FactoryActorRef): WireCommentAuthor {\n return {\n kind,\n id,\n ...(displayName ? { displayName } : {}),\n ...(avatarUrl ? { avatarUrl } : {}),\n };\n}\n\nexport function toWireComment(comment: WorkItemCommentRow, viewerId: string): WireComment {\n const clientToken =\n comment.author.id === viewerId && comment.sourceKey?.startsWith(LOCAL_SOURCE_KEY_PREFIX)\n ? comment.sourceKey.slice(LOCAL_SOURCE_KEY_PREFIX.length)\n : undefined;\n return {\n id: comment.id,\n workItemId: comment.workItemId,\n kind: comment.kind,\n body: comment.body,\n bodyFormat: comment.bodyFormat,\n author: toWireAuthor(comment.author),\n ...(comment.replyTo ? { replyTo: comment.replyTo } : {}),\n mentions: comment.mentions,\n ...(clientToken ? { clientToken } : {}),\n ...(comment.externalSource\n ? {\n origin: {\n integrationId: comment.externalSource.integrationId,\n type: comment.externalSource.type,\n ...(comment.externalSource.url ? { url: comment.externalSource.url } : {}),\n },\n }\n : {}),\n revision: comment.revision,\n occurredAt: comment.occurredAt.toISOString(),\n ...(comment.editedAt ? { editedAt: comment.editedAt.toISOString() } : {}),\n ...(comment.deletedAt ? { deletedAt: comment.deletedAt.toISOString() } : {}),\n };\n}\n"],"mappings":";AAsCA,MAAM,0BAA0B;AAEhC,SAAS,aAAa,EAAE,MAAM,IAAI,aAAa,aAAiD;CAC9F,OAAO;EACL;EACA;EACA,GAAI,cAAc,EAAE,YAAY,IAAI,CAAC;EACrC,GAAI,YAAY,EAAE,UAAU,IAAI,CAAC;CACnC;AACF;AAEA,SAAgB,cAAc,SAA6B,UAA+B;CACxF,MAAM,cACJ,QAAQ,OAAO,OAAO,YAAY,QAAQ,WAAW,WAAW,uBAAuB,IACnF,QAAQ,UAAU,MAAM,EAA8B,IACtD,KAAA;CACN,OAAO;EACL,IAAI,QAAQ;EACZ,YAAY,QAAQ;EACpB,MAAM,QAAQ;EACd,MAAM,QAAQ;EACd,YAAY,QAAQ;EACpB,QAAQ,aAAa,QAAQ,MAAM;EACnC,GAAI,QAAQ,UAAU,EAAE,SAAS,QAAQ,QAAQ,IAAI,CAAC;EACtD,UAAU,QAAQ;EAClB,GAAI,cAAc,EAAE,YAAY,IAAI,CAAC;EACrC,GAAI,QAAQ,iBACR,EACE,QAAQ;GACN,eAAe,QAAQ,eAAe;GACtC,MAAM,QAAQ,eAAe;GAC7B,GAAI,QAAQ,eAAe,MAAM,EAAE,KAAK,QAAQ,eAAe,IAAI,IAAI,CAAC;EAC1E,EACF,IACA,CAAC;EACL,UAAU,QAAQ;EAClB,YAAY,QAAQ,WAAW,YAAY;EAC3C,GAAI,QAAQ,WAAW,EAAE,UAAU,QAAQ,SAAS,YAAY,EAAE,IAAI,CAAC;EACvE,GAAI,QAAQ,YAAY,EAAE,WAAW,QAAQ,UAAU,YAAY,EAAE,IAAI,CAAC;CAC5E;AACF"}
@@ -173,7 +173,7 @@ export interface FactoryDeferredDecisionRecord {
173
173
  createdAt: Date;
174
174
  updatedAt: Date;
175
175
  }
176
- export type FactoryAttentionKind = 'automation-failed';
176
+ export type FactoryAttentionKind = 'automation-failed' | 'mention';
177
177
  export type FactoryAttentionReceiptState = 'read' | 'archived';
178
178
  export type FactoryAttentionReceiptAction = 'read' | 'archive' | 'restore';
179
179
  export interface FactoryAttentionIdentity {
@@ -196,12 +196,12 @@ interface SetAttentionReceiptInput {
196
196
  orgId: string;
197
197
  factoryProjectId: string;
198
198
  userId: string;
199
- decisionId: string;
200
- failureOccurrence: number;
199
+ identity: FactoryAttentionIdentity;
201
200
  action: FactoryAttentionReceiptAction;
202
201
  now: Date;
203
202
  }
204
203
  export declare function factoryDecisionAttentionIdentity(decisionId: string, failureOccurrence: number): FactoryAttentionIdentity;
204
+ export declare function factoryMentionAttentionIdentity(commentId: string): FactoryAttentionIdentity;
205
205
  export declare function factoryAttentionKey(factoryProjectId: string, identity: FactoryAttentionIdentity): string;
206
206
  export interface FactoryRunBindingSessionAddress {
207
207
  factoryProjectId: string;
@@ -370,6 +370,10 @@ export interface WorkItemRow {
370
370
  * work they already asked for, so runs on an armed item skip the gate.
371
371
  */
372
372
  autonomyArmedAt: Date | null;
373
+ /** Denormalized feed counters, maintained by the comments domain via recount. */
374
+ commentCount: number;
375
+ /** Bumps on every feed mutation (create/edit/delete) — the clients' change hint. */
376
+ feedActivityAt: Date | null;
373
377
  revision: number;
374
378
  createdBy: string;
375
379
  createdAt: Date;
@@ -465,26 +469,26 @@ export declare class WorkItemsStorage extends FactoryStorageDomain {
465
469
  userId: string;
466
470
  identities: FactoryAttentionIdentity[];
467
471
  }): Promise<FactoryAttentionReceiptRecord[]>;
468
- countAttentionReceipts({ orgId, factoryProjectId, userId, state, }: {
472
+ countAttentionReceipts({ orgId, factoryProjectId, userId, kind, state, }: {
469
473
  orgId: string;
470
474
  factoryProjectId: string;
471
475
  userId: string;
476
+ kind: FactoryAttentionKind;
472
477
  state?: FactoryAttentionReceiptState;
473
478
  }): Promise<number>;
474
- deleteAttentionReceipts({ orgId, factoryProjectId, identities, }: {
479
+ deleteAttentionReceipts({ orgId, factoryProjectId, userId, identities, }: {
475
480
  orgId: string;
476
481
  factoryProjectId: string;
482
+ /** Restrict to one user's receipts (a removed mention must keep other users' read state). */
483
+ userId?: string;
477
484
  identities: FactoryAttentionIdentity[];
478
485
  }): Promise<void>;
479
486
  setAttentionReceipt(input: SetAttentionReceiptInput): Promise<FactoryAttentionReceiptRecord | null>;
480
- markAttentionReceiptsRead({ orgId, factoryProjectId, userId, occurrences, now, }: {
487
+ markAttentionReceiptsRead({ orgId, factoryProjectId, userId, identities, now, }: {
481
488
  orgId: string;
482
489
  factoryProjectId: string;
483
490
  userId: string;
484
- occurrences: Array<{
485
- decisionId: string;
486
- failureOccurrence: number;
487
- }>;
491
+ identities: FactoryAttentionIdentity[];
488
492
  now: Date;
489
493
  }): Promise<void>;
490
494
  claimDeferredDecisions(input: FactoryLeaseClaimInput): Promise<FactoryDeferredDecisionRecord[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/work-items/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/work-items/base.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { isTerminalFactoryRuleStage } from "../../../rules/types.js";
2
+ import { WORK_ITEM_COMMENTS_SCHEMA, WORK_ITEM_COMMENT_MENTIONS_SCHEMA } from "../comments/schema.js";
2
3
  import { createHash } from "crypto";
3
4
  import { FactoryStorageDomain, UniqueViolationError } from "@mastra/core/storage";
4
5
  //#region src/storage/domains/work-items/base.ts
@@ -62,6 +63,13 @@ function factoryDecisionAttentionIdentity(decisionId, failureOccurrence) {
62
63
  occurrence: failureOccurrence
63
64
  };
64
65
  }
66
+ function factoryMentionAttentionIdentity(commentId) {
67
+ return {
68
+ kind: "mention",
69
+ sourceId: commentId,
70
+ occurrence: 0
71
+ };
72
+ }
65
73
  function factoryAttentionKey(factoryProjectId, identity) {
66
74
  return `factory:${factoryProjectId}:attention:${identity.kind}:${identity.sourceId}:${identity.occurrence}`;
67
75
  }
@@ -111,6 +119,14 @@ const WORK_ITEMS_SCHEMA = {
111
119
  type: "timestamp",
112
120
  nullable: true
113
121
  },
122
+ comment_count: {
123
+ type: "integer",
124
+ default: 0
125
+ },
126
+ feed_activity_at: {
127
+ type: "timestamp",
128
+ nullable: true
129
+ },
114
130
  revision: {
115
131
  type: "integer",
116
132
  default: 1
@@ -157,6 +173,8 @@ function toWorkItem(row) {
157
173
  metadata: row.metadata,
158
174
  triageType: row.triage_type ?? null,
159
175
  autonomyArmedAt: row.autonomy_armed_at ?? null,
176
+ commentCount: row.comment_count ?? 0,
177
+ feedActivityAt: row.feed_activity_at ?? null,
160
178
  revision: row.revision,
161
179
  createdBy: row.created_by,
162
180
  createdAt: row.created_at,
@@ -626,7 +644,7 @@ function toDeferredDecision(row) {
626
644
  };
627
645
  }
628
646
  function attentionReceiptKind(value) {
629
- if (value === "automation-failed") return value;
647
+ if (value === "automation-failed" || value === "mention") return value;
630
648
  throw new Error(`Unsupported attention receipt kind '${String(value)}'.`);
631
649
  }
632
650
  function attentionReceiptState(value) {
@@ -681,7 +699,12 @@ var WorkItemsStorage = class extends FactoryStorageDomain {
681
699
  super("work-items");
682
700
  }
683
701
  async init() {
684
- await this.ensureCollections([WORK_ITEMS_SCHEMA, ...FACTORY_GOVERNANCE_SCHEMAS]);
702
+ await this.ensureCollections([
703
+ WORK_ITEMS_SCHEMA,
704
+ ...FACTORY_GOVERNANCE_SCHEMAS,
705
+ WORK_ITEM_COMMENTS_SCHEMA,
706
+ WORK_ITEM_COMMENT_MENTIONS_SCHEMA
707
+ ]);
685
708
  await this.repairLegacyAttentionState();
686
709
  }
687
710
  async dangerouslyClearAll() {
@@ -1209,20 +1232,21 @@ var WorkItemsStorage = class extends FactoryStorageDomain {
1209
1232
  }
1210
1233
  return receipts;
1211
1234
  }
1212
- async countAttentionReceipts({ orgId, factoryProjectId, userId, state }) {
1235
+ async countAttentionReceipts({ orgId, factoryProjectId, userId, kind, state }) {
1213
1236
  return this.#countRows("factory_attention_receipts", {
1214
1237
  org_id: orgId,
1215
1238
  factory_project_id: factoryProjectId,
1216
1239
  user_id: userId,
1217
- kind: "automation-failed",
1240
+ kind,
1218
1241
  ...state ? { state } : {}
1219
1242
  });
1220
1243
  }
1221
- async deleteAttentionReceipts({ orgId, factoryProjectId, identities }) {
1244
+ async deleteAttentionReceipts({ orgId, factoryProjectId, userId, identities }) {
1222
1245
  const unique = [...new Map(identities.map((identity) => [`${identity.kind}\0${identity.sourceId}\0${identity.occurrence}`, identity])).values()];
1223
1246
  for (let index = 0; index < unique.length; index += ATTENTION_RECEIPT_WRITE_BATCH_SIZE) await Promise.all(unique.slice(index, index + ATTENTION_RECEIPT_WRITE_BATCH_SIZE).map((identity) => this.#db.deleteMany("factory_attention_receipts", {
1224
1247
  org_id: orgId,
1225
1248
  factory_project_id: factoryProjectId,
1249
+ ...userId ? { user_id: userId } : {},
1226
1250
  kind: identity.kind,
1227
1251
  source_id: identity.sourceId,
1228
1252
  occurrence: identity.occurrence
@@ -1239,17 +1263,47 @@ var WorkItemsStorage = class extends FactoryStorageDomain {
1239
1263
  return write();
1240
1264
  }
1241
1265
  }
1242
- async #setAttentionReceiptWithOps(ops, { orgId, factoryProjectId, userId, decisionId, failureOccurrence, action, now }) {
1243
- const identity = factoryDecisionAttentionIdentity(decisionId, failureOccurrence);
1244
- let currentOccurrence = false;
1245
- if (!await ops.updateAtomic("factory_deferred_decisions", {
1246
- id: decisionId,
1266
+ /**
1267
+ * Per-kind currency predicate: a receipt may only target a source that still
1268
+ * projects an attention item FOR THIS USER — otherwise the route answers
1269
+ * 409. Without the mention-row check, any member could write receipts
1270
+ * against arbitrary comment ids and permanently skew their own badge math.
1271
+ */
1272
+ async #attentionSourceIsCurrent(ops, { orgId, factoryProjectId, userId, identity }) {
1273
+ if (identity.kind === "automation-failed") {
1274
+ let currentOccurrence = false;
1275
+ const decision = await ops.updateAtomic("factory_deferred_decisions", {
1276
+ id: identity.sourceId,
1277
+ org_id: orgId,
1278
+ factory_project_id: factoryProjectId
1279
+ }, (current) => {
1280
+ currentOccurrence = current.status === "failed" && Number(current.failure_occurrence ?? 0) === identity.occurrence;
1281
+ return null;
1282
+ });
1283
+ return Boolean(decision) && currentOccurrence;
1284
+ }
1285
+ if (identity.occurrence !== 0) return false;
1286
+ if (!await ops.findOne("work_item_comment_mentions", {
1287
+ comment_id: identity.sourceId,
1247
1288
  org_id: orgId,
1248
- factory_project_id: factoryProjectId
1249
- }, (current) => {
1250
- currentOccurrence = current.status === "failed" && Number(current.failure_occurrence ?? 0) === failureOccurrence;
1251
- return null;
1252
- }) || !currentOccurrence) return null;
1289
+ factory_project_id: factoryProjectId,
1290
+ mentioned_kind: "user",
1291
+ mentioned_id: userId
1292
+ })) return false;
1293
+ return await ops.findOne("work_item_comments", {
1294
+ id: identity.sourceId,
1295
+ org_id: orgId,
1296
+ factory_project_id: factoryProjectId,
1297
+ deleted_at: null
1298
+ }) !== null;
1299
+ }
1300
+ async #setAttentionReceiptWithOps(ops, { orgId, factoryProjectId, userId, identity, action, now }) {
1301
+ if (!await this.#attentionSourceIsCurrent(ops, {
1302
+ orgId,
1303
+ factoryProjectId,
1304
+ userId,
1305
+ identity
1306
+ })) return null;
1253
1307
  const where = {
1254
1308
  org_id: orgId,
1255
1309
  factory_project_id: factoryProjectId,
@@ -1282,16 +1336,16 @@ var WorkItemsStorage = class extends FactoryStorageDomain {
1282
1336
  });
1283
1337
  return row ? toAttentionReceipt(row) : null;
1284
1338
  }
1285
- async markAttentionReceiptsRead({ orgId, factoryProjectId, userId, occurrences, now }) {
1286
- const uniqueOccurrences = [...new Map(occurrences.map((occurrence) => [`${occurrence.decisionId}:${occurrence.failureOccurrence}`, occurrence])).values()];
1287
- for (let index = 0; index < uniqueOccurrences.length; index += ATTENTION_RECEIPT_WRITE_BATCH_SIZE) {
1288
- const batch = uniqueOccurrences.slice(index, index + ATTENTION_RECEIPT_WRITE_BATCH_SIZE);
1339
+ async markAttentionReceiptsRead({ orgId, factoryProjectId, userId, identities, now }) {
1340
+ const uniqueIdentities = [...new Map(identities.map((identity) => [`${identity.kind}\0${identity.sourceId}\0${identity.occurrence}`, identity])).values()];
1341
+ for (let index = 0; index < uniqueIdentities.length; index += ATTENTION_RECEIPT_WRITE_BATCH_SIZE) {
1342
+ const batch = uniqueIdentities.slice(index, index + ATTENTION_RECEIPT_WRITE_BATCH_SIZE);
1289
1343
  await this.#retryAttentionReceiptWrite(() => this.storage.withTransaction(async (ops) => {
1290
- for (const occurrence of batch) await this.#setAttentionReceiptWithOps(ops, {
1344
+ for (const identity of batch) await this.#setAttentionReceiptWithOps(ops, {
1291
1345
  orgId,
1292
1346
  factoryProjectId,
1293
1347
  userId,
1294
- ...occurrence,
1348
+ identity,
1295
1349
  action: "read",
1296
1350
  now
1297
1351
  });
@@ -2020,6 +2074,34 @@ var WorkItemsStorage = class extends FactoryStorageDomain {
2020
2074
  for (const evaluationId of evaluationIds) await ops.deleteMany("factory_rule_evaluations", { id: evaluationId });
2021
2075
  for (const ingressId of ingressIds) if ((await ops.findMany("factory_rule_evaluations", { ingress_id: ingressId })).length === 0) await ops.deleteMany("factory_rule_ingress", { id: ingressId });
2022
2076
  }
2077
+ /**
2078
+ * Feed rows die with their work item: orphan mention rows would keep
2079
+ * projecting attention items that deep-link to a card that no longer exists.
2080
+ */
2081
+ async #purgeFeedState(ops, { orgId, factoryProjectId, workItemId }) {
2082
+ const where = {
2083
+ org_id: orgId,
2084
+ factory_project_id: factoryProjectId,
2085
+ work_item_id: workItemId
2086
+ };
2087
+ while (true) {
2088
+ const comments = await ops.findMany("work_item_comments", where, { limit: ATTENTION_RECEIPT_QUERY_BATCH_SIZE });
2089
+ if (comments.length === 0) break;
2090
+ const commentIds = comments.map((comment) => comment.id);
2091
+ await ops.deleteMany("factory_attention_receipts", {
2092
+ org_id: orgId,
2093
+ factory_project_id: factoryProjectId,
2094
+ kind: "mention",
2095
+ source_id: { in: commentIds }
2096
+ });
2097
+ await ops.deleteMany("work_item_comments", {
2098
+ ...where,
2099
+ id: { in: commentIds }
2100
+ });
2101
+ if (comments.length < ATTENTION_RECEIPT_QUERY_BATCH_SIZE) break;
2102
+ }
2103
+ await ops.deleteMany("work_item_comment_mentions", where);
2104
+ }
2023
2105
  async delete({ orgId, id }) {
2024
2106
  const candidate = await this.#db.findOne("work_items", {
2025
2107
  org_id: orgId,
@@ -2036,6 +2118,11 @@ var WorkItemsStorage = class extends FactoryStorageDomain {
2036
2118
  org_id: orgId,
2037
2119
  id
2038
2120
  }) === 0) return null;
2121
+ await this.#purgeFeedState(ops, {
2122
+ orgId,
2123
+ factoryProjectId: existing.factory_project_id,
2124
+ workItemId: id
2125
+ });
2039
2126
  if (existing.source_key) await this.#purgeRuleState(ops, {
2040
2127
  orgId,
2041
2128
  factoryProjectId: existing.factory_project_id,
@@ -2053,6 +2140,6 @@ var WorkItemsStorage = class extends FactoryStorageDomain {
2053
2140
  }
2054
2141
  };
2055
2142
  //#endregion
2056
- export { FACTORY_PULL_REQUEST_RECONCILIATION_KEY, FACTORY_RULE_MATERIALIZATION_KEY, WORK_ITEMS_SCHEMA, WorkItemRelationError, WorkItemsStorage, applyStageTransition, factoryAttentionKey, factoryDecisionAttentionIdentity, factoryDecisionHash, isAgentActor, stampSessions, validateParentRelation };
2143
+ export { FACTORY_PULL_REQUEST_RECONCILIATION_KEY, FACTORY_RULE_MATERIALIZATION_KEY, WORK_ITEMS_SCHEMA, WorkItemRelationError, WorkItemsStorage, applyStageTransition, factoryAttentionKey, factoryDecisionAttentionIdentity, factoryDecisionHash, factoryMentionAttentionIdentity, isAgentActor, stampSessions, validateParentRelation };
2057
2144
 
2058
2145
  //# sourceMappingURL=base.js.map