@raidiant/notifai 11.4.0-beta.2 → 11.4.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 (96) hide show
  1. package/CHANGELOG.md +9 -2
  2. package/dist/claude-wake.d.ts +11 -3
  3. package/dist/claude-wake.js +74 -67
  4. package/dist/claude-wake.js.map +1 -1
  5. package/dist/client.d.ts +23 -2
  6. package/dist/client.js +11 -5
  7. package/dist/client.js.map +1 -1
  8. package/dist/codex-wake.d.ts +12 -2
  9. package/dist/codex-wake.js +50 -13
  10. package/dist/codex-wake.js.map +1 -1
  11. package/dist/commands-acknowledge.d.ts +4 -2
  12. package/dist/commands-acknowledge.js +35 -4
  13. package/dist/commands-acknowledge.js.map +1 -1
  14. package/dist/commands-ask.js +2 -2
  15. package/dist/commands-ask.js.map +1 -1
  16. package/dist/commands-close.js +16 -4
  17. package/dist/commands-close.js.map +1 -1
  18. package/dist/commands-core.d.ts +6 -0
  19. package/dist/commands-core.js.map +1 -1
  20. package/dist/commands-doctor.js +46 -1
  21. package/dist/commands-doctor.js.map +1 -1
  22. package/dist/commands-hook-attend.d.ts +61 -0
  23. package/dist/commands-hook-attend.js +475 -0
  24. package/dist/commands-hook-attend.js.map +1 -0
  25. package/dist/commands-hook-diagnostics.js +2 -2
  26. package/dist/commands-hook-diagnostics.js.map +1 -1
  27. package/dist/commands-hook-install.js +1 -1
  28. package/dist/commands-hook-install.js.map +1 -1
  29. package/dist/commands-hook-run.js +59 -2
  30. package/dist/commands-hook-run.js.map +1 -1
  31. package/dist/commands-send.js +6 -1
  32. package/dist/commands-send.js.map +1 -1
  33. package/dist/guidance-content.js +9 -35
  34. package/dist/guidance-content.js.map +1 -1
  35. package/dist/hook-acknowledgements.d.ts +25 -5
  36. package/dist/hook-acknowledgements.js +102 -45
  37. package/dist/hook-acknowledgements.js.map +1 -1
  38. package/dist/hook-events.d.ts +26 -1
  39. package/dist/hook-events.js +38 -2
  40. package/dist/hook-events.js.map +1 -1
  41. package/dist/hook-lifecycle.d.ts +6 -0
  42. package/dist/hook-lifecycle.js +297 -26
  43. package/dist/hook-lifecycle.js.map +1 -1
  44. package/dist/hook-question-lock.d.ts +18 -0
  45. package/dist/hook-question-lock.js +80 -57
  46. package/dist/hook-question-lock.js.map +1 -1
  47. package/dist/hook-question-retirement.d.ts +10 -2
  48. package/dist/hook-question-retirement.js +21 -4
  49. package/dist/hook-question-retirement.js.map +1 -1
  50. package/dist/hook-session-state.d.ts +90 -1
  51. package/dist/hook-session-state.js +201 -9
  52. package/dist/hook-session-state.js.map +1 -1
  53. package/dist/hook-types.d.ts +50 -2
  54. package/dist/injection-render.d.ts +36 -0
  55. package/dist/injection-render.js +61 -0
  56. package/dist/injection-render.js.map +1 -0
  57. package/dist/install-hooks.d.ts +14 -0
  58. package/dist/install-hooks.js +47 -2
  59. package/dist/install-hooks.js.map +1 -1
  60. package/dist/logging.d.ts +1 -1
  61. package/dist/logging.js +12 -0
  62. package/dist/logging.js.map +1 -1
  63. package/dist/process-identity.d.ts +26 -0
  64. package/dist/process-identity.js +82 -0
  65. package/dist/process-identity.js.map +1 -0
  66. package/dist/program.js +6 -6
  67. package/dist/program.js.map +1 -1
  68. package/dist/session-attendant-probe.d.ts +74 -0
  69. package/dist/session-attendant-probe.js +131 -0
  70. package/dist/session-attendant-probe.js.map +1 -0
  71. package/dist/session-attendant-state.d.ts +53 -0
  72. package/dist/session-attendant-state.js +175 -0
  73. package/dist/session-attendant-state.js.map +1 -0
  74. package/dist/session-attendant.d.ts +135 -0
  75. package/dist/session-attendant.js +493 -0
  76. package/dist/session-attendant.js.map +1 -0
  77. package/dist/session-delivery.d.ts +214 -0
  78. package/dist/session-delivery.js +560 -0
  79. package/dist/session-delivery.js.map +1 -0
  80. package/dist/session-handoff.d.ts +98 -0
  81. package/dist/session-handoff.js +118 -0
  82. package/dist/session-handoff.js.map +1 -0
  83. package/dist/session-message-handoff.d.ts +35 -0
  84. package/dist/session-message-handoff.js +99 -0
  85. package/dist/session-message-handoff.js.map +1 -0
  86. package/dist/skill-source/manifest.json +20 -4
  87. package/dist/skill-source/notifai/SKILL.md +19 -57
  88. package/dist/skill-source/notifai/references/diagnostics.md +31 -0
  89. package/dist/skill-source/notifai/references/harness-setup.md +3 -0
  90. package/dist/skill-source/notifai/references/notes-and-edits.md +38 -0
  91. package/dist/skill-source/notifai/references/send-details.md +14 -0
  92. package/dist/skill-source/notifai/references/writing-examples.md +56 -0
  93. package/dist/wake-support.d.ts +33 -1
  94. package/dist/wake-support.js +65 -8
  95. package/dist/wake-support.js.map +1 -1
  96. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"guidance-content.js","sourceRoot":"","sources":["../src/guidance-content.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAWH,8EAA8E;AAC9E,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;4DAawB,CAAA;AAE5D,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;gEAI4B,CAAA;AAEhE,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBtB,CAAA;AAED,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;CAyBd,CAAA;AAED,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkDf,CAAA;AAED,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BjB,CAAA;AAED,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;CAoBxB,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA6B;IACxD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,qCAAqC;QAC9C,OAAO,EAAE,cAAc;KACxB;IACD;QACE,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,qCAAqC;QAC9C,OAAO,EAAE,MAAM;KAChB;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,4DAA4D;QACrE,OAAO,EAAE,OAAO;KACjB;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,2CAA2C;QACpD,OAAO,EAAE,SAAS;KACnB;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,kCAAkC;QAC3C,OAAO,EAAE,gBAAgB;KAC1B;CACF,CAAA;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;AAC9D,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCA+BJ,CAAA"}
1
+ {"version":3,"file":"guidance-content.js","sourceRoot":"","sources":["../src/guidance-content.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAWH,8EAA8E;AAC9E,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;4DAawB,CAAA;AAE5D,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;gEAI4B,CAAA;AAEhE,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBtB,CAAA;AAED,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;CAmBd,CAAA;AAED,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Bf,CAAA;AAED,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BjB,CAAA;AAED,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;CAoBxB,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA6B;IACxD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,qCAAqC;QAC9C,OAAO,EAAE,cAAc;KACxB;IACD;QACE,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,qCAAqC;QAC9C,OAAO,EAAE,MAAM;KAChB;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,4DAA4D;QACrE,OAAO,EAAE,OAAO;KACjB;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,2CAA2C;QACpD,OAAO,EAAE,SAAS;KACnB;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,kCAAkC;QAC3C,OAAO,EAAE,gBAAgB;KAC1B;CACF,CAAA;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;AAC9D,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCA+BJ,CAAA"}
@@ -1,4 +1,19 @@
1
- import type { AcceptedAnswerDelivery, AcknowledgementDue, AnsweredPending, HookContext, HookOutcome } from './hook-types.js';
1
+ import type { AcceptedAnswerDelivery, AnsweredPending, HookContext, HookOutcome, MessageAcknowledgementDue, OwedAcknowledgement, SessionState } from './hook-types.js';
2
+ export declare function owedAcknowledgementId(owed: OwedAcknowledgement): string;
3
+ /** Every acknowledgement this session still owes, request debt first. */
4
+ export declare function owedAcknowledgements(state: SessionState): OwedAcknowledgement[];
5
+ /**
6
+ * Record the acknowledgement a Session Message is owed, before it is written:
7
+ * an agent that acknowledges the moment it reads the message must find the
8
+ * debt already there to clear.
9
+ */
10
+ export declare function recordMessageAcknowledgementDue(sessionId: string, env: NodeJS.ProcessEnv, due: MessageAcknowledgementDue): void;
11
+ /**
12
+ * Every answer that has arrived, as one message. Several registered questions
13
+ * may resolve in one hook pass; the agent reads them together, each answer
14
+ * tied to the question that asked it, with a truthful note about anything
15
+ * still waiting.
16
+ */
2
17
  export declare function answersContext(answered: AnsweredPending[], remaining: number): string;
3
18
  export declare function stopAnswerOutput(context: string): string;
4
19
  /**
@@ -22,18 +37,23 @@ export declare function finishCommittedDelivery(ctx: HookContext, sessionId: str
22
37
  export declare function classifyJournaledAcknowledgements(sessionId: string, env: NodeJS.ProcessEnv): AcceptedAnswerDelivery | undefined;
23
38
  /** Resume a queue write recorded by an earlier process without replaying it. */
24
39
  export declare function recoverQueuedAnswers(sessionId: string, env: NodeJS.ProcessEnv): void;
25
- export declare function clearAcknowledgementObligation(sessionId: string, env: NodeJS.ProcessEnv, requestId: string): boolean;
26
- export declare function acknowledgementBlockContext(due: readonly AcknowledgementDue[]): string;
40
+ /** Forget one owed acknowledgement, dispatched by identifier: `sm_…` or a request id. */
41
+ export declare function clearAcknowledgementObligation(sessionId: string, env: NodeJS.ProcessEnv, id: string): boolean;
42
+ export declare function acknowledgementBlockContext(due: readonly OwedAcknowledgement[]): string;
27
43
  /**
28
44
  * Hold the turn for an outstanding acknowledgement, or give up and let it
29
45
  * through once holding has stopped being worth its cost.
30
46
  *
31
47
  * Returns the outcome that blocks the turn, or `null` to carry on.
32
48
  */
33
- export declare function holdForAcknowledgement(ctx: HookContext, sessionId: string, due: readonly AcknowledgementDue[], notes: string[]): HookOutcome | null;
49
+ export declare function holdForAcknowledgement(ctx: HookContext, sessionId: string, due: readonly OwedAcknowledgement[], notes: string[]): HookOutcome | null;
34
50
  /** A turn that was not held resets the streak; only consecutive holds count. */
35
51
  export declare function resetAcknowledgementBlocks(sessionId: string, env: NodeJS.ProcessEnv): void;
36
- export declare function reconcileAcknowledgementObligations(ctx: HookContext, sessionId: string, due: readonly AcknowledgementDue[]): Promise<AcknowledgementDue[]>;
52
+ /**
53
+ * Ask the service which owed acknowledgements now exist and forget those.
54
+ * Returns what is still owed; a failed check counts as still owed.
55
+ */
56
+ export declare function reconcileAcknowledgementObligations<T extends OwedAcknowledgement>(ctx: HookContext, sessionId: string, due: readonly T[]): Promise<T[]>;
37
57
  /**
38
58
  * Retire the answered questions and close the journal.
39
59
  *
@@ -1,9 +1,31 @@
1
1
  /** Accepted-answer delivery and required Agent Acknowledgement obligations. */
2
2
  import { withFileLock } from './file-lock.js';
3
3
  import { gate } from './hook-gates.js';
4
+ import { ACKNOWLEDGEMENT_SCOPE, TRANSPORT_LIMIT, acknowledgementCommand, acknowledgementDemand, quoted, } from './injection-render.js';
4
5
  import { retiringQuestion } from './hook-question-retirement.js';
5
6
  import { isSamePending, pendingHasChoices, rememberQuestionState } from './hook-question-state.js';
6
7
  import { pendingList, readSessionState, sessionStatePath, updateSessionState, writeSessionStateUnlocked, } from './hook-session-state.js';
8
+ import { SESSION_MESSAGE_ID_PREFIX } from '@raidiant/notifai-protocol';
9
+ export function owedAcknowledgementId(owed) {
10
+ return 'message_id' in owed ? owed.message_id : owed.request_id;
11
+ }
12
+ /** Every acknowledgement this session still owes, request debt first. */
13
+ export function owedAcknowledgements(state) {
14
+ return [...(state.acknowledgement_due ?? []), ...(state.message_acknowledgement_due ?? [])];
15
+ }
16
+ /**
17
+ * Record the acknowledgement a Session Message is owed, before it is written:
18
+ * an agent that acknowledges the moment it reads the message must find the
19
+ * debt already there to clear.
20
+ */
21
+ export function recordMessageAcknowledgementDue(sessionId, env, due) {
22
+ updateSessionState(sessionId, env, (current) => {
23
+ const owed = current.message_acknowledgement_due ?? [];
24
+ if (owed.some((entry) => entry.message_id === due.message_id))
25
+ return current;
26
+ return { ...current, message_acknowledgement_due: [...owed, due] };
27
+ });
28
+ }
7
29
  /**
8
30
  * The answer as the agent should read it. For a question with choices the
9
31
  * latest reply IS the answer — an earlier conflicting one was corrected by
@@ -24,35 +46,14 @@ function answerContext(answered) {
24
46
  const identity = answeredQuestionIds.length === 0
25
47
  ? ''
26
48
  : `question_id${answeredQuestionIds.length === 1 ? '' : 's'} ${answeredQuestionIds.join(', ')}, `;
27
- const question = `question ${JSON.stringify(pending.question)}`;
49
+ const question = `question ${quoted(pending.question)}`;
28
50
  if (replies.length === 1 || pendingHasChoices(pending)) {
29
- return `Notifai — ${identity}${question}; the user answered ${JSON.stringify(latest.text)}.`;
51
+ return `Notifai — ${identity}${question}; the user answered ${quoted(latest.text)}.`;
30
52
  }
31
- const parts = replies.map((reply) => JSON.stringify(reply.text)).join(', then ');
53
+ const parts = replies.map((reply) => quoted(reply.text)).join(', then ');
32
54
  return (`Notifai — ${identity}${question}; the user answered in ${replies.length} parts, ` +
33
55
  `in the order written: ${parts}. Later parts extend or correct earlier ones.`);
34
56
  }
35
- /**
36
- * Every answer that has arrived, as one message. Several registered questions
37
- * may resolve in one hook pass; the agent reads them together, each answer
38
- * tied to the question that asked it, with a truthful note about anything
39
- * still waiting.
40
- */
41
- function acknowledgementCommand(requestId, textRequired = true) {
42
- return textRequired
43
- ? `notifai acknowledge ${requestId} --text <text>`
44
- : `notifai acknowledge ${requestId}`;
45
- }
46
- /**
47
- * The acknowledgement is owed either way; only its text is conditional. So the
48
- * instruction never says "you may skip this" — it says what to run.
49
- */
50
- function acknowledgementDemand(textRequired) {
51
- return textRequired
52
- ? ' with non-empty text saying what concrete work you will do because of the reply; a bare acknowledgement is insufficient'
53
- : ' exactly as shown; this account turned acknowledgement text off, so the receipt carries no words';
54
- }
55
- const ACKNOWLEDGEMENT_SCOPE = ' Once a request reports recorded or replayed, its acknowledgement is complete; do not repeat it for a later turn or unrelated event.';
56
57
  function acknowledgementContext(answered) {
57
58
  const due = answered.filter((entry) => entry.pending.request_id !== undefined);
58
59
  if (due.length === 0) {
@@ -77,22 +78,28 @@ function acknowledgementContext(answered) {
77
78
  commands +
78
79
  ACKNOWLEDGEMENT_SCOPE);
79
80
  }
81
+ /**
82
+ * Every answer that has arrived, as one message. Several registered questions
83
+ * may resolve in one hook pass; the agent reads them together, each answer
84
+ * tied to the question that asked it, with a truthful note about anything
85
+ * still waiting.
86
+ */
80
87
  export function answersContext(answered, remaining) {
81
88
  const tail = remaining > 0
82
89
  ? ` (${remaining} more registered question${remaining === 1 ? ' is' : 's are'} still waiting for an answer.)`
83
90
  : '';
84
- const guidance = acknowledgementContext(answered);
91
+ const guidance = acknowledgementContext(answered) + TRANSPORT_LIMIT;
85
92
  if (answered.length === 1) {
86
93
  return answerContext(answered[0]) + tail + guidance;
87
94
  }
88
95
  const lines = answered.map(({ pending, replies }) => {
89
96
  const latest = replies.at(-1);
90
97
  const answer = replies.length === 1 || pendingHasChoices(pending)
91
- ? JSON.stringify(latest.text)
92
- : `${replies.map((reply) => JSON.stringify(reply.text)).join(', then ')} (parts in the order written; later parts extend or correct earlier ones)`;
98
+ ? quoted(latest.text)
99
+ : `${replies.map((reply) => quoted(reply.text)).join(', then ')} (parts in the order written; later parts extend or correct earlier ones)`;
93
100
  const ids = [...new Set(latest.answers.map((entry) => entry.question_id))];
94
101
  const identity = ids.length === 0 ? '' : `question_id${ids.length === 1 ? '' : 's'} ${ids.join(', ')}: `;
95
- return `- ${identity}${JSON.stringify(pending.question)} → ${answer}`;
102
+ return `- ${identity}${quoted(pending.question)} → ${answer}`;
96
103
  });
97
104
  return `Notifai — the user answered ${answered.length} questions:\n${lines.join('\n')}${tail}${guidance}`;
98
105
  }
@@ -250,7 +257,11 @@ export function recoverQueuedAnswers(sessionId, env) {
250
257
  ? archiveQueuedAnswers(current, current.accepted)
251
258
  : current);
252
259
  }
253
- export function clearAcknowledgementObligation(sessionId, env, requestId) {
260
+ /** Forget one owed acknowledgement, dispatched by identifier: `sm_…` or a request id. */
261
+ export function clearAcknowledgementObligation(sessionId, env, id) {
262
+ if (id.startsWith(SESSION_MESSAGE_ID_PREFIX))
263
+ return clearMessageAcknowledgement(sessionId, env, id);
264
+ const requestId = id;
254
265
  let cleared = false;
255
266
  updateSessionState(sessionId, env, (current) => {
256
267
  const due = current.acknowledgement_due ?? [];
@@ -272,13 +283,44 @@ export function clearAcknowledgementObligation(sessionId, env, requestId) {
272
283
  });
273
284
  return cleared;
274
285
  }
286
+ function clearMessageAcknowledgement(sessionId, env, messageId) {
287
+ let cleared = false;
288
+ updateSessionState(sessionId, env, (current) => {
289
+ const due = current.message_acknowledgement_due ?? [];
290
+ const remaining = due.filter((entry) => entry.message_id !== messageId);
291
+ cleared = remaining.length !== due.length;
292
+ if (!cleared)
293
+ return current;
294
+ const next = { ...current };
295
+ if (remaining.length > 0)
296
+ next.message_acknowledgement_due = remaining;
297
+ else
298
+ delete next.message_acknowledgement_due;
299
+ return next;
300
+ });
301
+ return cleared;
302
+ }
275
303
  export function acknowledgementBlockContext(due) {
304
+ const anyTextRequired = due.some((entry) => entry.text_required !== false);
276
305
  const commands = due
277
- .map((entry) => `- ${entry.request_id}: \`${acknowledgementCommand(entry.request_id, entry.text_required !== false)}\``)
306
+ .map((entry) => {
307
+ const id = owedAcknowledgementId(entry);
308
+ return `- ${id}: \`${acknowledgementCommand(id, entry.text_required !== false)}\``;
309
+ })
278
310
  .join('\n');
279
- const anyTextRequired = due.some((entry) => entry.text_required !== false);
280
- return (`Notifai — required Agent Acknowledgement${due.length === 1 ? '' : 's'} still missing for request${due.length === 1 ? '' : 's'} ${due.map((entry) => entry.request_id).join(', ')}. ` +
281
- `Before doing more resumed work or ending this turn, run ${due.length === 1 ? 'this command' : 'every command'}${acknowledgementDemand(anyTextRequired)}:\n${commands}` +
311
+ const requests = due.filter((entry) => !('message_id' in entry));
312
+ const messages = due.filter((entry) => 'message_id' in entry);
313
+ const subjects = [
314
+ ...(requests.length === 0
315
+ ? []
316
+ : [`request${requests.length === 1 ? '' : 's'} ${requests.map((entry) => entry.request_id).join(', ')}`]),
317
+ ...(messages.length === 0
318
+ ? []
319
+ : [`message${messages.length === 1 ? '' : 's'} ${messages.map((entry) => entry.message_id).join(', ')}`]),
320
+ ].join(' and ');
321
+ const cause = requests.length === 0 ? 'message' : 'reply';
322
+ return (`Notifai — required Agent Acknowledgement${due.length === 1 ? '' : 's'} still missing for ${subjects}. ` +
323
+ `Before doing more resumed work or ending this turn, run ${due.length === 1 ? 'this command' : 'every command'}${acknowledgementDemand(anyTextRequired, cause)}:\n${commands}` +
282
324
  ACKNOWLEDGEMENT_SCOPE);
283
325
  }
284
326
  /**
@@ -301,17 +343,17 @@ const MAX_ACKNOWLEDGEMENT_BLOCKS = 3;
301
343
  export function holdForAcknowledgement(ctx, sessionId, due, notes) {
302
344
  if (due.length === 0)
303
345
  return null;
304
- const requestIds = due.map((entry) => entry.request_id);
346
+ const ids = subjectIds(due);
305
347
  const blocks = (readSessionState(sessionId, ctx.env).acknowledgement_blocks ?? 0) + 1;
306
348
  if (blocks > MAX_ACKNOWLEDGEMENT_BLOCKS) {
307
349
  // Drop the obligation with the reason recorded. The answer was already
308
350
  // delivered; what is lost is the agent's receipt for it, and the log is
309
351
  // where that loss stays visible.
310
- for (const requestId of requestIds)
311
- clearAcknowledgementObligation(sessionId, ctx.env, requestId);
352
+ for (const owed of due)
353
+ clearAcknowledgementObligation(sessionId, ctx.env, owedAcknowledgementId(owed));
312
354
  resetAcknowledgementBlocks(sessionId, ctx.env);
313
355
  gate(ctx, 'proceeding', 'acknowledgement-abandoned', {
314
- request_ids: requestIds,
356
+ ...ids,
315
357
  blocks: blocks - 1,
316
358
  limit: MAX_ACKNOWLEDGEMENT_BLOCKS,
317
359
  });
@@ -322,11 +364,20 @@ export function holdForAcknowledgement(ctx, sessionId, due, notes) {
322
364
  ...current,
323
365
  acknowledgement_blocks: blocks,
324
366
  }));
325
- gate(ctx, 'held', 'acknowledgement-required', { request_ids: requestIds, blocks });
367
+ gate(ctx, 'held', 'acknowledgement-required', { ...ids, blocks });
326
368
  return {
327
369
  stdout: stopAnswerOutput(acknowledgementBlockContext(due)),
328
370
  notes,
329
- log: { stage: 'acknowledgement-required', request_ids: requestIds },
371
+ log: { stage: 'acknowledgement-required', ...ids },
372
+ };
373
+ }
374
+ /** Log fields naming owed acknowledgements; `request_ids` keeps its released meaning. */
375
+ function subjectIds(due) {
376
+ const requestIds = due.flatMap((entry) => ('message_id' in entry ? [] : [entry.request_id]));
377
+ const messageIds = due.flatMap((entry) => ('message_id' in entry ? [entry.message_id] : []));
378
+ return {
379
+ ...(requestIds.length === 0 && messageIds.length > 0 ? {} : { request_ids: requestIds }),
380
+ ...(messageIds.length === 0 ? {} : { message_ids: messageIds }),
330
381
  };
331
382
  }
332
383
  /** A turn that was not held resets the streak; only consecutive holds count. */
@@ -339,15 +390,21 @@ export function resetAcknowledgementBlocks(sessionId, env) {
339
390
  return next;
340
391
  });
341
392
  }
393
+ /**
394
+ * Ask the service which owed acknowledgements now exist and forget those.
395
+ * Returns what is still owed; a failed check counts as still owed.
396
+ */
342
397
  export async function reconcileAcknowledgementObligations(ctx, sessionId, due) {
343
398
  const unresolved = [];
344
399
  for (const obligation of due) {
400
+ const id = owedAcknowledgementId(obligation);
345
401
  try {
346
- const snapshot = await ctx.client.agentAcknowledgement(obligation.request_id, {
347
- waitSeconds: 0,
348
- });
349
- if (snapshot.agent_acknowledgement !== null) {
350
- clearAcknowledgementObligation(sessionId, ctx.env, obligation.request_id);
402
+ const acknowledgement = 'message_id' in obligation
403
+ ? (await ctx.client.sessionMessageAcknowledgement(obligation.message_id)).agent_acknowledgement
404
+ : (await ctx.client.agentAcknowledgement(obligation.request_id, { waitSeconds: 0 }))
405
+ .agent_acknowledgement;
406
+ if (acknowledgement !== null) {
407
+ clearAcknowledgementObligation(sessionId, ctx.env, id);
351
408
  }
352
409
  else {
353
410
  unresolved.push(obligation);
@@ -359,7 +416,7 @@ export async function reconcileAcknowledgementObligations(ctx, sessionId, due) {
359
416
  verdict: 'held',
360
417
  reason: 'acknowledgement-required',
361
418
  stage: 'reconcile-failed',
362
- request_id: obligation.request_id,
419
+ ...('message_id' in obligation ? { message_id: id } : { request_id: id }),
363
420
  message: err instanceof Error ? err.message : String(err),
364
421
  });
365
422
  }
@@ -1 +1 @@
1
- {"version":3,"file":"hook-acknowledgements.js","sourceRoot":"","sources":["../src/hook-acknowledgements.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAClG,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAA;AAUhC;;;;;;;;;;GAUG;AACH,SAAS,aAAa,CAAC,QAAyB;IAC9C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAA;IACrC,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAC7B,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,mCAAmC,CAAA;IACpE,MAAM,mBAAmB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;IAC5F,MAAM,QAAQ,GACZ,mBAAmB,CAAC,MAAM,KAAK,CAAC;QAC9B,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,cAAc,mBAAmB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;IACrG,MAAM,QAAQ,GAAG,YAAY,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAA;IAC/D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;QACvD,OAAO,aAAa,QAAQ,GAAG,QAAQ,uBAAuB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAA;IAC9F,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAChF,OAAO,CACL,aAAa,QAAQ,GAAG,QAAQ,0BAA0B,OAAO,CAAC,MAAM,UAAU;QAClF,yBAAyB,KAAK,+CAA+C,CAC9E,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAAC,SAAiB,EAAE,YAAY,GAAG,IAAI;IACpE,OAAO,YAAY;QACjB,CAAC,CAAC,uBAAuB,SAAS,gBAAgB;QAClD,CAAC,CAAC,uBAAuB,SAAS,EAAE,CAAA;AACxC,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,YAAqB;IAClD,OAAO,YAAY;QACjB,CAAC,CAAC,yHAAyH;QAC3H,CAAC,CAAC,kGAAkG,CAAA;AACxG,CAAC;AAED,MAAM,qBAAqB,GACzB,sIAAsI,CAAA;AAExI,SAAS,sBAAsB,CAAC,QAA2B;IACzD,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CACzB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAClD,CAAA;IACD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,qEAAqE,CAAA;IAC9E,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAE,CAAA;QACrB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,UAAW,CAAA;QAC3C,MAAM,YAAY,GAAG,KAAK,CAAC,mCAAmC,KAAK,KAAK,CAAA;QACxE,OAAO,CACL,kDAAkD,SAAS,wEAAwE;YACnI,KAAK,sBAAsB,CAAC,SAAS,EAAE,YAAY,CAAC,KAAK,qBAAqB,CAAC,YAAY,CAAC,GAAG;YAC/F,qBAAqB,CACtB,CAAA;IACH,CAAC;IACD,MAAM,eAAe,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,mCAAmC,KAAK,KAAK,CAAC,CAAA;IAChG,MAAM,QAAQ,GAAG,GAAG;SACjB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,UAAW,CAAA;QAC3C,OAAO,KAAK,SAAS,OAAO,sBAAsB,CAAC,SAAS,EAAE,KAAK,CAAC,mCAAmC,KAAK,KAAK,CAAC,IAAI,CAAA;IACxH,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAA;IACb,OAAO,CACL,0CAA0C,GAAG,CAAC,MAAM,qGAAqG,qBAAqB,CAAC,eAAe,CAAC,KAAK;QACpM,QAAQ;QACR,qBAAqB,CACtB,CAAA;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,QAA2B,EAAE,SAAiB;IAC3E,MAAM,IAAI,GACR,SAAS,GAAG,CAAC;QACX,CAAC,CAAC,KAAK,SAAS,4BAA4B,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,gCAAgC;QAC7G,CAAC,CAAC,EAAE,CAAA;IACR,MAAM,QAAQ,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAA;IACjD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,GAAG,IAAI,GAAG,QAAQ,CAAA;IACtD,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE;QAClD,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAA;QAC9B,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,iBAAiB,CAAC,OAAO,CAAC;YAChD,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;YAC7B,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,2EAA2E,CAAA;QACtJ,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;QAC1E,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;QACxG,OAAO,KAAK,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,MAAM,EAAE,CAAA;IACvE,CAAC,CAAC,CAAA;IACF,OAAO,+BAA+B,QAAQ,CAAC,MAAM,gBAAgB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,QAAQ,EAAE,CAAA;AAC3G,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,QAAQ,EAAE,OAAO;QACjB,MAAM,EAAE,OAAO;KAChB,CAAC,CAAA;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAClC,GAAgB,EAChB,SAAiB,EACjB,QAA2B,EAC3B,SAAiB;IAEjB,MAAM,QAAQ,GAA2B;QACvC,0EAA0E;QAC1E,0EAA0E;QAC1E,4EAA4E;QAC5E,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACjC,GAAG,MAAM;YACT,8BAA8B,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS;SACxE,CAAC,CAAC;QACH,SAAS;QACT,WAAW,EAAE,GAAG,CAAC,GAAG,EAAE;KACvB,CAAA;IACD,kBAAkB,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE;QACjD,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAClD,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAC1E,CAAA;QACD,MAAM,kBAAkB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAA;QACnE,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;YAC9B,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAA;YAC3C,IACE,SAAS,KAAK,SAAS;gBACvB,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,EACnE,CAAC;gBACD,kBAAkB,CAAC,IAAI,CAAC;oBACtB,UAAU,EAAE,SAAS;oBACrB,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,aAAa,EAAE,MAAM,CAAC,mCAAmC,KAAK,KAAK;iBACpE,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QACD,MAAM,IAAI,GAAiB;YACzB,GAAG,OAAO;YACV,QAAQ;SACT,CAAA;QACD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAA;;YAC3D,OAAO,IAAI,CAAC,OAAO,CAAA;QACxB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,mBAAmB,GAAG,kBAAkB,CAAA;;YAC3E,OAAO,IAAI,CAAC,mBAAmB,CAAA;QACpC,OAAO,QAAQ,CAAC,MAAM,CACpB,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,CAAC,qBAAqB,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,EACrF,IAAI,CACL,CAAA;IACH,CAAC,CAAC,CAAA;IACF,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,oBAAoB,CAClC,GAAgB,EAChB,SAAiB,EACjB,KAAmE;IAEnE,kBAAkB,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CACjD,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAC7F,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CACrC,GAAgB,EAChB,SAAiB,EACjB,QAAgC,EAChC,cAAsB;IAEtB,MAAM,IAAI,GAAG,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;IACjD,YAAY,CAAC,GAAG,IAAI,OAAO,EAAE,GAAG,EAAE;QAChC,MAAM,OAAO,GAAG,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;QACpD,IACE,OAAO,CAAC,QAAQ,EAAE,WAAW,KAAK,QAAQ,CAAC,WAAW;YACtD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,KAAK,SAAS,EACpD,CAAC;YACD,OAAM;QACR,CAAC;QACD,IAAI,IAAI,GAAiB;YACvB,GAAG,OAAO;YACV,QAAQ,EAAE;gBACR,GAAG,OAAO,CAAC,QAAQ;gBACnB,YAAY,EAAE,GAAG,CAAC,GAAG,EAAE;gBACvB,eAAe,EAAE,cAAc;aAChC;SACF,CAAA;QACD,IAAI,cAAc,KAAK,eAAe;YAAE,IAAI,GAAG,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC3F,yBAAyB,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;IAClD,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,wFAAwF;AACxF,SAAS,oBAAoB,CAAC,OAAqB,EAAE,QAAgC;IACnF,OAAO,GAAG,gCAAgC,CAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAA;IACpE,QAAQ,GAAG,OAAO,CAAC,QAAS,CAAA;IAC5B,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,CAAA;IACxD,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAA;IAC9C,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAA;IACpD,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAA;QAC3C,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,EAAE,CAAC;YACxD,MAAM,UAAU,GAAG,EAAE,GAAG,MAAM,EAAE,8BAA8B,EAAE,IAAI,EAAE,CAAA;YACtE,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;YAC1F,IAAI,KAAK,GAAG,CAAC;gBAAE,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;;gBACpC,SAAS,CAAC,KAAK,CAAC,GAAG,UAAU,CAAA;QACpC,CAAC;QACD,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QAC/D,IAAI,UAAU,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACjG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC3B,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAiB;QACzB,GAAG,OAAO;QACV,QAAQ;QACR,YAAY,EAAE;YACZ,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,KAAK,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC;SAC9C;KACF,CAAA;IACD,OAAO,IAAI,CAAC,QAAQ,CAAA;IACpB,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;QAAE,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAA;;QACvD,OAAO,IAAI,CAAC,iBAAiB,CAAA;IAClC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,IAAI,CAAC,mBAAmB,GAAG,GAAG,CAAA;IAClD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,sFAAsF;AACtF,SAAS,gCAAgC,CAAC,OAAqB;IAC7D,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,OAAO,CAAA;IAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;IACjC,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAA;IACpD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC9C,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAA;QAC3C,IAAI,MAAM,CAAC,8BAA8B,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO,MAAM,CAAA;QAC5F,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,EAAE,CAAC;YACzD,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjE,aAAa,EAAE,MAAM,CAAC,mCAAmC,KAAK,KAAK,EAAE,CAAC,CAAA;QAC1E,CAAC;QACD,OAAO,EAAE,GAAG,MAAM,EAAE,8BAA8B,EAAE,IAAI,EAAE,CAAA;IAC5D,CAAC,CAAC,CAAA;IACF,OAAO,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE;QACrD,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,GAAG,EAAE,CAAC,EAAE,CAAA;AAC/D,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,SAAiB,EAAE,GAAsB;IACzF,OAAO,kBAAkB,CAAC,SAAS,EAAE,GAAG,EAAE,gCAAgC,CAAC,CAAC,QAAQ,CAAA;AACtF,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,oBAAoB,CAAC,SAAiB,EAAE,GAAsB;IAC5E,kBAAkB,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAC7C,OAAO,CAAC,QAAQ,EAAE,eAAe,KAAK,eAAe,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,KAAK,SAAS;QAClG,CAAC,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC;QACjD,CAAC,CAAC,OAAO,CACZ,CAAA;AACH,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,SAAiB,EACjB,GAAsB,EACtB,SAAiB;IAEjB,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,kBAAkB,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE;QAC7C,MAAM,GAAG,GAAG,OAAO,CAAC,mBAAmB,IAAI,EAAE,CAAA;QAC7C,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAA;QACvE,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAA;QAC7G,OAAO,GAAG,SAAS,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,iBAAiB,EAAE,MAAM,IAAI,CAAC,CAAC,CAAA;QAC1G,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAA;QAC5B,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,CAAA;QAC3B,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAA;;YACzD,OAAO,IAAI,CAAC,mBAAmB,CAAA;QACpC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAA;;YACvD,OAAO,IAAI,CAAC,iBAAiB,CAAA;QAClC,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;IACF,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,GAAkC;IAC5E,MAAM,QAAQ,GAAG,GAAG;SACjB,GAAG,CACF,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,KAAK,CAAC,UAAU,OAAO,sBAAsB,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,aAAa,KAAK,KAAK,CAAC,IAAI,CAC1G;SACA,IAAI,CAAC,IAAI,CAAC,CAAA;IACb,MAAM,eAAe,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,aAAa,KAAK,KAAK,CAAC,CAAA;IAC1E,OAAO,CACL,2CAA2C,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,6BAA6B,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QACrL,2DAA2D,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,GAAG,qBAAqB,CAAC,eAAe,CAAC,MAAM,QAAQ,EAAE;QACvK,qBAAqB,CACtB,CAAA;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,0BAA0B,GAAG,CAAC,CAAA;AAEpC;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,GAAgB,EAChB,SAAiB,EACjB,GAAkC,EAClC,KAAe;IAEf,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACjC,MAAM,UAAU,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IACvD,MAAM,MAAM,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,sBAAsB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;IACrF,IAAI,MAAM,GAAG,0BAA0B,EAAE,CAAC;QACxC,uEAAuE;QACvE,wEAAwE;QACxE,iCAAiC;QACjC,KAAK,MAAM,SAAS,IAAI,UAAU;YAAE,8BAA8B,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;QACjG,0BAA0B,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;QAC9C,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,2BAA2B,EAAE;YACnD,WAAW,EAAE,UAAU;YACvB,MAAM,EAAE,MAAM,GAAG,CAAC;YAClB,KAAK,EAAE,0BAA0B;SAClC,CAAC,CAAA;QACF,KAAK,CAAC,IAAI,CACR,4BAA4B,0BAA0B,0EAA0E,CACjI,CAAA;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,kBAAkB,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACnD,GAAG,OAAO;QACV,sBAAsB,EAAE,MAAM;KAC/B,CAAC,CAAC,CAAA;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,0BAA0B,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAA;IAClF,OAAO;QACL,MAAM,EAAE,gBAAgB,CAAC,2BAA2B,CAAC,GAAG,CAAC,CAAC;QAC1D,KAAK;QACL,GAAG,EAAE,EAAE,KAAK,EAAE,0BAA0B,EAAE,WAAW,EAAE,UAAU,EAAE;KACpE,CAAA;AACH,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,0BAA0B,CAAC,SAAiB,EAAE,GAAsB;IAClF,kBAAkB,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE;QAC7C,IAAI,OAAO,CAAC,sBAAsB,KAAK,SAAS;YAAE,OAAO,OAAO,CAAA;QAChE,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,CAAA;QAC3B,OAAO,IAAI,CAAC,sBAAsB,CAAA;QAClC,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mCAAmC,CACvD,GAAgB,EAChB,SAAiB,EACjB,GAAkC;IAElC,MAAM,UAAU,GAAyB,EAAE,CAAA;IAC3C,KAAK,MAAM,UAAU,IAAI,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,oBAAoB,CAAC,UAAU,CAAC,UAAU,EAAE;gBAC5E,WAAW,EAAE,CAAC;aACf,CAAC,CAAA;YACF,IACE,QAAQ,CAAC,qBAAqB,KAAK,IAAI,EACvC,CAAC;gBACD,8BAA8B,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,UAAU,CAAC,CAAA;YAC3E,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAC7B,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAC3B,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,EAAE;gBAC1B,OAAO,EAAE,MAAM;gBACf,MAAM,EAAE,0BAA0B;gBAClC,KAAK,EAAE,kBAAkB;gBACzB,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aAC1D,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAA;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,GAAgB,EAChB,SAAiB,EACjB,QAAgC,EAChC,GAAY;IAEZ,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO;SACjC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;SAChE,MAAM,CAAC,CAAC,KAAK,EAA6B,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAA;IAC/D,kBAAkB,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE;QACjD,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAA;QAC9C,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,CAAA;YAC1F,IAAI,QAAQ,GAAG,CAAC;gBAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;;gBACtC,QAAQ,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAA;QACtC,CAAC;QACD,MAAM,IAAI,GAAiB,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAA;QACnD,OAAO,IAAI,CAAC,QAAQ,CAAA;QACpB,IAAI,CAAC,YAAY,GAAG;YAClB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,KAAK,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC;SAC9C,CAAA;QACD,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"hook-acknowledgements.js","sourceRoot":"","sources":["../src/hook-acknowledgements.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  /** Canonical lifecycle event vocabulary shared by installation and execution. */
2
2
  import { type HookInstallableHarness } from './harnesses.js';
3
+ import { type HookHostPlatform } from './hook-adapter.js';
3
4
  /**
4
5
  * One harness-neutral table for the lifecycle events this CLI build serves.
5
6
  *
@@ -56,6 +57,13 @@ export declare const HOOK_EVENT_TABLE: readonly [{
56
57
  readonly openclaw: true;
57
58
  readonly opencodeDiscovery: true;
58
59
  readonly timeoutSeconds: 3;
60
+ }, {
61
+ readonly notifai: "attend";
62
+ readonly document: null;
63
+ readonly cursor: null;
64
+ readonly openclaw: false;
65
+ readonly opencodeDiscovery: false;
66
+ readonly timeoutSeconds: 0;
59
67
  }];
60
68
  export type HookEvent = (typeof HOOK_EVENT_TABLE)[number]['notifai'];
61
69
  export declare const HOOK_EVENTS: readonly HookEvent[];
@@ -69,5 +77,22 @@ export declare const HOOK_EVENT_COMMAND_RE: RegExp;
69
77
  */
70
78
  export declare const OPENCODE_EVENTS: (readonly ["SessionStart" | "SubagentStart" | "UserPromptSubmit" | "Stop" | "SessionEnd", "session-start" | "subagent-start" | "stop" | "user-prompt-submit" | "session-end"])[];
71
79
  export declare const OPENCLAW_EVENTS: (readonly ["SessionStart" | "SubagentStart" | "UserPromptSubmit" | "Stop" | "SessionEnd", "session-start" | "subagent-start" | "stop" | "user-prompt-submit" | "session-end"])[];
80
+ /**
81
+ * Where the Session Attendant handler is installed: SessionStart starts it,
82
+ * and UserPromptSubmit and Stop re-arm a session whose attendant died.
83
+ */
84
+ export declare const ATTEND_DOCUMENT_EVENTS: readonly ["SessionStart", "UserPromptSubmit", "Stop"];
85
+ /**
86
+ * The attend handler's events for one harness. Codex also needs Interrupt: an
87
+ * interrupted Codex turn fires Interrupt instead of Stop, and the attendant
88
+ * reads a Codex thread's activity from its own turn boundaries.
89
+ */
90
+ export declare function attendDocumentEvents(harness: HookInstallableHarness | undefined): readonly string[];
91
+ /**
92
+ * Whether this build installs the Session Attendant for a harness: Claude Code
93
+ * and Codex, on POSIX only. Claude Code on Windows has no session descriptor
94
+ * or inbox socket; Codex on Windows has no proven hook parent process.
95
+ */
96
+ export declare function installsSessionAttendant(harness: HookInstallableHarness | undefined, platform?: NodeJS.Platform | HookHostPlatform): boolean;
72
97
  /** Lifecycle handlers one installed harness must carry in this CLI build. */
73
- export declare function requiredHookEvents(harness: HookInstallableHarness): readonly HookEvent[];
98
+ export declare function requiredHookEvents(harness: HookInstallableHarness, platform?: NodeJS.Platform | HookHostPlatform): readonly HookEvent[];
@@ -1,5 +1,6 @@
1
1
  /** Canonical lifecycle event vocabulary shared by installation and execution. */
2
2
  import {} from './harnesses.js';
3
+ import { hookHostPlatform } from './hook-adapter.js';
3
4
  /**
4
5
  * One harness-neutral table for the lifecycle events this CLI build serves.
5
6
  *
@@ -63,6 +64,16 @@ export const HOOK_EVENT_TABLE = [
63
64
  opencodeDiscovery: true,
64
65
  timeoutSeconds: 3,
65
66
  },
67
+ {
68
+ // The Session Attendant. It is not one document event: it is installed
69
+ // as a second, asynchronous handler on each of ATTEND_DOCUMENT_EVENTS.
70
+ notifai: 'attend',
71
+ document: null,
72
+ cursor: null,
73
+ openclaw: false,
74
+ opencodeDiscovery: false,
75
+ timeoutSeconds: 0,
76
+ },
66
77
  ];
67
78
  export const HOOK_EVENTS = HOOK_EVENT_TABLE.map((row) => row.notifai);
68
79
  /** Alternation of Notifai hook-event tokens for command ownership regexes. */
@@ -75,10 +86,35 @@ export const HOOK_EVENT_COMMAND_RE = new RegExp(` hook (${HOOK_EVENT_PATTERN})\\
75
86
  */
76
87
  export const OPENCODE_EVENTS = HOOK_EVENT_TABLE.filter((row) => row.opencodeDiscovery && row.document !== null).map((row) => [row.document, row.notifai]);
77
88
  export const OPENCLAW_EVENTS = HOOK_EVENT_TABLE.filter((row) => row.openclaw && row.document !== null).map((row) => [row.document, row.notifai]);
89
+ /**
90
+ * Where the Session Attendant handler is installed: SessionStart starts it,
91
+ * and UserPromptSubmit and Stop re-arm a session whose attendant died.
92
+ */
93
+ export const ATTEND_DOCUMENT_EVENTS = ['SessionStart', 'UserPromptSubmit', 'Stop'];
94
+ /**
95
+ * The attend handler's events for one harness. Codex also needs Interrupt: an
96
+ * interrupted Codex turn fires Interrupt instead of Stop, and the attendant
97
+ * reads a Codex thread's activity from its own turn boundaries.
98
+ */
99
+ export function attendDocumentEvents(harness) {
100
+ return harness === 'codex' ? [...ATTEND_DOCUMENT_EVENTS, 'Interrupt'] : ATTEND_DOCUMENT_EVENTS;
101
+ }
102
+ /**
103
+ * Whether this build installs the Session Attendant for a harness: Claude Code
104
+ * and Codex, on POSIX only. Claude Code on Windows has no session descriptor
105
+ * or inbox socket; Codex on Windows has no proven hook parent process.
106
+ */
107
+ export function installsSessionAttendant(harness, platform) {
108
+ return (harness === 'claude-code' || harness === 'codex') && hookHostPlatform(platform) === 'posix';
109
+ }
78
110
  /** Lifecycle handlers one installed harness must carry in this CLI build. */
79
- export function requiredHookEvents(harness) {
111
+ export function requiredHookEvents(harness, platform) {
80
112
  if (harness === 'opencode' || harness === 'openclaw')
81
113
  return [];
82
- return HOOK_EVENT_TABLE.filter((row) => harness === 'cursor' ? row.cursor !== null : row.document !== null).map((row) => row.notifai);
114
+ return HOOK_EVENT_TABLE.filter((row) => row.notifai === 'attend'
115
+ ? installsSessionAttendant(harness, platform)
116
+ : harness === 'cursor'
117
+ ? row.cursor !== null
118
+ : row.document !== null).map((row) => row.notifai);
83
119
  }
84
120
  //# sourceMappingURL=hook-events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hook-events.js","sourceRoot":"","sources":["../src/hook-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook-events.js","sourceRoot":"","sources":["../src/hook-events.ts"],"names":[],"mappings":"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"}
@@ -51,6 +51,12 @@ export declare function runEscalationWaiter(ctx: HookContext, options: Escalatio
51
51
  * host adapter that has other routes still falls back to this one.
52
52
  */
53
53
  export declare function hookContinuationRoute(): EscalationDeliveryRoute;
54
+ /**
55
+ * Journal, then record, selected answers already written without a claim. A
56
+ * record that fails stays in this session's delivery journal, so the next
57
+ * hand-off here or the machine-wide sweep records it later.
58
+ */
59
+ export declare function reportHandedOffAfterTheFact(ctx: HookContext, sessionId: string, requestIds: readonly string[]): Promise<void>;
54
60
  /**
55
61
  * Claude Code gives SessionEnd hooks a 1.5-second shared budget and Codex 1
56
62
  * second, so this cannot make a network call. It drops the local marker — but