@adhdev/daemon-core 0.9.82-rc.47 → 0.9.82-rc.470
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/dist/boot/daemon-lifecycle.d.ts +9 -0
- package/dist/boot/process-hardening.d.ts +50 -0
- package/dist/build-info.d.ts +37 -0
- package/dist/chat/source-machine.d.ts +166 -0
- package/dist/chat/source-resolver.d.ts +104 -0
- package/dist/chat/subscription-updates.d.ts +1 -0
- package/dist/cli-adapter-types.d.ts +68 -2
- package/dist/cli-adapters/cli-script-runner.d.ts +117 -0
- package/dist/cli-adapters/cli-state-engine.d.ts +200 -0
- package/dist/cli-adapters/provider-cli-adapter.d.ts +126 -64
- package/dist/cli-adapters/provider-cli-parse.d.ts +5 -0
- package/dist/cli-adapters/provider-cli-runtime.d.ts +34 -0
- package/dist/cli-adapters/provider-cli-shared.d.ts +74 -0
- package/dist/cli-adapters/pty-write-chunking.d.ts +34 -0
- package/dist/cli-adapters/raw-terminal-io.d.ts +37 -0
- package/dist/cli-adapters/resolve-executable.d.ts +69 -0
- package/dist/cli-adapters/terminal-backends/ghostty-vt-backend.d.ts +6 -3
- package/dist/cli-adapters/terminal-backends/types.d.ts +10 -2
- package/dist/cli-adapters/terminal-screen.d.ts +4 -11
- package/dist/commands/chat-commands-debug-bundle.d.ts +14 -0
- package/dist/commands/chat-commands-read.d.ts +7 -0
- package/dist/commands/chat-commands-scope.d.ts +39 -0
- package/dist/commands/chat-commands-shared.d.ts +33 -0
- package/dist/commands/chat-commands-write.d.ts +14 -0
- package/dist/commands/chat-commands.d.ts +10 -23
- package/dist/commands/cli-manager.d.ts +25 -1
- package/dist/commands/handler.d.ts +125 -0
- package/dist/commands/high-family/index.d.ts +3 -0
- package/dist/commands/high-family/mesh-coordinator-launch.d.ts +2 -0
- package/dist/commands/high-family/mesh-events.d.ts +2 -0
- package/dist/commands/high-family/mesh-status.d.ts +2 -0
- package/dist/commands/high-family/types.d.ts +64 -0
- package/dist/commands/low-family/coordinator-prompt.d.ts +9 -0
- package/dist/commands/low-family/daemon-lifecycle.d.ts +2 -0
- package/dist/commands/low-family/diagnostics.d.ts +2 -0
- package/dist/commands/low-family/index.d.ts +3 -0
- package/dist/commands/low-family/mesh-ledger.d.ts +10 -0
- package/dist/commands/low-family/mesh-node-logs.d.ts +2 -0
- package/dist/commands/low-family/notification.d.ts +2 -0
- package/dist/commands/low-family/refine-config.d.ts +2 -0
- package/dist/commands/low-family/session-host.d.ts +2 -0
- package/dist/commands/low-family/spec-providerdev.d.ts +11 -0
- package/dist/commands/low-family/status-meta.d.ts +2 -0
- package/dist/commands/low-family/types.d.ts +33 -0
- package/dist/commands/med-family/cli-agent.d.ts +2 -0
- package/dist/commands/med-family/fast-forward.d.ts +2 -0
- package/dist/commands/med-family/ide.d.ts +10 -0
- package/dist/commands/med-family/index.d.ts +3 -0
- package/dist/commands/med-family/mesh-crud.d.ts +48 -0
- package/dist/commands/med-family/mesh-host-pairing.d.ts +2 -0
- package/dist/commands/med-family/mesh-queue.d.ts +2 -0
- package/dist/commands/med-family/mesh-restart.d.ts +2 -0
- package/dist/commands/med-family/types.d.ts +152 -0
- package/dist/commands/mesh-coordinator.d.ts +85 -1
- package/dist/commands/router-aggregate-status.d.ts +24 -0
- package/dist/commands/router-mesh-session-owner.d.ts +59 -0
- package/dist/commands/router-refine.d.ts +137 -0
- package/dist/commands/router-worktree-cleanup.d.ts +133 -0
- package/dist/commands/router.d.ts +204 -15
- package/dist/commands/upgrade-helper.d.ts +41 -1
- package/dist/config/chat-history.d.ts +9 -0
- package/dist/config/config.d.ts +19 -0
- package/dist/config/mesh-config.d.ts +136 -1
- package/dist/config/mesh-json-config.d.ts +199 -0
- package/dist/config/registry-resolver.d.ts +54 -0
- package/dist/config/repo-settings.d.ts +77 -0
- package/dist/daemon/dev-server.d.ts +0 -2
- package/dist/detection/cli-detector.d.ts +17 -0
- package/dist/detection/ide-detector.d.ts +13 -0
- package/dist/detection/win32-ide-version.d.ts +37 -0
- package/dist/git/change-impact-config.d.ts +159 -0
- package/dist/git/git-commands.d.ts +26 -2
- package/dist/git/git-diff.d.ts +6 -0
- package/dist/git/git-executor.d.ts +11 -0
- package/dist/git/git-status.d.ts +57 -0
- package/dist/git/git-types.d.ts +2 -50
- package/dist/git/git-worktree.d.ts +71 -1
- package/dist/git/index.d.ts +3 -1
- package/dist/index.d.ts +70 -16
- package/dist/index.js +58255 -24541
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +59189 -25650
- package/dist/index.mjs.map +1 -1
- package/dist/installer.d.ts +1 -4
- package/dist/ipc/local-ipc-server.d.ts +91 -0
- package/dist/launch.d.ts +1 -1
- package/dist/logging/async-batch-writer.d.ts +10 -0
- package/dist/logging/debug-config.d.ts +16 -0
- package/dist/logging/log-redactor.d.ts +24 -0
- package/dist/logging/log-tail-reader.d.ts +81 -0
- package/dist/logging/logger.d.ts +1 -1
- package/dist/mesh/contracts.d.ts +230 -0
- package/dist/mesh/coordinator-prompt.d.ts +76 -0
- package/dist/mesh/coordinator-registry.d.ts +59 -0
- package/dist/mesh/mesh-active-work.d.ts +203 -0
- package/dist/mesh/mesh-clone-grace.d.ts +8 -0
- package/dist/mesh/mesh-completion-synthesis.d.ts +4 -0
- package/dist/mesh/mesh-coordinator-config.d.ts +21 -0
- package/dist/mesh/mesh-delivery-policy.d.ts +104 -0
- package/dist/mesh/mesh-event-classify.d.ts +7 -0
- package/dist/mesh/mesh-event-forwarding.d.ts +41 -0
- package/dist/mesh/mesh-event-trace.d.ts +21 -0
- package/dist/mesh/mesh-events-coordinator.d.ts +4 -0
- package/dist/mesh/mesh-events-pending.d.ts +246 -0
- package/dist/mesh/mesh-events-stale.d.ts +61 -0
- package/dist/mesh/mesh-events-utils.d.ts +75 -0
- package/dist/mesh/mesh-events.d.ts +6 -49
- package/dist/mesh/mesh-fast-forward.d.ts +81 -0
- package/dist/mesh/mesh-host-ownership.d.ts +29 -0
- package/dist/mesh/mesh-init.d.ts +128 -0
- package/dist/mesh/mesh-ledger-reconciliation.d.ts +23 -4
- package/dist/mesh/mesh-ledger.d.ts +139 -1
- package/dist/mesh/mesh-magi-status.d.ts +63 -0
- package/dist/mesh/mesh-missions.d.ts +226 -0
- package/dist/mesh/mesh-node-identity.d.ts +310 -0
- package/dist/mesh/mesh-queue-assignment.d.ts +158 -0
- package/dist/mesh/mesh-reconcile-acked-hold.d.ts +17 -0
- package/dist/mesh/mesh-reconcile-config.d.ts +6 -0
- package/dist/mesh/mesh-reconcile-identity.d.ts +6 -0
- package/dist/mesh/mesh-reconcile-loop.d.ts +80 -0
- package/dist/mesh/mesh-reconcile-v2-backstop.d.ts +16 -0
- package/dist/mesh/mesh-refine-batch.d.ts +68 -0
- package/dist/mesh/mesh-refine-gates.d.ts +428 -0
- package/dist/mesh/mesh-refine-status.d.ts +62 -0
- package/dist/mesh/mesh-remote-event-pull.d.ts +15 -0
- package/dist/mesh/mesh-review-inbox.d.ts +90 -0
- package/dist/mesh/mesh-routing.d.ts +70 -0
- package/dist/mesh/mesh-runtime-store.d.ts +508 -0
- package/dist/mesh/mesh-scheduling-runtime.d.ts +78 -0
- package/dist/mesh/mesh-task-inflight.d.ts +46 -0
- package/dist/mesh/mesh-task-stats.d.ts +49 -0
- package/dist/mesh/mesh-unresolved-forward-outbox.d.ts +30 -0
- package/dist/mesh/mesh-warmup-deadline.d.ts +68 -0
- package/dist/mesh/mesh-work-queue.d.ts +363 -5
- package/dist/mesh/preview-freshness.d.ts +28 -0
- package/dist/mesh/refine-config.d.ts +216 -0
- package/dist/mesh/worktree-bootstrap-config.d.ts +219 -0
- package/dist/providers/acp-provider-instance.d.ts +5 -0
- package/dist/providers/approval-utils.d.ts +46 -0
- package/dist/providers/chat-message-normalization.d.ts +58 -1
- package/dist/providers/cli-provider-effect-format.d.ts +30 -0
- package/dist/providers/cli-provider-history-dedup.d.ts +17 -0
- package/dist/providers/cli-provider-input-prompt.d.ts +12 -0
- package/dist/providers/cli-provider-instance-types.d.ts +45 -0
- package/dist/providers/cli-provider-instance.d.ts +340 -30
- package/dist/providers/cli-provider-status-helpers.d.ts +46 -0
- package/dist/providers/cli-provider-transcript-merge.d.ts +7 -0
- package/dist/providers/contracts.d.ts +149 -6
- package/dist/providers/external-sources.d.ts +71 -0
- package/dist/providers/manual-attendance.d.ts +79 -0
- package/dist/providers/native-history/antigravity-claim-registry.d.ts +28 -0
- package/dist/providers/native-history/antigravity-cli-transcript.d.ts +137 -0
- package/dist/providers/native-history/claude-cli-transcript.d.ts +70 -0
- package/dist/providers/native-history/codex-cli-transcript.d.ts +73 -0
- package/dist/providers/native-history/constants.d.ts +12 -0
- package/dist/providers/native-history/dispatcher.d.ts +31 -0
- package/dist/providers/native-history/hermes-cli-transcript.d.ts +30 -0
- package/dist/providers/native-history/index.d.ts +13 -0
- package/dist/providers/provider-instance-manager.d.ts +29 -0
- package/dist/providers/provider-instance.d.ts +30 -1
- package/dist/providers/provider-loader.d.ts +42 -5
- package/dist/providers/provider-trust.d.ts +31 -0
- package/dist/providers/read-chat-contract.d.ts +29 -0
- package/dist/providers/sdk/v1/builders/acp/detect-status.d.ts +68 -0
- package/dist/providers/sdk/v1/builders/cli/detect-status.d.ts +86 -0
- package/dist/providers/sdk/v1/builders/cli/parse-approval-squash.d.ts +59 -0
- package/dist/providers/sdk/v1/builders/cli/parse-approval.d.ts +65 -0
- package/dist/providers/sdk/v1/builders/cli/parse-session.d.ts +91 -0
- package/dist/providers/sdk/v1/builders/cli/visible-region.d.ts +42 -0
- package/dist/providers/sdk/v1/fixture-tooling/format.d.ts +126 -0
- package/dist/providers/sdk/v1/fixture-tooling/index.d.ts +8 -0
- package/dist/providers/sdk/v1/fixture-tooling/replay.d.ts +38 -0
- package/dist/providers/sdk/v1/index.d.ts +30 -0
- package/dist/providers/sdk/v1/sandbox/README-design.d.ts +193 -0
- package/dist/providers/sdk/v1/sandbox/require-whitelist.d.ts +74 -0
- package/dist/providers/sdk/v1/sandbox/script-runner.d.ts +98 -0
- package/dist/providers/sdk/v1/types/cli/index.d.ts +277 -0
- package/dist/providers/sdk/v1/types/common/index.d.ts +203 -0
- package/dist/providers/sdk/v1/validators/index.d.ts +5 -0
- package/dist/providers/sdk/v1/validators/manifest.d.ts +40 -0
- package/dist/providers/sdk/v1/validators/taint.d.ts +52 -0
- package/dist/providers/spec/adapter.d.ts +98 -0
- package/dist/providers/spec/cli-adapter.d.ts +223 -0
- package/dist/providers/spec/evaluator.d.ts +45 -0
- package/dist/providers/spec/fsm-driver.d.ts +449 -0
- package/dist/providers/spec/fsm-evaluator.d.ts +93 -0
- package/dist/providers/spec/fsm-loader.d.ts +14 -0
- package/dist/providers/spec/fsm-types.d.ts +202 -0
- package/dist/providers/spec/native-history-executor.d.ts +41 -0
- package/dist/providers/spec/pre-launch-trust.d.ts +16 -0
- package/dist/providers/spec/route.d.ts +4 -0
- package/dist/providers/spec/types.d.ts +244 -0
- package/dist/providers/status-monitor.d.ts +7 -7
- package/dist/providers/transcript-v2.d.ts +176 -0
- package/dist/providers/types/interactive-prompt.d.ts +84 -0
- package/dist/providers/working-dir.d.ts +17 -0
- package/dist/repo-mesh-types.d.ts +629 -12
- package/dist/runtime-defaults.d.ts +2 -0
- package/dist/session-host/managed-host.d.ts +64 -0
- package/dist/session-host/runtime-surface.d.ts +10 -16
- package/dist/sessions/registry.d.ts +6 -0
- package/dist/shared-types-extra.d.ts +2 -4
- package/dist/shared-types.d.ts +86 -55
- package/dist/status/normalize.d.ts +1 -1
- package/dist/status/normalize.js +1 -0
- package/dist/status/normalize.js.map +1 -1
- package/dist/status/normalize.mjs +1 -0
- package/dist/status/normalize.mjs.map +1 -1
- package/dist/status/reporter.d.ts +2 -0
- package/dist/status/snapshot.d.ts +26 -0
- package/dist/system/hash.d.ts +8 -0
- package/dist/system/load-better-sqlite3.d.ts +21 -0
- package/dist/types.d.ts +5 -0
- package/package.json +11 -4
- package/src/agent-stream/poller.ts +2 -3
- package/src/agent-stream/provider-adapter.ts +1 -1
- package/src/boot/daemon-lifecycle.ts +80 -14
- package/src/boot/process-hardening.ts +89 -0
- package/src/build-info.ts +73 -0
- package/src/chat/source-machine.ts +534 -0
- package/src/chat/source-resolver.ts +0 -0
- package/src/chat/subscription-updates.ts +20 -1
- package/src/cli-adapter-types.d.ts +3 -1
- package/src/cli-adapter-types.ts +68 -2
- package/src/cli-adapters/cli-script-runner.ts +421 -0
- package/src/cli-adapters/cli-state-engine.ts +1246 -0
- package/src/cli-adapters/provider-cli-adapter.d.ts +1 -1
- package/src/cli-adapters/provider-cli-adapter.ts +914 -1144
- package/src/cli-adapters/provider-cli-parse.d.ts +2 -0
- package/src/cli-adapters/provider-cli-parse.ts +19 -0
- package/src/cli-adapters/provider-cli-runtime.ts +56 -7
- package/src/cli-adapters/provider-cli-shared.d.ts +4 -0
- package/src/cli-adapters/provider-cli-shared.ts +121 -11
- package/src/cli-adapters/pty-transport.ts +2 -1
- package/src/cli-adapters/pty-write-chunking.ts +106 -0
- package/src/cli-adapters/raw-terminal-io.ts +252 -0
- package/src/cli-adapters/resolve-executable.ts +204 -0
- package/src/cli-adapters/session-host-transport.ts +2 -1
- package/src/cli-adapters/terminal-backends/ghostty-vt-backend.ts +63 -29
- package/src/cli-adapters/terminal-backends/types.ts +10 -3
- package/src/cli-adapters/terminal-screen.ts +16 -81
- package/src/commands/chat-commands-debug-bundle.ts +398 -0
- package/src/commands/chat-commands-read.ts +2488 -0
- package/src/commands/chat-commands-scope.ts +54 -0
- package/src/commands/chat-commands-shared.ts +114 -0
- package/src/commands/chat-commands-write.ts +891 -0
- package/src/commands/chat-commands.ts +19 -1841
- package/src/commands/cli-manager.ts +596 -27
- package/src/commands/handler.ts +845 -2
- package/src/commands/high-family/index.ts +28 -0
- package/src/commands/high-family/mesh-coordinator-launch.ts +680 -0
- package/src/commands/high-family/mesh-events.ts +102 -0
- package/src/commands/high-family/mesh-status.ts +849 -0
- package/src/commands/high-family/types.ts +80 -0
- package/src/commands/low-family/coordinator-prompt.ts +72 -0
- package/src/commands/low-family/daemon-lifecycle.ts +120 -0
- package/src/commands/low-family/diagnostics.ts +57 -0
- package/src/commands/low-family/index.ts +37 -0
- package/src/commands/low-family/mesh-ledger.ts +62 -0
- package/src/commands/low-family/mesh-node-logs.ts +87 -0
- package/src/commands/low-family/notification.ts +116 -0
- package/src/commands/low-family/refine-config.ts +106 -0
- package/src/commands/low-family/session-host.ts +274 -0
- package/src/commands/low-family/spec-providerdev.ts +217 -0
- package/src/commands/low-family/status-meta.ts +112 -0
- package/src/commands/low-family/types.ts +39 -0
- package/src/commands/med-family/cli-agent.ts +241 -0
- package/src/commands/med-family/fast-forward.ts +230 -0
- package/src/commands/med-family/ide.ts +163 -0
- package/src/commands/med-family/index.ts +37 -0
- package/src/commands/med-family/mesh-crud.ts +1287 -0
- package/src/commands/med-family/mesh-host-pairing.ts +234 -0
- package/src/commands/med-family/mesh-queue.ts +167 -0
- package/src/commands/med-family/mesh-restart.ts +92 -0
- package/src/commands/med-family/types.ts +153 -0
- package/src/commands/mesh-coordinator.ts +334 -124
- package/src/commands/router-aggregate-status.ts +209 -0
- package/src/commands/router-mesh-session-owner.ts +114 -0
- package/src/commands/router-refine.ts +1711 -0
- package/src/commands/router-worktree-cleanup.ts +870 -0
- package/src/commands/router.ts +795 -4143
- package/src/commands/stream-commands.ts +8 -0
- package/src/commands/upgrade-helper.ts +310 -45
- package/src/config/chat-history.ts +493 -24
- package/src/config/config.ts +30 -0
- package/src/config/mesh-config.ts +632 -23
- package/src/config/mesh-json-config.ts +376 -0
- package/src/config/recent-activity.ts +8 -2
- package/src/config/registry-resolver.ts +100 -0
- package/src/config/repo-settings.ts +111 -0
- package/src/daemon/dev-auto-implement.ts +3 -2
- package/src/daemon/dev-cli-debug.ts +10 -1
- package/src/daemon/dev-server.ts +0 -541
- package/src/detection/cli-detector.ts +94 -9
- package/src/detection/ide-detector.ts +55 -16
- package/src/detection/win32-ide-version.ts +106 -0
- package/src/git/change-impact-config.ts +354 -0
- package/src/git/git-commands.ts +112 -16
- package/src/git/git-diff.ts +81 -11
- package/src/git/git-executor.ts +12 -0
- package/src/git/git-status.ts +767 -48
- package/src/git/git-types.ts +14 -62
- package/src/git/git-worktree.ts +261 -4
- package/src/git/index.ts +17 -0
- package/src/index.ts +207 -13
- package/src/installer.d.ts +1 -1
- package/src/installer.ts +8 -6
- package/src/ipc/local-ipc-server.ts +278 -0
- package/src/launch.d.ts +1 -1
- package/src/launch.ts +37 -28
- package/src/logging/async-batch-writer.ts +55 -0
- package/src/logging/command-log.ts +7 -5
- package/src/logging/debug-config.ts +25 -0
- package/src/logging/debug-trace.ts +7 -2
- package/src/logging/log-redactor.ts +100 -0
- package/src/logging/log-tail-reader.ts +341 -0
- package/src/logging/logger.ts +14 -7
- package/src/mesh/contracts.ts +469 -0
- package/src/mesh/coordinator-prompt.ts +572 -34
- package/src/mesh/coordinator-registry.ts +121 -0
- package/src/mesh/mesh-active-work.ts +706 -0
- package/src/mesh/mesh-clone-grace.ts +68 -0
- package/src/mesh/mesh-completion-synthesis.ts +398 -0
- package/src/mesh/mesh-coordinator-config.ts +97 -0
- package/src/mesh/mesh-delivery-policy.ts +284 -0
- package/src/mesh/mesh-event-classify.ts +78 -0
- package/src/mesh/mesh-event-forwarding.ts +1964 -0
- package/src/mesh/mesh-event-trace.ts +67 -0
- package/src/mesh/mesh-events-coordinator.ts +32 -0
- package/src/mesh/mesh-events-pending.ts +1494 -0
- package/src/mesh/mesh-events-stale.ts +440 -0
- package/src/mesh/mesh-events-utils.ts +443 -0
- package/src/mesh/mesh-events.ts +43 -1035
- package/src/mesh/mesh-fast-forward.ts +856 -0
- package/src/mesh/mesh-host-ownership.ts +111 -0
- package/src/mesh/mesh-init.ts +350 -0
- package/src/mesh/mesh-ledger-reconciliation.ts +12 -7
- package/src/mesh/mesh-ledger.ts +898 -102
- package/src/mesh/mesh-magi-status.ts +223 -0
- package/src/mesh/mesh-missions.ts +568 -0
- package/src/mesh/mesh-node-identity.ts +2065 -0
- package/src/mesh/mesh-queue-assignment.ts +2247 -0
- package/src/mesh/mesh-reconcile-acked-hold.ts +230 -0
- package/src/mesh/mesh-reconcile-config.ts +66 -0
- package/src/mesh/mesh-reconcile-identity.ts +103 -0
- package/src/mesh/mesh-reconcile-loop.ts +1473 -0
- package/src/mesh/mesh-reconcile-v2-backstop.ts +62 -0
- package/src/mesh/mesh-refine-batch.ts +205 -0
- package/src/mesh/mesh-refine-gates.ts +1686 -0
- package/src/mesh/mesh-refine-status.ts +231 -0
- package/src/mesh/mesh-remote-event-pull.ts +279 -0
- package/src/mesh/mesh-review-inbox.ts +308 -0
- package/src/mesh/mesh-routing.ts +291 -0
- package/src/mesh/mesh-runtime-store.ts +2150 -0
- package/src/mesh/mesh-scheduling-runtime.ts +198 -0
- package/src/mesh/mesh-task-inflight.ts +70 -0
- package/src/mesh/mesh-task-stats.ts +161 -0
- package/src/mesh/mesh-unresolved-forward-outbox.ts +185 -0
- package/src/mesh/mesh-warmup-deadline.ts +152 -0
- package/src/mesh/mesh-work-queue.ts +1437 -147
- package/src/mesh/preview-freshness.ts +163 -0
- package/src/mesh/refine-config.ts +423 -0
- package/src/mesh/worktree-bootstrap-config.ts +599 -0
- package/src/providers/acp-provider-instance.ts +43 -10
- package/src/providers/approval-utils.d.ts +5 -0
- package/src/providers/approval-utils.ts +100 -6
- package/src/providers/chat-message-normalization.ts +126 -4
- package/src/providers/cli-provider-effect-format.ts +53 -0
- package/src/providers/cli-provider-history-dedup.ts +75 -0
- package/src/providers/cli-provider-input-prompt.ts +133 -0
- package/src/providers/cli-provider-instance-types.ts +131 -0
- package/src/providers/cli-provider-instance.ts +2500 -497
- package/src/providers/cli-provider-status-helpers.ts +123 -0
- package/src/providers/cli-provider-transcript-merge.ts +114 -0
- package/src/providers/contracts.d.ts +55 -0
- package/src/providers/contracts.ts +160 -6
- package/src/providers/extension-provider-instance.ts +12 -7
- package/src/providers/external-sources.ts +218 -0
- package/src/providers/ide-provider-instance.ts +35 -12
- package/src/providers/manual-attendance.ts +105 -0
- package/src/providers/native-history/antigravity-claim-registry.ts +131 -0
- package/src/providers/native-history/antigravity-cli-transcript.ts +1193 -0
- package/src/providers/native-history/claude-cli-transcript.ts +396 -0
- package/src/providers/native-history/codex-cli-transcript.ts +479 -0
- package/src/providers/native-history/constants.ts +19 -0
- package/src/providers/native-history/dispatcher.ts +503 -0
- package/src/providers/native-history/hermes-cli-transcript.ts +312 -0
- package/src/providers/native-history/index.ts +30 -0
- package/src/providers/provider-instance-manager.ts +71 -0
- package/src/providers/provider-instance.ts +24 -1
- package/src/providers/provider-loader.ts +700 -55
- package/src/providers/provider-schema.ts +87 -14
- package/src/providers/provider-trust.ts +114 -0
- package/src/providers/read-chat-contract.ts +76 -16
- package/src/providers/sdk/README.md +49 -0
- package/src/providers/sdk/v1/builders/acp/detect-status.ts +144 -0
- package/src/providers/sdk/v1/builders/cli/detect-status.ts +313 -0
- package/src/providers/sdk/v1/builders/cli/parse-approval-squash.ts +158 -0
- package/src/providers/sdk/v1/builders/cli/parse-approval.ts +261 -0
- package/src/providers/sdk/v1/builders/cli/parse-session.ts +276 -0
- package/src/providers/sdk/v1/builders/cli/visible-region.ts +143 -0
- package/src/providers/sdk/v1/fixture-tooling/format.ts +130 -0
- package/src/providers/sdk/v1/fixture-tooling/index.ts +22 -0
- package/src/providers/sdk/v1/fixture-tooling/replay.ts +352 -0
- package/src/providers/sdk/v1/index.ts +152 -0
- package/src/providers/sdk/v1/sandbox/README-design.ts +195 -0
- package/src/providers/sdk/v1/sandbox/require-whitelist.ts +472 -0
- package/src/providers/sdk/v1/sandbox/script-runner.ts +150 -0
- package/src/providers/sdk/v1/schemas/cli/provider.schema.json +509 -0
- package/src/providers/sdk/v1/schemas/primitives/acp-session-protocol-v1.json +131 -0
- package/src/providers/sdk/v1/schemas/primitives/native-history-codex-rollout-v1.json +66 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-approval-squash-v1.json +91 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-assistant-block-v1.json +91 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-cue-ordering-v1.json +47 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-dispatch-order-v1.json +32 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-footer-chrome-v1.json +42 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-index-finder-v1.json +27 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-modal-v1.json +125 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-prompt-marker-v1.json +45 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-session-id-extraction-v1.json +46 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-settled-prompt-v1.json +71 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-spinner-v1.json +83 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-transcript-pty-v1.json +83 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-visible-region-v1.json +57 -0
- package/src/providers/sdk/v1/schemas/primitives/tui-welcome-screen-v1.json +35 -0
- package/src/providers/sdk/v1/types/cli/index.ts +365 -0
- package/src/providers/sdk/v1/types/common/index.ts +229 -0
- package/src/providers/sdk/v1/validators/index.ts +19 -0
- package/src/providers/sdk/v1/validators/manifest.ts +110 -0
- package/src/providers/sdk/v1/validators/taint.ts +309 -0
- package/src/providers/spec/adapter.ts +246 -0
- package/src/providers/spec/cli-adapter.ts +1064 -0
- package/src/providers/spec/evaluator.ts +407 -0
- package/src/providers/spec/fsm-driver.ts +1528 -0
- package/src/providers/spec/fsm-evaluator.ts +290 -0
- package/src/providers/spec/fsm-loader.ts +128 -0
- package/src/providers/spec/fsm-types.ts +301 -0
- package/src/providers/spec/native-history-executor.ts +1241 -0
- package/src/providers/spec/pre-launch-trust.ts +104 -0
- package/src/providers/spec/route.ts +51 -0
- package/src/providers/spec/types.ts +284 -0
- package/src/providers/status-monitor.d.ts +7 -7
- package/src/providers/status-monitor.ts +37 -22
- package/src/providers/transcript-v2.ts +567 -0
- package/src/providers/types/interactive-prompt.ts +536 -0
- package/src/providers/version-archive.ts +64 -24
- package/src/providers/working-dir.ts +23 -0
- package/src/repo-mesh-types.ts +868 -13
- package/src/runtime-defaults.ts +39 -0
- package/src/session-host/managed-host.ts +218 -0
- package/src/session-host/runtime-surface.ts +20 -80
- package/src/sessions/registry.ts +6 -0
- package/src/shared-types-extra.ts +2 -4
- package/src/shared-types.d.ts +8 -0
- package/src/shared-types.ts +124 -55
- package/src/status/builders.ts +26 -6
- package/src/status/normalize.ts +2 -0
- package/src/status/reporter.ts +19 -1
- package/src/status/snapshot.ts +95 -26
- package/src/system/hash.ts +23 -0
- package/src/system/host-memory.ts +29 -12
- package/src/system/load-better-sqlite3.ts +68 -0
- package/src/types.ts +5 -0
- package/dist/cli-adapters/terminal-backends/xterm-backend.d.ts +0 -17
- package/dist/mesh/mesh-sync.d.ts +0 -53
- package/src/cli-adapters/terminal-backends/ghostty-vt-backend.d.ts +0 -16
- package/src/cli-adapters/terminal-backends/xterm-backend.ts +0 -97
- package/src/mesh/mesh-sync.ts +0 -111
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// mesh-reconcile-v2-backstop — last-resort completion backstop counters
|
|
3
|
+
// ---------------------------------------------------------------------------
|
|
4
|
+
// Pure move out of mesh-reconcile-loop.ts (no behavior change).
|
|
5
|
+
//
|
|
6
|
+
// T6 (B3c): PHASE-4 synthesis + acked-hold fast-track demoted to last-resort.
|
|
7
|
+
//
|
|
8
|
+
// Under mesh-protocol-v2 enforce, the completion contract is explicit: a worker's
|
|
9
|
+
// terminal emit is a v2 unicast event drained straight to the coordinator. The
|
|
10
|
+
// PHASE-4 transcript-synthesis backstop and the acked-hold fast-track exist to
|
|
11
|
+
// paper over a LOST emit — they should NEVER fire once v2 delivery is healthy. So
|
|
12
|
+
// their firing is now a demoted last-resort signal: every fire bumps a counter, and
|
|
13
|
+
// under enforce a fire additionally emits a WARN naming it a v2-contract violation
|
|
14
|
+
// (a real emit was expected but never arrived). Target = 0 fires in steady state.
|
|
15
|
+
//
|
|
16
|
+
// The code is NOT removed — it stays as the correctness net for a genuinely lost
|
|
17
|
+
// emit (rollout plan §B3c: "코드 삭제는 하지 않고 관측 후 다음 사이클에 판단"). Process-
|
|
18
|
+
// lifetime totals; read by tests + surfaced in mesh_status.
|
|
19
|
+
// ---------------------------------------------------------------------------
|
|
20
|
+
|
|
21
|
+
import { LOG } from '../logging/logger.js';
|
|
22
|
+
|
|
23
|
+
const meshV2BackstopCounters = {
|
|
24
|
+
/** PHASE-4 transcript synthesis actually reconciled a missing completion. */
|
|
25
|
+
phase4SynthesisFired: 0,
|
|
26
|
+
/** Acked-hold transcript fast-track promoted a synth ahead of the death deadline. */
|
|
27
|
+
ackedHoldFastTrackFired: 0,
|
|
28
|
+
/** Acked-hold death-deadline backstop released a held synth (the 8-min net). */
|
|
29
|
+
ackedHoldDeathDeadlineFired: 0,
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
/** Test/observability accessor for the v2 last-resort backstop counters (snapshot). */
|
|
33
|
+
export function getMeshV2BackstopCounters(): Readonly<typeof meshV2BackstopCounters> {
|
|
34
|
+
return { ...meshV2BackstopCounters };
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/** Test helper: zero the backstop counters so a case starts from a clean slate. */
|
|
38
|
+
export function __resetMeshV2BackstopCountersForTests(): void {
|
|
39
|
+
for (const k of Object.keys(meshV2BackstopCounters) as Array<keyof typeof meshV2BackstopCounters>) {
|
|
40
|
+
meshV2BackstopCounters[k] = 0;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/** Enforce switch mirror (see isMeshProtocolV2EnforceEnabled in mesh-events-pending);
|
|
45
|
+
* re-read here (not imported) to keep the reconcile loop free of a cross-file coupling
|
|
46
|
+
* and to read env at fire time. On by default; set MESH_PROTOCOL_V2_ENFORCE=0/false/
|
|
47
|
+
* off/no to disable. Same vocabulary as the source of truth. */
|
|
48
|
+
function meshProtocolV2EnforceOn(): boolean {
|
|
49
|
+
const raw = process.env.MESH_PROTOCOL_V2_ENFORCE;
|
|
50
|
+
if (typeof raw !== 'string' || !raw.trim()) return true; // unset/blank = default ON
|
|
51
|
+
const v = raw.trim().toLowerCase();
|
|
52
|
+
return !(v === '0' || v === 'false' || v === 'off' || v === 'no');
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/** Bump a backstop counter and, under enforce, WARN that a last-resort net fired —
|
|
56
|
+
* which under a healthy v2 contract should not happen (the real emit was lost). */
|
|
57
|
+
export function recordBackstopFire(kind: keyof typeof meshV2BackstopCounters, detail: string): void {
|
|
58
|
+
meshV2BackstopCounters[kind]++;
|
|
59
|
+
if (meshProtocolV2EnforceOn()) {
|
|
60
|
+
LOG.warn('MeshReconcileV2', `v2 ENFORCE last-resort backstop fired (${kind}): ${detail}. Under a healthy v2 completion contract this should be 0 — a worker's real terminal emit was lost/late.`);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
import { execFile } from 'node:child_process';
|
|
2
|
+
import { promisify } from 'node:util';
|
|
3
|
+
import { resolveWin32Executable } from '../cli-adapters/resolve-executable.js';
|
|
4
|
+
|
|
5
|
+
const execFileAsync = promisify(execFile);
|
|
6
|
+
|
|
7
|
+
// Fix (4): on win32 a bare `git` handed to execFile is resolved by libuv's spawn search,
|
|
8
|
+
// which appends only .com/.exe (no PATHEXT) and searches only the inherited PATH — so a
|
|
9
|
+
// `git.cmd`/`git.exe` that `where` finds is missed and the spawn ENOENTs. resolveWin32Executable
|
|
10
|
+
// (the same helper the validation/bootstrap spawn path already uses) resolves it to an absolute
|
|
11
|
+
// path once at module load. No-op on non-win32 (returns 'git' verbatim) — no quoting/shell risk.
|
|
12
|
+
const GIT = process.platform === 'win32' ? resolveWin32Executable('git') : 'git';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Change-area analysis for one worktree node, used to order sibling nodes for
|
|
16
|
+
* batch refinement so that nodes least likely to conflict merge first.
|
|
17
|
+
*
|
|
18
|
+
* The heuristic is deliberately git-only and side-effect-free: it inspects the
|
|
19
|
+
* commits the node's branch adds on top of the base (`base..branch`) and records
|
|
20
|
+
* - whether any submodule gitlink path is touched (high-conflict signal: the
|
|
21
|
+
* batch must rebase later siblings onto the advanced submodule main), and
|
|
22
|
+
* - the set of changed top-level paths (so siblings touching disjoint trees can
|
|
23
|
+
* be ordered ahead of ones that overlap).
|
|
24
|
+
*/
|
|
25
|
+
export interface MeshRefineBatchNodeChangeArea {
|
|
26
|
+
nodeId: string;
|
|
27
|
+
workspace: string;
|
|
28
|
+
branch: string;
|
|
29
|
+
/** Top-level path segments changed by the branch vs. base (e.g. 'oss', 'packages'). */
|
|
30
|
+
changedTopLevelPaths: string[];
|
|
31
|
+
/** Full changed file list (bounded) for overlap detection. */
|
|
32
|
+
changedFiles: string[];
|
|
33
|
+
/** Submodule gitlink paths touched by the branch (subset of changedTopLevelPaths). */
|
|
34
|
+
touchedSubmodulePaths: string[];
|
|
35
|
+
/** True when the branch touches at least one submodule gitlink. */
|
|
36
|
+
touchesSubmodule: boolean;
|
|
37
|
+
/** Number of commits the branch is ahead of base; 0 means nothing to merge. */
|
|
38
|
+
aheadCount: number;
|
|
39
|
+
/** Non-fatal analysis error (e.g. base/branch unresolved); ordering falls back to neutral. */
|
|
40
|
+
error?: string;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export interface MeshRefineBatchOrderingResult {
|
|
44
|
+
/** Node IDs in the order they should be refined. */
|
|
45
|
+
order: string[];
|
|
46
|
+
/** Per-node change areas, keyed by node id, for plan transparency. */
|
|
47
|
+
changeAreas: Record<string, MeshRefineBatchNodeChangeArea>;
|
|
48
|
+
/** Human-readable explanation of why the order was chosen. */
|
|
49
|
+
rationale: string[];
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
const MAX_CHANGED_FILES = 500;
|
|
53
|
+
|
|
54
|
+
function topLevel(path: string): string {
|
|
55
|
+
const slash = path.indexOf('/');
|
|
56
|
+
return slash === -1 ? path : path.slice(0, slash);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Resolve the set of submodule gitlink paths declared in a repo's .gitmodules,
|
|
61
|
+
* relative to the repo root. Used to classify which changed paths are submodule
|
|
62
|
+
* pointer bumps vs. ordinary file edits.
|
|
63
|
+
*/
|
|
64
|
+
async function resolveSubmodulePaths(repoRoot: string): Promise<Set<string>> {
|
|
65
|
+
try {
|
|
66
|
+
const { stdout } = await execFileAsync(
|
|
67
|
+
GIT,
|
|
68
|
+
['config', '--file', '.gitmodules', '--get-regexp', 'path'],
|
|
69
|
+
{ cwd: repoRoot, encoding: 'utf8' },
|
|
70
|
+
);
|
|
71
|
+
const paths = new Set<string>();
|
|
72
|
+
for (const line of stdout.split('\n')) {
|
|
73
|
+
const trimmed = line.trim();
|
|
74
|
+
if (!trimmed) continue;
|
|
75
|
+
// Format: "submodule.<name>.path <path>"
|
|
76
|
+
const spaceIdx = trimmed.indexOf(' ');
|
|
77
|
+
if (spaceIdx === -1) continue;
|
|
78
|
+
const value = trimmed.slice(spaceIdx + 1).trim();
|
|
79
|
+
if (value) paths.add(value);
|
|
80
|
+
}
|
|
81
|
+
return paths;
|
|
82
|
+
} catch {
|
|
83
|
+
// No .gitmodules (or git error) → repo has no submodules to classify.
|
|
84
|
+
return new Set();
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Analyze one worktree node's change area against its merge base.
|
|
90
|
+
*
|
|
91
|
+
* @param baseRef ref that the node will merge into (e.g. 'origin/main' or a SHA)
|
|
92
|
+
* @param branchRef the node's branch tip
|
|
93
|
+
* @param diffCwd repo to run the diff in (the worktree itself is authoritative for
|
|
94
|
+
* `branch` resolution, but the diff `base..branch` is symmetric, so
|
|
95
|
+
* the worktree cwd works for both refs once base is a reachable SHA).
|
|
96
|
+
*/
|
|
97
|
+
export async function analyzeMeshRefineNodeChangeArea(args: {
|
|
98
|
+
nodeId: string;
|
|
99
|
+
workspace: string;
|
|
100
|
+
branch: string;
|
|
101
|
+
baseRef: string;
|
|
102
|
+
branchRef: string;
|
|
103
|
+
diffCwd: string;
|
|
104
|
+
submodulePaths: Set<string>;
|
|
105
|
+
}): Promise<MeshRefineBatchNodeChangeArea> {
|
|
106
|
+
const { nodeId, workspace, branch, baseRef, branchRef, diffCwd, submodulePaths } = args;
|
|
107
|
+
const base: MeshRefineBatchNodeChangeArea = {
|
|
108
|
+
nodeId,
|
|
109
|
+
workspace,
|
|
110
|
+
branch,
|
|
111
|
+
changedTopLevelPaths: [],
|
|
112
|
+
changedFiles: [],
|
|
113
|
+
touchedSubmodulePaths: [],
|
|
114
|
+
touchesSubmodule: false,
|
|
115
|
+
aheadCount: 0,
|
|
116
|
+
};
|
|
117
|
+
try {
|
|
118
|
+
// Use the merge-base so we compare only the node's own commits, not changes
|
|
119
|
+
// that already landed on base via a sibling earlier in the batch.
|
|
120
|
+
let mergeBase = baseRef;
|
|
121
|
+
try {
|
|
122
|
+
const { stdout } = await execFileAsync(GIT, ['merge-base', baseRef, branchRef], { cwd: diffCwd, encoding: 'utf8' });
|
|
123
|
+
const resolved = stdout.trim();
|
|
124
|
+
if (resolved) mergeBase = resolved;
|
|
125
|
+
} catch { /* fall back to baseRef directly */ }
|
|
126
|
+
|
|
127
|
+
const { stdout: countStdout } = await execFileAsync(
|
|
128
|
+
GIT,
|
|
129
|
+
['rev-list', '--count', `${mergeBase}..${branchRef}`],
|
|
130
|
+
{ cwd: diffCwd, encoding: 'utf8' },
|
|
131
|
+
);
|
|
132
|
+
base.aheadCount = Number.parseInt(countStdout.trim(), 10) || 0;
|
|
133
|
+
|
|
134
|
+
const { stdout: nameStdout } = await execFileAsync(
|
|
135
|
+
GIT,
|
|
136
|
+
['diff', '--name-only', `${mergeBase}..${branchRef}`],
|
|
137
|
+
{ cwd: diffCwd, encoding: 'utf8' },
|
|
138
|
+
);
|
|
139
|
+
const files = nameStdout.split('\n').map(line => line.trim()).filter(Boolean).slice(0, MAX_CHANGED_FILES);
|
|
140
|
+
base.changedFiles = files;
|
|
141
|
+
const topSet = new Set<string>();
|
|
142
|
+
const submoduleSet = new Set<string>();
|
|
143
|
+
for (const file of files) {
|
|
144
|
+
const top = topLevel(file);
|
|
145
|
+
topSet.add(top);
|
|
146
|
+
// A changed path is a submodule touch if the file path IS a declared
|
|
147
|
+
// submodule path (gitlink bumps surface as the submodule path itself).
|
|
148
|
+
if (submodulePaths.has(file) || submodulePaths.has(top)) {
|
|
149
|
+
submoduleSet.add(submodulePaths.has(file) ? file : top);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
base.changedTopLevelPaths = [...topSet].sort();
|
|
153
|
+
base.touchedSubmodulePaths = [...submoduleSet].sort();
|
|
154
|
+
base.touchesSubmodule = submoduleSet.size > 0;
|
|
155
|
+
return base;
|
|
156
|
+
} catch (e: any) {
|
|
157
|
+
base.error = e?.message || String(e);
|
|
158
|
+
return base;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* Order nodes for batch refinement to minimize cross-sibling conflicts.
|
|
164
|
+
*
|
|
165
|
+
* Heuristic (deterministic, stable):
|
|
166
|
+
* 1. Nodes that do NOT touch any submodule come first — they cannot advance the
|
|
167
|
+
* submodule main, so they never force a later submodule rebase.
|
|
168
|
+
* 2. Within each group, fewer touched top-level paths first (smaller blast radius).
|
|
169
|
+
* 3. Tie-break by node id for determinism.
|
|
170
|
+
*
|
|
171
|
+
* Submodule-touching siblings are intrinsically serial: each one that merges
|
|
172
|
+
* advances oss main, so the next must rebase. Ordering them last keeps the
|
|
173
|
+
* non-submodule merges (which never need a submodule rebase) clean and up front.
|
|
174
|
+
*/
|
|
175
|
+
export function orderMeshRefineBatchNodes(
|
|
176
|
+
changeAreas: MeshRefineBatchNodeChangeArea[],
|
|
177
|
+
): MeshRefineBatchOrderingResult {
|
|
178
|
+
const areaById: Record<string, MeshRefineBatchNodeChangeArea> = {};
|
|
179
|
+
for (const area of changeAreas) areaById[area.nodeId] = area;
|
|
180
|
+
|
|
181
|
+
const ranked = [...changeAreas].sort((a, b) => {
|
|
182
|
+
const aSub = a.touchesSubmodule ? 1 : 0;
|
|
183
|
+
const bSub = b.touchesSubmodule ? 1 : 0;
|
|
184
|
+
if (aSub !== bSub) return aSub - bSub;
|
|
185
|
+
const aBreadth = a.changedTopLevelPaths.length;
|
|
186
|
+
const bBreadth = b.changedTopLevelPaths.length;
|
|
187
|
+
if (aBreadth !== bBreadth) return aBreadth - bBreadth;
|
|
188
|
+
return a.nodeId.localeCompare(b.nodeId);
|
|
189
|
+
});
|
|
190
|
+
|
|
191
|
+
const rationale: string[] = [];
|
|
192
|
+
const nonSub = ranked.filter(a => !a.touchesSubmodule).map(a => a.nodeId);
|
|
193
|
+
const sub = ranked.filter(a => a.touchesSubmodule).map(a => a.nodeId);
|
|
194
|
+
if (nonSub.length) {
|
|
195
|
+
rationale.push(`Non-submodule nodes first (no submodule-main advance, conflict-free ordering): ${nonSub.join(', ')}`);
|
|
196
|
+
}
|
|
197
|
+
if (sub.length) {
|
|
198
|
+
rationale.push(`Submodule-touching nodes last, serialized (each merge advances submodule main, forcing rebase of the next): ${sub.join(', ')}`);
|
|
199
|
+
}
|
|
200
|
+
for (const area of ranked) {
|
|
201
|
+
if (area.error) rationale.push(`Node ${area.nodeId}: change-area analysis degraded (${area.error}); placed with neutral priority.`);
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
return { order: ranked.map(a => a.nodeId), changeAreas: areaById, rationale };
|
|
205
|
+
}
|