@scotthuang/agent-knock-knock 0.12.37 → 0.13.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 (143) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.md +3 -0
  3. package/dist/src/agent-session-provider.d.ts +5 -0
  4. package/dist/src/agent-session-provider.js +10 -1
  5. package/dist/src/agent-session-provider.js.map +1 -1
  6. package/dist/src/callback-outbox-service.d.ts +2 -0
  7. package/dist/src/callback-outbox-service.js +1 -1
  8. package/dist/src/callback-outbox-service.js.map +1 -1
  9. package/dist/src/callback-transport.d.ts +7 -0
  10. package/dist/src/callback-transport.js +1 -1
  11. package/dist/src/callback-transport.js.map +1 -1
  12. package/dist/src/cli-core.js +35 -32
  13. package/dist/src/cli-core.js.map +1 -1
  14. package/dist/src/codex-store-adapter.d.ts +1 -1
  15. package/dist/src/codex-store-adapter.js +35 -8
  16. package/dist/src/codex-store-adapter.js.map +1 -1
  17. package/dist/src/deferred-foreground-authority-cli-adapter.d.ts +20 -0
  18. package/dist/src/deferred-foreground-authority-cli-adapter.js +216 -8
  19. package/dist/src/deferred-foreground-authority-cli-adapter.js.map +1 -1
  20. package/dist/src/host-adapter.d.ts +1 -1
  21. package/dist/src/host-adapter.js +1 -1
  22. package/dist/src/host-bridge-tools.js +2 -2
  23. package/dist/src/managed-turn-recovery-service.d.ts +8 -1
  24. package/dist/src/managed-turn-recovery-service.js +55 -13
  25. package/dist/src/managed-turn-recovery-service.js.map +1 -1
  26. package/dist/src/mutation-transaction.d.ts +1 -0
  27. package/dist/src/mutation-transaction.js +19 -15
  28. package/dist/src/mutation-transaction.js.map +1 -1
  29. package/dist/src/native-thread-lifecycle-cli-adapter.d.ts +39 -3
  30. package/dist/src/native-thread-lifecycle-cli-adapter.js +307 -7
  31. package/dist/src/native-thread-lifecycle-cli-adapter.js.map +1 -1
  32. package/dist/src/openclaw-plugin-callback-adapter.js +17 -7
  33. package/dist/src/openclaw-plugin-callback-adapter.js.map +1 -1
  34. package/dist/src/openclaw-plugin-command-adapter.js +297 -83
  35. package/dist/src/openclaw-plugin-command-adapter.js.map +1 -1
  36. package/dist/src/openclaw-plugin-schemas.d.ts +57 -0
  37. package/dist/src/openclaw-plugin-schemas.js +59 -1
  38. package/dist/src/openclaw-plugin-schemas.js.map +1 -1
  39. package/dist/src/openclaw-private-authority-offers.d.ts +17 -0
  40. package/dist/src/openclaw-private-authority-offers.js +75 -3
  41. package/dist/src/openclaw-private-authority-offers.js.map +1 -1
  42. package/dist/src/store.d.ts +1 -1
  43. package/dist/src/store.js +6 -4
  44. package/dist/src/store.js.map +1 -1
  45. package/dist/src/terminal-acceptance-application-service.js +2 -2
  46. package/dist/src/terminal-acceptance-application-service.js.map +1 -1
  47. package/dist/src/terminal-acceptance-cli-adapter.d.ts +11 -1
  48. package/dist/src/terminal-acceptance-cli-adapter.js +290 -16
  49. package/dist/src/terminal-acceptance-cli-adapter.js.map +1 -1
  50. package/dist/src/terminal-action-projection.d.ts +1 -1
  51. package/dist/src/terminal-action-projection.js +6 -0
  52. package/dist/src/terminal-action-projection.js.map +1 -1
  53. package/dist/src/terminal-agent-adapter.d.ts +9 -0
  54. package/dist/src/terminal-agent-adapter.js.map +1 -1
  55. package/dist/src/terminal-agent-bridge.d.ts +52 -8
  56. package/dist/src/terminal-agent-bridge.js +111 -94
  57. package/dist/src/terminal-agent-bridge.js.map +1 -1
  58. package/dist/src/terminal-authority-policy.js +3 -0
  59. package/dist/src/terminal-authority-policy.js.map +1 -1
  60. package/dist/src/terminal-binding-authority.d.ts +2 -0
  61. package/dist/src/terminal-binding-authority.js +8 -0
  62. package/dist/src/terminal-binding-authority.js.map +1 -1
  63. package/dist/src/terminal-command-cli-adapter.d.ts +17 -1
  64. package/dist/src/terminal-command-cli-adapter.js +784 -286
  65. package/dist/src/terminal-command-cli-adapter.js.map +1 -1
  66. package/dist/src/terminal-delegate-cli-adapter.js +21 -7
  67. package/dist/src/terminal-delegate-cli-adapter.js.map +1 -1
  68. package/dist/src/terminal-dispatch-application.d.ts +3 -1
  69. package/dist/src/terminal-dispatch-application.js +13 -5
  70. package/dist/src/terminal-dispatch-application.js.map +1 -1
  71. package/dist/src/terminal-dispatch-composition.d.ts +43 -0
  72. package/dist/src/terminal-dispatch-execution.d.ts +2 -2
  73. package/dist/src/terminal-dispatch-execution.js +53 -3
  74. package/dist/src/terminal-dispatch-execution.js.map +1 -1
  75. package/dist/src/terminal-dispatch-policy.d.ts +20 -0
  76. package/dist/src/terminal-dispatch-policy.js +33 -1
  77. package/dist/src/terminal-dispatch-policy.js.map +1 -1
  78. package/dist/src/terminal-dispatch-presenter.d.ts +45 -0
  79. package/dist/src/terminal-dispatch-presenter.js +220 -18
  80. package/dist/src/terminal-dispatch-presenter.js.map +1 -1
  81. package/dist/src/terminal-dispatch-receipt.d.ts +5 -1
  82. package/dist/src/terminal-dispatch-receipt.js +26 -3
  83. package/dist/src/terminal-dispatch-receipt.js.map +1 -1
  84. package/dist/src/terminal-identity-authority-cli-adapter.js +103 -4
  85. package/dist/src/terminal-identity-authority-cli-adapter.js.map +1 -1
  86. package/dist/src/terminal-interaction-authority.d.ts +48 -1
  87. package/dist/src/terminal-interaction-authority.js +30 -0
  88. package/dist/src/terminal-interaction-authority.js.map +1 -1
  89. package/dist/src/terminal-interaction-cli-adapter.js +9 -0
  90. package/dist/src/terminal-interaction-cli-adapter.js.map +1 -1
  91. package/dist/src/terminal-interaction-core.d.ts +104 -0
  92. package/dist/src/terminal-interaction-core.js +407 -0
  93. package/dist/src/terminal-interaction-core.js.map +1 -0
  94. package/dist/src/terminal-interaction-protocol.d.ts +89 -0
  95. package/dist/src/terminal-interaction-protocol.js +199 -0
  96. package/dist/src/terminal-interaction-protocol.js.map +1 -1
  97. package/dist/src/terminal-list-cli-adapter.d.ts +5 -0
  98. package/dist/src/terminal-list-cli-adapter.js +190 -40
  99. package/dist/src/terminal-list-cli-adapter.js.map +1 -1
  100. package/dist/src/terminal-list-renderer.js +60 -7
  101. package/dist/src/terminal-list-renderer.js.map +1 -1
  102. package/dist/src/terminal-maintenance-cli-adapter.js +14 -3
  103. package/dist/src/terminal-maintenance-cli-adapter.js.map +1 -1
  104. package/dist/src/terminal-monitor-application-service.d.ts +1 -0
  105. package/dist/src/terminal-monitor-application-service.js +72 -10
  106. package/dist/src/terminal-monitor-application-service.js.map +1 -1
  107. package/dist/src/terminal-monitor-cli-adapter.d.ts +3 -0
  108. package/dist/src/terminal-monitor-cli-adapter.js +24 -8
  109. package/dist/src/terminal-monitor-cli-adapter.js.map +1 -1
  110. package/dist/src/terminal-monitor-state-cli-adapter.js +15 -2
  111. package/dist/src/terminal-monitor-state-cli-adapter.js.map +1 -1
  112. package/dist/src/terminal-mutation-cli-runtime.d.ts +11 -1
  113. package/dist/src/terminal-mutation-cli-runtime.js +9 -4
  114. package/dist/src/terminal-mutation-cli-runtime.js.map +1 -1
  115. package/dist/src/terminal-status-cli-adapter.d.ts +1 -7
  116. package/dist/src/terminal-status-cli-adapter.js +29 -3
  117. package/dist/src/terminal-status-cli-adapter.js.map +1 -1
  118. package/dist/src/terminal-status-facts.d.ts +17 -1
  119. package/dist/src/terminal-status-facts.js +59 -0
  120. package/dist/src/terminal-status-facts.js.map +1 -1
  121. package/dist/src/terminal-submission-acceptance.d.ts +37 -2
  122. package/dist/src/terminal-submission-acceptance.js +633 -30
  123. package/dist/src/terminal-submission-acceptance.js.map +1 -1
  124. package/dist/src/terminal-submission-facts.d.ts +5 -0
  125. package/dist/src/terminal-submission-facts.js.map +1 -1
  126. package/dist/src/terminal-watch-callback-cli-adapter.d.ts +2 -1
  127. package/dist/src/terminal-watch-callback-cli-adapter.js +2 -1
  128. package/dist/src/terminal-watch-callback-cli-adapter.js.map +1 -1
  129. package/dist/src/terminal-watch-cli-adapter.d.ts +6 -2
  130. package/dist/src/terminal-watch-cli-adapter.js +1051 -15
  131. package/dist/src/terminal-watch-cli-adapter.js.map +1 -1
  132. package/dist/src/terminal-watch-service.d.ts +15 -1
  133. package/dist/src/terminal-watch-service.js +169 -13
  134. package/dist/src/terminal-watch-service.js.map +1 -1
  135. package/dist/src/terminal-watch-store.d.ts +72 -3
  136. package/dist/src/terminal-watch-store.js +407 -27
  137. package/dist/src/terminal-watch-store.js.map +1 -1
  138. package/docs/host-bridge-profiles.md +2 -2
  139. package/docs/quickstart-herdr.md +5 -3
  140. package/docs/quickstart-tmux.md +7 -5
  141. package/openclaw.plugin.json +8 -0
  142. package/package.json +1 -1
  143. package/templates/openclaw-skills/agent-knock-knock/SKILL.md +15 -11
@@ -16,6 +16,36 @@ export function isActiveTerminalDispatchStatus(status) {
16
16
  export function isRecoverableTerminalDispatchStatus(status) {
17
17
  return status === "verified" || isActiveTerminalDispatchStatus(status);
18
18
  }
19
+ /**
20
+ * Human priority bypasses management uncertainty, never the live TUI's
21
+ * physical input mode. A questionnaire is as unsafe for task text as an
22
+ * approval menu because the same bytes would be interpreted as an answer.
23
+ */
24
+ export function decideUserExplicitTerminalInputSafety(facts) {
25
+ if (!facts.reachable) {
26
+ return { action: "reject", reason: "the explicitly selected terminal is unreachable" };
27
+ }
28
+ if (!facts.approvalScanned) {
29
+ return {
30
+ action: "reject",
31
+ reason: "the explicitly selected terminal approval state could not be verified"
32
+ };
33
+ }
34
+ if (facts.approvalBlocked || facts.awaitingApproval) {
35
+ return {
36
+ action: "reject",
37
+ reason: facts.approvalReason ??
38
+ "the explicitly selected terminal is waiting at an approval prompt"
39
+ };
40
+ }
41
+ if (facts.questionnaireActive) {
42
+ return {
43
+ action: "reject",
44
+ reason: "the explicitly selected terminal is waiting at a native questionnaire"
45
+ };
46
+ }
47
+ return { action: "proceed" };
48
+ }
19
49
  export function decideTerminalDispatchOwnership(ledger, owner) {
20
50
  if (ledger === "unreadable") {
21
51
  return { state: "conflict", code: "ledger_unreadable" };
@@ -115,7 +145,9 @@ function terminalDispatchReceiptStatus(status) {
115
145
  }
116
146
  export function decideTerminalDispatchReplayAcceptance({ delivered, submissionOutcome }) {
117
147
  return {
118
- accepted: delivered,
148
+ // `delivered` is physical Enter-dispatch proof in the 0.13 contract.
149
+ // Native acceptance remains a separate, stronger fact.
150
+ accepted: delivered && submissionOutcome === "agent_accepted",
119
151
  invalid: submissionOutcome === "uncertain"
120
152
  };
121
153
  }
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-dispatch-policy.js","sourceRoot":"","sources":["../../src/terminal-dispatch-policy.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,gCAAgC,GAAG,IAAI,GAAG,CAAC;IAC/C,UAAU;IACV,eAAe;IACf,aAAa;IACb,WAAW;IACX,cAAc;CACf,CAAC,CAAC;AAEH,MAAM,UAAU,8BAA8B,CAAC,MAAe;IAC5D,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,CACnC,gCAAgC,CAAC,GAAG,CAAC,MAAM,CAAC;QAC5C,6BAA6B,CAAC,MAAM,CAAC,KAAK,SAAS,CACpD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,MAAe;IACjE,OAAO,MAAM,KAAK,UAAU,IAAI,8BAA8B,CAAC,MAAM,CAAC,CAAC;AACzE,CAAC;AAwED,MAAM,UAAU,+BAA+B,CAC7C,MAAuC,EACvC,KAAsC;IAEtC,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,OAAO,EAAE,KAAK,EAAE,UAAmB,EAAE,IAAI,EAAE,mBAA4B,EAAE,CAAC;IAC5E,CAAC;IACD,IAAI,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,KAAK,EAAE,MAAe,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAC1E,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,KAAK,EAAE,aAAsB,EAAE,CAAC;IACrD,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;QAC5B,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,mBAAmB,EAAW,CAAC;IACnE,CAAC;IACD,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,MAAe,EAAE,KAAK,EAAE,gBAAyB,EAAE,CAAC;IACtE,CAAC;IACD,IAAI,KAAK,KAAK,mBAAmB,EAAE,CAAC;QAClC,OAAO;YACL,KAAK,EAAE,UAAmB;YAC1B,IAAI,EAAE,yBAAkC;SACzC,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,KAAK,SAAS;QACxB,CAAC,CAAC,EAAE,KAAK,EAAE,SAAkB,EAAE;QAC/B,CAAC,CAAC;YACE,KAAK,EAAE,UAAmB;YAC1B,IAAI,EAAE,2BAAoC;SAC3C,CAAC;AACR,CAAC;AAED,OAAO,EACL,2BAA2B,EAG5B,MAAM,iCAAiC,CAAC;AAEzC;;;GAGG;AACH,MAAM,UAAU,sCAAsC,CACpD,MAAmC;IAEnC,OAAO,CAAC,CACN,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,CACjD,IAAI,6BAA6B,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,SAAS,CAAC;AAClE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,+BAA+B,CAC7C,KAAqC;IAErC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACzB,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACrD,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,sBAAsB;YAC9B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,YAAY,EAAE,MAAM,CAAC,YAAY;SAClC,CAAC;IACJ,CAAC;IAED,IAAI,gCAAgC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QAC9D,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,yBAAyB;YACjC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;SAChD,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,6BAA6B,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnE,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAC9D,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,mBAAmB;YAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;IACxD,CAAC;IACD,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC7B,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,UAAU,EAAE,aAAa;SAC1B,CAAC;IACJ,CAAC;IACD,OAAO;QACL,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,mBAAmB,EAAE,KAAK,CAAC,cAAc;QACzC,WAAW,EAAE,KAAK,CAAC,MAAM;KAC1B,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CACpC,MAA0B;IAE1B,OAAO,MAAM,KAAK,WAAW;QAC3B,MAAM,KAAK,kBAAkB;QAC7B,MAAM,KAAK,gBAAgB;QAC3B,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,sCAAsC,CAAC,EACrD,SAAS,EACT,iBAAiB,EAIlB;IACC,OAAO;QACL,QAAQ,EAAE,SAAS;QACnB,OAAO,EAAE,iBAAiB,KAAK,WAAW;KAC3C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"terminal-dispatch-policy.js","sourceRoot":"","sources":["../../src/terminal-dispatch-policy.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,gCAAgC,GAAG,IAAI,GAAG,CAAC;IAC/C,UAAU;IACV,eAAe;IACf,aAAa;IACb,WAAW;IACX,cAAc;CACf,CAAC,CAAC;AAEH,MAAM,UAAU,8BAA8B,CAAC,MAAe;IAC5D,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,CACnC,gCAAgC,CAAC,GAAG,CAAC,MAAM,CAAC;QAC5C,6BAA6B,CAAC,MAAM,CAAC,KAAK,SAAS,CACpD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,MAAe;IACjE,OAAO,MAAM,KAAK,UAAU,IAAI,8BAA8B,CAAC,MAAM,CAAC,CAAC;AACzE,CAAC;AAsED;;;;GAIG;AACH,MAAM,UAAU,qCAAqC,CACnD,KAA2C;IAE3C,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,iDAAiD,EAAE,CAAC;IACzF,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;QAC3B,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,uEAAuE;SAChF,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QACpD,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,KAAK,CAAC,cAAc;gBAC1B,mEAAmE;SACtE,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;QAC9B,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,uEAAuE;SAChF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AAC/B,CAAC;AAiBD,MAAM,UAAU,+BAA+B,CAC7C,MAAuC,EACvC,KAAsC;IAEtC,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,OAAO,EAAE,KAAK,EAAE,UAAmB,EAAE,IAAI,EAAE,mBAA4B,EAAE,CAAC;IAC5E,CAAC;IACD,IAAI,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,KAAK,EAAE,MAAe,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAC1E,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,KAAK,EAAE,aAAsB,EAAE,CAAC;IACrD,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;QAC5B,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,mBAAmB,EAAW,CAAC;IACnE,CAAC;IACD,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,MAAe,EAAE,KAAK,EAAE,gBAAyB,EAAE,CAAC;IACtE,CAAC;IACD,IAAI,KAAK,KAAK,mBAAmB,EAAE,CAAC;QAClC,OAAO;YACL,KAAK,EAAE,UAAmB;YAC1B,IAAI,EAAE,yBAAkC;SACzC,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,KAAK,SAAS;QACxB,CAAC,CAAC,EAAE,KAAK,EAAE,SAAkB,EAAE;QAC/B,CAAC,CAAC;YACE,KAAK,EAAE,UAAmB;YAC1B,IAAI,EAAE,2BAAoC;SAC3C,CAAC;AACR,CAAC;AAED,OAAO,EACL,2BAA2B,EAG5B,MAAM,iCAAiC,CAAC;AAEzC;;;GAGG;AACH,MAAM,UAAU,sCAAsC,CACpD,MAAmC;IAEnC,OAAO,CAAC,CACN,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,CACjD,IAAI,6BAA6B,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,SAAS,CAAC;AAClE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,+BAA+B,CAC7C,KAAqC;IAErC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACzB,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACrD,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,sBAAsB;YAC9B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,YAAY,EAAE,MAAM,CAAC,YAAY;SAClC,CAAC;IACJ,CAAC;IAED,IAAI,gCAAgC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QAC9D,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,yBAAyB;YACjC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;SAChD,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,6BAA6B,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnE,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAC9D,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,mBAAmB;YAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;IACxD,CAAC;IACD,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC7B,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,UAAU,EAAE,aAAa;SAC1B,CAAC;IACJ,CAAC;IACD,OAAO;QACL,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,mBAAmB,EAAE,KAAK,CAAC,cAAc;QACzC,WAAW,EAAE,KAAK,CAAC,MAAM;KAC1B,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CACpC,MAA0B;IAE1B,OAAO,MAAM,KAAK,WAAW;QAC3B,MAAM,KAAK,kBAAkB;QAC7B,MAAM,KAAK,gBAAgB;QAC3B,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,sCAAsC,CAAC,EACrD,SAAS,EACT,iBAAiB,EAIlB;IACC,OAAO;QACL,qEAAqE;QACrE,uDAAuD;QACvD,QAAQ,EAAE,SAAS,IAAI,iBAAiB,KAAK,gBAAgB;QAC7D,OAAO,EAAE,iBAAiB,KAAK,WAAW;KAC3C,CAAC;AACJ,CAAC"}
@@ -3,6 +3,47 @@ import type { TerminalControlRef } from "./terminal-agent-adapter.js";
3
3
  import type { RecordedTerminalZeroInputAbort, TerminalDispatchAcceptance } from "./terminal-dispatch-application.js";
4
4
  import type { terminalSubmissionReplayReceipt } from "./terminal-dispatch-receipt.js";
5
5
  type ReplayReceipt = ReturnType<typeof terminalSubmissionReplayReceipt>;
6
+ export type TerminalSendAgentAcceptance = "proven" | "unproven";
7
+ export type TerminalSendManagementMode = "managed" | "unmanaged";
8
+ export type TerminalSendObservationMode = "managed_monitor" | "terminal_watch" | "none";
9
+ export interface TerminalSendResultCapabilities {
10
+ callback: boolean;
11
+ interaction_notify: boolean;
12
+ interaction_respond: boolean;
13
+ }
14
+ export interface TerminalSendResultContract {
15
+ terminal_input_dispatched: boolean;
16
+ agent_acceptance: TerminalSendAgentAcceptance;
17
+ management_mode: TerminalSendManagementMode;
18
+ observation_mode: TerminalSendObservationMode;
19
+ capabilities: TerminalSendResultCapabilities;
20
+ /** Compatibility value used by 0.12.x readers. */
21
+ legacy_management_mode: "managed" | "unmanaged_fallback";
22
+ }
23
+ export interface NormalizedTerminalSendResultContract extends TerminalSendResultContract {
24
+ /** Compatibility alias: true only when Enter dispatch is proven. */
25
+ delivered: boolean;
26
+ }
27
+ /** Keep transport, native acceptance, management, and observation orthogonal. */
28
+ export declare function terminalSendResultContract(input: Readonly<{
29
+ terminalInputDispatched: boolean;
30
+ agentAcceptance: TerminalSendAgentAcceptance;
31
+ managementMode: TerminalSendManagementMode;
32
+ observationMode: TerminalSendObservationMode;
33
+ callbackAvailable: boolean;
34
+ interactionNotificationAvailable?: boolean;
35
+ interactionResponseAvailable?: boolean;
36
+ }>): TerminalSendResultContract;
37
+ /**
38
+ * Compatibility predicate for the one legacy `delivered` fact. Text
39
+ * injection is terminal input, but delivery is not complete until Enter has
40
+ * durable proof. Older presenters encoded post-Enter rejection/uncertainty as
41
+ * `delivered: false`, so retain those stronger receipt facts while excluding
42
+ * retry refusals which explicitly sent no input.
43
+ */
44
+ export declare function terminalSendEnterDispatched(value: unknown): boolean;
45
+ /** Normalize Send output from an older CLI without weakening error policy. */
46
+ export declare function normalizedTerminalSendResultContract(value: Readonly<Record<string, unknown>>): NormalizedTerminalSendResultContract;
6
47
  export interface TerminalDispatchPresentationContext {
7
48
  message: AgentMessage;
8
49
  executor: Executor;
@@ -46,6 +87,10 @@ export declare function presentTerminalDispatchReplay(input: Readonly<{
46
87
  receiptConversationId: string;
47
88
  receiptMessageId: string;
48
89
  callbackExpected: boolean;
90
+ userExplicit?: Readonly<{
91
+ terminalId: string;
92
+ messageId: string;
93
+ }>;
49
94
  }>, context: TerminalDispatchPresentationContext, ports: TerminalDispatchPresentationPorts): void;
50
95
  export declare function presentTerminalZeroInputAbort(failure: RecordedTerminalZeroInputAbort, context: TerminalDispatchPresentationContext, ports: TerminalDispatchPresentationPorts, monitorPid?: number | null): void;
51
96
  export declare function presentTerminalIdentityFailure(conversation: Conversation, reason: string, context: TerminalDispatchPresentationContext, ports: TerminalDispatchPresentationPorts, monitorPid?: number | null): void;
@@ -1,6 +1,144 @@
1
- import { sessionIdForConversation, turnIdForConversation } from "./protocol.js";
1
+ import { isTerminalDispatchOwnerReleasedStatus, sessionIdForConversation, turnIdForConversation } from "./protocol.js";
2
2
  import { callbackExpectedForConversation } from "./callback-route-authority.js";
3
3
  import { isRecord } from "./value-guards.js";
4
+ /** Keep transport, native acceptance, management, and observation orthogonal. */
5
+ export function terminalSendResultContract(input) {
6
+ const callbackAvailable = input.callbackAvailable &&
7
+ input.observationMode !== "none";
8
+ return {
9
+ terminal_input_dispatched: input.terminalInputDispatched,
10
+ agent_acceptance: input.agentAcceptance,
11
+ management_mode: input.managementMode,
12
+ observation_mode: input.observationMode,
13
+ capabilities: {
14
+ callback: callbackAvailable,
15
+ interaction_notify: callbackAvailable &&
16
+ (input.interactionNotificationAvailable ?? false),
17
+ interaction_respond: callbackAvailable &&
18
+ input.managementMode === "managed" &&
19
+ input.agentAcceptance === "proven" &&
20
+ (input.interactionResponseAvailable ?? false)
21
+ },
22
+ legacy_management_mode: input.managementMode === "managed"
23
+ ? "managed"
24
+ : "unmanaged_fallback"
25
+ };
26
+ }
27
+ function record(value) {
28
+ return isRecord(value) ? value : undefined;
29
+ }
30
+ /**
31
+ * Compatibility predicate for the one legacy `delivered` fact. Text
32
+ * injection is terminal input, but delivery is not complete until Enter has
33
+ * durable proof. Older presenters encoded post-Enter rejection/uncertainty as
34
+ * `delivered: false`, so retain those stronger receipt facts while excluding
35
+ * retry refusals which explicitly sent no input.
36
+ */
37
+ export function terminalSendEnterDispatched(value) {
38
+ const result = record(value);
39
+ if (!result)
40
+ return false;
41
+ if (result.delivered === true)
42
+ return true;
43
+ const receipt = String(result.delivery_receipt ?? "");
44
+ const outcome = String(result.submission_outcome ?? "");
45
+ const status = String(result.status ?? "");
46
+ const lastProvenStage = String(result.last_proven_stage ?? "");
47
+ const retryState = String(result.submission_retry_state ?? "");
48
+ if ((typeof result.enter_dispatched_at === "string" &&
49
+ result.enter_dispatched_at.trim() !== "") ||
50
+ (typeof result.agent_accepted_at === "string" &&
51
+ result.agent_accepted_at.trim() !== "") ||
52
+ ["enter_dispatched", "agent_accepted"].includes(lastProvenStage) ||
53
+ ["enter_dispatched", "agent_accepted"].includes(retryState)) {
54
+ return true;
55
+ }
56
+ if ([
57
+ "submitted",
58
+ "enter_dispatched",
59
+ "agent_accepted",
60
+ "not_accepted"
61
+ ].includes(receipt)) {
62
+ return true;
63
+ }
64
+ if ([
65
+ "submitted",
66
+ "agent_accepted",
67
+ "pending_acceptance",
68
+ "not_accepted"
69
+ ].includes(outcome)) {
70
+ return true;
71
+ }
72
+ if ([
73
+ "submitted",
74
+ "enter_dispatched",
75
+ "agent_accepted",
76
+ "not_accepted"
77
+ ].includes(status) || status === "delivered_unfenced") {
78
+ return true;
79
+ }
80
+ if (receipt === "uncertain" &&
81
+ outcome === "uncertain" &&
82
+ result.terminal_input_sent !== false) {
83
+ return true;
84
+ }
85
+ return false;
86
+ }
87
+ /** Normalize Send output from an older CLI without weakening error policy. */
88
+ export function normalizedTerminalSendResultContract(value) {
89
+ const receipt = String(value.delivery_receipt ?? "");
90
+ const outcome = String(value.submission_outcome ?? "");
91
+ const enterDispatched = terminalSendEnterDispatched(value);
92
+ const terminalInputDispatched = typeof value.terminal_input_dispatched === "boolean"
93
+ ? value.terminal_input_dispatched
94
+ : enterDispatched
95
+ ? true
96
+ : ["text_injected", "submitted", "enter_dispatched", "agent_accepted"]
97
+ .includes(receipt) ||
98
+ ["text_injected"].includes(String(value.status ?? ""));
99
+ const agentAcceptance = value.agent_acceptance === "proven" ||
100
+ (outcome === "agent_accepted" && receipt === "agent_accepted" &&
101
+ value.delivered === true)
102
+ ? "proven"
103
+ : "unproven";
104
+ const managementMode = value.management_mode === "unmanaged" ||
105
+ value.management_mode === "unmanaged_fallback" ||
106
+ value.legacy_management_mode === "unmanaged_fallback" ||
107
+ value.delivered_unmanaged === true
108
+ ? "unmanaged"
109
+ : "managed";
110
+ const existingCapabilities = record(value.capabilities);
111
+ const legacyCallbackAvailable = value.callback_expected === true;
112
+ const callbackAvailable = typeof existingCapabilities?.callback === "boolean"
113
+ ? existingCapabilities.callback
114
+ : legacyCallbackAvailable;
115
+ const explicitObservation = value.observation_mode;
116
+ const observationMode = explicitObservation === "managed_monitor" ||
117
+ explicitObservation === "terminal_watch" ||
118
+ explicitObservation === "none"
119
+ ? explicitObservation
120
+ : value.callback_mode === "terminal_watch" && callbackAvailable
121
+ ? "terminal_watch"
122
+ : callbackAvailable && managementMode === "managed"
123
+ ? "managed_monitor"
124
+ : "none";
125
+ return {
126
+ delivered: enterDispatched,
127
+ ...terminalSendResultContract({
128
+ terminalInputDispatched,
129
+ agentAcceptance,
130
+ managementMode,
131
+ observationMode,
132
+ callbackAvailable,
133
+ interactionNotificationAvailable: typeof existingCapabilities?.interaction_notify === "boolean"
134
+ ? existingCapabilities.interaction_notify
135
+ : callbackAvailable && managementMode === "managed",
136
+ interactionResponseAvailable: typeof existingCapabilities?.interaction_respond === "boolean"
137
+ ? existingCapabilities.interaction_respond
138
+ : agentAcceptance === "proven"
139
+ })
140
+ };
141
+ }
4
142
  export function openClawYieldNextAction({ conversationId, sessionId, turnId, source, callbackExpected }) {
5
143
  const callbackText = callbackExpected
6
144
  ? "The coding agent should report completion, questions, or errors through the existing Agent Knock Knock callback for this conversation."
@@ -20,6 +158,11 @@ export function openClawYieldNextAction({ conversationId, sessionId, turnId, sou
20
158
  export function presentTerminalDispatchReplay(input, context, ports) {
21
159
  const sessionId = sessionIdForConversation(input.owner);
22
160
  const turnId = turnIdForConversation(input.owner);
161
+ const ownerReleased = isTerminalDispatchOwnerReleasedStatus(input.owner.status);
162
+ const callbackAvailable = input.callbackExpected &&
163
+ !input.acceptanceInvalid &&
164
+ !ownerReleased;
165
+ const enterDispatched = terminalSendEnterDispatched(input.receipt);
23
166
  ports.write({
24
167
  session_id: sessionId,
25
168
  turn_id: turnId,
@@ -39,30 +182,48 @@ export function presentTerminalDispatchReplay(input, context, ports) {
39
182
  turn_id: turnId
40
183
  }
41
184
  },
42
- delivered: input.receipt.delivered,
185
+ delivered: enterDispatched,
43
186
  status: input.receipt.status,
44
187
  submission_outcome: input.receipt.submission_outcome,
45
188
  background: true,
46
- callback_expected: input.callbackExpected,
189
+ callback_expected: callbackAvailable,
47
190
  terminal_control: context.terminalControl,
48
191
  executor: context.executor,
192
+ ...(input.userExplicit
193
+ ? {
194
+ scope: "terminal_user_explicit",
195
+ terminal_id: input.userExplicit.terminalId,
196
+ message_id: input.userExplicit.messageId
197
+ }
198
+ : {}),
199
+ ...terminalSendResultContract({
200
+ terminalInputDispatched: enterDispatched,
201
+ agentAcceptance: input.accepted ? "proven" : "unproven",
202
+ managementMode: "managed",
203
+ observationMode: callbackAvailable ? "managed_monitor" : "none",
204
+ callbackAvailable,
205
+ interactionNotificationAvailable: input.accepted,
206
+ interactionResponseAvailable: input.accepted
207
+ }),
49
208
  replayed: input.receipt.replayed,
50
209
  delivery_receipt: input.receipt.delivery_receipt,
51
210
  ...(input.receipt.do_not_retry
52
211
  ? { do_not_retry: input.receipt.do_not_retry }
53
212
  : {}),
54
- reason: input.accepted
55
- ? "AKK replayed the durable native acceptance receipt for an identical active terminal request and did not send terminal input again."
56
- : input.acceptanceInvalid
57
- ? `AKK refused to replay an invalid native acceptance receipt (${input.receipt.evidence_error ?? "evidence validation failed"}); no terminal input was sent.`
58
- : "AKK replayed the original transport-level receipt without upgrading it to native acceptance and did not send terminal input again.",
59
- openclaw_next_action: input.accepted
213
+ reason: ownerReleased
214
+ ? "AKK replayed a durable terminal receipt owned by a released Turn; no additional terminal input was sent and no callback remains."
215
+ : input.accepted
216
+ ? "AKK replayed the durable native acceptance receipt for an identical active terminal request and did not send terminal input again."
217
+ : input.acceptanceInvalid
218
+ ? `AKK refused to replay an invalid native acceptance receipt (${input.receipt.evidence_error ?? "evidence validation failed"}); no additional terminal input was sent.`
219
+ : "AKK replayed the original transport-level receipt without upgrading it to native acceptance and did not send terminal input again.",
220
+ openclaw_next_action: input.accepted && !ownerReleased
60
221
  ? ports.nextAction({
61
222
  conversationId: input.receiptConversationId,
62
223
  sessionId,
63
224
  turnId,
64
225
  source: "terminal_control",
65
- callbackExpected: input.callbackExpected
226
+ callbackExpected: callbackAvailable
66
227
  })
67
228
  : {
68
229
  action: "inspect",
@@ -70,9 +231,11 @@ export function presentTerminalDispatchReplay(input, context, ports) {
70
231
  session_id: sessionId,
71
232
  turn_id: turnId,
72
233
  do_not_retry: true,
73
- reason: input.acceptanceInvalid
74
- ? "The stored native acceptance evidence is invalid; inspect and explicitly close this Turn."
75
- : "Only terminal transport is proven; wait for native acceptance or inspect the shared pane."
234
+ reason: ownerReleased
235
+ ? "The durable receipt belongs to a released Turn; no callback remains. Inspect current terminal state before starting new work."
236
+ : input.acceptanceInvalid
237
+ ? "The stored native acceptance evidence is invalid; inspect and explicitly close this Turn."
238
+ : "Only terminal transport is proven; wait for native acceptance or inspect the shared pane."
76
239
  }
77
240
  });
78
241
  }
@@ -129,6 +292,13 @@ export function presentTerminalZeroInputAbort(failure, context, ports, monitorPi
129
292
  terminal_control: context.terminalControl,
130
293
  monitor_pid: monitorPid ?? null,
131
294
  executor: context.executor,
295
+ ...terminalSendResultContract({
296
+ terminalInputDispatched: false,
297
+ agentAcceptance: "unproven",
298
+ managementMode: "managed",
299
+ observationMode: "none",
300
+ callbackAvailable: false
301
+ }),
132
302
  safe_to_retry: failure.outcome.safeToRetry,
133
303
  do_not_retry: !failure.outcome.safeToRetry,
134
304
  reason: text.reason,
@@ -149,7 +319,7 @@ export function presentTerminalIdentityFailure(conversation, reason, context, po
149
319
  turn_id: turnIdForConversation(conversation),
150
320
  conversation,
151
321
  message: context.message,
152
- delivered: false,
322
+ delivered: true,
153
323
  status: "submission_uncertain",
154
324
  submission_outcome: "uncertain",
155
325
  background: true,
@@ -159,6 +329,13 @@ export function presentTerminalIdentityFailure(conversation, reason, context, po
159
329
  executor: context.executor,
160
330
  delivery_receipt: "enter_dispatched",
161
331
  do_not_retry: true,
332
+ ...terminalSendResultContract({
333
+ terminalInputDispatched: true,
334
+ agentAcceptance: "unproven",
335
+ managementMode: "managed",
336
+ observationMode: "none",
337
+ callbackAvailable: false
338
+ }),
162
339
  reason,
163
340
  openclaw_next_action: {
164
341
  action: "inspect",
@@ -171,20 +348,35 @@ export function presentTerminalIdentityFailure(conversation, reason, context, po
171
348
  });
172
349
  }
173
350
  export function presentTerminalUncertain(input, context, ports) {
351
+ // Transport uncertainty is not monitor-eligible. A configured callback
352
+ // route alone does not prove that an observation sidecar exists.
353
+ const callbackExpected = false;
174
354
  ports.write({
175
355
  session_id: sessionIdForConversation(input.conversation),
176
356
  turn_id: turnIdForConversation(input.conversation),
177
357
  conversation: input.conversation,
178
358
  message: context.message,
179
- delivered: false,
359
+ delivered: input.enterDispatched,
180
360
  status: "submission_uncertain",
181
361
  submission_outcome: "uncertain",
182
362
  background: true,
183
- callback_expected: callbackExpectedForConversation(input.conversation),
363
+ callback_expected: callbackExpected,
184
364
  terminal_control: context.terminalControl,
185
365
  monitor_pid: input.monitorPid ?? null,
186
366
  executor: context.executor,
367
+ delivery_receipt: input.enterDispatched
368
+ ? "enter_dispatched"
369
+ : input.textInjected
370
+ ? "text_injected"
371
+ : undefined,
187
372
  do_not_retry: true,
373
+ ...terminalSendResultContract({
374
+ terminalInputDispatched: input.textInjected || input.enterDispatched,
375
+ agentAcceptance: "unproven",
376
+ managementMode: "managed",
377
+ observationMode: callbackExpected ? "managed_monitor" : "none",
378
+ callbackAvailable: callbackExpected
379
+ }),
188
380
  stalled_conversation_ids: input.stalledConversationIds,
189
381
  reason: input.enterDispatched
190
382
  ? "AKK dispatched Enter but native acceptance or its exact identity became uncertain. Do not retry automatically; inspect this conversation and pane."
@@ -206,12 +398,13 @@ export function presentTerminalCompleted(input, context, ports) {
206
398
  const accepted = outcome === "agent_accepted";
207
399
  const pending = outcome === "pending_acceptance";
208
400
  const callbackExpected = callbackExpectedForConversation(input.conversation);
401
+ const callbackAvailable = callbackExpected && (accepted || pending);
209
402
  ports.write({
210
403
  session_id: sessionIdForConversation(input.conversation),
211
404
  turn_id: turnIdForConversation(input.conversation),
212
405
  conversation: input.conversation,
213
406
  message: context.message,
214
- delivered: accepted,
407
+ delivered: true,
215
408
  status: accepted
216
409
  ? "async_pending"
217
410
  : pending
@@ -221,11 +414,20 @@ export function presentTerminalCompleted(input, context, ports) {
221
414
  : "submission_uncertain",
222
415
  submission_outcome: outcome,
223
416
  background: true,
224
- callback_expected: callbackExpected && (accepted || pending),
417
+ callback_expected: callbackAvailable,
225
418
  terminal_control: context.terminalControl,
226
419
  monitor_pid: input.monitorPid ?? null,
227
420
  executor: context.executor,
228
421
  budget: ports.budget(input.conversation),
422
+ ...terminalSendResultContract({
423
+ terminalInputDispatched: true,
424
+ agentAcceptance: accepted ? "proven" : "unproven",
425
+ managementMode: "managed",
426
+ observationMode: callbackAvailable ? "managed_monitor" : "none",
427
+ callbackAvailable,
428
+ interactionNotificationAvailable: accepted,
429
+ interactionResponseAvailable: accepted
430
+ }),
229
431
  delivery_receipt: accepted
230
432
  ? "agent_accepted"
231
433
  : pending
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-dispatch-presenter.js","sourceRoot":"","sources":["../../src/terminal-dispatch-presenter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-dispatch-presenter.js","sourceRoot":"","sources":["../../src/terminal-dispatch-presenter.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export interface TerminalBridgeStateInput {
15
15
  monitorLockVersion: number;
16
16
  preSendScreenFingerprint?: string;
17
17
  codexRolloutAcceptanceAnchor?: unknown;
18
+ codexDetachedCandidateSessionClaims?: unknown;
18
19
  claudeTranscriptAnchor?: unknown;
19
20
  claudeHome?: string;
20
21
  }
@@ -46,7 +47,7 @@ export interface TerminalBridgeSubmissionContext {
46
47
  storeDir?: string;
47
48
  terminalControl?: TerminalControlRef;
48
49
  }
49
- export declare function withTerminalBridgeState({ conversation, message, requestText, startedAt, agentTimeoutMinutes, agentHardTimeoutMinutes, monitorLockVersion, preSendScreenFingerprint, codexRolloutAcceptanceAnchor, claudeTranscriptAnchor, claudeHome }: TerminalBridgeStateInput): Conversation;
50
+ export declare function withTerminalBridgeState({ conversation, message, requestText, startedAt, agentTimeoutMinutes, agentHardTimeoutMinutes, monitorLockVersion, preSendScreenFingerprint, codexRolloutAcceptanceAnchor, codexDetachedCandidateSessionClaims, claudeTranscriptAnchor, claudeHome }: TerminalBridgeStateInput): Conversation;
50
51
  export declare function applyTerminalBridgeSubmission(mutation: TerminalBridgeSubmissionMutation, context: TerminalBridgeSubmissionContext): Conversation;
51
52
  export declare function terminalAcceptanceEvidenceForConversation(conversation: Conversation, requestText: string, evidence: unknown): TerminalSubmissionAcceptanceEvidence;
52
53
  export declare function terminalAcceptanceEvidenceExpectation(conversation: Conversation, requestText: string): {
@@ -79,4 +80,7 @@ export declare function terminalDispatchTextSummary(text: unknown, maxLength?: n
79
80
  export declare function terminalBridgeEnabled(conversation: unknown): boolean;
80
81
  export { terminalBridgeSubmission };
81
82
  export declare function terminalBridgeSubmissionReceipts(conversation: Conversation): UnknownRecord[];
83
+ export declare function terminalSubmissionIndicatesInputDispatched(submission: unknown): boolean;
84
+ /** Return only durable per-Turn dispatch facts; Close prose is not evidence. */
85
+ export declare function terminalInputDispatchedForConversation(conversation: Conversation): boolean;
82
86
  export declare function unresolvedTerminalBridgeSubmission(conversation: Conversation): UnknownRecord | undefined;
@@ -5,7 +5,7 @@ import { executorForConversation, sessionIdForConversation, turnIdForConversatio
5
5
  import { hasCanonicalTerminalEndpoint, terminalControlEvidence } from "./terminal-control-ref.js";
6
6
  import { terminalBridgeSubmission, validateTerminalSubmissionAcceptanceEvidence } from "./terminal-submission-facts.js";
7
7
  import { isRecord, nonBlankString } from "./value-guards.js";
8
- export function withTerminalBridgeState({ conversation, message, requestText, startedAt, agentTimeoutMinutes, agentHardTimeoutMinutes, monitorLockVersion, preSendScreenFingerprint, codexRolloutAcceptanceAnchor, claudeTranscriptAnchor, claudeHome }) {
8
+ export function withTerminalBridgeState({ conversation, message, requestText, startedAt, agentTimeoutMinutes, agentHardTimeoutMinutes, monitorLockVersion, preSendScreenFingerprint, codexRolloutAcceptanceAnchor, codexDetachedCandidateSessionClaims, claudeTranscriptAnchor, claudeHome }) {
9
9
  const takeover = isRecord(conversation.native_session_takeover)
10
10
  ? conversation.native_session_takeover
11
11
  : {};
@@ -20,6 +20,7 @@ export function withTerminalBridgeState({ conversation, message, requestText, st
20
20
  terminal_bridge_request_hash: terminalBridgeRequestFingerprint(requestText),
21
21
  terminal_bridge_pre_send_screen_fingerprint: preSendScreenFingerprint,
22
22
  codex_rollout_acceptance_anchor: codexRolloutAcceptanceAnchor,
23
+ codex_detached_candidate_session_claims: codexDetachedCandidateSessionClaims,
23
24
  claude_transcript_anchor: claudeTranscriptAnchor,
24
25
  claude_home: claudeHome,
25
26
  terminal_bridge_completion_claim: undefined,
@@ -190,7 +191,7 @@ export function terminalSubmissionReplayReceipt(options) {
190
191
  if (options.proofLevel !== "agent_accepted") {
191
192
  return {
192
193
  replayed: true,
193
- delivered: false,
194
+ delivered: true,
194
195
  status: "submission_pending_acceptance",
195
196
  submission_outcome: "pending_acceptance",
196
197
  delivery_receipt: options.proofLevel,
@@ -210,7 +211,7 @@ export function terminalSubmissionReplayReceipt(options) {
210
211
  catch (error) {
211
212
  return {
212
213
  replayed: true,
213
- delivered: false,
214
+ delivered: true,
214
215
  status: "submission_uncertain",
215
216
  submission_outcome: "uncertain",
216
217
  delivery_receipt: "enter_dispatched",
@@ -317,6 +318,28 @@ export function terminalBridgeSubmissionReceipts(conversation) {
317
318
  ? [...receipts, current]
318
319
  : receipts;
319
320
  }
321
+ export function terminalSubmissionIndicatesInputDispatched(submission) {
322
+ if (!isRecord(submission))
323
+ return false;
324
+ if (nonBlankString(submission.text_injected_at) ||
325
+ nonBlankString(submission.enter_dispatched_at)) {
326
+ return true;
327
+ }
328
+ if ([
329
+ "text_injected",
330
+ "enter_dispatched",
331
+ "submitted",
332
+ "agent_accepted",
333
+ "not_accepted"
334
+ ].includes(String(submission.status ?? ""))) {
335
+ return true;
336
+ }
337
+ return ["text_injected", "enter_dispatched", "agent_accepted"].includes(String(submission.last_proven_stage ?? ""));
338
+ }
339
+ /** Return only durable per-Turn dispatch facts; Close prose is not evidence. */
340
+ export function terminalInputDispatchedForConversation(conversation) {
341
+ return terminalBridgeSubmissionReceipts(conversation).some(terminalSubmissionIndicatesInputDispatched);
342
+ }
320
343
  export function unresolvedTerminalBridgeSubmission(conversation) {
321
344
  const submission = terminalBridgeSubmission(conversation);
322
345
  return submission &&