@scotthuang/agent-knock-knock 0.12.11 → 0.12.13
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.
- package/CHANGELOG.md +40 -0
- package/README.md +43 -30
- package/dist/src/approval-policy.d.ts +11 -2
- package/dist/src/approval-policy.js +33 -7
- package/dist/src/approval-policy.js.map +1 -1
- package/dist/src/callback-cli-adapter.d.ts +47 -0
- package/dist/src/callback-cli-adapter.js +156 -0
- package/dist/src/callback-cli-adapter.js.map +1 -0
- package/dist/src/callback-outbox-policy.d.ts +95 -0
- package/dist/src/callback-outbox-policy.js +149 -0
- package/dist/src/callback-outbox-policy.js.map +1 -0
- package/dist/src/callback-outbox-service.d.ts +247 -0
- package/dist/src/callback-outbox-service.js +1053 -0
- package/dist/src/callback-outbox-service.js.map +1 -0
- package/dist/src/callback-outbox-settlement.d.ts +54 -0
- package/dist/src/callback-outbox-settlement.js +241 -0
- package/dist/src/callback-outbox-settlement.js.map +1 -0
- package/dist/src/canonical-json.d.ts +1 -0
- package/dist/src/canonical-json.js +14 -0
- package/dist/src/canonical-json.js.map +1 -0
- package/dist/src/claude-lifecycle-compatibility.js +15 -0
- package/dist/src/claude-lifecycle-compatibility.js.map +1 -1
- package/dist/src/claude-local-transcript-provider.d.ts +82 -1
- package/dist/src/claude-local-transcript-provider.js +873 -23
- package/dist/src/claude-local-transcript-provider.js.map +1 -1
- package/dist/src/cli-command-runtime.d.ts +14 -0
- package/dist/src/cli-command-runtime.js +164 -0
- package/dist/src/cli-command-runtime.js.map +1 -0
- package/dist/src/cli-core.d.ts +4 -42
- package/dist/src/cli-core.js +958 -28684
- package/dist/src/cli-core.js.map +1 -1
- package/dist/src/cli-runtime-context.d.ts +57 -0
- package/dist/src/cli-runtime-context.js +118 -0
- package/dist/src/cli-runtime-context.js.map +1 -0
- package/dist/src/codex-lifecycle-compatibility.js +2 -1
- package/dist/src/codex-lifecycle-compatibility.js.map +1 -1
- package/dist/src/codex-local-session-provider.d.ts +18 -0
- package/dist/src/codex-local-session-provider.js +67 -0
- package/dist/src/codex-local-session-provider.js.map +1 -1
- package/dist/src/codex-session-provider.js +1 -3
- package/dist/src/codex-session-provider.js.map +1 -1
- package/dist/src/conversation-trace.d.ts +30 -0
- package/dist/src/conversation-trace.js +185 -0
- package/dist/src/conversation-trace.js.map +1 -0
- package/dist/src/deferred-foreground-application-service.d.ts +84 -0
- package/dist/src/deferred-foreground-application-service.js +742 -0
- package/dist/src/deferred-foreground-application-service.js.map +1 -0
- package/dist/src/deferred-foreground-authority-cli-adapter.d.ts +78 -0
- package/dist/src/deferred-foreground-authority-cli-adapter.js +795 -0
- package/dist/src/deferred-foreground-authority-cli-adapter.js.map +1 -0
- package/dist/src/deferred-foreground-boundary.d.ts +61 -0
- package/dist/src/deferred-foreground-boundary.js +2 -0
- package/dist/src/deferred-foreground-boundary.js.map +1 -0
- package/dist/src/deferred-foreground-capability.d.ts +4 -0
- package/dist/src/deferred-foreground-capability.js +184 -0
- package/dist/src/deferred-foreground-capability.js.map +1 -0
- package/dist/src/deferred-foreground-preparation-cli-adapter.d.ts +53 -0
- package/dist/src/deferred-foreground-preparation-cli-adapter.js +210 -0
- package/dist/src/deferred-foreground-preparation-cli-adapter.js.map +1 -0
- package/dist/src/deferred-foreground-preparation-service.d.ts +72 -0
- package/dist/src/deferred-foreground-preparation-service.js +179 -0
- package/dist/src/deferred-foreground-preparation-service.js.map +1 -0
- package/dist/src/deferred-foreground-recovery-cli-adapter.d.ts +139 -0
- package/dist/src/deferred-foreground-recovery-cli-adapter.js +1125 -0
- package/dist/src/deferred-foreground-recovery-cli-adapter.js.map +1 -0
- package/dist/src/deferred-foreground-recovery-service.d.ts +48 -0
- package/dist/src/deferred-foreground-recovery-service.js +91 -0
- package/dist/src/deferred-foreground-recovery-service.js.map +1 -0
- package/dist/src/deferred-foreground-transfer-policy.d.ts +2 -0
- package/dist/src/deferred-foreground-transfer-policy.js +10 -0
- package/dist/src/deferred-foreground-transfer-policy.js.map +1 -0
- package/dist/src/deferred-foreground-transfer.js +46 -105
- package/dist/src/deferred-foreground-transfer.js.map +1 -1
- package/dist/src/doctor-capabilities.d.ts +9 -0
- package/dist/src/doctor-capabilities.js +22 -0
- package/dist/src/doctor-capabilities.js.map +1 -1
- package/dist/src/durable-json-file.d.ts +22 -0
- package/dist/src/durable-json-file.js +127 -0
- package/dist/src/durable-json-file.js.map +1 -0
- package/dist/src/file-lock-cli-adapter.d.ts +43 -0
- package/dist/src/file-lock-cli-adapter.js +150 -0
- package/dist/src/file-lock-cli-adapter.js.map +1 -0
- package/dist/src/herdr-terminal-control-provider.js +1 -3
- package/dist/src/herdr-terminal-control-provider.js.map +1 -1
- package/dist/src/install-doctor-command-adapter.d.ts +17 -0
- package/dist/src/install-doctor-command-adapter.js +225 -0
- package/dist/src/install-doctor-command-adapter.js.map +1 -0
- package/dist/src/live-lifecycle-evidence.js +76 -46
- package/dist/src/live-lifecycle-evidence.js.map +1 -1
- package/dist/src/live-lifecycle-smoke.js +74 -50
- package/dist/src/live-lifecycle-smoke.js.map +1 -1
- package/dist/src/managed-session.d.ts +2 -0
- package/dist/src/managed-session.js +24 -0
- package/dist/src/managed-session.js.map +1 -1
- package/dist/src/managed-turn-recovery-service.d.ts +86 -0
- package/dist/src/managed-turn-recovery-service.js +145 -0
- package/dist/src/managed-turn-recovery-service.js.map +1 -0
- package/dist/src/mutation-transaction.d.ts +48 -0
- package/dist/src/mutation-transaction.js +73 -0
- package/dist/src/mutation-transaction.js.map +1 -0
- package/dist/src/native-thread-lifecycle-cli-adapter.d.ts +154 -0
- package/dist/src/native-thread-lifecycle-cli-adapter.js +786 -0
- package/dist/src/native-thread-lifecycle-cli-adapter.js.map +1 -0
- package/dist/src/native-thread-lifecycle-ledger-cli-adapter.d.ts +25 -0
- package/dist/src/native-thread-lifecycle-ledger-cli-adapter.js +50 -0
- package/dist/src/native-thread-lifecycle-ledger-cli-adapter.js.map +1 -0
- package/dist/src/native-thread-lifecycle-query-service.d.ts +75 -0
- package/dist/src/native-thread-lifecycle-query-service.js +297 -0
- package/dist/src/native-thread-lifecycle-query-service.js.map +1 -0
- package/dist/src/native-thread-lifecycle-recovery-adapter.d.ts +45 -0
- package/dist/src/native-thread-lifecycle-recovery-adapter.js +154 -0
- package/dist/src/native-thread-lifecycle-recovery-adapter.js.map +1 -0
- package/dist/src/native-thread-lifecycle-recovery-service.d.ts +211 -0
- package/dist/src/native-thread-lifecycle-recovery-service.js +1093 -0
- package/dist/src/native-thread-lifecycle-recovery-service.js.map +1 -0
- package/dist/src/native-thread-resume-snapshot-policy.d.ts +73 -0
- package/dist/src/native-thread-resume-snapshot-policy.js +218 -0
- package/dist/src/native-thread-resume-snapshot-policy.js.map +1 -0
- package/dist/src/native-thread-resume-snapshot.d.ts +3 -61
- package/dist/src/native-thread-resume-snapshot.js +2 -143
- package/dist/src/native-thread-resume-snapshot.js.map +1 -1
- package/dist/src/native-thread-transition-application.d.ts +147 -0
- package/dist/src/native-thread-transition-application.js +974 -0
- package/dist/src/native-thread-transition-application.js.map +1 -0
- package/dist/src/native-thread-transition-policy.d.ts +127 -0
- package/dist/src/native-thread-transition-policy.js +154 -0
- package/dist/src/native-thread-transition-policy.js.map +1 -0
- package/dist/src/native-thread-transition-resource-adapter.d.ts +12 -0
- package/dist/src/native-thread-transition-resource-adapter.js +44 -0
- package/dist/src/native-thread-transition-resource-adapter.js.map +1 -0
- package/dist/src/native-thread-transition-settlement-service.d.ts +94 -0
- package/dist/src/native-thread-transition-settlement-service.js +134 -0
- package/dist/src/native-thread-transition-settlement-service.js.map +1 -0
- package/dist/src/native-thread-transition-verification-adapter.d.ts +62 -0
- package/dist/src/native-thread-transition-verification-adapter.js +451 -0
- package/dist/src/native-thread-transition-verification-adapter.js.map +1 -0
- package/dist/src/openclaw-callback-transport.d.ts +69 -0
- package/dist/src/openclaw-callback-transport.js +583 -0
- package/dist/src/openclaw-callback-transport.js.map +1 -0
- package/dist/src/openclaw-plugin-callback-adapter.d.ts +1 -0
- package/dist/src/openclaw-plugin-callback-adapter.js +423 -0
- package/dist/src/openclaw-plugin-callback-adapter.js.map +1 -0
- package/dist/src/openclaw-plugin-command-adapter.d.ts +16 -0
- package/dist/src/openclaw-plugin-command-adapter.js +1868 -0
- package/dist/src/openclaw-plugin-command-adapter.js.map +1 -0
- package/dist/src/openclaw-plugin-helpers.d.ts +27 -4
- package/dist/src/openclaw-plugin-helpers.js +356 -81
- package/dist/src/openclaw-plugin-helpers.js.map +1 -1
- package/dist/src/openclaw-plugin-schemas.d.ts +358 -0
- package/dist/src/openclaw-plugin-schemas.js +366 -0
- package/dist/src/openclaw-plugin-schemas.js.map +1 -0
- package/dist/src/openclaw-plugin-supervisor.d.ts +6 -0
- package/dist/src/openclaw-plugin-supervisor.js +123 -0
- package/dist/src/openclaw-plugin-supervisor.js.map +1 -0
- package/dist/src/openclaw-plugin.js +7 -2212
- package/dist/src/openclaw-plugin.js.map +1 -1
- package/dist/src/openclaw-private-authority-offers.d.ts +22 -0
- package/dist/src/openclaw-private-authority-offers.js +177 -0
- package/dist/src/openclaw-private-authority-offers.js.map +1 -0
- package/dist/src/protocol.d.ts +5 -0
- package/dist/src/protocol.js +59 -3
- package/dist/src/protocol.js.map +1 -1
- package/dist/src/session-store.d.ts +1 -0
- package/dist/src/session-store.js +84 -106
- package/dist/src/session-store.js.map +1 -1
- package/dist/src/store.d.ts +1 -0
- package/dist/src/store.js +5 -2
- package/dist/src/store.js.map +1 -1
- package/dist/src/terminal-acceptance-application-service.d.ts +65 -0
- package/dist/src/terminal-acceptance-application-service.js +63 -0
- package/dist/src/terminal-acceptance-application-service.js.map +1 -0
- package/dist/src/terminal-acceptance-cli-adapter.d.ts +210 -0
- package/dist/src/terminal-acceptance-cli-adapter.js +957 -0
- package/dist/src/terminal-acceptance-cli-adapter.js.map +1 -0
- package/dist/src/terminal-action-projection.d.ts +309 -0
- package/dist/src/terminal-action-projection.js +376 -0
- package/dist/src/terminal-action-projection.js.map +1 -0
- package/dist/src/terminal-agent-bridge.d.ts +3 -0
- package/dist/src/terminal-agent-bridge.js +29 -8
- package/dist/src/terminal-agent-bridge.js.map +1 -1
- package/dist/src/terminal-authority-policy.d.ts +141 -0
- package/dist/src/terminal-authority-policy.js +367 -0
- package/dist/src/terminal-authority-policy.js.map +1 -0
- package/dist/src/terminal-binding-authority.d.ts +118 -0
- package/dist/src/terminal-binding-authority.js +245 -0
- package/dist/src/terminal-binding-authority.js.map +1 -0
- package/dist/src/terminal-binding-reconciliation-service.d.ts +75 -0
- package/dist/src/terminal-binding-reconciliation-service.js +73 -0
- package/dist/src/terminal-binding-reconciliation-service.js.map +1 -0
- package/dist/src/terminal-command-cli-adapter.d.ts +380 -0
- package/dist/src/terminal-command-cli-adapter.js +3288 -0
- package/dist/src/terminal-command-cli-adapter.js.map +1 -0
- package/dist/src/terminal-control-ref.d.ts +4 -0
- package/dist/src/terminal-control-ref.js +11 -8
- package/dist/src/terminal-control-ref.js.map +1 -1
- package/dist/src/terminal-delegate-cli-adapter.d.ts +41 -0
- package/dist/src/terminal-delegate-cli-adapter.js +242 -0
- package/dist/src/terminal-delegate-cli-adapter.js.map +1 -0
- package/dist/src/terminal-dispatch-abort.d.ts +22 -0
- package/dist/src/terminal-dispatch-abort.js +30 -0
- package/dist/src/terminal-dispatch-abort.js.map +1 -0
- package/dist/src/terminal-dispatch-application.d.ts +115 -0
- package/dist/src/terminal-dispatch-application.js +478 -0
- package/dist/src/terminal-dispatch-application.js.map +1 -0
- package/dist/src/terminal-dispatch-capability.d.ts +63 -0
- package/dist/src/terminal-dispatch-capability.js +133 -0
- package/dist/src/terminal-dispatch-capability.js.map +1 -0
- package/dist/src/terminal-dispatch-completion-cli-adapter.d.ts +22 -0
- package/dist/src/terminal-dispatch-completion-cli-adapter.js +96 -0
- package/dist/src/terminal-dispatch-completion-cli-adapter.js.map +1 -0
- package/dist/src/terminal-dispatch-composition.d.ts +79 -0
- package/dist/src/terminal-dispatch-composition.js +2 -0
- package/dist/src/terminal-dispatch-composition.js.map +1 -0
- package/dist/src/terminal-dispatch-execution.d.ts +290 -0
- package/dist/src/terminal-dispatch-execution.js +916 -0
- package/dist/src/terminal-dispatch-execution.js.map +1 -0
- package/dist/src/terminal-dispatch-ledger-codec.d.ts +110 -0
- package/dist/src/terminal-dispatch-ledger-codec.js +399 -0
- package/dist/src/terminal-dispatch-ledger-codec.js.map +1 -0
- package/dist/src/terminal-dispatch-policy.d.ts +93 -0
- package/dist/src/terminal-dispatch-policy.js +122 -0
- package/dist/src/terminal-dispatch-policy.js.map +1 -0
- package/dist/src/terminal-dispatch-presenter.d.ts +65 -0
- package/dist/src/terminal-dispatch-presenter.js +258 -0
- package/dist/src/terminal-dispatch-presenter.js.map +1 -0
- package/dist/src/terminal-dispatch-receipt.d.ts +79 -0
- package/dist/src/terminal-dispatch-receipt.js +314 -0
- package/dist/src/terminal-dispatch-receipt.js.map +1 -0
- package/dist/src/terminal-dispatch-recovery-cli-adapter.d.ts +132 -0
- package/dist/src/terminal-dispatch-recovery-cli-adapter.js +1330 -0
- package/dist/src/terminal-dispatch-recovery-cli-adapter.js.map +1 -0
- package/dist/src/terminal-dispatch-recovery-service.d.ts +271 -0
- package/dist/src/terminal-dispatch-recovery-service.js +374 -0
- package/dist/src/terminal-dispatch-recovery-service.js.map +1 -0
- package/dist/src/terminal-dispatch-repository-cli-adapter.d.ts +35 -0
- package/dist/src/terminal-dispatch-repository-cli-adapter.js +483 -0
- package/dist/src/terminal-dispatch-repository-cli-adapter.js.map +1 -0
- package/dist/src/terminal-handoff-application-service.d.ts +7 -0
- package/dist/src/terminal-handoff-application-service.js +18 -0
- package/dist/src/terminal-handoff-application-service.js.map +1 -0
- package/dist/src/terminal-handoff-cli-adapter.d.ts +229 -0
- package/dist/src/terminal-handoff-cli-adapter.js +1389 -0
- package/dist/src/terminal-handoff-cli-adapter.js.map +1 -0
- package/dist/src/terminal-handoff-facts.d.ts +12 -0
- package/dist/src/terminal-handoff-facts.js +16 -0
- package/dist/src/terminal-handoff-facts.js.map +1 -0
- package/dist/src/terminal-identity-authority-cli-adapter.d.ts +318 -0
- package/dist/src/terminal-identity-authority-cli-adapter.js +1072 -0
- package/dist/src/terminal-identity-authority-cli-adapter.js.map +1 -0
- package/dist/src/terminal-identity-authority-service.d.ts +48 -0
- package/dist/src/terminal-identity-authority-service.js +45 -0
- package/dist/src/terminal-identity-authority-service.js.map +1 -0
- package/dist/src/terminal-list-cli-adapter.d.ts +274 -0
- package/dist/src/terminal-list-cli-adapter.js +2444 -0
- package/dist/src/terminal-list-cli-adapter.js.map +1 -0
- package/dist/src/terminal-list-renderer.d.ts +34 -0
- package/dist/src/terminal-list-renderer.js +643 -0
- package/dist/src/terminal-list-renderer.js.map +1 -0
- package/dist/src/terminal-maintenance-cli-adapter.d.ts +102 -0
- package/dist/src/terminal-maintenance-cli-adapter.js +1059 -0
- package/dist/src/terminal-maintenance-cli-adapter.js.map +1 -0
- package/dist/src/terminal-monitor-application-service.d.ts +275 -0
- package/dist/src/terminal-monitor-application-service.js +982 -0
- package/dist/src/terminal-monitor-application-service.js.map +1 -0
- package/dist/src/terminal-monitor-cli-adapter.d.ts +130 -0
- package/dist/src/terminal-monitor-cli-adapter.js +442 -0
- package/dist/src/terminal-monitor-cli-adapter.js.map +1 -0
- package/dist/src/terminal-monitor-decision-policy.d.ts +98 -0
- package/dist/src/terminal-monitor-decision-policy.js +246 -0
- package/dist/src/terminal-monitor-decision-policy.js.map +1 -0
- package/dist/src/terminal-monitor-launch-plan.d.ts +45 -0
- package/dist/src/terminal-monitor-launch-plan.js +94 -0
- package/dist/src/terminal-monitor-launch-plan.js.map +1 -0
- package/dist/src/terminal-monitor-ownership-policy.d.ts +31 -0
- package/dist/src/terminal-monitor-ownership-policy.js +64 -0
- package/dist/src/terminal-monitor-ownership-policy.js.map +1 -0
- package/dist/src/terminal-monitor-poll-policy.d.ts +48 -0
- package/dist/src/terminal-monitor-poll-policy.js +67 -0
- package/dist/src/terminal-monitor-poll-policy.js.map +1 -0
- package/dist/src/terminal-monitor-reconciliation-eligibility.d.ts +53 -0
- package/dist/src/terminal-monitor-reconciliation-eligibility.js +114 -0
- package/dist/src/terminal-monitor-reconciliation-eligibility.js.map +1 -0
- package/dist/src/terminal-monitor-state-cli-adapter.d.ts +106 -0
- package/dist/src/terminal-monitor-state-cli-adapter.js +1492 -0
- package/dist/src/terminal-monitor-state-cli-adapter.js.map +1 -0
- package/dist/src/terminal-monitor-state-reconciliation-service.d.ts +87 -0
- package/dist/src/terminal-monitor-state-reconciliation-service.js +106 -0
- package/dist/src/terminal-monitor-state-reconciliation-service.js.map +1 -0
- package/dist/src/terminal-monitor-supervision-cli-adapter.d.ts +122 -0
- package/dist/src/terminal-monitor-supervision-cli-adapter.js +685 -0
- package/dist/src/terminal-monitor-supervision-cli-adapter.js.map +1 -0
- package/dist/src/terminal-process-facts.d.ts +2 -0
- package/dist/src/terminal-process-facts.js +19 -0
- package/dist/src/terminal-process-facts.js.map +1 -0
- package/dist/src/terminal-process-source.d.ts +6 -4
- package/dist/src/terminal-process-source.js +25 -20
- package/dist/src/terminal-process-source.js.map +1 -1
- package/dist/src/terminal-runtime-cli-adapter.d.ts +80 -0
- package/dist/src/terminal-runtime-cli-adapter.js +488 -0
- package/dist/src/terminal-runtime-cli-adapter.js.map +1 -0
- package/dist/src/terminal-scoped-approval-authority.d.ts +62 -0
- package/dist/src/terminal-scoped-approval-authority.js +281 -0
- package/dist/src/terminal-scoped-approval-authority.js.map +1 -0
- package/dist/src/terminal-selector-projection-service.d.ts +26 -0
- package/dist/src/terminal-selector-projection-service.js +81 -0
- package/dist/src/terminal-selector-projection-service.js.map +1 -0
- package/dist/src/terminal-status-cli-adapter.d.ts +126 -0
- package/dist/src/terminal-status-cli-adapter.js +577 -0
- package/dist/src/terminal-status-cli-adapter.js.map +1 -0
- package/dist/src/terminal-status-facts.d.ts +56 -0
- package/dist/src/terminal-status-facts.js +199 -0
- package/dist/src/terminal-status-facts.js.map +1 -0
- package/dist/src/terminal-submission-acceptance.d.ts +62 -145
- package/dist/src/terminal-submission-acceptance.js +555 -222
- package/dist/src/terminal-submission-acceptance.js.map +1 -1
- package/dist/src/terminal-submission-facts.d.ts +123 -0
- package/dist/src/terminal-submission-facts.js +205 -0
- package/dist/src/terminal-submission-facts.js.map +1 -0
- package/dist/src/terminal-turn-binding-authority-cli-adapter.d.ts +14 -0
- package/dist/src/terminal-turn-binding-authority-cli-adapter.js +90 -0
- package/dist/src/terminal-turn-binding-authority-cli-adapter.js.map +1 -0
- package/dist/src/terminal-watch-callback-cli-adapter.d.ts +20 -0
- package/dist/src/terminal-watch-callback-cli-adapter.js +55 -0
- package/dist/src/terminal-watch-callback-cli-adapter.js.map +1 -0
- package/dist/src/terminal-watch-cli-adapter.d.ts +64 -0
- package/dist/src/terminal-watch-cli-adapter.js +508 -0
- package/dist/src/terminal-watch-cli-adapter.js.map +1 -0
- package/dist/src/terminal-watch-service.d.ts +97 -0
- package/dist/src/terminal-watch-service.js +714 -0
- package/dist/src/terminal-watch-service.js.map +1 -0
- package/dist/src/terminal-watch-store.d.ts +149 -0
- package/dist/src/terminal-watch-store.js +861 -0
- package/dist/src/terminal-watch-store.js.map +1 -0
- package/dist/src/value-guards.d.ts +4 -0
- package/dist/src/value-guards.js +12 -0
- package/dist/src/value-guards.js.map +1 -0
- package/dist/src/verified-dead-agent-policy.d.ts +192 -0
- package/dist/src/verified-dead-agent-policy.js +262 -0
- package/dist/src/verified-dead-agent-policy.js.map +1 -0
- package/docs/quickstart-herdr.md +8 -0
- package/docs/quickstart-tmux.md +33 -6
- package/openclaw.plugin.json +11 -3
- package/package.json +3 -1
- package/templates/openclaw-skills/agent-knock-knock/SKILL.md +58 -40
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { isExecutorKind } from "./executors.js";
|
|
2
|
+
import { executorForConversation, sessionIdForConversation, turnIdForConversation } from "./protocol.js";
|
|
3
|
+
import { isRecord, nonBlankString as stringValue } from "./value-guards.js";
|
|
4
|
+
export function summarizeConversation(conversation, ports) {
|
|
5
|
+
const executor = executorForConversation(conversation);
|
|
6
|
+
const callbackDelivery = isRecord(conversation.callback_delivery)
|
|
7
|
+
? conversation.callback_delivery
|
|
8
|
+
: undefined;
|
|
9
|
+
const callbackDisposition = callbackDelivery
|
|
10
|
+
? ports.callbackRetryDisposition(callbackDelivery)
|
|
11
|
+
: undefined;
|
|
12
|
+
return {
|
|
13
|
+
session_id: sessionIdForConversation(conversation),
|
|
14
|
+
turn_id: turnIdForConversation(conversation),
|
|
15
|
+
conversation_id: conversation.conversation_id,
|
|
16
|
+
agent: executor.kind,
|
|
17
|
+
executor,
|
|
18
|
+
session: executor.session,
|
|
19
|
+
status: conversation.status,
|
|
20
|
+
request: conversation.user_request,
|
|
21
|
+
workspace: conversation.workspace,
|
|
22
|
+
openclaw_session: conversation.openclaw_session,
|
|
23
|
+
response_rounds_used: conversation.response_rounds_used,
|
|
24
|
+
soft_limit: conversation.soft_limit,
|
|
25
|
+
hard_limit: conversation.hard_limit,
|
|
26
|
+
created_at: conversation.created_at,
|
|
27
|
+
updated_at: conversation.updated_at,
|
|
28
|
+
idle_since: conversation.idle_since,
|
|
29
|
+
closed_at: conversation.closed_at,
|
|
30
|
+
...(callbackDelivery
|
|
31
|
+
? {
|
|
32
|
+
callback_delivery: {
|
|
33
|
+
status: callbackDelivery.status,
|
|
34
|
+
attempts: callbackDelivery.attempts,
|
|
35
|
+
attempt_state: callbackDisposition?.state,
|
|
36
|
+
attempt_pid: callbackDelivery.attempt_pid,
|
|
37
|
+
lease_expires_at: callbackDelivery.attempt_lease_expires_at,
|
|
38
|
+
next_attempt_at: callbackDelivery.next_attempt_at,
|
|
39
|
+
last_error: callbackDelivery.last_error === undefined
|
|
40
|
+
? undefined
|
|
41
|
+
: ports.textSummary(String(callbackDelivery.last_error))
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
: {}),
|
|
45
|
+
state_path: conversation.state_path,
|
|
46
|
+
event_log_path: conversation.event_log_path
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
export function isDiscoverableTmuxConversation(conversation) {
|
|
50
|
+
if (!isRecord(conversation) || !isRecord(conversation.executor)) {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
const kind = stringValue(conversation.executor.kind)?.toLowerCase();
|
|
54
|
+
return kind !== undefined &&
|
|
55
|
+
isExecutorKind(kind) &&
|
|
56
|
+
conversation.executor.transport === "tmux";
|
|
57
|
+
}
|
|
58
|
+
export function persistedExecutorLogFields(conversation) {
|
|
59
|
+
if (isDiscoverableTmuxConversation(conversation)) {
|
|
60
|
+
const executor = executorForConversation(conversation);
|
|
61
|
+
return {
|
|
62
|
+
agent: executor.kind,
|
|
63
|
+
executor_session: executor.session
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
const rawExecutor = isRecord(conversation?.executor) ? conversation.executor : {};
|
|
67
|
+
return {
|
|
68
|
+
agent: stringValue(rawExecutor.kind) ?? "unsupported",
|
|
69
|
+
executor_session: stringValue(rawExecutor.session)
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
export function summarizeEvent(event) {
|
|
73
|
+
return {
|
|
74
|
+
ts: event.ts,
|
|
75
|
+
event: event.event,
|
|
76
|
+
from: event.from,
|
|
77
|
+
to: event.to,
|
|
78
|
+
type: event.type,
|
|
79
|
+
status: event.status,
|
|
80
|
+
round: event.round,
|
|
81
|
+
body: typeof event.body === "string" ? event.body.slice(0, 500) : undefined
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
export function codexTerminalContextFromHistory(input) {
|
|
85
|
+
const { id, confidence, match, process, context, terminalControl, terminalStatus, limitations, candidates } = input;
|
|
86
|
+
return {
|
|
87
|
+
conversation_id: id,
|
|
88
|
+
source: "terminal_control",
|
|
89
|
+
confidence,
|
|
90
|
+
match,
|
|
91
|
+
about: rolloutAbout(context, terminalStatus),
|
|
92
|
+
codex_session: context.source,
|
|
93
|
+
evidence: {
|
|
94
|
+
process,
|
|
95
|
+
terminal_control: terminalControl,
|
|
96
|
+
terminal_status: terminalStatus,
|
|
97
|
+
initial_request: bestSessionIntent(context),
|
|
98
|
+
title: context.source.title,
|
|
99
|
+
recent_messages: visibleRolloutMessages(context).slice(-8),
|
|
100
|
+
recent_commands: context.commands.slice(-8),
|
|
101
|
+
candidates
|
|
102
|
+
},
|
|
103
|
+
limitations
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
export function managedConversationAbout(conversation, events, terminalStatus) {
|
|
107
|
+
const request = truncateText(String(conversation.user_request ?? "").trim(), 220);
|
|
108
|
+
const recent = recentMessageEvidence(events).at(-1)?.body;
|
|
109
|
+
const parts = [
|
|
110
|
+
request ? `Initial request: ${request}` : undefined,
|
|
111
|
+
recent ? `Latest visible message: ${truncateText(recent, 180)}` : undefined,
|
|
112
|
+
terminalStatus?.activity_state
|
|
113
|
+
? `Current terminal state: ${terminalStatus.activity_state}.`
|
|
114
|
+
: undefined
|
|
115
|
+
].filter(Boolean);
|
|
116
|
+
return parts.length > 0
|
|
117
|
+
? parts.join(" ")
|
|
118
|
+
: "No durable task content is available for this AKK-managed session.";
|
|
119
|
+
}
|
|
120
|
+
export function rolloutAbout(context, terminalStatus) {
|
|
121
|
+
const title = truncateText(String(context.source.title ?? "").trim(), 180);
|
|
122
|
+
const intent = bestSessionIntent(context);
|
|
123
|
+
const latestAssistant = [...visibleRolloutMessages(context)].reverse()
|
|
124
|
+
.find((message) => message.role === "assistant")?.text;
|
|
125
|
+
const latestCommand = context.commands.at(-1)?.command;
|
|
126
|
+
const parts = [
|
|
127
|
+
intent
|
|
128
|
+
? `Initial request: ${truncateText(intent, 220)}`
|
|
129
|
+
: title ? `Codex title: ${title}` : undefined,
|
|
130
|
+
latestAssistant
|
|
131
|
+
? `Latest visible progress: ${truncateText(latestAssistant, 180)}`
|
|
132
|
+
: undefined,
|
|
133
|
+
latestCommand
|
|
134
|
+
? `Recent command: ${truncateText(latestCommand, 140)}`
|
|
135
|
+
: undefined,
|
|
136
|
+
terminalStatus?.activity_state
|
|
137
|
+
? `Current terminal state: ${terminalStatus.activity_state}.`
|
|
138
|
+
: undefined
|
|
139
|
+
].filter(Boolean);
|
|
140
|
+
return parts.length > 0
|
|
141
|
+
? parts.join(" ")
|
|
142
|
+
: "Codex history was found, but it did not include enough visible message content to summarize the session.";
|
|
143
|
+
}
|
|
144
|
+
export function screenOnlyAbout(input) {
|
|
145
|
+
const { process, terminalStatus } = input;
|
|
146
|
+
const activity = terminalStatus?.activity_reason ?? terminalStatus?.activity_state;
|
|
147
|
+
const excerpt = terminalStatus?.screen?.excerpt;
|
|
148
|
+
const parts = [
|
|
149
|
+
process?.cwd ? `This Codex process is running in ${process.cwd}.` : undefined,
|
|
150
|
+
activity ? `Terminal activity: ${truncateText(String(activity), 180)}` : undefined,
|
|
151
|
+
excerpt ? `Visible screen: ${truncateText(String(excerpt), 220)}` : undefined
|
|
152
|
+
].filter(Boolean);
|
|
153
|
+
return parts.length > 0
|
|
154
|
+
? parts.join(" ")
|
|
155
|
+
: "Only active process metadata is available; no Codex conversation history or terminal screen content could be read.";
|
|
156
|
+
}
|
|
157
|
+
export function bestSessionIntent(context) {
|
|
158
|
+
const firstUser = visibleRolloutMessages(context)
|
|
159
|
+
.find((message) => message.role === "user")?.text;
|
|
160
|
+
if (firstUser) {
|
|
161
|
+
return firstUser;
|
|
162
|
+
}
|
|
163
|
+
const title = cleanIntentText(context.source.title);
|
|
164
|
+
if (title) {
|
|
165
|
+
return title;
|
|
166
|
+
}
|
|
167
|
+
return undefined;
|
|
168
|
+
}
|
|
169
|
+
export function visibleRolloutMessages(context) {
|
|
170
|
+
return context.messages.filter((message) => !isEnvironmentContextMessage(message.text));
|
|
171
|
+
}
|
|
172
|
+
export function cleanIntentText(value) {
|
|
173
|
+
const text = String(value ?? "").replace(/\s+/g, " ").trim();
|
|
174
|
+
return text && !isEnvironmentContextMessage(text) ? text : undefined;
|
|
175
|
+
}
|
|
176
|
+
export function isEnvironmentContextMessage(value) {
|
|
177
|
+
return /^\s*<environment_context[\s>]/u.test(String(value ?? ""));
|
|
178
|
+
}
|
|
179
|
+
function recentMessageEvidence(events) {
|
|
180
|
+
return events
|
|
181
|
+
.filter((event) => event.event === "message" && typeof event.body === "string")
|
|
182
|
+
.slice(-8)
|
|
183
|
+
.map((event) => ({
|
|
184
|
+
ts: event.ts,
|
|
185
|
+
from: event.from,
|
|
186
|
+
to: event.to,
|
|
187
|
+
type: event.type,
|
|
188
|
+
round: event.round,
|
|
189
|
+
body: truncateText(event.body, 800)
|
|
190
|
+
}));
|
|
191
|
+
}
|
|
192
|
+
export function truncateText(value, maxLength) {
|
|
193
|
+
const text = String(value ?? "").replace(/\s+/g, " ").trim();
|
|
194
|
+
if (text.length <= maxLength) {
|
|
195
|
+
return text;
|
|
196
|
+
}
|
|
197
|
+
return `${text.slice(0, Math.max(0, maxLength - 3))}...`;
|
|
198
|
+
}
|
|
199
|
+
//# sourceMappingURL=terminal-status-facts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"terminal-status-facts.js","sourceRoot":"","sources":["../../src/terminal-status-facts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,101 +1,8 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { CodexOpenRootRolloutInventory } from "./agent-session-provider.js";
|
|
2
2
|
import type { TerminalCompletionEvidence } from "./terminal-agent-adapter.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
nativeThreadId: string;
|
|
7
|
-
requestHash: string;
|
|
8
|
-
acceptanceId: string;
|
|
9
|
-
acceptedAt?: string;
|
|
10
|
-
anchorFingerprint: string;
|
|
11
|
-
evidenceFingerprint: string;
|
|
12
|
-
metadata?: Record<string, string | number>;
|
|
13
|
-
}
|
|
14
|
-
export interface CodexRolloutIdentity {
|
|
15
|
-
fd: string;
|
|
16
|
-
device: string;
|
|
17
|
-
inode: string;
|
|
18
|
-
path: string;
|
|
19
|
-
}
|
|
20
|
-
interface CodexRolloutAcceptanceAnchorBase {
|
|
21
|
-
schema: "agent-knock-knock/codex-rollout-acceptance-anchor";
|
|
22
|
-
process_uuid: string;
|
|
23
|
-
process_birth: string;
|
|
24
|
-
captured_at: string;
|
|
25
|
-
file_existed: boolean;
|
|
26
|
-
offset_bytes: number;
|
|
27
|
-
anchor_fingerprint: string;
|
|
28
|
-
}
|
|
29
|
-
export interface CodexBoundRolloutAcceptanceAnchor extends CodexRolloutAcceptanceAnchorBase {
|
|
30
|
-
version: 1;
|
|
31
|
-
native_thread_id: string;
|
|
32
|
-
mode: "existing" | "pre_materialization";
|
|
33
|
-
rollout?: CodexRolloutIdentity;
|
|
34
|
-
expected_empty_native_session?: true;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* A process-bound anchor for a genuinely virgin Codex TUI. Codex does not
|
|
38
|
-
* assign a native thread UUID or open a rollout until its first prompt is
|
|
39
|
-
* submitted, so the UUID cannot safely be named before transport. The exact
|
|
40
|
-
* process incarnation is still pinned here; acceptance must additionally
|
|
41
|
-
* prove the newly materialized UUID, rollout, and request hash.
|
|
42
|
-
*/
|
|
43
|
-
export interface CodexVirginRolloutAcceptanceAnchor extends CodexRolloutAcceptanceAnchorBase {
|
|
44
|
-
version: 2;
|
|
45
|
-
mode: "pre_materialization";
|
|
46
|
-
native_thread_id?: never;
|
|
47
|
-
native_thread_binding: "post_submission";
|
|
48
|
-
file_existed: false;
|
|
49
|
-
offset_bytes: 0;
|
|
50
|
-
rollout?: never;
|
|
51
|
-
expected_empty_native_session: true;
|
|
52
|
-
}
|
|
53
|
-
export interface CodexCandidateRolloutAcceptanceAnchorEntry {
|
|
54
|
-
native_thread_id: string;
|
|
55
|
-
rollout: CodexRolloutIdentity;
|
|
56
|
-
offset_bytes: number;
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* A process-bound pre-submit snapshot for a terminal whose open-root
|
|
60
|
-
* inventory is exact but cannot name one foreground root. Existing roots are
|
|
61
|
-
* fenced at their byte offsets; roots opened after capture are admitted only
|
|
62
|
-
* with a fresh exact session_meta header. No candidate is selected by mtime.
|
|
63
|
-
*/
|
|
64
|
-
export interface CodexCandidateSetRolloutAcceptanceAnchor extends CodexRolloutAcceptanceAnchorBase {
|
|
65
|
-
version: 3;
|
|
66
|
-
mode: "candidate_set";
|
|
67
|
-
native_thread_binding: "post_submission";
|
|
68
|
-
file_existed: false;
|
|
69
|
-
offset_bytes: 0;
|
|
70
|
-
zero_file_baseline: boolean;
|
|
71
|
-
inventory_pid: number;
|
|
72
|
-
inventory_cwd?: string;
|
|
73
|
-
inventory_fingerprint: string;
|
|
74
|
-
candidate_rollouts: CodexCandidateRolloutAcceptanceAnchorEntry[];
|
|
75
|
-
}
|
|
76
|
-
export type CodexRolloutAcceptanceAnchor = CodexBoundRolloutAcceptanceAnchor | CodexVirginRolloutAcceptanceAnchor | CodexCandidateSetRolloutAcceptanceAnchor;
|
|
77
|
-
export type CodexCandidateSetRolloutAcceptanceResult = {
|
|
78
|
-
status: "accepted";
|
|
79
|
-
identity: CodexOpenRootRolloutIdentity;
|
|
80
|
-
evidence: TerminalSubmissionAcceptanceEvidence;
|
|
81
|
-
} | {
|
|
82
|
-
status: "pending";
|
|
83
|
-
inspected_candidates: number;
|
|
84
|
-
exact_matches: number;
|
|
85
|
-
incomplete_candidates?: number;
|
|
86
|
-
} | {
|
|
87
|
-
status: "uncertain";
|
|
88
|
-
code: "multiple_exact_request_acceptances" | "candidate_inventory_changed" | "candidate_scan_invalid";
|
|
89
|
-
reason: string;
|
|
90
|
-
inspected_candidates: number;
|
|
91
|
-
exact_matches: number;
|
|
92
|
-
};
|
|
93
|
-
export interface CodexRolloutAcceptanceIdentity {
|
|
94
|
-
sessionId: string;
|
|
95
|
-
processUuid?: string;
|
|
96
|
-
processBirth?: string;
|
|
97
|
-
rollout?: CodexRolloutIdentity;
|
|
98
|
-
}
|
|
3
|
+
import { validateCodexRolloutAcceptanceAnchor, validateTerminalSubmissionAcceptanceEvidence, type CaptureCodexRolloutAcceptanceAnchorOptions, type CodexCandidateSetRolloutAcceptanceAnchor, type CodexCandidateSetRolloutAcceptanceRequest, type CodexCandidateSetRolloutAcceptanceResult, type CodexRolloutAcceptanceAnchor, type CodexRolloutAcceptanceIdentity, type CodexRolloutAcceptanceRequest, type CodexRolloutIdentity, type TerminalSubmissionAcceptanceEvidence } from "./terminal-submission-facts.js";
|
|
4
|
+
export { validateCodexRolloutAcceptanceAnchor, validateTerminalSubmissionAcceptanceEvidence };
|
|
5
|
+
export type { CodexBoundRolloutAcceptanceAnchor, CodexCandidateRolloutAcceptanceAnchorEntry, CodexCandidateSetRolloutAcceptanceAnchor, CodexRolloutAcceptanceAnchor, CodexCandidateSetRolloutAcceptanceResult, CodexRolloutAcceptanceIdentity, CodexRolloutIdentity, TerminalSubmissionAcceptanceEvidence, CodexVirginRolloutAcceptanceAnchor } from "./terminal-submission-facts.js";
|
|
99
6
|
export type CodexBoundRolloutCompletionCode = "completion_found" | "exact_turn_not_complete" | "partial_rollout_record" | "rollout_changed_during_scan" | "invalid_anchor" | "invalid_acceptance_evidence" | "acceptance_anchor_mismatch" | "acceptance_turn_mismatch" | "binding_identity_mismatch" | "rollout_identity_mismatch" | "rollout_unreadable" | "rollout_truncated" | "scan_limit_exceeded" | "invalid_rollout_jsonl" | "duplicate_exact_completion" | "invalid_exact_completion";
|
|
100
7
|
export interface CodexBoundRolloutCompletionDiagnostics {
|
|
101
8
|
detector: "codex_exact_bound_rollout";
|
|
@@ -121,60 +28,72 @@ export type CodexBoundRolloutCompletionResult = {
|
|
|
121
28
|
status: "failure";
|
|
122
29
|
diagnostics: CodexBoundRolloutCompletionDiagnostics;
|
|
123
30
|
};
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
export
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
};
|
|
137
|
-
}): {
|
|
138
|
-
replayed: true;
|
|
139
|
-
delivered: boolean;
|
|
140
|
-
status: "async_pending" | "submission_pending_acceptance" | "submission_uncertain";
|
|
141
|
-
submission_outcome: "agent_accepted" | "pending_acceptance" | "uncertain";
|
|
142
|
-
delivery_receipt: "agent_accepted" | "enter_dispatched" | "submitted";
|
|
143
|
-
do_not_retry?: true;
|
|
144
|
-
evidence_error?: string;
|
|
145
|
-
};
|
|
146
|
-
type CaptureCodexRolloutAcceptanceAnchorOptions = {
|
|
147
|
-
processUuid: string;
|
|
148
|
-
processBirth: string;
|
|
149
|
-
now?: Date;
|
|
150
|
-
} & ({
|
|
151
|
-
nativeThreadId: string;
|
|
152
|
-
mode: "existing";
|
|
31
|
+
/**
|
|
32
|
+
* Durable identity for one already-running Codex task that was started by the
|
|
33
|
+
* human in the TUI. The prompt itself is deliberately omitted; the exact root
|
|
34
|
+
* user row is represented only by its SHA-256 digest and native turn UUID.
|
|
35
|
+
*/
|
|
36
|
+
export interface CodexHumanStartedActiveTaskAnchor {
|
|
37
|
+
schema: "agent-knock-knock/codex-human-started-active-task-anchor";
|
|
38
|
+
version: 1;
|
|
39
|
+
native_thread_id: string;
|
|
40
|
+
process_uuid: string;
|
|
41
|
+
process_birth: string;
|
|
42
|
+
captured_at: string;
|
|
153
43
|
rollout: CodexRolloutIdentity;
|
|
44
|
+
turn_id: string;
|
|
45
|
+
request_hash: string;
|
|
46
|
+
codex_version: string;
|
|
47
|
+
task_started_offset_bytes: number;
|
|
48
|
+
user_message_offset_bytes: number;
|
|
49
|
+
observed_end_offset_bytes: number;
|
|
50
|
+
anchor_fingerprint: string;
|
|
51
|
+
}
|
|
52
|
+
export interface CaptureCodexHumanStartedActiveTaskOptions {
|
|
53
|
+
currentIdentity: CodexRolloutAcceptanceIdentity;
|
|
54
|
+
now?: Date;
|
|
55
|
+
maxBytes?: number;
|
|
56
|
+
}
|
|
57
|
+
export interface ObserveCodexHumanStartedActiveTaskOptions {
|
|
58
|
+
anchor: CodexHumanStartedActiveTaskAnchor;
|
|
59
|
+
currentIdentity: CodexRolloutAcceptanceIdentity;
|
|
60
|
+
maxBytes?: number;
|
|
61
|
+
/** Last complete, stable JSONL boundary returned by a prior observation. */
|
|
62
|
+
resumeOffsetBytes?: number;
|
|
63
|
+
}
|
|
64
|
+
export type CodexHumanStartedActiveTaskObservation = {
|
|
65
|
+
status: "pending";
|
|
66
|
+
observedEndOffsetBytes: number;
|
|
67
|
+
safeResumeOffsetBytes: number;
|
|
154
68
|
} | {
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
69
|
+
status: "completed";
|
|
70
|
+
completion: TerminalCompletionEvidence & {
|
|
71
|
+
outcome: "success" | "failure";
|
|
72
|
+
};
|
|
158
73
|
} | {
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
74
|
+
status: "invalidated";
|
|
75
|
+
reason: string;
|
|
76
|
+
} | {
|
|
77
|
+
status: "unavailable";
|
|
78
|
+
reason: string;
|
|
79
|
+
retryable: true;
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* Capture the latest active native task in an exact open Codex rollout.
|
|
83
|
+
* This is intentionally separate from the pre-send acceptance anchor: all
|
|
84
|
+
* task-start and root-user evidence already exists when this function runs.
|
|
85
|
+
*/
|
|
86
|
+
export declare function captureCodexHumanStartedActiveTaskAnchor(options: CaptureCodexHumanStartedActiveTaskOptions): CodexHumanStartedActiveTaskAnchor | undefined;
|
|
87
|
+
/** Observe only the exact human-started task named by the persisted anchor. */
|
|
88
|
+
export declare function observeCodexHumanStartedActiveTask(options: ObserveCodexHumanStartedActiveTaskOptions): CodexHumanStartedActiveTaskObservation;
|
|
89
|
+
export declare function validateCodexHumanStartedActiveTaskAnchor(value: unknown): CodexHumanStartedActiveTaskAnchor;
|
|
163
90
|
export declare function captureCodexRolloutAcceptanceAnchor(options: CaptureCodexRolloutAcceptanceAnchorOptions): CodexRolloutAcceptanceAnchor;
|
|
164
91
|
export declare function captureCodexCandidateSetRolloutAcceptanceAnchor({ inventory: inventoryValue, now }: {
|
|
165
92
|
inventory: CodexOpenRootRolloutInventory;
|
|
166
93
|
now?: Date;
|
|
167
94
|
}): CodexCandidateSetRolloutAcceptanceAnchor;
|
|
168
|
-
export declare function detectCodexCandidateSetRolloutAcceptance({ anchor: anchorValue, currentInventory: inventoryValue, requestHash: requestHashValue }:
|
|
169
|
-
|
|
170
|
-
currentInventory: CodexOpenRootRolloutInventory;
|
|
171
|
-
requestHash: string;
|
|
172
|
-
}): CodexCandidateSetRolloutAcceptanceResult;
|
|
173
|
-
export declare function detectCodexRolloutAcceptance(options: {
|
|
174
|
-
anchor: CodexRolloutAcceptanceAnchor;
|
|
175
|
-
currentIdentity: CodexRolloutAcceptanceIdentity;
|
|
176
|
-
requestHash: string;
|
|
177
|
-
}): TerminalSubmissionAcceptanceEvidence | undefined;
|
|
95
|
+
export declare function detectCodexCandidateSetRolloutAcceptance({ anchor: anchorValue, currentInventory: inventoryValue, requestHash: requestHashValue }: CodexCandidateSetRolloutAcceptanceRequest): CodexCandidateSetRolloutAcceptanceResult;
|
|
96
|
+
export declare function detectCodexRolloutAcceptance(options: CodexRolloutAcceptanceRequest): TerminalSubmissionAcceptanceEvidence | undefined;
|
|
178
97
|
/**
|
|
179
98
|
* Scans the exact rollout and native turn proven by terminal acceptance.
|
|
180
99
|
*
|
|
@@ -189,5 +108,3 @@ export declare function detectCodexBoundRolloutCompletion(options: {
|
|
|
189
108
|
currentIdentity: CodexRolloutAcceptanceIdentity;
|
|
190
109
|
requestHash: string;
|
|
191
110
|
}): CodexBoundRolloutCompletionResult;
|
|
192
|
-
export declare function validateCodexRolloutAcceptanceAnchor(value: CodexRolloutAcceptanceAnchor): CodexRolloutAcceptanceAnchor;
|
|
193
|
-
export {};
|