crewly 1.20.309 → 1.20.311

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 (60) hide show
  1. package/README.md +2 -2
  2. package/config/skills/agent/core/reply/SKILL.md +2 -0
  3. package/config/skills/agent/remote-browser/SKILL.md +9 -4
  4. package/config/skills/agent/remote-browser/execute.sh +11 -1
  5. package/config/skills/agent/remote-browser/execute.test.sh +14 -0
  6. package/dist/backend/backend/src/constants.d.ts +13 -1
  7. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  8. package/dist/backend/backend/src/constants.js +15 -2
  9. package/dist/backend/backend/src/constants.js.map +1 -1
  10. package/dist/backend/backend/src/controllers/browser/browser.controller.js +1 -1
  11. package/dist/backend/backend/src/controllers/browser/browser.controller.js.map +1 -1
  12. package/dist/backend/backend/src/index.d.ts +7 -0
  13. package/dist/backend/backend/src/index.d.ts.map +1 -1
  14. package/dist/backend/backend/src/index.js +48 -0
  15. package/dist/backend/backend/src/index.js.map +1 -1
  16. package/dist/backend/backend/src/services/browser/browser-bridge.service.d.ts +51 -1
  17. package/dist/backend/backend/src/services/browser/browser-bridge.service.d.ts.map +1 -1
  18. package/dist/backend/backend/src/services/browser/browser-bridge.service.js +103 -6
  19. package/dist/backend/backend/src/services/browser/browser-bridge.service.js.map +1 -1
  20. package/dist/backend/backend/src/services/open-items/open-items.service.d.ts +22 -2
  21. package/dist/backend/backend/src/services/open-items/open-items.service.d.ts.map +1 -1
  22. package/dist/backend/backend/src/services/open-items/open-items.service.js +47 -9
  23. package/dist/backend/backend/src/services/open-items/open-items.service.js.map +1 -1
  24. package/dist/backend/backend/src/services/open-items/open-items.wiring.d.ts.map +1 -1
  25. package/dist/backend/backend/src/services/open-items/open-items.wiring.js +3 -1
  26. package/dist/backend/backend/src/services/open-items/open-items.wiring.js.map +1 -1
  27. package/dist/backend/backend/src/services/open-items/stale-commitment.d.ts +40 -0
  28. package/dist/backend/backend/src/services/open-items/stale-commitment.d.ts.map +1 -0
  29. package/dist/backend/backend/src/services/open-items/stale-commitment.js +56 -0
  30. package/dist/backend/backend/src/services/open-items/stale-commitment.js.map +1 -0
  31. package/dist/backend/backend/src/services/restart/interrupted-turns.d.ts +2 -0
  32. package/dist/backend/backend/src/services/restart/interrupted-turns.d.ts.map +1 -1
  33. package/dist/backend/backend/src/services/restart/interrupted-turns.js +9 -1
  34. package/dist/backend/backend/src/services/restart/interrupted-turns.js.map +1 -1
  35. package/dist/backend/build-info.json +2 -2
  36. package/dist/cli/backend/src/constants.d.ts +13 -1
  37. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  38. package/dist/cli/backend/src/constants.js +15 -2
  39. package/dist/cli/backend/src/constants.js.map +1 -1
  40. package/dist/cli/backend/src/services/open-items/open-items.service.d.ts +22 -2
  41. package/dist/cli/backend/src/services/open-items/open-items.service.d.ts.map +1 -1
  42. package/dist/cli/backend/src/services/open-items/open-items.service.js +47 -9
  43. package/dist/cli/backend/src/services/open-items/open-items.service.js.map +1 -1
  44. package/dist/cli/backend/src/services/open-items/stale-commitment.d.ts +40 -0
  45. package/dist/cli/backend/src/services/open-items/stale-commitment.d.ts.map +1 -0
  46. package/dist/cli/backend/src/services/open-items/stale-commitment.js +56 -0
  47. package/dist/cli/backend/src/services/open-items/stale-commitment.js.map +1 -0
  48. package/dist/cli/cli/src/commands/start.d.ts +1 -0
  49. package/dist/cli/cli/src/commands/start.d.ts.map +1 -1
  50. package/dist/cli/cli/src/commands/start.js +13 -3
  51. package/dist/cli/cli/src/commands/start.js.map +1 -1
  52. package/dist/cli/cli/src/index.js +3 -2
  53. package/dist/cli/cli/src/index.js.map +1 -1
  54. package/dist/cli/cli/src/utils/open-dashboard.d.ts +38 -0
  55. package/dist/cli/cli/src/utils/open-dashboard.d.ts.map +1 -0
  56. package/dist/cli/cli/src/utils/open-dashboard.js +40 -0
  57. package/dist/cli/cli/src/utils/open-dashboard.js.map +1 -0
  58. package/frontend/dist/assets/{index-368419df.js → index-1b4ac286.js} +287 -287
  59. package/frontend/dist/index.html +1 -1
  60. package/package.json +1 -1
@@ -99,6 +99,12 @@ export interface AgentTabBinding {
99
99
  boundAt: Date;
100
100
  /** Wall-clock time of the last command that touched this binding. Reset on activity. */
101
101
  lastActivityAt: Date;
102
+ /**
103
+ * Set when the owning agent's turn ended (it went idle). The sweep closes a
104
+ * tab left untouched this long after; cleared when the agent works again
105
+ * or sends another browser command.
106
+ */
107
+ turnEndedAt?: Date;
102
108
  }
103
109
  /**
104
110
  * Tab descriptor reported by the Extension during the post-reconnect
@@ -116,7 +122,13 @@ export interface ExtensionTabDescriptor {
116
122
  * Reasons a tab binding can disappear. Surfaced in logs/metrics so we
117
123
  * can distinguish user-driven closes from sweep-driven evictions.
118
124
  */
119
- export type AgentTabBindingRemovalReason = 'unbind' | 'tab_removed' | 'ttl_expired' | 'reconcile_extension_missing' | 'shutdown';
125
+ export type AgentTabBindingRemovalReason = 'unbind' | 'tab_removed' | 'ttl_expired' | 'reconcile_extension_missing' | 'shutdown' | 'agent_done' | 'idle_after_turn' | 'agent_stopped';
126
+ /**
127
+ * Why a tab must stay open right now, or null when it may be closed. Wired by
128
+ * the host so the bridge need not know about browser sessions: the owner has
129
+ * taken control, is watching the live view, or an action is held for approval.
130
+ */
131
+ export type TabCloseGuard = (agentSession: string, binding: AgentTabBinding) => string | null;
120
132
  /**
121
133
  * BrowserBridgeService manages WebSocket connections from the Crewly Chrome
122
134
  * Extension and provides a command-response bridge for the REST API layer.
@@ -156,6 +168,8 @@ export declare class BrowserBridgeService {
156
168
  private inventoryListeners;
157
169
  /** This backend's device id, sent as `clientId` with every command. Cached once resolved. */
158
170
  private clientId;
171
+ /** Veto over automatic tab closes (idle / agent stopped). Explicit `done` ignores it only for the agent's own call. */
172
+ private closeGuard;
159
173
  /** Periodic timer that evicts idle bindings (§4.2). Only running while attached. */
160
174
  private sweepTimer;
161
175
  /** Last time we logged the soft-cap warning, used to throttle to once per sweep cycle. */
@@ -296,6 +310,42 @@ export declare class BrowserBridgeService {
296
310
  * @param agentGoal Optional agent goal/objective for the Extension banner.
297
311
  */
298
312
  sendCommandForAgent(agentSession: string | undefined, tool: string, params?: Record<string, unknown>, timeoutMs?: number, agentName?: string, agentGoal?: string): Promise<BrowserCommandResponse>;
313
+ /**
314
+ * Install the veto consulted before an automatic close.
315
+ *
316
+ * @param guard - Returns a reason to keep the tab open, or null to allow
317
+ */
318
+ setCloseGuard(guard: TabCloseGuard | null): void;
319
+ /**
320
+ * Record that a command ran on the agent's tab over a path that does not go
321
+ * through {@link sendCommandForAgent} (the relay). Resets the idle clock.
322
+ *
323
+ * @param agentSession - Owning agent
324
+ */
325
+ touchBinding(agentSession: string): void;
326
+ /**
327
+ * The agent's turn ended. Its tab stays open for the idle window (the agent
328
+ * often comes straight back to it) and is closed by the sweep afterwards.
329
+ *
330
+ * @param agentSession - Agent that went idle
331
+ */
332
+ noteAgentTurnEnded(agentSession: string): void;
333
+ /**
334
+ * The agent started working again: cancel any pending idle close.
335
+ *
336
+ * @param agentSession - Agent that became busy
337
+ */
338
+ noteAgentBusy(agentSession: string): void;
339
+ /**
340
+ * The agent stopped or its runtime exited: close the tab it opened, unless
341
+ * the owner is using it.
342
+ *
343
+ * @param agentSession - Agent that stopped
344
+ * @returns True when the tab was closed
345
+ */
346
+ closeTabForStoppedAgent(agentSession: string): Promise<boolean>;
347
+ /** Effective idle-close window in ms (0 = disabled); env `CREWLY_TAB_IDLE_CLOSE_MINUTES`. */
348
+ private getTabIdleCloseMs;
299
349
  /**
300
350
  * Handle a `tabRemoved` event from the Extension (§4.3 — fires when
301
351
  * the user manually closes a Crewly tab or when Chrome reaps it).
@@ -1 +1 @@
1
- {"version":3,"file":"browser-bridge.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/browser/browser-bridge.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-bridge.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/browser/browser-bridge.service.ts"],"names":[],"mappings":"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"}
@@ -66,6 +66,8 @@ export class BrowserBridgeService {
66
66
  inventoryListeners = new Set();
67
67
  /** This backend's device id, sent as `clientId` with every command. Cached once resolved. */
68
68
  clientId = null;
69
+ /** Veto over automatic tab closes (idle / agent stopped). Explicit `done` ignores it only for the agent's own call. */
70
+ closeGuard = null;
69
71
  /** Periodic timer that evicts idle bindings (§4.2). Only running while attached. */
70
72
  sweepTimer = null;
71
73
  /** Last time we logged the soft-cap warning, used to throttle to once per sweep cycle. */
@@ -469,11 +471,22 @@ export class BrowserBridgeService {
469
471
  * throwing.
470
472
  */
471
473
  async unbindAgentTab(agentSession, opts = {}) {
472
- const closeTab = opts.closeTab !== false;
473
474
  const binding = this.agentTabBindings.get(agentSession);
474
475
  if (!binding) {
475
476
  return { released: false, tabClosed: false };
476
477
  }
478
+ // Only a tab this backend created may be closed. A binding to anything
479
+ // else (the owner's own tab) is released and the tab left alone.
480
+ const ownedByUs = this.ownedTabIds.has(binding.tabId);
481
+ const keepReason = opts.closeTab !== false ? (this.closeGuard?.(agentSession, binding) ?? null) : null;
482
+ const closeTab = opts.closeTab !== false && ownedByUs && !keepReason;
483
+ if (opts.closeTab !== false && !closeTab) {
484
+ this.logger.info('Releasing binding without closing the tab', {
485
+ agentSession,
486
+ tabId: binding.tabId,
487
+ why: keepReason ?? 'not created by this backend',
488
+ });
489
+ }
477
490
  this.agentTabBindings.delete(agentSession);
478
491
  let tabClosed = false;
479
492
  if (closeTab) {
@@ -539,9 +552,75 @@ export class BrowserBridgeService {
539
552
  binding = await this.bindAgentTab(agentSession, { agentName, timeoutMs });
540
553
  }
541
554
  binding.lastActivityAt = new Date();
555
+ delete binding.turnEndedAt;
542
556
  const merged = { ...(params ?? {}), tabId: binding.tabId };
543
557
  return this.sendCommand(tool, merged, timeoutMs, agentName, agentGoal);
544
558
  }
559
+ /**
560
+ * Install the veto consulted before an automatic close.
561
+ *
562
+ * @param guard - Returns a reason to keep the tab open, or null to allow
563
+ */
564
+ setCloseGuard(guard) {
565
+ this.closeGuard = guard;
566
+ }
567
+ /**
568
+ * Record that a command ran on the agent's tab over a path that does not go
569
+ * through {@link sendCommandForAgent} (the relay). Resets the idle clock.
570
+ *
571
+ * @param agentSession - Owning agent
572
+ */
573
+ touchBinding(agentSession) {
574
+ const binding = this.agentTabBindings.get(agentSession);
575
+ if (!binding)
576
+ return;
577
+ binding.lastActivityAt = new Date();
578
+ delete binding.turnEndedAt;
579
+ }
580
+ /**
581
+ * The agent's turn ended. Its tab stays open for the idle window (the agent
582
+ * often comes straight back to it) and is closed by the sweep afterwards.
583
+ *
584
+ * @param agentSession - Agent that went idle
585
+ */
586
+ noteAgentTurnEnded(agentSession) {
587
+ const binding = this.agentTabBindings.get(agentSession);
588
+ if (binding && !binding.turnEndedAt)
589
+ binding.turnEndedAt = new Date();
590
+ }
591
+ /**
592
+ * The agent started working again: cancel any pending idle close.
593
+ *
594
+ * @param agentSession - Agent that became busy
595
+ */
596
+ noteAgentBusy(agentSession) {
597
+ const binding = this.agentTabBindings.get(agentSession);
598
+ if (binding)
599
+ delete binding.turnEndedAt;
600
+ }
601
+ /**
602
+ * The agent stopped or its runtime exited: close the tab it opened, unless
603
+ * the owner is using it.
604
+ *
605
+ * @param agentSession - Agent that stopped
606
+ * @returns True when the tab was closed
607
+ */
608
+ async closeTabForStoppedAgent(agentSession) {
609
+ const binding = this.agentTabBindings.get(agentSession);
610
+ if (!binding)
611
+ return false;
612
+ // The close guard (owner took control / is watching) is applied inside
613
+ // unbindAgentTab: the binding is released and the tab left open.
614
+ const result = await this.unbindAgentTab(agentSession, { closeTab: true, reason: 'agent_stopped' });
615
+ return result.tabClosed;
616
+ }
617
+ /** Effective idle-close window in ms (0 = disabled); env `CREWLY_TAB_IDLE_CLOSE_MINUTES`. */
618
+ getTabIdleCloseMs() {
619
+ const raw = process.env['CREWLY_TAB_IDLE_CLOSE_MINUTES'];
620
+ const parsed = raw !== undefined && raw !== '' ? Number.parseFloat(raw) : NaN;
621
+ const minutes = Number.isFinite(parsed) && parsed >= 0 ? parsed : BROWSER_BRIDGE_CONSTANTS.TAB_IDLE_CLOSE_MINUTES;
622
+ return minutes * 60 * 1000;
623
+ }
545
624
  /**
546
625
  * Handle a `tabRemoved` event from the Extension (§4.3 — fires when
547
626
  * the user manually closes a Crewly tab or when Chrome reaps it).
@@ -692,16 +771,34 @@ export class BrowserBridgeService {
692
771
  async runSweepOnce() {
693
772
  const ttlMs = this.getTabBindingTtlMs();
694
773
  const now = Date.now();
774
+ const idleCloseMs = this.getTabIdleCloseMs();
695
775
  const expired = [];
696
776
  for (const [agentSession, binding] of this.agentTabBindings) {
697
- if (now - binding.lastActivityAt.getTime() > ttlMs) {
698
- expired.push({ agentSession, tabId: binding.tabId });
777
+ const untouchedMs = now - binding.lastActivityAt.getTime();
778
+ const idleAfterTurn = idleCloseMs > 0 &&
779
+ binding.turnEndedAt !== undefined &&
780
+ untouchedMs > idleCloseMs &&
781
+ now - binding.turnEndedAt.getTime() > idleCloseMs;
782
+ if (untouchedMs > ttlMs) {
783
+ expired.push({ agentSession, tabId: binding.tabId, reason: 'ttl_expired' });
784
+ }
785
+ else if (idleAfterTurn) {
786
+ expired.push({ agentSession, tabId: binding.tabId, reason: 'idle_after_turn' });
699
787
  }
700
788
  }
701
- for (const { agentSession } of expired) {
789
+ let closed = 0;
790
+ for (const { agentSession, reason } of expired) {
791
+ const binding = this.agentTabBindings.get(agentSession);
792
+ const keep = binding ? this.closeGuard?.(agentSession, binding) ?? null : null;
793
+ if (keep) {
794
+ // Owner is on this tab: leave it open and look again next sweep.
795
+ this.logger.debug('Sweep left a tab open', { agentSession, why: keep });
796
+ continue;
797
+ }
798
+ closed++;
702
799
  await this.unbindAgentTab(agentSession, {
703
800
  closeTab: true,
704
- reason: 'ttl_expired',
801
+ reason,
705
802
  }).catch((err) => {
706
803
  this.logger.warn('Sweep unbind failed (binding still removed)', {
707
804
  agentSession,
@@ -709,7 +806,7 @@ export class BrowserBridgeService {
709
806
  });
710
807
  });
711
808
  }
712
- return expired.length;
809
+ return closed;
713
810
  }
714
811
  startSweepTimer() {
715
812
  if (this.sweepTimer)
@@ -1 +1 @@
1
- {"version":3,"file":"browser-bridge.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/browser/browser-bridge.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-bridge.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/browser/browser-bridge.service.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,7 @@ import { type RequestOpenItem } from '../../types/v2/open-item.types.js';
37
37
  import type { DecisionSource, OwnerDecision } from '../../types/decision.types.js';
38
38
  import { type DerivedQuestionCard } from './open-item-card.js';
39
39
  import { type ReplyReference } from '../orc/agent-prompt-reference.service.js';
40
+ import { isStaleCommitment, staleCommitmentNotice, supersededReason } from './stale-commitment.js';
40
41
  /** The chat-v2 message fields the service reads. */
41
42
  export interface OpenItemsChatMessage {
42
43
  id: string;
@@ -247,6 +248,7 @@ export declare function followUpReference(request: Request, item: Pick<RequestOp
247
248
  * @returns Command text
248
249
  */
249
250
  export declare function followUpCommand(ref: ReplyReference): string;
251
+ export { isStaleCommitment, staleCommitmentNotice, supersededReason };
250
252
  /** An owner promise still owed, as the restart path needs it. */
251
253
  export interface OwedCommitment {
252
254
  /** Agent that promised */
@@ -261,6 +263,8 @@ export interface OwedCommitment {
261
263
  itemId: string;
262
264
  /** When it was due (ISO) */
263
265
  due?: string;
266
+ /** When it was promised (ISO) */
267
+ createdAt?: string;
264
268
  }
265
269
  /**
266
270
  * Promises a restart should act on: past due, never nudged and never
@@ -603,8 +607,10 @@ export declare class OpenItemsService {
603
607
  * in one note per request:
604
608
  * - the follow-up WorkItem was cancelled by ANOTHER agent (an agent's
605
609
  * cleanup, a bulk script) — the cancel API records who
606
- * (`metadata.cancelledBy`);
607
- * - nothing happened for 7 days and the owner was never told it was late.
610
+ * (`metadata.cancelledBy`).
611
+ *
612
+ * A promise that merely expired (7 days, no progress) is NOT told here: it
613
+ * closes as stale and appears only in the weekly summary.
608
614
  *
609
615
  * The promising agent cancelling its own follow-up, owner skips,
610
616
  * superseded promises and cancelled tickets were closed on purpose and
@@ -623,6 +629,20 @@ export declare class OpenItemsService {
623
629
  * One item's sweep step.
624
630
  */
625
631
  private sweepItem;
632
+ /**
633
+ * Commitments that expired as stale (7 days, no progress) since a time, for
634
+ * the weekly / Drive summary. They are never posted as a fresh owner ask.
635
+ *
636
+ * @param sinceMs - Epoch ms; only items closed at or after it
637
+ * @returns One row per expired commitment
638
+ */
639
+ staleExpiredCommitments(sinceMs: number): Promise<Array<{
640
+ ticket: string;
641
+ agent: string;
642
+ text: string;
643
+ promisedAt: string;
644
+ closedAt: string;
645
+ }>>;
626
646
  /**
627
647
  * The owner's note for a late promise: what, by when, and why it is late.
628
648
  *
@@ -1 +1 @@
1
- {"version":3,"file":"open-items.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/open-items/open-items.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"open-items.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/open-items/open-items.service.ts"],"names":[],"mappings":"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"}
@@ -43,6 +43,7 @@ import { AgentPromptReferenceService } from '../orc/agent-prompt-reference.servi
43
43
  import { withQueueMeta } from '../messaging/queue-priority.js';
44
44
  import { parseSlackThreadKey } from '../slack/slack-thread-key.js';
45
45
  import { slackArchiveLink } from '../decisions/ticket-thread-store.js';
46
+ import { isStaleCommitment, staleCommitmentNotice, supersededReason } from './stale-commitment.js';
46
47
  import { gateVerdict, siblingQuestion } from './open-item-gate.js';
47
48
  /** Thrown for open-item requests the caller must fix (HTTP 4xx). */
48
49
  export class OpenItemsError extends Error {
@@ -373,6 +374,7 @@ export function followUpCommand(ref) {
373
374
  function ticketLabel(request) {
374
375
  return typeof request.ticketNumber === 'number' ? formatTicketNumber(request.ticketNumber) : request.id.slice(0, 8);
375
376
  }
377
+ export { isStaleCommitment, staleCommitmentNotice, supersededReason };
376
378
  /**
377
379
  * Promises a restart should act on: past due, never nudged and never
378
380
  * reminded after a restart, on requests that are not done or cancelled
@@ -394,6 +396,9 @@ export function owedCommitments(requests, now = new Date()) {
394
396
  continue;
395
397
  if (!i.agent || i.nudgedAt || i.restartRemindedAt)
396
398
  continue;
399
+ // Already answered / done since: not owed (stale ones are re-checked, never replayed blindly).
400
+ if (supersededReason(r, i, now))
401
+ continue;
397
402
  const due = i.due ? Date.parse(i.due) : NaN;
398
403
  if (!Number.isFinite(due) || due > now.getTime())
399
404
  continue;
@@ -404,6 +409,7 @@ export function owedCommitments(requests, now = new Date()) {
404
409
  requestId: r.id,
405
410
  itemId: i.id,
406
411
  ...(i.due ? { due: i.due } : {}),
412
+ createdAt: i.createdAt,
407
413
  });
408
414
  }
409
415
  }
@@ -1089,7 +1095,8 @@ export class OpenItemsService {
1089
1095
  const what = done.map((w) => `"${short(w.title, 80)}"`).join(', ');
1090
1096
  const ref = followUpReference(request, item);
1091
1097
  const text = `[FOLLOW-UP ${ticketLabel(request)}] The work you promised the owner is ready (${what}) — deliver it now. ` +
1092
- `You said: "${short(item.text, 200)}". Run: ${followUpCommand(ref)} — Crewly posts it in the ticket's thread; that closes the follow-up.`;
1098
+ `You said: "${short(item.text, 200)}". Run: ${followUpCommand(ref)} — Crewly posts it in the ticket's thread; that closes the follow-up.` +
1099
+ staleCommitmentNotice(item, now);
1093
1100
  const ok = await this.remindAgent(request, item.agent, text);
1094
1101
  if (ok)
1095
1102
  AgentPromptReferenceService.getInstance().note(item.agent, ref, `[FOLLOW-UP ${ticketLabel(request)}]`);
@@ -1369,8 +1376,10 @@ export class OpenItemsService {
1369
1376
  * in one note per request:
1370
1377
  * - the follow-up WorkItem was cancelled by ANOTHER agent (an agent's
1371
1378
  * cleanup, a bulk script) — the cancel API records who
1372
- * (`metadata.cancelledBy`);
1373
- * - nothing happened for 7 days and the owner was never told it was late.
1379
+ * (`metadata.cancelledBy`).
1380
+ *
1381
+ * A promise that merely expired (7 days, no progress) is NOT told here: it
1382
+ * closes as stale and appears only in the weekly summary.
1374
1383
  *
1375
1384
  * The promising agent cancelling its own follow-up, owner skips,
1376
1385
  * superseded promises and cancelled tickets were closed on purpose and
@@ -1404,8 +1413,9 @@ export class OpenItemsService {
1404
1413
  return false;
1405
1414
  if (!ACTIVE_OPEN_ITEM_STATUSES.has(was.status))
1406
1415
  return false;
1407
- const expiredUntold = item.status === 'expired' && !was.ownerNotifiedAt;
1408
- return expiredUntold || cancelledByOther(item) !== null;
1416
+ // An expired (stale) promise is not a fresh owner ask: it is listed in the weekly summary
1417
+ // ({@link staleExpiredCommitments}), never posted into the thread.
1418
+ return cancelledByOther(item) !== null;
1409
1419
  });
1410
1420
  if (dropped.length === 0)
1411
1421
  return items;
@@ -1415,9 +1425,7 @@ export class OpenItemsService {
1415
1425
  const by = cancelledByOther(item);
1416
1426
  const byName = by ? ((await this.deps.displayName?.(by).catch(() => undefined)) ?? by) : '';
1417
1427
  const reason = item.closedReason?.includes(': ') ? short(item.closedReason.slice(item.closedReason.indexOf(': ') + 2), 100) : '';
1418
- const why = item.status === 'expired'
1419
- ? 'nothing happened on it for 7 days'
1420
- : `${byName} cancelled its follow-up${reason ? ` ("${reason}")` : ''}`;
1428
+ const why = `${byName} cancelled its follow-up${reason ? ` ("${reason}")` : ''}`;
1421
1429
  lines.push(`${name}'s promise "${short(item.text, 160)}" was closed without being delivered: ${why}. If you still want it, ask ${name} again.`);
1422
1430
  }
1423
1431
  const ok = await this.deps.postOwnerNote(request, lines.join('\n')).catch(() => false);
@@ -1490,6 +1498,16 @@ export class OpenItemsService {
1490
1498
  closedReason: `follow-up ${followUp.id.slice(0, 8)} is ${followUp.status}${!delivered && followUp.cancelReason ? `: ${short(followUp.cancelReason, 160)}` : ''}`,
1491
1499
  };
1492
1500
  }
1501
+ // An old commitment the owner already moved past (replied in the thread, or the ticket is
1502
+ // done): close it silently — nothing is sent to the agent or the owner (TKT-334, 2026-10-12).
1503
+ const moved = supersededReason(request, item, now);
1504
+ if (moved) {
1505
+ counts.closed += 1;
1506
+ if (item.workItemId)
1507
+ await this.closeFollowUp(item.workItemId, 'cancelled', moved);
1508
+ this.logger.info('Stale commitment superseded — closed without a nudge', { tkt: ticketLabel(request), item: item.id, reason: moved });
1509
+ return { ...item, status: 'superseded', closedAt: nowIso, closedReason: moved };
1510
+ }
1493
1511
  // Commitment: link child work started after the promise.
1494
1512
  let current = item;
1495
1513
  const children = childWorkFor(request, item, pool);
@@ -1509,7 +1527,8 @@ export class OpenItemsService {
1509
1527
  if (!current.nudgedAt) {
1510
1528
  const ref = followUpReference(request, current);
1511
1529
  const text = `[FOLLOW-UP ${ticketLabel(request)}] You promised the owner: "${short(current.text, 200)}" — due ${formatWhen(new Date(due), now)}, and it hasn't been delivered. ` +
1512
- `Deliver it now, or tell the owner plainly when it will come and why. Run: ${followUpCommand(ref)} — Crewly posts it in the ticket's thread.`;
1530
+ `Deliver it now, or tell the owner plainly when it will come and why. Run: ${followUpCommand(ref)} — Crewly posts it in the ticket's thread.` +
1531
+ staleCommitmentNotice(current, now);
1513
1532
  const ok = await this.remindAgent(request, current.agent, text);
1514
1533
  if (ok)
1515
1534
  AgentPromptReferenceService.getInstance().note(current.agent, ref, `[FOLLOW-UP ${ticketLabel(request)}]`);
@@ -1526,6 +1545,25 @@ export class OpenItemsService {
1526
1545
  }
1527
1546
  return current;
1528
1547
  }
1548
+ /**
1549
+ * Commitments that expired as stale (7 days, no progress) since a time, for
1550
+ * the weekly / Drive summary. They are never posted as a fresh owner ask.
1551
+ *
1552
+ * @param sinceMs - Epoch ms; only items closed at or after it
1553
+ * @returns One row per expired commitment
1554
+ */
1555
+ async staleExpiredCommitments(sinceMs) {
1556
+ const all = await this.deps.requests.listAll();
1557
+ const out = [];
1558
+ for (const r of all) {
1559
+ for (const i of r.openItems ?? []) {
1560
+ if (i.type !== 'commitment' || i.status !== 'expired' || !i.closedAt || Date.parse(i.closedAt) < sinceMs)
1561
+ continue;
1562
+ out.push({ ticket: ticketLabel(r), agent: i.agent, text: i.text, promisedAt: i.createdAt, closedAt: i.closedAt });
1563
+ }
1564
+ }
1565
+ return out;
1566
+ }
1529
1567
  /**
1530
1568
  * The owner's note for a late promise: what, by when, and why it is late.
1531
1569
  *