@scotthuang/agent-knock-knock 0.13.0 → 0.13.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.
@@ -1,9 +1,21 @@
1
1
  import { createHash } from "node:crypto";
2
+ export const CLAUDE_NATIVE_QUESTIONNAIRE_PROFILES = Object.freeze({
3
+ "2.1.263": "claude-code/2.1.263/ask-user-question-v1",
4
+ "2.1.266": "claude-code/2.1.266/ask-user-question-v1",
5
+ "2.1.267": "claude-code/2.1.267/ask-user-question-v1"
6
+ });
2
7
  export const NATIVE_QUESTIONNAIRE_PROFILES = Object.freeze({
3
- claude: "claude-code/2.1.263/ask-user-question-v1",
8
+ // Compatibility export for the original questionnaire profile. New Claude
9
+ // versions resolve through claudeNativeQuestionnaireProfile so their
10
+ // fingerprints and durable interaction ids stay version-bound.
11
+ claude: CLAUDE_NATIVE_QUESTIONNAIRE_PROFILES["2.1.263"],
4
12
  codex: "codex/0.153.4/request-user-input-v3"
5
13
  });
6
- const CLAUDE_VERSION = "2.1.263";
14
+ export function claudeNativeQuestionnaireProfile(version) {
15
+ return Object.hasOwn(CLAUDE_NATIVE_QUESTIONNAIRE_PROFILES, version)
16
+ ? CLAUDE_NATIVE_QUESTIONNAIRE_PROFILES[version]
17
+ : undefined;
18
+ }
7
19
  const CODEX_VERSION = "0.153.4";
8
20
  const MAX_CAPTURE_CHARACTERS = 128 * 1024;
9
21
  const MAX_CAPTURE_LINES = 240;
@@ -157,13 +169,14 @@ function inspectClaudeQuestionnaire(options, screen) {
157
169
  return { status: "none", agent: "claude", reason: "no_questionnaire_surface" };
158
170
  }
159
171
  const bounds = candidateBounds(screen.lines, (line) => /^← [☐☒]/u.test(line) || /^ [☐☒] \S/u.test(line));
160
- if (options.version !== CLAUDE_VERSION) {
172
+ const profile = claudeNativeQuestionnaireProfile(options.version);
173
+ if (!profile) {
161
174
  return manualCandidate("claude", `claude-code/${options.version}/unsupported-questionnaire`, screen.lines, bounds, "unsupported_version");
162
175
  }
163
176
  if (screen.hadUnsafeControl) {
164
- return manualCandidate("claude", NATIVE_QUESTIONNAIRE_PROFILES.claude, screen.lines, bounds, "changed_shape");
177
+ return manualCandidate("claude", profile, screen.lines, bounds, "changed_shape");
165
178
  }
166
- const finalReview = parseClaudeFinalReview(screen.lines);
179
+ const finalReview = parseClaudeFinalReview(screen.lines, profile);
167
180
  if (finalReview) {
168
181
  return options.secret === true ||
169
182
  SECRET_INPUT_PATTERN.test(finalReview.prompt_evidence.exact_region)
@@ -175,7 +188,7 @@ function inspectClaudeQuestionnaire(options, screen) {
175
188
  }
176
189
  : finalReview;
177
190
  }
178
- const customTextEdit = parseClaudeCustomTextEdit(screen.lines);
191
+ const customTextEdit = parseClaudeCustomTextEdit(screen.lines, profile);
179
192
  if (customTextEdit) {
180
193
  return isSecretQuestion(options.secret, customTextEdit.question)
181
194
  ? {
@@ -188,9 +201,9 @@ function inspectClaudeQuestionnaire(options, screen) {
188
201
  }
189
202
  const choiceRegion = parseClaudeChoiceRegion(screen.lines);
190
203
  if (!choiceRegion) {
191
- return manualCandidate("claude", NATIVE_QUESTIONNAIRE_PROFILES.claude, screen.lines, bounds, "changed_shape");
204
+ return manualCandidate("claude", profile, screen.lines, bounds, "changed_shape");
192
205
  }
193
- return claudeChoiceInspection(choiceRegion, screen.lines, options.secret);
206
+ return claudeChoiceInspection(choiceRegion, screen.lines, options.secret, profile);
194
207
  }
195
208
  function parseClaudeHeader(line) {
196
209
  const single = /^ ☐ (\S.*)$/u.exec(line);
@@ -331,21 +344,21 @@ function normalizedOptions(profile, prompt, rows) {
331
344
  ...(row.description === undefined ? {} : { description: row.description })
332
345
  }));
333
346
  }
334
- function claudeChoiceInspection(region, lines, explicitSecret) {
347
+ function claudeChoiceInspection(region, lines, explicitSecret, profile) {
335
348
  const multiSelect = region.options.every((option) => /^\[(?: |\u2714)\] /u.test(option.label));
336
349
  const mixedKinds = !multiSelect && region.options.some((option) => /^\[[^\]]*\] /u.test(option.label));
337
- const options = normalizedOptions(NATIVE_QUESTIONNAIRE_PROFILES.claude, region.prompt, region.options);
350
+ const options = normalizedOptions(profile, region.prompt, region.options);
338
351
  const question = {
339
- question_id: semanticId("question", NATIVE_QUESTIONNAIRE_PROFILES.claude, region.prompt, region.header.currentStep),
352
+ question_id: semanticId("question", profile, region.prompt, region.header.currentStep),
340
353
  prompt: region.prompt,
341
354
  response_kind: multiSelect ? "multi_select" : "single_select",
342
355
  required: true,
343
356
  options
344
357
  };
345
- const evidence = promptEvidence(NATIVE_QUESTIONNAIRE_PROFILES.claude, lines, region.start, region.end, region.footer);
358
+ const evidence = promptEvidence(profile, lines, region.start, region.end, region.footer);
346
359
  const base = {
347
360
  agent: "claude",
348
- profile: NATIVE_QUESTIONNAIRE_PROFILES.claude,
361
+ profile,
349
362
  current_step: region.header.currentStep,
350
363
  total_steps: region.header.totalSteps,
351
364
  question,
@@ -378,7 +391,7 @@ function claudeChoiceInspection(region, lines, explicitSecret) {
378
391
  }
379
392
  };
380
393
  }
381
- function parseClaudeFinalReview(lines) {
394
+ function parseClaudeFinalReview(lines, profile) {
382
395
  const readyIndex = lastIndexMatching(lines, (line) => line === "Ready to submit your answers?");
383
396
  const afterReady = lines.slice(readyIndex + 1).filter((line) => line !== "");
384
397
  if (readyIndex < 2 ||
@@ -403,7 +416,7 @@ function parseClaudeFinalReview(lines) {
403
416
  }
404
417
  const end = lines.length - 1;
405
418
  const question = {
406
- question_id: semanticId("question", NATIVE_QUESTIONNAIRE_PROFILES.claude, "final-review", header.totalSteps),
419
+ question_id: semanticId("question", profile, "final-review", header.totalSteps),
407
420
  prompt: "Ready to submit your answers?",
408
421
  response_kind: "confirm",
409
422
  required: true
@@ -411,11 +424,11 @@ function parseClaudeFinalReview(lines) {
411
424
  return {
412
425
  status: "actionable",
413
426
  agent: "claude",
414
- profile: NATIVE_QUESTIONNAIRE_PROFILES.claude,
427
+ profile,
415
428
  current_step: header.currentStep,
416
429
  total_steps: header.totalSteps,
417
430
  question,
418
- prompt_evidence: promptEvidence(NATIVE_QUESTIONNAIRE_PROFILES.claude, lines, start, end),
431
+ prompt_evidence: promptEvidence(profile, lines, start, end),
419
432
  action_plan: {
420
433
  kind: "confirm",
421
434
  confirm_stages: [{ kind: "key", key: "1" }],
@@ -423,7 +436,7 @@ function parseClaudeFinalReview(lines) {
423
436
  }
424
437
  };
425
438
  }
426
- function parseClaudeCustomTextEdit(lines) {
439
+ function parseClaudeCustomTextEdit(lines, profile) {
427
440
  const editIndex = lastIndexMatching(lines, (line) => line.includes("ctrl+g to edit in Vim"));
428
441
  if (editIndex < 0 ||
429
442
  editIndex !== lines.length - 1 ||
@@ -456,7 +469,7 @@ function parseClaudeCustomTextEdit(lines) {
456
469
  return undefined;
457
470
  }
458
471
  const question = {
459
- question_id: semanticId("question", NATIVE_QUESTIONNAIRE_PROFILES.claude, prompt, "custom-text"),
472
+ question_id: semanticId("question", profile, prompt, "custom-text"),
460
473
  prompt,
461
474
  response_kind: "free_text",
462
475
  required: true
@@ -464,11 +477,11 @@ function parseClaudeCustomTextEdit(lines) {
464
477
  return {
465
478
  status: "actionable",
466
479
  agent: "claude",
467
- profile: NATIVE_QUESTIONNAIRE_PROFILES.claude,
480
+ profile,
468
481
  current_step: header.currentStep,
469
482
  total_steps: header.totalSteps,
470
483
  question,
471
- prompt_evidence: promptEvidence(NATIVE_QUESTIONNAIRE_PROFILES.claude, lines, start, editIndex),
484
+ prompt_evidence: promptEvidence(profile, lines, start, editIndex),
472
485
  action_plan: {
473
486
  kind: "free_text",
474
487
  stages: [
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-questionnaire-adapter.js","sourceRoot":"","sources":["../../src/terminal-questionnaire-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-questionnaire-adapter.js","sourceRoot":"","sources":["../../src/terminal-questionnaire-adapter.ts"],"names":[],"mappings":"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"}
@@ -307,6 +307,114 @@ export function terminalWatchCallbackMessage(input) {
307
307
  : [])
308
308
  ].join("\n");
309
309
  }
310
+ /**
311
+ * v1 and early-v2 Watches persisted the complete callback envelope before the
312
+ * callback presentation gained `watch_origin`, `watch_mode`, and `confidence`.
313
+ * Keep the two exact predecessor presentations readable: the route, delivery
314
+ * identity, Watch/terminal source, event identity, and response bit remain
315
+ * validated separately and are never inferred or relaxed.
316
+ *
317
+ * Do not reuse `terminalWatchCallbackMessage` here. This is intentionally a
318
+ * frozen compatibility projection for envelopes already persisted by
319
+ * 8d0db82 (human-started Watch) and 23fe415 (user-explicit fallback Watch).
320
+ */
321
+ function predecessorTerminalWatchCallbackEnvelope(watch, notification, route) {
322
+ if (notification.kind === "interaction_required" ||
323
+ notification.kind === "interaction_manual_required" ||
324
+ isTerminalActivityWatch(watch)) {
325
+ return undefined;
326
+ }
327
+ const humanStarted = watch.anchor.schema ===
328
+ "agent-knock-knock/codex-human-started-active-task-anchor" ||
329
+ watch.anchor.schema ===
330
+ "agent-knock-knock/claude-human-started-active-task-anchor";
331
+ const userExplicitFallback = isUserExplicitFallbackWatch(watch);
332
+ if (!humanStarted && !userExplicitFallback)
333
+ return undefined;
334
+ const event = notification.kind === "approval"
335
+ ? "approval_required"
336
+ : notification.kind;
337
+ const reasonCode = notification.kind === "approval"
338
+ ? notification.reason_code
339
+ : notification.reason_code ?? watch.settlement?.reason_code;
340
+ const eventInstruction = event === "approval_required"
341
+ ? "Tell the user that the observed TUI task is waiting for approval and ask the human to inspect and decide in the named live TUI. Do not call any AKK approval tool or action, do not send approval keys, and do not use autoApprove."
342
+ : event === "completed"
343
+ ? userExplicitFallback
344
+ ? "Tell the user that the request delivered through AKK's user-explicit unmanaged fallback completed and summarize only the bounded completion text below."
345
+ : "Tell the user that the human-started TUI task completed and summarize only the bounded completion text below."
346
+ : "Tell the user that Terminal Watch stopped without a verified successful completion and explain the exact reason below.";
347
+ const completionText = notification.kind === "completed" ||
348
+ notification.kind === "failed"
349
+ ? watch.settlement?.completion_text
350
+ : undefined;
351
+ const body = [
352
+ "Continue this controller conversation from the Agent Knock Knock Terminal Watch event below.",
353
+ userExplicitFallback
354
+ ? "AKK delivered this exact request through terminal_user_explicit unmanaged fallback and then attached Terminal Watch. It is not a managed AKK Turn."
355
+ : "This is an observation of a task started by the human directly in Codex or Claude Code. It is not an AKK Turn and AKK did not send terminal input.",
356
+ eventInstruction,
357
+ "Do not poll files, processes, terminal panes, stdout, or stderr. Use only this structured event.",
358
+ "",
359
+ `[AKK Terminal Watch: ${event}]`,
360
+ `Watch: ${watch.watch_id}`,
361
+ `Terminal: ${watch.terminal.terminal_id}`,
362
+ `Agent: ${watch.agent}`,
363
+ ...(reasonCode ? [`Detail: ${reasonCode}`] : []),
364
+ ...(completionText
365
+ ? ["", "Bounded completion text:", completionText]
366
+ : [])
367
+ ].join("\n");
368
+ return createCallbackEnvelope({
369
+ route,
370
+ deliveryId: notification.notification_id,
371
+ idempotencyKey: notification.idempotency_key,
372
+ source: {
373
+ kind: "terminal_watch",
374
+ watch_id: watch.watch_id,
375
+ terminal_id: watch.terminal.terminal_id
376
+ },
377
+ event: {
378
+ id: notification.notification_id,
379
+ type: event,
380
+ body,
381
+ requires_response: true,
382
+ metadata: {
383
+ agent: watch.agent,
384
+ ...(reasonCode ? { reason_code: reasonCode } : {}),
385
+ ...(completionText ? { completion_text: completionText } : {})
386
+ }
387
+ }
388
+ });
389
+ }
390
+ /**
391
+ * A predecessor file is validated against its exact historical presentation
392
+ * before this in-memory migration runs. Returning the current deterministic
393
+ * envelope keeps all public validation and every subsequently-saved v3 record
394
+ * strict; merely reading a legacy file does not rewrite Store history.
395
+ */
396
+ function upgradePredecessorCallbackPresentations(watch) {
397
+ let changed = false;
398
+ const notificationOutbox = watch.notification_outbox.map((notification) => {
399
+ if (notification.callback_route === undefined ||
400
+ notification.callback_envelope === undefined) {
401
+ return notification;
402
+ }
403
+ const route = parseCallbackRoute(notification.callback_route);
404
+ const predecessor = predecessorTerminalWatchCallbackEnvelope(watch, notification, route);
405
+ if (predecessor === undefined ||
406
+ canonicalJson(notification.callback_envelope) !==
407
+ canonicalJson(predecessor)) {
408
+ return notification;
409
+ }
410
+ changed = true;
411
+ return {
412
+ ...notification,
413
+ callback_envelope: terminalWatchCallbackEnvelope(watch, notification, route)
414
+ };
415
+ });
416
+ return changed ? { ...watch, notification_outbox: notificationOutbox } : watch;
417
+ }
310
418
  export class TerminalWatchConflictError extends Error {
311
419
  code = "AKK_TERMINAL_WATCH_CONFLICT";
312
420
  watchId;
@@ -570,6 +678,9 @@ const NOTIFICATION_SHAPES = {
570
678
  superseded: [0, ["superseded_at"]]
571
679
  };
572
680
  export function assertTerminalWatch(value, expectedWatchId, options = {}) {
681
+ assertTerminalWatchRecord(value, expectedWatchId, options);
682
+ }
683
+ function assertTerminalWatchRecord(value, expectedWatchId, options) {
573
684
  assertStrictRecord(value, "terminal Watch", WATCH_FIELDS);
574
685
  if (expectedWatchId !== undefined && value.watch_id !== expectedWatchId) {
575
686
  throw new Error(`terminal Watch id ${String(value.watch_id)} does not match ${expectedWatchId}`);
@@ -642,7 +753,7 @@ export function assertTerminalWatch(value, expectedWatchId, options = {}) {
642
753
  Date.parse(watch.updated_at)))) {
643
754
  throw new Error("terminal Watch settlement cannot be newer than its state");
644
755
  }
645
- assertNotificationOutbox(watch);
756
+ assertNotificationOutbox(watch, options.allowPredecessorCallbackPresentation === true);
646
757
  }
647
758
  export function saveTerminalWatch(storeDir, watch, options) {
648
759
  assertTerminalWatch(watch, undefined, { allowMissingRevision: true });
@@ -770,11 +881,18 @@ function scanTerminalWatchDirectory(storeDir, isolateInvalidRecord) {
770
881
  function decodeTerminalWatch(value, expectedWatchId) {
771
882
  const sourceVersion = isRecord(value) ? value.version : undefined;
772
883
  const normalized = normalizeLegacyTerminalWatch(value);
773
- assertTerminalWatch(normalized, expectedWatchId);
884
+ const predecessorPresentation = sourceVersion === 1 || sourceVersion === 2;
885
+ assertTerminalWatchRecord(normalized, expectedWatchId, {
886
+ allowPredecessorCallbackPresentation: predecessorPresentation
887
+ });
888
+ const presentationUpgraded = predecessorPresentation
889
+ ? upgradePredecessorCallbackPresentations(normalized)
890
+ : normalized;
891
+ assertTerminalWatch(presentationUpgraded, expectedWatchId);
774
892
  const repaired = sourceVersion === 2 ||
775
893
  sourceVersion === TERMINAL_WATCH_VERSION
776
- ? repairMisroutedUserExplicitFallbackCallback(normalized)
777
- : normalized;
894
+ ? repairMisroutedUserExplicitFallbackCallback(presentationUpgraded)
895
+ : presentationUpgraded;
778
896
  assertTerminalWatch(repaired, expectedWatchId);
779
897
  return repaired;
780
898
  }
@@ -1146,12 +1264,12 @@ function assertSettlement(value, status) {
1146
1264
  throw new Error("only completed or failed terminal Watches may carry completion output");
1147
1265
  }
1148
1266
  }
1149
- function assertNotificationOutbox(watch) {
1267
+ function assertNotificationOutbox(watch, allowPredecessorCallbackPresentation = false) {
1150
1268
  const seenIds = new Set();
1151
1269
  const seenEvidence = new Set();
1152
1270
  let previousCreatedAt = Date.parse(watch.created_at);
1153
1271
  for (const notification of watch.notification_outbox) {
1154
- assertNotification(notification, watch);
1272
+ assertNotification(notification, watch, allowPredecessorCallbackPresentation);
1155
1273
  if (seenIds.has(notification.notification_id)) {
1156
1274
  throw new Error("terminal Watch notification ids must be unique");
1157
1275
  }
@@ -1182,7 +1300,7 @@ function assertNotificationOutbox(watch) {
1182
1300
  throw new Error("an active terminal Watch cannot have an outcome notification");
1183
1301
  }
1184
1302
  }
1185
- function assertNotification(value, watch) {
1303
+ function assertNotification(value, watch, allowPredecessorCallbackPresentation) {
1186
1304
  assertStrictRecord(value, "terminal Watch notification", NOTIFICATION_FIELDS);
1187
1305
  const notification = value;
1188
1306
  if (notification.kind === "interaction_manual_required") {
@@ -1199,7 +1317,7 @@ function assertNotification(value, watch) {
1199
1317
  }
1200
1318
  const [minimumAttempts, receiptFields] = NOTIFICATION_SHAPES[notification.status];
1201
1319
  assertNotificationShape(value, minimumAttempts, receiptFields);
1202
- terminalWatchNotificationCallbackSnapshot(watch, notification);
1320
+ parseTerminalWatchNotificationCallbackSnapshot(watch, notification, allowPredecessorCallbackPresentation);
1203
1321
  }
1204
1322
  export function assertTerminalWatchManualInteractionSummary(value) {
1205
1323
  assertStrictRecord(value, "terminal Watch manual interaction", {
@@ -1330,6 +1448,9 @@ function assertBoundedInteractionText(value, label, maxCharacters) {
1330
1448
  * fields; a partial or malformed snapshot is never treated as legacy.
1331
1449
  */
1332
1450
  export function terminalWatchNotificationCallbackSnapshot(watch, notification) {
1451
+ return parseTerminalWatchNotificationCallbackSnapshot(watch, notification, false);
1452
+ }
1453
+ function parseTerminalWatchNotificationCallbackSnapshot(watch, notification, allowPredecessorCallbackPresentation) {
1333
1454
  const hasRoute = Object.hasOwn(notification, "callback_route");
1334
1455
  const hasEnvelope = Object.hasOwn(notification, "callback_envelope");
1335
1456
  if (hasRoute !== hasEnvelope) {
@@ -1365,6 +1486,11 @@ export function terminalWatchNotificationCallbackSnapshot(watch, notification) {
1365
1486
  ? "approval_required"
1366
1487
  : notification.kind;
1367
1488
  const expectedEnvelope = terminalWatchCallbackEnvelope(watch, notification, expectedRoute);
1489
+ const predecessorEnvelope = predecessorTerminalWatchCallbackEnvelope(watch, notification, expectedRoute);
1490
+ const hasKnownPresentation = canonicalJson(envelope) === canonicalJson(expectedEnvelope) ||
1491
+ (allowPredecessorCallbackPresentation &&
1492
+ predecessorEnvelope !== undefined &&
1493
+ canonicalJson(envelope) === canonicalJson(predecessorEnvelope));
1368
1494
  const watchRoute = watch.callback_route === undefined
1369
1495
  ? undefined
1370
1496
  : parseCallbackRoute(watch.callback_route);
@@ -1385,7 +1511,7 @@ export function terminalWatchNotificationCallbackSnapshot(watch, notification) {
1385
1511
  envelope.event.id !== notification.notification_id ||
1386
1512
  envelope.event.type !== expectedEvent ||
1387
1513
  envelope.event.requires_response !== true ||
1388
- canonicalJson(envelope) !== canonicalJson(expectedEnvelope)) {
1514
+ !hasKnownPresentation) {
1389
1515
  throw new Error("terminal Watch notification callback snapshot does not match its immutable identity");
1390
1516
  }
1391
1517
  return { route, envelope };