@raidiant/notifai 11.4.0-beta.2 → 11.4.1

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 (99) hide show
  1. package/CHANGELOG.md +28 -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 +63 -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 +64 -2
  30. package/dist/commands-hook-run.js.map +1 -1
  31. package/dist/commands-send.d.ts +1 -0
  32. package/dist/commands-send.js +123 -9
  33. package/dist/commands-send.js.map +1 -1
  34. package/dist/commands-update.js +22 -7
  35. package/dist/commands-update.js.map +1 -1
  36. package/dist/guidance-content.js +9 -35
  37. package/dist/guidance-content.js.map +1 -1
  38. package/dist/hook-acknowledgements.d.ts +29 -5
  39. package/dist/hook-acknowledgements.js +128 -45
  40. package/dist/hook-acknowledgements.js.map +1 -1
  41. package/dist/hook-events.d.ts +26 -1
  42. package/dist/hook-events.js +38 -2
  43. package/dist/hook-events.js.map +1 -1
  44. package/dist/hook-lifecycle.d.ts +6 -0
  45. package/dist/hook-lifecycle.js +304 -26
  46. package/dist/hook-lifecycle.js.map +1 -1
  47. package/dist/hook-question-lock.d.ts +18 -0
  48. package/dist/hook-question-lock.js +80 -57
  49. package/dist/hook-question-lock.js.map +1 -1
  50. package/dist/hook-question-retirement.d.ts +10 -2
  51. package/dist/hook-question-retirement.js +21 -4
  52. package/dist/hook-question-retirement.js.map +1 -1
  53. package/dist/hook-session-state.d.ts +90 -1
  54. package/dist/hook-session-state.js +201 -9
  55. package/dist/hook-session-state.js.map +1 -1
  56. package/dist/hook-types.d.ts +56 -2
  57. package/dist/injection-render.d.ts +36 -0
  58. package/dist/injection-render.js +61 -0
  59. package/dist/injection-render.js.map +1 -0
  60. package/dist/install-hooks.d.ts +14 -0
  61. package/dist/install-hooks.js +47 -2
  62. package/dist/install-hooks.js.map +1 -1
  63. package/dist/logging.d.ts +1 -1
  64. package/dist/logging.js +12 -0
  65. package/dist/logging.js.map +1 -1
  66. package/dist/process-identity.d.ts +26 -0
  67. package/dist/process-identity.js +82 -0
  68. package/dist/process-identity.js.map +1 -0
  69. package/dist/program.js +8 -7
  70. package/dist/program.js.map +1 -1
  71. package/dist/session-attendant-probe.d.ts +74 -0
  72. package/dist/session-attendant-probe.js +131 -0
  73. package/dist/session-attendant-probe.js.map +1 -0
  74. package/dist/session-attendant-state.d.ts +55 -0
  75. package/dist/session-attendant-state.js +176 -0
  76. package/dist/session-attendant-state.js.map +1 -0
  77. package/dist/session-attendant.d.ts +135 -0
  78. package/dist/session-attendant.js +493 -0
  79. package/dist/session-attendant.js.map +1 -0
  80. package/dist/session-delivery.d.ts +214 -0
  81. package/dist/session-delivery.js +562 -0
  82. package/dist/session-delivery.js.map +1 -0
  83. package/dist/session-handoff.d.ts +98 -0
  84. package/dist/session-handoff.js +118 -0
  85. package/dist/session-handoff.js.map +1 -0
  86. package/dist/session-message-handoff.d.ts +35 -0
  87. package/dist/session-message-handoff.js +100 -0
  88. package/dist/session-message-handoff.js.map +1 -0
  89. package/dist/skill-source/manifest.json +20 -4
  90. package/dist/skill-source/notifai/SKILL.md +19 -57
  91. package/dist/skill-source/notifai/references/diagnostics.md +31 -0
  92. package/dist/skill-source/notifai/references/harness-setup.md +3 -0
  93. package/dist/skill-source/notifai/references/notes-and-edits.md +38 -0
  94. package/dist/skill-source/notifai/references/send-details.md +14 -0
  95. package/dist/skill-source/notifai/references/writing-examples.md +56 -0
  96. package/dist/wake-support.d.ts +33 -1
  97. package/dist/wake-support.js +65 -8
  98. package/dist/wake-support.js.map +1 -1
  99. package/package.json +2 -2
@@ -1,9 +1,57 @@
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
+ /** Presented messages only: queued Codex input cannot hold its preceding turn. */
13
+ export function presentedMessageAcknowledgements(state) {
14
+ return (state.message_acknowledgement_due ?? []).filter((entry) => entry.queued_context === undefined);
15
+ }
16
+ /** Every presented acknowledgement this session still owes, request debt first. */
17
+ export function owedAcknowledgements(state) {
18
+ return [...(state.acknowledgement_due ?? []), ...presentedMessageAcknowledgements(state)];
19
+ }
20
+ /** Exact queued text entering the owning Codex turn proves presentation, not action. */
21
+ export function observeQueuedMessagePrompt(sessionId, env, prompt) {
22
+ if (prompt === undefined)
23
+ return [];
24
+ const presentedIds = [];
25
+ updateSessionState(sessionId, env, (current) => {
26
+ if (!(current.message_acknowledgement_due ?? []).some((entry) => entry.queued_context === prompt))
27
+ return current;
28
+ return {
29
+ ...current,
30
+ message_acknowledgement_due: current.message_acknowledgement_due.map((entry) => {
31
+ if (entry.queued_context !== prompt)
32
+ return entry;
33
+ presentedIds.push(entry.message_id);
34
+ const presented = { ...entry };
35
+ delete presented.queued_context;
36
+ return presented;
37
+ }),
38
+ };
39
+ });
40
+ return presentedIds;
41
+ }
42
+ /**
43
+ * Record the acknowledgement a Session Message is owed, before it is written:
44
+ * an agent that acknowledges the moment it reads the message must find the
45
+ * debt already there to clear.
46
+ */
47
+ export function recordMessageAcknowledgementDue(sessionId, env, due) {
48
+ updateSessionState(sessionId, env, (current) => {
49
+ const owed = current.message_acknowledgement_due ?? [];
50
+ if (owed.some((entry) => entry.message_id === due.message_id))
51
+ return current;
52
+ return { ...current, message_acknowledgement_due: [...owed, due] };
53
+ });
54
+ }
7
55
  /**
8
56
  * The answer as the agent should read it. For a question with choices the
9
57
  * latest reply IS the answer — an earlier conflicting one was corrected by
@@ -24,35 +72,14 @@ function answerContext(answered) {
24
72
  const identity = answeredQuestionIds.length === 0
25
73
  ? ''
26
74
  : `question_id${answeredQuestionIds.length === 1 ? '' : 's'} ${answeredQuestionIds.join(', ')}, `;
27
- const question = `question ${JSON.stringify(pending.question)}`;
75
+ const question = `question ${quoted(pending.question)}`;
28
76
  if (replies.length === 1 || pendingHasChoices(pending)) {
29
- return `Notifai — ${identity}${question}; the user answered ${JSON.stringify(latest.text)}.`;
77
+ return `Notifai — ${identity}${question}; the user answered ${quoted(latest.text)}.`;
30
78
  }
31
- const parts = replies.map((reply) => JSON.stringify(reply.text)).join(', then ');
79
+ const parts = replies.map((reply) => quoted(reply.text)).join(', then ');
32
80
  return (`Notifai — ${identity}${question}; the user answered in ${replies.length} parts, ` +
33
81
  `in the order written: ${parts}. Later parts extend or correct earlier ones.`);
34
82
  }
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
83
  function acknowledgementContext(answered) {
57
84
  const due = answered.filter((entry) => entry.pending.request_id !== undefined);
58
85
  if (due.length === 0) {
@@ -77,22 +104,28 @@ function acknowledgementContext(answered) {
77
104
  commands +
78
105
  ACKNOWLEDGEMENT_SCOPE);
79
106
  }
107
+ /**
108
+ * Every answer that has arrived, as one message. Several registered questions
109
+ * may resolve in one hook pass; the agent reads them together, each answer
110
+ * tied to the question that asked it, with a truthful note about anything
111
+ * still waiting.
112
+ */
80
113
  export function answersContext(answered, remaining) {
81
114
  const tail = remaining > 0
82
115
  ? ` (${remaining} more registered question${remaining === 1 ? ' is' : 's are'} still waiting for an answer.)`
83
116
  : '';
84
- const guidance = acknowledgementContext(answered);
117
+ const guidance = acknowledgementContext(answered) + TRANSPORT_LIMIT;
85
118
  if (answered.length === 1) {
86
119
  return answerContext(answered[0]) + tail + guidance;
87
120
  }
88
121
  const lines = answered.map(({ pending, replies }) => {
89
122
  const latest = replies.at(-1);
90
123
  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)`;
124
+ ? quoted(latest.text)
125
+ : `${replies.map((reply) => quoted(reply.text)).join(', then ')} (parts in the order written; later parts extend or correct earlier ones)`;
93
126
  const ids = [...new Set(latest.answers.map((entry) => entry.question_id))];
94
127
  const identity = ids.length === 0 ? '' : `question_id${ids.length === 1 ? '' : 's'} ${ids.join(', ')}: `;
95
- return `- ${identity}${JSON.stringify(pending.question)} → ${answer}`;
128
+ return `- ${identity}${quoted(pending.question)} → ${answer}`;
96
129
  });
97
130
  return `Notifai — the user answered ${answered.length} questions:\n${lines.join('\n')}${tail}${guidance}`;
98
131
  }
@@ -250,7 +283,11 @@ export function recoverQueuedAnswers(sessionId, env) {
250
283
  ? archiveQueuedAnswers(current, current.accepted)
251
284
  : current);
252
285
  }
253
- export function clearAcknowledgementObligation(sessionId, env, requestId) {
286
+ /** Forget one owed acknowledgement, dispatched by identifier: `sm_…` or a request id. */
287
+ export function clearAcknowledgementObligation(sessionId, env, id) {
288
+ if (id.startsWith(SESSION_MESSAGE_ID_PREFIX))
289
+ return clearMessageAcknowledgement(sessionId, env, id);
290
+ const requestId = id;
254
291
  let cleared = false;
255
292
  updateSessionState(sessionId, env, (current) => {
256
293
  const due = current.acknowledgement_due ?? [];
@@ -272,13 +309,44 @@ export function clearAcknowledgementObligation(sessionId, env, requestId) {
272
309
  });
273
310
  return cleared;
274
311
  }
312
+ function clearMessageAcknowledgement(sessionId, env, messageId) {
313
+ let cleared = false;
314
+ updateSessionState(sessionId, env, (current) => {
315
+ const due = current.message_acknowledgement_due ?? [];
316
+ const remaining = due.filter((entry) => entry.message_id !== messageId);
317
+ cleared = remaining.length !== due.length;
318
+ if (!cleared)
319
+ return current;
320
+ const next = { ...current };
321
+ if (remaining.length > 0)
322
+ next.message_acknowledgement_due = remaining;
323
+ else
324
+ delete next.message_acknowledgement_due;
325
+ return next;
326
+ });
327
+ return cleared;
328
+ }
275
329
  export function acknowledgementBlockContext(due) {
330
+ const anyTextRequired = due.some((entry) => entry.text_required !== false);
276
331
  const commands = due
277
- .map((entry) => `- ${entry.request_id}: \`${acknowledgementCommand(entry.request_id, entry.text_required !== false)}\``)
332
+ .map((entry) => {
333
+ const id = owedAcknowledgementId(entry);
334
+ return `- ${id}: \`${acknowledgementCommand(id, entry.text_required !== false)}\``;
335
+ })
278
336
  .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}` +
337
+ const requests = due.filter((entry) => !('message_id' in entry));
338
+ const messages = due.filter((entry) => 'message_id' in entry);
339
+ const subjects = [
340
+ ...(requests.length === 0
341
+ ? []
342
+ : [`request${requests.length === 1 ? '' : 's'} ${requests.map((entry) => entry.request_id).join(', ')}`]),
343
+ ...(messages.length === 0
344
+ ? []
345
+ : [`message${messages.length === 1 ? '' : 's'} ${messages.map((entry) => entry.message_id).join(', ')}`]),
346
+ ].join(' and ');
347
+ const cause = requests.length === 0 ? 'message' : 'reply';
348
+ return (`Notifai — required Agent Acknowledgement${due.length === 1 ? '' : 's'} still missing for ${subjects}. ` +
349
+ `Before doing more resumed work or ending this turn, run ${due.length === 1 ? 'this command' : 'every command'}${acknowledgementDemand(anyTextRequired, cause)}:\n${commands}` +
282
350
  ACKNOWLEDGEMENT_SCOPE);
283
351
  }
284
352
  /**
@@ -301,17 +369,17 @@ const MAX_ACKNOWLEDGEMENT_BLOCKS = 3;
301
369
  export function holdForAcknowledgement(ctx, sessionId, due, notes) {
302
370
  if (due.length === 0)
303
371
  return null;
304
- const requestIds = due.map((entry) => entry.request_id);
372
+ const ids = subjectIds(due);
305
373
  const blocks = (readSessionState(sessionId, ctx.env).acknowledgement_blocks ?? 0) + 1;
306
374
  if (blocks > MAX_ACKNOWLEDGEMENT_BLOCKS) {
307
375
  // Drop the obligation with the reason recorded. The answer was already
308
376
  // delivered; what is lost is the agent's receipt for it, and the log is
309
377
  // where that loss stays visible.
310
- for (const requestId of requestIds)
311
- clearAcknowledgementObligation(sessionId, ctx.env, requestId);
378
+ for (const owed of due)
379
+ clearAcknowledgementObligation(sessionId, ctx.env, owedAcknowledgementId(owed));
312
380
  resetAcknowledgementBlocks(sessionId, ctx.env);
313
381
  gate(ctx, 'proceeding', 'acknowledgement-abandoned', {
314
- request_ids: requestIds,
382
+ ...ids,
315
383
  blocks: blocks - 1,
316
384
  limit: MAX_ACKNOWLEDGEMENT_BLOCKS,
317
385
  });
@@ -322,11 +390,20 @@ export function holdForAcknowledgement(ctx, sessionId, due, notes) {
322
390
  ...current,
323
391
  acknowledgement_blocks: blocks,
324
392
  }));
325
- gate(ctx, 'held', 'acknowledgement-required', { request_ids: requestIds, blocks });
393
+ gate(ctx, 'held', 'acknowledgement-required', { ...ids, blocks });
326
394
  return {
327
395
  stdout: stopAnswerOutput(acknowledgementBlockContext(due)),
328
396
  notes,
329
- log: { stage: 'acknowledgement-required', request_ids: requestIds },
397
+ log: { stage: 'acknowledgement-required', ...ids },
398
+ };
399
+ }
400
+ /** Log fields naming owed acknowledgements; `request_ids` keeps its released meaning. */
401
+ function subjectIds(due) {
402
+ const requestIds = due.flatMap((entry) => ('message_id' in entry ? [] : [entry.request_id]));
403
+ const messageIds = due.flatMap((entry) => ('message_id' in entry ? [entry.message_id] : []));
404
+ return {
405
+ ...(requestIds.length === 0 && messageIds.length > 0 ? {} : { request_ids: requestIds }),
406
+ ...(messageIds.length === 0 ? {} : { message_ids: messageIds }),
330
407
  };
331
408
  }
332
409
  /** A turn that was not held resets the streak; only consecutive holds count. */
@@ -339,15 +416,21 @@ export function resetAcknowledgementBlocks(sessionId, env) {
339
416
  return next;
340
417
  });
341
418
  }
419
+ /**
420
+ * Ask the service which owed acknowledgements now exist and forget those.
421
+ * Returns what is still owed; a failed check counts as still owed.
422
+ */
342
423
  export async function reconcileAcknowledgementObligations(ctx, sessionId, due) {
343
424
  const unresolved = [];
344
425
  for (const obligation of due) {
426
+ const id = owedAcknowledgementId(obligation);
345
427
  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);
428
+ const acknowledgement = 'message_id' in obligation
429
+ ? (await ctx.client.sessionMessageAcknowledgement(obligation.message_id)).agent_acknowledgement
430
+ : (await ctx.client.agentAcknowledgement(obligation.request_id, { waitSeconds: 0 }))
431
+ .agent_acknowledgement;
432
+ if (acknowledgement !== null) {
433
+ clearAcknowledgementObligation(sessionId, ctx.env, id);
351
434
  }
352
435
  else {
353
436
  unresolved.push(obligation);
@@ -359,7 +442,7 @@ export async function reconcileAcknowledgementObligations(ctx, sessionId, due) {
359
442
  verdict: 'held',
360
443
  reason: 'acknowledgement-required',
361
444
  stage: 'reconcile-failed',
362
- request_id: obligation.request_id,
445
+ ...('message_id' in obligation ? { message_id: id } : { request_id: id }),
363
446
  message: err instanceof Error ? err.message : String(err),
364
447
  });
365
448
  }
@@ -1 +1 @@
1
- {"version":3,"file":"hook-acknowledgements.js","sourceRoot":"","sources":["../src/hook-acknowledgements.ts"],"names":[],"mappings":"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"}
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,EACL,qBAAqB,EACrB,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,MAAM,GACP,MAAM,uBAAuB,CAAA;AAC9B,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;AAChC,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAatE,MAAM,UAAU,qBAAqB,CAAC,IAAyB;IAC7D,OAAO,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAA;AACjE,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,gCAAgC,CAAC,KAAmB;IAClE,OAAO,CAAC,KAAK,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,CAAC,CAAA;AACxG,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,oBAAoB,CAAC,KAAmB;IACtD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,EAAE,GAAG,gCAAgC,CAAC,KAAK,CAAC,CAAC,CAAA;AAC3F,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,0BAA0B,CAAC,SAAiB,EAAE,GAAsB,EAAE,MAA0B;IAC9G,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,CAAA;IACnC,MAAM,YAAY,GAAa,EAAE,CAAA;IACjC,kBAAkB,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE;QAC7C,IAAI,CAAC,CAAC,OAAO,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,KAAK,MAAM,CAAC;YAAE,OAAO,OAAO,CAAA;QACjH,OAAO;YACL,GAAG,OAAO;YACV,2BAA2B,EAAE,OAAO,CAAC,2BAA4B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC9E,IAAI,KAAK,CAAC,cAAc,KAAK,MAAM;oBAAE,OAAO,KAAK,CAAA;gBACjD,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;gBACnC,MAAM,SAAS,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;gBAC9B,OAAO,SAAS,CAAC,cAAc,CAAA;gBAC/B,OAAO,SAAS,CAAA;YAClB,CAAC,CAAC;SACH,CAAA;IACH,CAAC,CAAC,CAAA;IACF,OAAO,YAAY,CAAA;AACrB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,+BAA+B,CAC7C,SAAiB,EACjB,GAAsB,EACtB,GAA8B;IAE9B,kBAAkB,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE;QAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,2BAA2B,IAAI,EAAE,CAAA;QACtD,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,GAAG,CAAC,UAAU,CAAC;YAAE,OAAO,OAAO,CAAA;QAC7E,OAAO,EAAE,GAAG,OAAO,EAAE,2BAA2B,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,CAAA;IACpE,CAAC,CAAC,CAAA;AACJ,CAAC;AACD;;;;;;;;;;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,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAA;IACvD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;QACvD,OAAO,aAAa,QAAQ,GAAG,QAAQ,uBAAuB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAA;IACtF,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACxE,OAAO,CACL,aAAa,QAAQ,GAAG,QAAQ,0BAA0B,OAAO,CAAC,MAAM,UAAU;QAClF,yBAAyB,KAAK,+CAA+C,CAC9E,CAAA;AACH,CAAC;AAED,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;;;;;GAKG;AACH,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,GAAG,eAAe,CAAA;IACnE,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,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,2EAA2E,CAAA;QAC9I,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,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,MAAM,EAAE,CAAA;IAC/D,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,yFAAyF;AACzF,MAAM,UAAU,8BAA8B,CAC5C,SAAiB,EACjB,GAAsB,EACtB,EAAU;IAEV,IAAI,EAAE,CAAC,UAAU,CAAC,yBAAyB,CAAC;QAAE,OAAO,2BAA2B,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAA;IACpG,MAAM,SAAS,GAAG,EAAE,CAAA;IACpB,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,SAAS,2BAA2B,CAAC,SAAiB,EAAE,GAAsB,EAAE,SAAiB;IAC/F,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,kBAAkB,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE;QAC7C,MAAM,GAAG,GAAG,OAAO,CAAC,2BAA2B,IAAI,EAAE,CAAA;QACrD,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAA;QACvE,OAAO,GAAG,SAAS,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,CAAA;QACzC,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,2BAA2B,GAAG,SAAS,CAAA;;YACjE,OAAO,IAAI,CAAC,2BAA2B,CAAA;QAC5C,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;IACF,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,GAAmC;IAC7E,MAAM,eAAe,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,aAAa,KAAK,KAAK,CAAC,CAAA;IAC1E,MAAM,QAAQ,GAAG,GAAG;SACjB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,MAAM,EAAE,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;QACvC,OAAO,KAAK,EAAE,OAAO,sBAAsB,CAAC,EAAE,EAAE,KAAK,CAAC,aAAa,KAAK,KAAK,CAAC,IAAI,CAAA;IACpF,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAA;IACb,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAA+B,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,KAAK,CAAC,CAAC,CAAA;IAC7F,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAsC,EAAE,CAAC,YAAY,IAAI,KAAK,CAAC,CAAA;IACjG,MAAM,QAAQ,GAAG;QACf,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YACvB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,UAAU,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3G,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YACvB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,UAAU,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KAC5G,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACf,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAA;IACzD,OAAO,CACL,2CAA2C,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,sBAAsB,QAAQ,IAAI;QACxG,2DAA2D,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,GAAG,qBAAqB,CAAC,eAAe,EAAE,KAAK,CAAC,MAAM,QAAQ,EAAE;QAC9K,qBAAqB,CACtB,CAAA;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,0BAA0B,GAAG,CAAC,CAAA;AAEpC;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,GAAgB,EAChB,SAAiB,EACjB,GAAmC,EACnC,KAAe;IAEf,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACjC,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3B,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,IAAI,IAAI,GAAG;YAAE,8BAA8B,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAA;QACvG,0BAA0B,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;QAC9C,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,2BAA2B,EAAE;YACnD,GAAG,GAAG;YACN,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,GAAG,GAAG,EAAE,MAAM,EAAE,CAAC,CAAA;IACjE,OAAO;QACL,MAAM,EAAE,gBAAgB,CAAC,2BAA2B,CAAC,GAAG,CAAC,CAAC;QAC1D,KAAK;QACL,GAAG,EAAE,EAAE,KAAK,EAAE,0BAA0B,EAAE,GAAG,GAAG,EAAE;KACnD,CAAA;AACH,CAAC;AAED,yFAAyF;AACzF,SAAS,UAAU,CAAC,GAAmC;IACrD,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,YAAY,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IAC5F,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,YAAY,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC5F,OAAO;QACL,GAAG,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;QACxF,GAAG,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;KAChE,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;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mCAAmC,CACvD,GAAgB,EAChB,SAAiB,EACjB,GAAiB;IAEjB,MAAM,UAAU,GAAQ,EAAE,CAAA;IAC1B,KAAK,MAAM,UAAU,IAAI,GAAG,EAAE,CAAC;QAC7B,MAAM,EAAE,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAA;QAC5C,IAAI,CAAC;YACH,MAAM,eAAe,GACnB,YAAY,IAAI,UAAU;gBACxB,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,6BAA6B,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,qBAAqB;gBAC/F,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,oBAAoB,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC;qBAC/E,qBAAqB,CAAA;YAC9B,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;gBAC7B,8BAA8B,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YACxD,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,GAAG,CAAC,YAAY,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBACzE,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,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