@sema-agent/server 7.146.0 → 7.148.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.
- package/MIGRATION.md +1423 -24
- package/README.md +21 -8
- package/README.zh-CN.md +15 -9
- package/USAGE.md +537 -216
- package/deploy/facts/lanes.json +7 -0
- package/deploy/sema-up/README.md +18 -7
- package/deploy/sema-up/chart/templates/NOTES.txt +1 -1
- package/deploy/sema-up/chart/templates/_helpers.tpl +42 -4
- package/deploy/sema-up/chart/templates/server-v4pro.yaml +5 -4
- package/deploy/sema-up/chart/templates/server.yaml +5 -4
- package/deploy/sema-up/chart/values.yaml +4 -3
- package/deploy/sema-up/cluster-up.sh +75 -176
- package/deploy/sema-up/kube-up.sh +29 -49
- package/deploy/sema-up/lib/chart-run.sh +23 -0
- package/deploy/sema-up/lib/dataroot.sh +3 -3
- package/deploy/sema-up/lib/flagshape.sh +4 -0
- package/deploy/sema-up/lib/health.sh +62 -13
- package/deploy/sema-up/lib/helm-values-cluster.py +18 -0
- package/deploy/sema-up/lib/helm-values-kube.py +35 -0
- package/deploy/sema-up/lib/lanes.json +2 -5
- package/deploy/sema-up/lib/regcred.py +8 -0
- package/deploy/sema-up/lib/remote/helm-install.sh +3 -0
- package/deploy/sema-up/lib/remote/image-import.sh +6 -0
- package/deploy/sema-up/lib/remote/machine-precheck.sh +11 -0
- package/deploy/sema-up/lib/remote/region-probe.sh +3 -0
- package/deploy/sema-up/lib/remote/stack-ready.sh +26 -0
- package/deploy/sema-up/lib/remote/vxlan-guard.sh +8 -0
- package/deploy/sema-up/lib/render-stack.py +17 -0
- package/deploy/sema-up/lib/shell-text.sh +87 -0
- package/deploy/sema-up/lib/usage-flags.txt +10 -0
- package/deploy/sema-up/lib/usage-head.txt +1 -0
- package/deploy/sema-up/lib/usage-tail.txt +13 -0
- package/deploy/sema-up/preflight.sh +10 -8
- package/deploy/sema-up/sema-up.sh +26 -48
- package/deploy/sema-up/smoke.sh +7 -6
- package/deploy/sema-up/stack/compose.dataroot.yaml +3 -0
- package/deploy/sema-up/stack/compose.yaml +18 -5
- package/deploy/sema-up/stack/sema-stack-cluster.yaml +25 -3
- package/dist/adoption/plan.d.ts +24 -0
- package/dist/adoption/plan.js +53 -1
- package/dist/adoption/runner.d.ts +10 -1
- package/dist/adoption/runner.js +36 -16
- package/dist/adoption/wire.d.ts +3 -3
- package/dist/approval-card.d.ts +32 -34
- package/dist/approval-gate-currency.js +3 -2
- package/dist/approval-reconciler.d.ts +4 -13
- package/dist/approval-reconciler.js +2 -2
- package/dist/approval.d.ts +16 -14
- package/dist/approval.js +3 -3
- package/dist/audit.d.ts +10 -3
- package/dist/audit.js +17 -9
- package/dist/auth-bridge.d.ts +0 -14
- package/dist/auth-bridge.js +0 -7
- package/dist/auto-mode-face.d.ts +10 -7
- package/dist/auto-mode-face.js +7 -4
- package/dist/background-agent-name.d.ts +19 -1
- package/dist/background-agent-name.js +12 -2
- package/dist/background-session-reap.d.ts +1 -1
- package/dist/bake-runner/main.js +9 -6
- package/dist/bench/s1/arms.js +6 -5
- package/dist/bench/s1/live-deps.js +8 -3
- package/dist/bench/s1/run-firm.js +6 -5
- package/dist/bind-host.d.ts +25 -0
- package/dist/bind-host.js +25 -0
- package/dist/boot/adoption.d.ts +3 -0
- package/dist/boot/adoption.js +1 -0
- package/dist/boot/crash-last.js +2 -1
- package/dist/boot/deployment-mods.d.ts +1 -1
- package/dist/boot/device-lane.js +5 -5
- package/dist/boot/engine-lease.d.ts +12 -11
- package/dist/boot/execution-env.d.ts +19 -8
- package/dist/boot/execution-env.js +80 -62
- package/dist/boot/execution-lane.d.ts +37 -9
- package/dist/boot/execution-lane.js +74 -20
- package/dist/boot/exit-boundary.d.ts +3 -3
- package/dist/boot/exit-boundary.js +6 -5
- package/dist/boot/exit-last.js +2 -1
- package/dist/boot/fatal-exit.d.ts +3 -5
- package/dist/boot/fatal-exit.js +2 -2
- package/dist/boot/governance-seams.d.ts +2 -2
- package/dist/boot/leader.d.ts +15 -0
- package/dist/boot/leader.js +18 -16
- package/dist/boot/memory-boundary.d.ts +11 -11
- package/dist/boot/memory-boundary.js +3 -3
- package/dist/boot/memory-consolidation.d.ts +50 -53
- package/dist/boot/memory-consolidation.js +11 -18
- package/dist/boot/org-memory.js +4 -3
- package/dist/boot/parked-revive-gate.d.ts +1 -1
- package/dist/boot/parked-revive-gate.js +3 -3
- package/dist/boot/reapers.d.ts +4 -3
- package/dist/boot/reapers.js +20 -17
- package/dist/boot/resolve-spec.d.ts +5 -3
- package/dist/boot/resolve-spec.js +133 -165
- package/dist/boot/retention-lane.d.ts +7 -45
- package/dist/boot/retention-lane.js +2 -2
- package/dist/boot/runner-deps.d.ts +28 -7
- package/dist/boot/runner-deps.js +11 -4
- package/dist/boot/runtime-caps.d.ts +2 -2
- package/dist/boot/runtime-caps.js +16 -2
- package/dist/boot/session-faces.d.ts +17 -7
- package/dist/boot/session-faces.js +122 -96
- package/dist/boot/shutdown.d.ts +5 -4
- package/dist/boot/shutdown.js +6 -4
- package/dist/boot/stage-01-config.d.ts +1 -1
- package/dist/boot/stage-01-config.js +14 -2
- package/dist/boot/stage-02-web-admin-pull.d.ts +2 -1
- package/dist/boot/stage-02-web-admin-pull.js +15 -8
- package/dist/boot/stage-03-store-backend.d.ts +4 -1
- package/dist/boot/stage-03-store-backend.js +4 -3
- package/dist/boot/stage-04-stores.d.ts +3 -1
- package/dist/boot/stage-04-stores.js +2 -2
- package/dist/boot/stage-05-execution-env.d.ts +9 -5
- package/dist/boot/stage-05-execution-env.js +5 -5
- package/dist/boot/stage-06-runners.d.ts +13 -15
- package/dist/boot/stage-06-runners.js +24 -18
- package/dist/boot/stage-07-capability-layer.d.ts +14 -11
- package/dist/boot/stage-07-capability-layer.js +9 -12
- package/dist/boot/stage-08-reapers.d.ts +14 -11
- package/dist/boot/stage-08-reapers.js +3 -3
- package/dist/boot/stage-09-leader.d.ts +16 -18
- package/dist/boot/stage-09-leader.js +12 -4
- package/dist/boot/stage-10-http-server.d.ts +16 -18
- package/dist/boot/stage-10-http-server.js +9 -5
- package/dist/boot/store-evidence.d.ts +20 -0
- package/dist/boot/store-evidence.js +13 -0
- package/dist/boot/stores.d.ts +12 -0
- package/dist/boot/stores.js +39 -17
- package/dist/boot/task-list-lane.d.ts +4 -4
- package/dist/boot/web-admin.d.ts +4 -2
- package/dist/boot/web-admin.js +58 -38
- package/dist/boot/webfetch-summarize-lane.d.ts +1 -1
- package/dist/boot-reclaim.d.ts +3 -1
- package/dist/boot-reclaim.js +1 -1
- package/dist/brain.d.ts +7 -18
- package/dist/brain.js +5 -17
- package/dist/budget.js +6 -6
- package/dist/capabilities/center-plugins.d.ts +9 -1
- package/dist/capabilities/center-plugins.js +37 -11
- package/dist/capabilities/center-wiring.js +1 -1
- package/dist/capabilities/composite-members.d.ts +3 -2
- package/dist/capabilities/composite-members.js +3 -2
- package/dist/capabilities/execution-lane.d.ts +7 -7
- package/dist/capabilities/execution-lane.js +2 -2
- package/dist/capabilities/hands-lane.d.ts +1 -1
- package/dist/capabilities/repo-tools.d.ts +2 -0
- package/dist/capabilities/repo-tools.js +14 -12
- package/dist/capabilities/scenarios.d.ts +38 -33
- package/dist/capabilities/scenarios.js +24 -25
- package/dist/capabilities/settings-contract.d.ts +29 -0
- package/dist/capabilities/settings-contract.js +14 -0
- package/dist/capabilities/skills.d.ts +6 -6
- package/dist/capabilities/tool-defer.d.ts +1 -1
- package/dist/capability-facts.d.ts +69 -4
- package/dist/capability-facts.js +77 -5
- package/dist/card-void.d.ts +4 -4
- package/dist/card-void.js +1 -1
- package/dist/center-credential-renewer.d.ts +6 -2
- package/dist/center-credential-renewer.js +10 -5
- package/dist/config-catalog.d.ts +16 -1
- package/dist/config-catalog.js +68 -61
- package/dist/config-dir-trust.d.ts +37 -4
- package/dist/config-dir-trust.js +88 -44
- package/dist/config-invariants.d.ts +58 -4
- package/dist/config-invariants.js +104 -23
- package/dist/config-lkg.d.ts +24 -2
- package/dist/config-lkg.js +22 -9
- package/dist/config-provider.d.ts +9 -9
- package/dist/config-provider.js +25 -108
- package/dist/config-pull-failure.d.ts +50 -0
- package/dist/config-pull-failure.js +48 -0
- package/dist/config-types.d.ts +215 -202
- package/dist/config.d.ts +69 -14
- package/dist/config.js +188 -96
- package/dist/degenerate-instrument.js +1 -1
- package/dist/delegated-session-owner.d.ts +1 -1
- package/dist/deleted-session-ids.d.ts +3 -2
- package/dist/deploy-facts.js +3 -2
- package/dist/deployment-governance.d.ts +3 -3
- package/dist/deployment-shape.d.ts +51 -16
- package/dist/deployment-shape.js +31 -6
- package/dist/egress-redirect.d.ts +25 -7
- package/dist/egress-redirect.js +20 -2
- package/dist/elicitation.d.ts +6 -5
- package/dist/elicitation.js +23 -22
- package/dist/engine-identity.d.ts +28 -0
- package/dist/engine-identity.js +10 -0
- package/dist/entry-problems.d.ts +5 -7
- package/dist/entry-problems.js +1 -1
- package/dist/env-facts.d.ts +7 -5
- package/dist/env-facts.js +12 -7
- package/dist/env-witness.d.ts +7 -0
- package/dist/env-witness.js +16 -0
- package/dist/execution-config-root.d.ts +5 -5
- package/dist/execution-config-root.js +5 -5
- package/dist/execution-env-purpose.d.ts +14 -0
- package/dist/execution-env-purpose.js +29 -0
- package/dist/execution-lane-caps.d.ts +53 -103
- package/dist/execution-lane-caps.js +51 -83
- package/dist/execution-placement.d.ts +65 -9
- package/dist/execution-placement.js +58 -0
- package/dist/field-conflict.d.ts +7 -11
- package/dist/field-conflict.js +3 -3
- package/dist/file-history-capture.d.ts +3 -3
- package/dist/file-history-disclosure.d.ts +2 -2
- package/dist/file-history-disclosure.js +1 -0
- package/dist/fleet/drain-entry.d.ts +17 -10
- package/dist/fleet/drain-entry.js +1 -1
- package/dist/fleet/fleet-bus.d.ts +21 -3
- package/dist/fleet/fleet-bus.js +35 -25
- package/dist/fleet/fleet-reconciler.js +2 -2
- package/dist/fleet/serving-lease.js +6 -7
- package/dist/fleet-client.js +3 -3
- package/dist/fleet-lease.d.ts +0 -1
- package/dist/fleet-lease.js +4 -5
- package/dist/history-anchor.d.ts +42 -0
- package/dist/history-anchor.js +34 -0
- package/dist/hitl-delivery.d.ts +90 -0
- package/dist/hitl-delivery.js +98 -0
- package/dist/hooks/classic-stations.d.ts +8 -11
- package/dist/hooks/classic-stations.js +0 -7
- package/dist/hooks/command-spawn.d.ts +1 -4
- package/dist/hooks/command-spawn.js +0 -11
- package/dist/hooks/hook-llm.d.ts +5 -1
- package/dist/hooks/hook-llm.js +24 -15
- package/dist/hooks/hook-runner.d.ts +119 -65
- package/dist/hooks/hook-runner.js +415 -217
- package/dist/host-lsp-manager.d.ts +22 -8
- package/dist/host-lsp-manager.js +4 -1
- package/dist/http/active-run-conflict.d.ts +2 -43
- package/dist/http/active-run-conflict.js +3 -7
- package/dist/http/admission.d.ts +4 -18
- package/dist/http/admission.js +75 -78
- package/dist/http/approval-sweeps.d.ts +5 -8
- package/dist/http/approval-sweeps.js +55 -30
- package/dist/http/caller-trust.d.ts +8 -10
- package/dist/http/caller-trust.js +1 -2
- package/dist/http/checkpoint-ctx.d.ts +17 -0
- package/dist/http/checkpoint-ctx.js +6 -0
- package/dist/http/claim-heartbeat.d.ts +49 -0
- package/dist/http/claim-heartbeat.js +46 -0
- package/dist/http/claim-latency.d.ts +10 -0
- package/dist/http/claim-latency.js +12 -0
- package/dist/http/claimed-run.d.ts +4 -3
- package/dist/http/dispatch.d.ts +8 -1
- package/dist/http/dispatch.js +77 -31
- package/dist/http/durable-run-leg.d.ts +3 -3
- package/dist/http/durable-run-leg.js +18 -12
- package/dist/http/execution-context.d.ts +18 -42
- package/dist/http/execution-context.js +11 -5
- package/dist/http/health-reader.d.ts +36 -0
- package/dist/http/health-reader.js +21 -0
- package/dist/http/health-self-report.d.ts +9 -9
- package/dist/http/health-self-report.js +4 -4
- package/dist/http/idempotency.d.ts +9 -5
- package/dist/http/idempotency.js +4 -4
- package/dist/http/memory-compliance-failure-reply.d.ts +15 -16
- package/dist/http/memory-compliance-failure-reply.js +7 -2
- package/dist/http/memory-face-fault-reply.d.ts +67 -0
- package/dist/http/memory-face-fault-reply.js +71 -0
- package/dist/http/memory-store-refusal-reply.d.ts +3 -3
- package/dist/http/memory-store-refusal-reply.js +6 -0
- package/dist/http/owner-access.d.ts +391 -56
- package/dist/http/owner-access.js +372 -33
- package/dist/http/principal-gate.d.ts +26 -94
- package/dist/http/principal-gate.js +24 -81
- package/dist/http/refusal-body.d.ts +35 -2
- package/dist/http/refusal-body.js +34 -0
- package/dist/http/request-guards.d.ts +10 -14
- package/dist/http/request-guards.js +34 -68
- package/dist/http/resume-composition.d.ts +37 -0
- package/dist/http/resume-composition.js +18 -0
- package/dist/http/resume-ctx-read.d.ts +35 -12
- package/dist/http/resume-ctx-read.js +25 -6
- package/dist/http/resume-legs.d.ts +24 -24
- package/dist/http/resume-legs.js +260 -171
- package/dist/http/retired-skill-manifest.d.ts +1 -1
- package/dist/http/rewind-files-reply.d.ts +34 -0
- package/dist/http/rewind-files-reply.js +36 -0
- package/dist/http/route-ctx.d.ts +56 -47
- package/dist/http/route-table.js +2 -0
- package/dist/http/routes/a2a-serve.d.ts +43 -5
- package/dist/http/routes/a2a-serve.js +58 -37
- package/dist/http/routes/admin-config-refresh.js +2 -2
- package/dist/http/routes/admin-drain.js +2 -2
- package/dist/http/routes/admin-memory-optout.js +4 -3
- package/dist/http/routes/adoption.d.ts +3 -0
- package/dist/http/routes/adoption.js +17 -10
- package/dist/http/routes/agents-roster.js +13 -7
- package/dist/http/routes/approvals-assistant.js +73 -88
- package/dist/http/routes/attachments.js +2 -2
- package/dist/http/routes/background.d.ts +3 -3
- package/dist/http/routes/background.js +9 -17
- package/dist/http/routes/capabilities.js +23 -20
- package/dist/http/routes/config-catalog.js +2 -2
- package/dist/http/routes/devices.d.ts +3 -3
- package/dist/http/routes/devices.js +5 -5
- package/dist/http/routes/diagnostics.d.ts +27 -3
- package/dist/http/routes/diagnostics.js +27 -21
- package/dist/http/routes/engine.js +2 -2
- package/dist/http/routes/fleet.js +5 -3
- package/dist/http/routes/images.js +10 -6
- package/dist/http/routes/leader.d.ts +7 -2
- package/dist/http/routes/leader.js +12 -3
- package/dist/http/routes/mcp-reconnect.d.ts +1 -1
- package/dist/http/routes/mcp-reconnect.js +7 -15
- package/dist/http/routes/memory-bundle.js +4 -7
- package/dist/http/routes/memory-compliance.js +4 -4
- package/dist/http/routes/memory-consolidation.js +6 -9
- package/dist/http/routes/memory-origin.d.ts +3 -1
- package/dist/http/routes/memory-origin.js +7 -8
- package/dist/http/routes/memory-policy.js +17 -12
- package/dist/http/routes/notify-wake.js +12 -20
- package/dist/http/routes/observability.js +3 -3
- package/dist/http/routes/principal-inbox.d.ts +1 -1
- package/dist/http/routes/principal-inbox.js +2 -2
- package/dist/http/routes/projects.d.ts +70 -0
- package/dist/http/routes/projects.js +87 -0
- package/dist/http/routes/retention-ops.js +6 -9
- package/dist/http/routes/rules.js +50 -7
- package/dist/http/routes/run-memory-capture.d.ts +2 -2
- package/dist/http/routes/run-memory-capture.js +6 -12
- package/dist/http/routes/run-permission-mode.d.ts +2 -2
- package/dist/http/routes/run-permission-mode.js +10 -17
- package/dist/http/routes/runs.js +148 -233
- package/dist/http/routes/session-memory-sync.d.ts +2 -2
- package/dist/http/routes/session-memory-sync.js +7 -13
- package/dist/http/routes/session-sync.d.ts +4 -2
- package/dist/http/routes/session-sync.js +48 -30
- package/dist/http/routes/sessions-list.d.ts +3 -3
- package/dist/http/routes/sessions-list.js +9 -9
- package/dist/http/routes/sessions.d.ts +7 -1
- package/dist/http/routes/sessions.js +177 -112
- package/dist/http/routes/shared-memory.js +6 -6
- package/dist/http/routes/side-query.js +2 -2
- package/dist/http/routes/tasks.js +144 -122
- package/dist/http/routes/trace-usage.d.ts +0 -12
- package/dist/http/routes/trace-usage.js +40 -46
- package/dist/http/routes/workflows.d.ts +39 -4
- package/dist/http/routes/workflows.js +42 -14
- package/dist/http/run-concurrency-cap.d.ts +20 -12
- package/dist/http/run-concurrency-cap.js +39 -26
- package/dist/http/run-read-face.d.ts +3 -5
- package/dist/http/run-read-face.js +8 -13
- package/dist/http/send.d.ts +12 -3
- package/dist/http/send.js +42 -6
- package/dist/http/server.d.ts +63 -50
- package/dist/http/server.js +52 -16
- package/dist/http/sse-log.d.ts +17 -10
- package/dist/http/sse-log.js +7 -7
- package/dist/http/stored-body-replay.d.ts +17 -3
- package/dist/http/stored-body-replay.js +11 -2
- package/dist/http/submit-ctx.d.ts +16 -8
- package/dist/http/submit-ctx.js +6 -2
- package/dist/http/submit-replay.d.ts +19 -6
- package/dist/http/submit-replay.js +18 -6
- package/dist/http/sync-submit-body.d.ts +3 -4
- package/dist/http/sync-submit-body.js +4 -5
- package/dist/http/wire-types.d.ts +23 -13
- package/dist/identity-source.d.ts +36 -5
- package/dist/identity-source.js +27 -0
- package/dist/index.d.ts +3 -2
- package/dist/index.js +2 -1
- package/dist/instruction-source-notice.d.ts +1 -1
- package/dist/key-resolver.d.ts +32 -0
- package/dist/key-resolver.js +23 -9
- package/dist/leader/diffup.js +2 -1
- package/dist/leader/endpoint.d.ts +26 -5
- package/dist/leader/endpoint.js +154 -14
- package/dist/leader/fanout.d.ts +3 -0
- package/dist/leader/fanout.js +78 -63
- package/dist/leader/leader.d.ts +16 -0
- package/dist/leader/leader.js +43 -3
- package/dist/leader/merge.d.ts +9 -1
- package/dist/leader/merge.js +16 -1
- package/dist/leader/repair-wire.js +1 -1
- package/dist/leader/wire.d.ts +36 -3
- package/dist/leader/wire.js +59 -18
- package/dist/lsp-evict.d.ts +6 -4
- package/dist/lsp-evict.js +2 -3
- package/dist/memory-embedder-reembed.d.ts +38 -0
- package/dist/memory-embedder-reembed.js +20 -0
- package/dist/memory-incident-sink.d.ts +0 -28
- package/dist/memory-incident-sink.js +5 -0
- package/dist/memory-operator-faces.d.ts +5 -4
- package/dist/memory-operator-faces.js +1 -1
- package/dist/memory-scope.d.ts +31 -4
- package/dist/memory-scope.js +65 -16
- package/dist/memory-store-refusal.d.ts +20 -4
- package/dist/memory-store-refusal.js +1 -1
- package/dist/memory-sync-client.d.ts +5 -2
- package/dist/memory-sync-client.js +19 -14
- package/dist/memory-sync.js +1 -1
- package/dist/model-compat.d.ts +51 -28
- package/dist/model-compat.js +55 -23
- package/dist/model-context-window.d.ts +18 -0
- package/dist/model-context-window.js +2 -0
- package/dist/model-entry-headers.d.ts +46 -4
- package/dist/model-entry-headers.js +2 -2
- package/dist/model-entry-refusal.d.ts +46 -17
- package/dist/model-entry-refusal.js +47 -27
- package/dist/model-plane-face.d.ts +19 -11
- package/dist/model-plane-face.js +9 -1
- package/dist/model-plane-probe.d.ts +2 -0
- package/dist/model-plane-probe.js +17 -0
- package/dist/model-provider.d.ts +3 -3
- package/dist/model-route-endpoint.d.ts +9 -5
- package/dist/model-route-endpoint.js +29 -7
- package/dist/model-select.d.ts +16 -0
- package/dist/model-select.js +4 -0
- package/dist/mountinfo.d.ts +37 -0
- package/dist/mountinfo.js +47 -0
- package/dist/namespaced-rule-name.d.ts +28 -2
- package/dist/namespaced-rule-name.js +10 -1
- package/dist/net-address.d.ts +1 -1
- package/dist/observability/corrupt-read-seat.d.ts +4 -4
- package/dist/observability/corrupt-read-seat.js +5 -3
- package/dist/observability/fail-open.d.ts +75 -47
- package/dist/observability/fail-open.js +77 -47
- package/dist/observability/logger.d.ts +22 -1
- package/dist/observability/logger.js +89 -12
- package/dist/observability/metrics.d.ts +2 -0
- package/dist/observability/metrics.js +5 -4
- package/dist/observability/otel-exporter.js +2 -1
- package/dist/observability/principal-context.d.ts +14 -7
- package/dist/observability/principal-context.js +8 -3
- package/dist/observability/run-terminal.d.ts +7 -1
- package/dist/observability/run-terminal.js +5 -2
- package/dist/observability/secret-env-scrub.d.ts +30 -4
- package/dist/observability/secret-env-scrub.js +15 -3
- package/dist/orchestration/hardened-vm-runner.d.ts +1 -0
- package/dist/orchestration/hardened-vm-runner.js +11 -5
- package/dist/orchestration/hardened-vm-worker-runner.d.ts +0 -14
- package/dist/orchestration/hardened-vm-worker-runner.js +5 -0
- package/dist/orchestration/hardened-vm-worker.js +2 -1
- package/dist/orchestration/workflow-agent-session-index.d.ts +7 -12
- package/dist/orchestration/workflow-agent-session-index.js +1 -6
- package/dist/orchestration/workflow-completion-inbox.d.ts +29 -9
- package/dist/orchestration/workflow-completion-inbox.js +65 -46
- package/dist/org-delivery-gate.d.ts +5 -4
- package/dist/org-delivery-gate.js +7 -6
- package/dist/org-memory-admission.d.ts +5 -2
- package/dist/org-memory-admission.js +25 -10
- package/dist/outbound-dispatcher.d.ts +1 -1
- package/dist/outbound-dispatcher.js +6 -12
- package/dist/owner-brands.d.ts +81 -0
- package/dist/owner-brands.js +42 -0
- package/dist/owner-faces.d.ts +531 -0
- package/dist/owner-faces.js +126 -0
- package/dist/parked-decide.d.ts +100 -31
- package/dist/parked-decide.js +162 -48
- package/dist/parked-revive-surface.d.ts +14 -4
- package/dist/parked-revive-surface.js +5 -4
- package/dist/peer-directory.d.ts +6 -8
- package/dist/peer-directory.js +3 -2
- package/dist/permission-rule-vocab.d.ts +53 -8
- package/dist/permission-rule-vocab.js +30 -2
- package/dist/plugins/adoption-log-sql.d.ts +0 -22
- package/dist/plugins/adoption-log-sql.js +5 -3
- package/dist/plugins/approval-ask-retired-delete-by-task-m50.d.ts +7 -0
- package/dist/plugins/approval-ask-retired-delete-by-task-m50.js +17 -0
- package/dist/plugins/approval-ask-store-file.d.ts +28 -9
- package/dist/plugins/approval-ask-store-file.js +74 -18
- package/dist/plugins/approval-ask-store-memory.d.ts +17 -7
- package/dist/plugins/approval-ask-store-memory.js +35 -12
- package/dist/plugins/approval-ask-store-sql.d.ts +42 -20
- package/dist/plugins/approval-ask-store-sql.js +44 -11
- package/dist/plugins/approval-exemption-skill-m46.d.ts +20 -0
- package/dist/plugins/approval-exemption-skill-m46.js +25 -0
- package/dist/plugins/approval-exemption-store.d.ts +6 -1
- package/dist/plugins/approval-exemption-store.js +14 -0
- package/dist/plugins/approval-nonce-store.d.ts +39 -12
- package/dist/plugins/approval-nonce-store.js +72 -23
- package/dist/plugins/blob-backend.d.ts +40 -195
- package/dist/plugins/blob-backend.js +41 -234
- package/dist/plugins/caching-session-store.d.ts +22 -5
- package/dist/plugins/caching-session-store.js +43 -4
- package/dist/plugins/checkpoint-index-columns.d.ts +33 -6
- package/dist/plugins/checkpoint-index-columns.js +39 -3
- package/dist/plugins/checkpoint-store-face.d.ts +84 -11
- package/dist/plugins/checkpoint-store-face.js +18 -1
- package/dist/plugins/device-store-sql.d.ts +2 -2
- package/dist/plugins/device-store-sql.js +6 -10
- package/dist/plugins/ensure-index.d.ts +13 -1
- package/dist/plugins/ensure-index.js +154 -21
- package/dist/plugins/ensure-schema-lock-policy.d.ts +0 -15
- package/dist/plugins/ensure-schema-lock-policy.js +3 -2
- package/dist/plugins/execution-lane-rename-m40.d.ts +20 -0
- package/dist/plugins/execution-lane-rename-m40.js +10 -0
- package/dist/plugins/execution-placement-sql.d.ts +63 -88
- package/dist/plugins/execution-placement-sql.js +94 -54
- package/dist/plugins/file-run-store.d.ts +89 -35
- package/dist/plugins/file-run-store.js +197 -142
- package/dist/plugins/host-platform.d.ts +24 -3
- package/dist/plugins/host-platform.js +15 -1
- package/dist/plugins/image-bake-store-sql.js +2 -0
- package/dist/plugins/imported-layer-root-retirement.d.ts +19 -10
- package/dist/plugins/imported-layer-root-retirement.js +4 -8
- package/dist/plugins/inbox-payload-column.d.ts +14 -0
- package/dist/plugins/inbox-payload-column.js +13 -0
- package/dist/plugins/k8s-pod-reaper.d.ts +1 -3
- package/dist/plugins/k8s-pod-reaper.js +0 -1
- package/dist/plugins/leader-run-store-sql.d.ts +22 -0
- package/dist/plugins/leader-run-store-sql.js +34 -4
- package/dist/plugins/local-checkpoint-store.d.ts +63 -23
- package/dist/plugins/local-checkpoint-store.js +204 -81
- package/dist/plugins/local-data-dir-modes-m39.d.ts +48 -0
- package/dist/plugins/local-data-dir-modes-m39.js +183 -0
- package/dist/plugins/local-docker-capacity.d.ts +93 -0
- package/dist/plugins/local-docker-capacity.js +194 -0
- package/dist/plugins/local-docker-reaper.d.ts +92 -0
- package/dist/plugins/local-docker-reaper.js +102 -0
- package/dist/plugins/local-engine-high-water.d.ts +13 -0
- package/dist/plugins/local-engine-high-water.js +62 -0
- package/dist/plugins/local-session-store.d.ts +442 -143
- package/dist/plugins/local-session-store.js +941 -289
- package/dist/plugins/local-session-window.d.ts +3 -2
- package/dist/plugins/local-session-window.js +3 -2
- package/dist/plugins/local-sidecar-quarantine.js +3 -2
- package/dist/plugins/local-task-attachment-store.d.ts +20 -1
- package/dist/plugins/local-task-attachment-store.js +32 -12
- package/dist/plugins/memory-embedder-fingerprint.d.ts +33 -10
- package/dist/plugins/memory-embedder-fingerprint.js +52 -12
- package/dist/plugins/memory-embedder.d.ts +1 -1
- package/dist/plugins/memory-embedder.js +11 -9
- package/dist/plugins/memory-engine-pg.d.ts +7 -5
- package/dist/plugins/memory-engine-pg.js +18 -9
- package/dist/plugins/memory-engine-sql-apply.d.ts +21 -8
- package/dist/plugins/memory-engine-sql-apply.js +7 -9
- package/dist/plugins/memory-engine-tidb.d.ts +12 -7
- package/dist/plugins/memory-engine-tidb.js +18 -10
- package/dist/plugins/memory-optout-grant-store-sql.d.ts +1 -1
- package/dist/plugins/memory-optout-grant-store-sql.js +3 -3
- package/dist/plugins/memory-run-store.d.ts +39 -27
- package/dist/plugins/memory-run-store.js +72 -70
- package/dist/plugins/one-time-migration-marker.d.ts +10 -0
- package/dist/plugins/one-time-migration-marker.js +7 -0
- package/dist/plugins/one-time-migrations.d.ts +325 -74
- package/dist/plugins/one-time-migrations.js +705 -230
- package/dist/plugins/org-delivery-quota-store.js +2 -1
- package/dist/plugins/owner-only-file-mode.d.ts +29 -0
- package/dist/plugins/owner-only-file-mode.js +141 -0
- package/dist/plugins/permission-rule-store-file.d.ts +11 -11
- package/dist/plugins/permission-rule-store-file.js +14 -2
- package/dist/plugins/permission-rule-store-sql.d.ts +4 -63
- package/dist/plugins/permission-rule-store-sql.js +6 -86
- package/dist/plugins/pg-pool.d.ts +3 -32
- package/dist/plugins/pg-pool.js +27 -11
- package/dist/plugins/release-version.d.ts +20 -0
- package/dist/plugins/release-version.js +28 -0
- package/dist/plugins/remote-env-adb.d.ts +20 -4
- package/dist/plugins/remote-env-adb.js +39 -11
- package/dist/plugins/remote-env-e2b.d.ts +19 -28
- package/dist/plugins/remote-env-e2b.js +40 -29
- package/dist/plugins/remote-env-host.d.ts +11 -10
- package/dist/plugins/remote-env-host.js +40 -27
- package/dist/plugins/remote-env-k8s.d.ts +45 -47
- package/dist/plugins/remote-env-k8s.js +122 -62
- package/dist/plugins/remote-env-local-docker.d.ts +152 -15
- package/dist/plugins/remote-env-local-docker.js +370 -75
- package/dist/plugins/remote-env-ssh.d.ts +8 -2
- package/dist/plugins/remote-env-ssh.js +26 -24
- package/dist/plugins/remote-scratchpad.js +4 -0
- package/dist/plugins/remote-shell.d.ts +59 -30
- package/dist/plugins/remote-shell.js +175 -62
- package/dist/plugins/retention-declaration.d.ts +37 -0
- package/dist/plugins/retention-declaration.js +9 -0
- package/dist/plugins/retention-deployment.d.ts +158 -0
- package/dist/plugins/retention-deployment.js +119 -0
- package/dist/plugins/retention-lane-store-sql.d.ts +74 -4
- package/dist/plugins/retention-lane-store-sql.js +103 -1
- package/dist/plugins/retention-sql.d.ts +29 -0
- package/dist/plugins/retention-sql.js +8 -0
- package/dist/plugins/run-preview-m45.d.ts +11 -0
- package/dist/plugins/run-preview-m45.js +19 -0
- package/dist/plugins/run-store-sql.d.ts +56 -68
- package/dist/plugins/run-store-sql.js +127 -116
- package/dist/plugins/s3-answer.d.ts +2 -1
- package/dist/plugins/sandbox-reaper.d.ts +26 -0
- package/dist/plugins/sandbox-reaper.js +2 -0
- package/dist/plugins/scenario-prefix-switch-m42.d.ts +54 -0
- package/dist/plugins/scenario-prefix-switch-m42.js +55 -0
- package/dist/plugins/scheduler-support.d.ts +16 -1
- package/dist/plugins/scheduler-support.js +22 -2
- package/dist/plugins/schema-consistency.d.ts +42 -15
- package/dist/plugins/schema-consistency.js +213 -13
- package/dist/plugins/schema-drift-sentence.d.ts +4 -1
- package/dist/plugins/schema-drift-sentence.js +4 -4
- package/dist/plugins/schema-ensure-legs.d.ts +10 -1
- package/dist/plugins/schema-ensure-legs.js +12 -2
- package/dist/plugins/schema-indexes.js +3 -0
- package/dist/plugins/schema-live-columns.d.ts +14 -5
- package/dist/plugins/schema-live-columns.js +10 -10
- package/dist/plugins/send-user-file.js +2 -1
- package/dist/plugins/session-birth.d.ts +37 -0
- package/dist/plugins/session-birth.js +38 -0
- package/dist/plugins/session-epoch-anchor.d.ts +40 -12
- package/dist/plugins/session-epoch-anchor.js +33 -11
- package/dist/plugins/session-ext-table.d.ts +98 -0
- package/dist/plugins/session-ext-table.js +134 -0
- package/dist/plugins/session-fork.d.ts +16 -2
- package/dist/plugins/session-fork.js +3 -0
- package/dist/plugins/session-ownership.d.ts +1 -1
- package/dist/plugins/session-placement.d.ts +22 -16
- package/dist/plugins/session-placement.js +15 -12
- package/dist/plugins/session-row-sql.d.ts +20 -7
- package/dist/plugins/session-row-sql.js +16 -8
- package/dist/plugins/session-run-rollup.d.ts +29 -0
- package/dist/plugins/session-run-rollup.js +40 -0
- package/dist/plugins/session-store-sql.d.ts +157 -0
- package/dist/plugins/session-store-sql.js +398 -0
- package/dist/plugins/session-withdraw-sql.d.ts +36 -0
- package/dist/plugins/session-withdraw-sql.js +42 -0
- package/dist/plugins/session-workspace-cell.d.ts +2 -2
- package/dist/plugins/session-workspace-cell.js +2 -2
- package/dist/plugins/shared-memory-store-sql.d.ts +10 -69
- package/dist/plugins/shared-memory-store-sql.js +15 -14
- package/dist/plugins/shell-sentinel-owner-m48.d.ts +20 -0
- package/dist/plugins/shell-sentinel-owner-m48.js +3 -0
- package/dist/plugins/snapshot-bucket-presence.d.ts +2 -1
- package/dist/plugins/snapshot-bucket-presence.js +1 -1
- package/dist/plugins/sql-driver.d.ts +24 -8
- package/dist/plugins/sql-driver.js +43 -9
- package/dist/plugins/sql-errors.d.ts +35 -5
- package/dist/plugins/sql-errors.js +55 -3
- package/dist/plugins/sql-json-column.d.ts +8 -7
- package/dist/plugins/sql-json-column.js +10 -6
- package/dist/plugins/store-backend.d.ts +114 -18
- package/dist/plugins/store-backend.js +340 -87
- package/dist/plugins/store-contracts.d.ts +97 -30
- package/dist/plugins/store-contracts.js +23 -1
- package/dist/plugins/store-fault.d.ts +28 -2
- package/dist/plugins/store-fault.js +20 -2
- package/dist/plugins/task-attachment-store.d.ts +21 -11
- package/dist/plugins/task-attachment-store.js +37 -19
- package/dist/plugins/task-list-store-sql.d.ts +1 -1
- package/dist/plugins/text-column-capacity.d.ts +21 -0
- package/dist/plugins/text-column-capacity.js +5 -0
- package/dist/plugins/tidb-pool.d.ts +3 -2
- package/dist/plugins/tidb-pool.js +42 -39
- package/dist/plugins/user-input-ledger-sql.d.ts +1 -1
- package/dist/plugins/web-search.js +5 -3
- package/dist/plugins/workflow-run-store-sql.d.ts +6 -1
- package/dist/plugins/workflow-run-store-sql.js +11 -5
- package/dist/principal-jwt.d.ts +4 -4
- package/dist/principal-jwt.js +20 -5
- package/dist/principal-shape.d.ts +41 -0
- package/dist/principal-shape.js +19 -0
- package/dist/question.d.ts +13 -23
- package/dist/question.js +21 -39
- package/dist/read-face-posture.d.ts +6 -6
- package/dist/read-face-posture.js +2 -2
- package/dist/request-declaration-refusal.d.ts +35 -12
- package/dist/request-declaration-refusal.js +21 -9
- package/dist/request-form.d.ts +58 -0
- package/dist/request-form.js +72 -0
- package/dist/request-image-urls.d.ts +8 -2
- package/dist/request-image-urls.js +2 -1
- package/dist/request-images.d.ts +20 -0
- package/dist/request-images.js +59 -0
- package/dist/request-key-closure.d.ts +6 -7
- package/dist/request-key-closure.js +15 -2
- package/dist/request-value-closure.d.ts +5 -5
- package/dist/request-value-closure.js +1 -1
- package/dist/resource-suspend.d.ts +7 -16
- package/dist/resource-suspend.js +1 -1
- package/dist/retired-name-host-notice.d.ts +21 -0
- package/dist/retired-name-host-notice.js +12 -0
- package/dist/rule-entry-list.d.ts +2 -2
- package/dist/rule-entry-list.js +3 -4
- package/dist/rule-issue-reading.d.ts +58 -0
- package/dist/rule-issue-reading.js +14 -0
- package/dist/rules-consent.d.ts +46 -16
- package/dist/rules-consent.js +102 -53
- package/dist/run-acceptance.d.ts +3 -1
- package/dist/run-acceptance.js +3 -0
- package/dist/run-local.d.ts +14 -6
- package/dist/run-local.js +109 -93
- package/dist/run-stale-default.d.ts +7 -0
- package/dist/run-stale-default.js +2 -0
- package/dist/runs.d.ts +73 -44
- package/dist/runs.js +65 -43
- package/dist/runtime-caps-resolver.d.ts +36 -14
- package/dist/runtime-caps-resolver.js +31 -14
- package/dist/runtime-governance.d.ts +2 -2
- package/dist/runtime-governance.js +5 -3
- package/dist/sealed-key-layout.d.ts +12 -6
- package/dist/sealed-key-layout.js +5 -1
- package/dist/sealed-key.d.ts +12 -2
- package/dist/sealed-key.js +116 -26
- package/dist/security.d.ts +133 -161
- package/dist/security.js +163 -59
- package/dist/sema-config-dir.d.ts +20 -0
- package/dist/sema-config-dir.js +27 -2
- package/dist/server-secret-env.d.ts +23 -5
- package/dist/server-secret-env.js +14 -4
- package/dist/service-version.d.ts +2 -1
- package/dist/service-version.js +2 -2
- package/dist/session-children-retire.d.ts +7 -5
- package/dist/session-children-retire.js +7 -2
- package/dist/session-deletion.d.ts +88 -0
- package/dist/session-deletion.js +8 -0
- package/dist/session-erase.d.ts +145 -0
- package/dist/session-erase.js +115 -0
- package/dist/session-error-wire.d.ts +6 -6
- package/dist/session-error-wire.js +1 -1
- package/dist/session-incarnation.d.ts +60 -10
- package/dist/session-incarnation.js +19 -2
- package/dist/session-policy-wire.d.ts +6 -3
- package/dist/session-policy-wire.js +11 -1
- package/dist/session-resident-background.d.ts +29 -47
- package/dist/session-resident-background.js +77 -8
- package/dist/session-row.d.ts +3 -2
- package/dist/session-rules-seat.d.ts +12 -0
- package/dist/session-rules-seat.js +19 -0
- package/dist/session-sync-kernel.d.ts +1 -1
- package/dist/session-titler.d.ts +7 -15
- package/dist/session-titler.js +1 -1
- package/dist/session-workspace.d.ts +11 -2
- package/dist/session-workspace.js +5 -0
- package/dist/sighup-idle.d.ts +1 -1
- package/dist/spec-fields.d.ts +57 -3
- package/dist/spec-fields.js +72 -51
- package/dist/store-posture.d.ts +138 -21
- package/dist/store-posture.js +188 -3
- package/dist/stored-request-hooks-m20.d.ts +3 -2
- package/dist/stored-request-hooks-m20.js +21 -16
- package/dist/stores-sql/background-agent-store-sql.d.ts +11 -2
- package/dist/stores-sql/background-agent-store-sql.js +73 -20
- package/dist/stores-sql/blob-index-sql.d.ts +148 -0
- package/dist/stores-sql/blob-index-sql.js +154 -0
- package/dist/stores-sql/checkpoint-store-sql.d.ts +34 -29
- package/dist/stores-sql/checkpoint-store-sql.js +86 -71
- package/dist/{plugins → stores-sql}/file-history-store-sql.d.ts +23 -11
- package/dist/{plugins → stores-sql}/file-history-store-sql.js +23 -18
- package/dist/stores-sql/mailbox-store-sql.d.ts +7 -4
- package/dist/stores-sql/mailbox-store-sql.js +31 -32
- package/dist/{plugins → stores-sql}/pg-session-storage.d.ts +30 -81
- package/dist/{plugins → stores-sql}/pg-session-storage.js +123 -244
- package/dist/{plugins → stores-sql}/retention-store-sql.d.ts +197 -223
- package/dist/{plugins → stores-sql}/retention-store-sql.js +148 -207
- package/dist/{plugins → stores-sql}/session-event-payload.d.ts +1 -1
- package/dist/{plugins → stores-sql}/session-event-payload.js +1 -1
- package/dist/stores-sql/session-policy-store-sql.d.ts +33 -11
- package/dist/stores-sql/session-policy-store-sql.js +44 -36
- package/dist/stores-sql/session-write-hooks.d.ts +65 -0
- package/dist/stores-sql/session-write-hooks.js +2 -0
- package/dist/{plugins → stores-sql}/tidb-session-storage.d.ts +14 -15
- package/dist/{plugins → stores-sql}/tidb-session-storage.js +22 -28
- package/dist/{plugins → stores-sql}/tidb-session-store.d.ts +67 -138
- package/dist/{plugins → stores-sql}/tidb-session-store.js +130 -200
- package/dist/stores-sql/tool-result-store-sql.d.ts +1 -1
- package/dist/stores-sql/tool-result-store-sql.js +1 -1
- package/dist/stores-sql/windowed-session-storage.d.ts +61 -0
- package/dist/stores-sql/windowed-session-storage.js +70 -0
- package/dist/submission-exit.d.ts +50 -0
- package/dist/submission-exit.js +108 -0
- package/dist/task-a2a.d.ts +7 -1
- package/dist/task-a2a.js +18 -17
- package/dist/task-cwd.d.ts +31 -3
- package/dist/task-cwd.js +25 -1
- package/dist/task-mcp.d.ts +11 -3
- package/dist/task-mcp.js +16 -19
- package/dist/task-settings.d.ts +23 -14
- package/dist/task-settings.js +35 -13
- package/dist/terminal.d.ts +25 -43
- package/dist/terminal.js +31 -11
- package/dist/tool-approval.d.ts +152 -137
- package/dist/tool-approval.js +199 -199
- package/dist/trace/core-keyset-guard.d.ts +22 -9
- package/dist/trace/core-vocab-wire.d.ts +95 -0
- package/dist/trace/core-vocab-wire.js +15 -0
- package/dist/trace/engine-notice-wire.d.ts +1 -1
- package/dist/trace/engine-notice-wire.js +2 -0
- package/dist/trace/exit-seat.d.ts +52 -4
- package/dist/trace/exit-seat.js +43 -36
- package/dist/trace/extension-call-face.d.ts +3 -2
- package/dist/trace/extension-call-face.js +3 -1
- package/dist/trace/ledger-events.d.ts +4 -7
- package/dist/trace/ledger-sink.d.ts +1 -30
- package/dist/trace/ledger-sink.js +0 -11
- package/dist/trace/model-segment.d.ts +5 -5
- package/dist/trace/model-segment.js +5 -5
- package/dist/trace/project.d.ts +88 -58
- package/dist/trace/project.js +64 -28
- package/dist/trace/redact.d.ts +124 -28
- package/dist/trace/redact.js +936 -328
- package/dist/trace/self-minted-wire.d.ts +750 -29
- package/dist/trace/self-minted-wire.js +262 -25
- package/dist/trace/sema-provenance.d.ts +45 -41
- package/dist/trace/sema-provenance.js +81 -10
- package/dist/trace/task-notification-facets.d.ts +70 -2
- package/dist/trace/task-notification-facets.js +71 -1
- package/dist/trace/wire-projection-faces.d.ts +43 -8
- package/dist/trace/wire-projection-faces.js +28 -3
- package/dist/unread-request-members.d.ts +66 -0
- package/dist/unread-request-members.js +41 -0
- package/dist/upstream-body.d.ts +23 -0
- package/dist/upstream-body.js +16 -0
- package/dist/url-refusal.d.ts +3 -3
- package/dist/url-refusal.js +11 -4
- package/dist/user-authored-text.d.ts +1 -1
- package/dist/user-input-ledger.d.ts +7 -8
- package/dist/user-input-ledger.js +1 -1
- package/dist/web-admin-client/apply-effective.d.ts +6 -3
- package/dist/web-admin-client/apply-effective.js +33 -40
- package/dist/web-admin-client/apply-ledger.d.ts +16 -7
- package/dist/web-admin-client/apply-ledger.js +5 -2
- package/dist/web-admin-client/candidate-gate.d.ts +35 -3
- package/dist/web-admin-client/candidate-gate.js +53 -5
- package/dist/web-admin-client/center-request.d.ts +6 -3
- package/dist/web-admin-client/center-request.js +17 -16
- package/dist/web-admin-client/effective-keys.d.ts +1 -1
- package/dist/web-admin-client/effective-keys.js +1 -2
- package/dist/web-admin-client/entry-metadata.d.ts +8 -0
- package/dist/web-admin-client/entry-metadata.js +13 -0
- package/dist/web-admin-client/facade.d.ts +1 -1
- package/dist/web-admin-client/http-client.d.ts +2 -1
- package/dist/web-admin-client/http-client.js +40 -13
- package/dist/web-admin-client/mcp-revocation.d.ts +1 -1
- package/dist/web-admin-client/mcp-revocation.js +2 -1
- package/dist/web-admin-client/read-warnings.d.ts +1 -0
- package/dist/web-admin-client/read-warnings.js +1 -0
- package/dist/web-admin-client/restart-signal.js +13 -6
- package/dist/web-admin-client/skills-mcp.d.ts +22 -8
- package/dist/web-admin-client/skills-mcp.js +26 -21
- package/dist/web-admin-client/types.d.ts +35 -51
- package/dist/workspace-space.d.ts +3 -2
- package/docs/DEVICE-EXECUTOR-PROTOCOL.md +4 -4
- package/package.json +16 -12
- package/scripts/drain-check-local.mjs +118 -173
- package/scripts/drain-check.mysql.sql +20 -16
- package/scripts/drain-check.pg.sql +20 -16
- package/wire-changes/server@7.147.0.json +813 -0
- package/wire-changes/server@7.148.0.json +1517 -0
- package/dist/http/memory-control-plane-corrupt-reply.d.ts +0 -25
- package/dist/http/memory-control-plane-corrupt-reply.js +0 -19
- package/dist/http/memory-layer-reply.d.ts +0 -30
- package/dist/http/memory-layer-reply.js +0 -24
- package/dist/lsp/e2b-bridge.d.ts +0 -57
- package/dist/lsp/e2b-bridge.js +0 -139
- package/dist/lsp/e2b-manager.d.ts +0 -93
- package/dist/lsp/e2b-manager.js +0 -178
- package/dist/lsp/lsp-frames.d.ts +0 -14
- package/dist/lsp/lsp-frames.js +0 -25
- package/dist/lsp/manager.d.ts +0 -129
- package/dist/lsp/manager.js +0 -127
- package/dist/lsp/types.d.ts +0 -12
- package/dist/lsp/types.js +0 -2
- package/dist/lsp/ws-transport.d.ts +0 -40
- package/dist/lsp/ws-transport.js +0 -210
package/dist/bake-runner/main.js
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { spawn } from "node:child_process";
|
|
2
2
|
import { readFile } from "node:fs/promises";
|
|
3
3
|
import { createLogger } from "../observability/logger.js";
|
|
4
|
+
import { createEgressFetch } from "../egress-redirect.js";
|
|
4
5
|
import { logConfigDiagnostics, parseEnvNameAllowlist, parseNumOrFailNonNegative } from "../config.js";
|
|
5
6
|
import { installSecretEnvScrubRecorder } from "../observability/secret-env-scrub.js";
|
|
6
7
|
import { declareServerWithheldEnv, hostSubprocessEnv } from "../server-secret-env.js";
|
|
7
8
|
import { shellQuote as shellSafe } from "../plugins/remote-shell.js";
|
|
8
9
|
import { echoCallerText } from "../caller-text-echo.js";
|
|
9
10
|
import { BakeRunner, } from "./runner.js";
|
|
11
|
+
import { readUpstreamJson } from "../upstream-body.js";
|
|
10
12
|
const BAKE_CLAIM_INGEST_FETCH_TIMEOUT_MS = 30_000;
|
|
11
13
|
const BAKE_HEARTBEAT_FETCH_TIMEOUT_MS = 10_000;
|
|
12
14
|
const BAKE_HOST_PROBE_TIMEOUT_MS = 10_000;
|
|
@@ -37,9 +39,10 @@ function loadEnv() {
|
|
|
37
39
|
}
|
|
38
40
|
function makeApiClient(env, log) {
|
|
39
41
|
const auth = { authorization: `Bearer ${env.token}`, "content-type": "application/json" };
|
|
42
|
+
const egressFetch = createEgressFetch("declare the final image-api address as IMAGE_API_BASE");
|
|
40
43
|
return {
|
|
41
44
|
async claimNext() {
|
|
42
|
-
const res = await
|
|
45
|
+
const res = await egressFetch(`${env.imageApiBase}/v1/images/bakes/claim`, {
|
|
43
46
|
method: "POST",
|
|
44
47
|
headers: auth,
|
|
45
48
|
body: JSON.stringify({ runnerId: env.runnerId }),
|
|
@@ -51,7 +54,7 @@ function makeApiClient(env, log) {
|
|
|
51
54
|
log.warn("bake_claim_rejected", { status: res.status });
|
|
52
55
|
return null;
|
|
53
56
|
}
|
|
54
|
-
const c = (await res
|
|
57
|
+
const c = (await readUpstreamJson(res));
|
|
55
58
|
if (!c.bakeId || !Array.isArray(c.argv) || !c.ingestSecret) {
|
|
56
59
|
log.warn("bake_claim_malformed", { status: res.status, bakeId: typeof c.bakeId === "string" ? c.bakeId : undefined });
|
|
57
60
|
return null;
|
|
@@ -68,7 +71,7 @@ function makeApiClient(env, log) {
|
|
|
68
71
|
};
|
|
69
72
|
},
|
|
70
73
|
async ingest(bakeId, ingestSecret, frame) {
|
|
71
|
-
const res = await
|
|
74
|
+
const res = await egressFetch(`${env.imageApiBase}/v1/images/bakes/${encodeURIComponent(bakeId)}/ingest`, {
|
|
72
75
|
method: "POST",
|
|
73
76
|
headers: { ...auth, "x-bake-ingest-secret": ingestSecret },
|
|
74
77
|
body: JSON.stringify(frame),
|
|
@@ -77,13 +80,13 @@ function makeApiClient(env, log) {
|
|
|
77
80
|
await res.arrayBuffer().catch(() => undefined);
|
|
78
81
|
},
|
|
79
82
|
async heartbeat(bakeId, ingestSecret) {
|
|
80
|
-
const res = await
|
|
83
|
+
const res = await egressFetch(`${env.imageApiBase}/v1/images/bakes/${encodeURIComponent(bakeId)}/ingest`, {
|
|
81
84
|
method: "POST",
|
|
82
85
|
headers: { ...auth, "x-bake-ingest-secret": ingestSecret },
|
|
83
86
|
body: JSON.stringify({ event: "heartbeat" }),
|
|
84
87
|
signal: AbortSignal.timeout(BAKE_HEARTBEAT_FETCH_TIMEOUT_MS),
|
|
85
88
|
});
|
|
86
|
-
const body = res.ok ? (await res
|
|
89
|
+
const body = res.ok ? (await readUpstreamJson(res).catch(() => ({}))) : {};
|
|
87
90
|
return {
|
|
88
91
|
accepted: res.ok,
|
|
89
92
|
cancelRequested: body.cancelRequested === true,
|
|
@@ -304,7 +307,7 @@ async function main() {
|
|
|
304
307
|
const invokedDirectly = process.argv[1] !== undefined && /bake-runner[/\\]main\.(ts|js)$/.test(process.argv[1]);
|
|
305
308
|
if (invokedDirectly) {
|
|
306
309
|
main().catch((err) => {
|
|
307
|
-
|
|
310
|
+
createLogger().error("bake_runner_fatal", { err: String(err) });
|
|
308
311
|
process.exit(1);
|
|
309
312
|
});
|
|
310
313
|
}
|
package/dist/bench/s1/arms.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { writeLogText } from "../../observability/logger.js";
|
|
1
2
|
import { pausedCauseOf, outwardPlane } from "../../terminal.js";
|
|
2
3
|
import { leafBudgetFields, s1DebugGit } from "./runner-ctx.js";
|
|
3
4
|
import {} from "./tasks.js";
|
|
@@ -61,7 +62,7 @@ export async function driveSupSuspendResume(initial, deps, implSpec, trap, advan
|
|
|
61
62
|
foldCost(vr.stats);
|
|
62
63
|
const legPlane = outwardPlane(vr.terminal);
|
|
63
64
|
if (process.env.S1_DEBUG_SUPCOST)
|
|
64
|
-
|
|
65
|
+
writeLogText("stderr", `[SUPCOST leg=${leg}] status=${legPlane.status} reason=${vr.verification?.unverifiedReason} c1µ=${vr.stats?.costBreakdown?.llmRootMicroUsd} accC1µ=${c1Acc.llmRootMicroUsd} hrGates=${vr.stats?.humanReview?.gates?.length}`);
|
|
65
66
|
const paused = pausedCauseOf(vr.terminal);
|
|
66
67
|
const gateKind = paused?.gate.kind;
|
|
67
68
|
const parkWord = paused === undefined ? undefined : outwardPlane(paused).status;
|
|
@@ -148,7 +149,7 @@ export async function runArm(arm, trap, seed, ctx, deps, supStore) {
|
|
|
148
149
|
}
|
|
149
150
|
catch (e) {
|
|
150
151
|
if (s1DebugGit())
|
|
151
|
-
|
|
152
|
+
writeLogText("stderr", "[S1 SOLO infra throw]", e instanceof Error ? (e.stack ?? e.message) : String(e));
|
|
152
153
|
return assembleRow({
|
|
153
154
|
arm, trap, seed, ctx,
|
|
154
155
|
stats: captureStats(undefined),
|
|
@@ -161,7 +162,7 @@ export async function runArm(arm, trap, seed, ctx, deps, supStore) {
|
|
|
161
162
|
}
|
|
162
163
|
const soloPlane = outwardPlane(vr.terminal);
|
|
163
164
|
if (s1DebugGit())
|
|
164
|
-
|
|
165
|
+
writeLogText("stderr", "[S1 SOLO vr.status]", soloPlane.status, "| stats:", JSON.stringify(vr.stats)?.slice(0, 200));
|
|
165
166
|
const oracle = pickOracleVerdicts(await deps.runOracle());
|
|
166
167
|
return assembleRow({
|
|
167
168
|
arm,
|
|
@@ -195,7 +196,7 @@ export async function runArm(arm, trap, seed, ctx, deps, supStore) {
|
|
|
195
196
|
}
|
|
196
197
|
catch (e) {
|
|
197
198
|
if (s1DebugGit())
|
|
198
|
-
|
|
199
|
+
writeLogText("stderr", `[S1 SUP infra throw driver=${trap.supDriver}]`, e instanceof Error ? (e.stack ?? e.message) : String(e));
|
|
199
200
|
return assembleRow({
|
|
200
201
|
arm, trap, seed, ctx,
|
|
201
202
|
stats: captureStats(undefined),
|
|
@@ -208,7 +209,7 @@ export async function runArm(arm, trap, seed, ctx, deps, supStore) {
|
|
|
208
209
|
}
|
|
209
210
|
const supPlane = outwardPlane(vr.terminal);
|
|
210
211
|
if (s1DebugGit())
|
|
211
|
-
|
|
212
|
+
writeLogText("stderr", `[S1 SUP vr.status driver=${trap.supDriver}]`, supPlane.status, "| repairTerminal:", repairTerminal, "| verdict:", vr.verification?.verdict, "| unverifiedReason:", vr.verification?.unverifiedReason, "| checkpointGate:", JSON.stringify(pausedCauseOf(vr.terminal)?.gate), "| error:", vr.error, "| stats:", JSON.stringify(vr.stats)?.slice(0, 180));
|
|
212
213
|
const oracle = pickOracleVerdicts(await deps.runOracle());
|
|
213
214
|
const runStatus = classifyRunStatus({ status: supPlane.status, repairTerminal });
|
|
214
215
|
const lastGate = vr.stats?.humanReview?.gates?.at(-1);
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
+
import { writeLogText } from "../../observability/logger.js";
|
|
1
2
|
import { outwardPlane } from "../../terminal.js";
|
|
2
3
|
import { Runner, runWithVerification, resumeWithVerification, runRepairLoop, combinePolicies, createDurableQuestionPolicy, QUESTION_AWAITS_RESUME, } from "@sema-agent/core";
|
|
3
4
|
import { loadConfig } from "../../config.js";
|
|
5
|
+
import { declareServerWithheldEnv } from "../../server-secret-env.js";
|
|
6
|
+
import { composeDeclaredExecutionLane } from "../../boot/execution-lane.js";
|
|
7
|
+
import { ALL_EXECUTION_LANES } from "../../execution-lane-caps.js";
|
|
4
8
|
import { assertServedModelRoute } from "../../model-route-endpoint.js";
|
|
5
9
|
import { withUnattendedLeg } from "../../unattended-permission-mode.js";
|
|
6
10
|
import { createBrain } from "../../brain.js";
|
|
@@ -51,7 +55,8 @@ function buildBrainIngredients(rt) {
|
|
|
51
55
|
process.env.MODEL_COST_CACHE_READ = String(rt.costCacheRead);
|
|
52
56
|
if (rt.costCacheWrite != null)
|
|
53
57
|
process.env.MODEL_COST_CACHE_WRITE = String(rt.costCacheWrite);
|
|
54
|
-
|
|
58
|
+
declareServerWithheldEnv();
|
|
59
|
+
const config = composeDeclaredExecutionLane(loadConfig(), { info: () => { } }, { name: "the s1 bench", runs: ALL_EXECUTION_LANES, declares: "none" });
|
|
55
60
|
assertServedModelRoute(config, { envTableIsPlaceholder: false });
|
|
56
61
|
const brain = createBrain(config, {});
|
|
57
62
|
const pricing = buildPricing(config.models);
|
|
@@ -119,7 +124,7 @@ async function transferWorkerTreeToGrader(worker, grader) {
|
|
|
119
124
|
if (ext.code !== 0 || !ext.out.includes("EXTRACTED="))
|
|
120
125
|
throw new Error(`s1 grader tar extract failed: ${ext.out.slice(-400)}`);
|
|
121
126
|
if (s1DebugGit())
|
|
122
|
-
|
|
127
|
+
writeLogText("stderr", `[S1_DEBUG_TAR] head=${head.slice(0, 8)} base=${base.slice(0, 8)} tarBytes=${buf.length} ${ext.out.slice(-60)}`);
|
|
123
128
|
return { head, base };
|
|
124
129
|
}
|
|
125
130
|
function oracleTaskFromTrap(trap) {
|
|
@@ -169,7 +174,7 @@ export function buildLiveDeps(rt, trap, seed, cellId) {
|
|
|
169
174
|
const task = { ...oracleTaskFromTrap(trap), ...(state.shas ? { deliveredShas: state.shas } : {}) };
|
|
170
175
|
const v = await runStandaloneOracle(grader, graderTransport(grader), worker, task);
|
|
171
176
|
if (s1DebugGit())
|
|
172
|
-
|
|
177
|
+
writeLogText("stderr", `[S1_DEBUG_ORACLE ${trap.id}] delivered=${v.delivered} tests=${v.hiddenTestsGreen} build=${v.buildPassed} inv=${v.invariantsOk} | raw=`, JSON.stringify(v.raw)?.slice(0, 700));
|
|
173
178
|
return v;
|
|
174
179
|
};
|
|
175
180
|
const deps = {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { writeLogText } from "../../observability/logger.js";
|
|
1
2
|
import { promises as fs } from "node:fs";
|
|
2
3
|
import path from "node:path";
|
|
3
4
|
import { AppendLog, Runner, InMemoryCheckpointStore } from "@sema-agent/core";
|
|
@@ -213,7 +214,7 @@ export function positiveIntArg(raw, def, flag) {
|
|
|
213
214
|
return def;
|
|
214
215
|
const n = Number(raw);
|
|
215
216
|
if (!Number.isInteger(n) || n < 1) {
|
|
216
|
-
|
|
217
|
+
writeLogText("stderr", `[s1 run-firm] ${flag} must be a positive integer, got: ${raw}`);
|
|
217
218
|
process.exit(2);
|
|
218
219
|
}
|
|
219
220
|
return n;
|
|
@@ -251,13 +252,13 @@ export async function main(argv = process.argv.slice(2)) {
|
|
|
251
252
|
setS1DebugGit(args.debugGit);
|
|
252
253
|
const liveRuntime = liveRuntimeConfigFromEnv();
|
|
253
254
|
if (!args.dryRun && !liveRuntime) {
|
|
254
|
-
|
|
255
|
+
writeLogText("stderr", "[s1 run-firm] LIVE path refused: E2B_API_KEY + DEEPSEEK_API_KEY are required (the brain gateway). " +
|
|
255
256
|
"Run with --dry-run for the deterministic loop, or export the keys for the owner's gated live run.");
|
|
256
257
|
process.exit(2);
|
|
257
258
|
return;
|
|
258
259
|
}
|
|
259
260
|
const modelId = liveRuntime?.modelId ?? "deepseek-v4-flash";
|
|
260
|
-
const log = (msg, meta) =>
|
|
261
|
+
const log = (msg, meta) => writeLogText("stderr", `[s1 run-firm] ${msg}`, meta ? JSON.stringify(meta) : "");
|
|
261
262
|
const result = await runFirm({
|
|
262
263
|
seeds: args.seeds,
|
|
263
264
|
cellTimeoutMs: args.cellTimeoutMs,
|
|
@@ -271,7 +272,7 @@ export async function main(argv = process.argv.slice(2)) {
|
|
|
271
272
|
...(args.dryRun ? { mockDepsFactory: dryRunMockFactory() } : { liveRuntime: liveRuntime }),
|
|
272
273
|
log,
|
|
273
274
|
});
|
|
274
|
-
|
|
275
|
+
writeLogText("stdout", JSON.stringify({
|
|
275
276
|
runId: args.runId,
|
|
276
277
|
mode: args.dryRun ? "dry-run" : "live",
|
|
277
278
|
ranThisPass: result.ranThisPass,
|
|
@@ -297,7 +298,7 @@ const isMain = (() => {
|
|
|
297
298
|
})();
|
|
298
299
|
if (isMain) {
|
|
299
300
|
void main().catch((e) => {
|
|
300
|
-
|
|
301
|
+
writeLogText("stderr", "[s1 run-firm] fatal:", e instanceof Error ? e.stack : String(e));
|
|
301
302
|
process.exit(1);
|
|
302
303
|
});
|
|
303
304
|
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/** 读监听地址要的那几格(取自配置的同名键)。 */
|
|
2
|
+
export interface BindHostConfig {
|
|
3
|
+
bindHost?: string;
|
|
4
|
+
/** 缝合审 M5:`bindHost` 的**来源**决定它算不算 operator 明示,见 {@link resolveBindHost}。 */
|
|
5
|
+
bindHostSource?: "BIND_HOST" | "HOST";
|
|
6
|
+
allowUnauthedWrites?: boolean;
|
|
7
|
+
authToken?: string;
|
|
8
|
+
authTokens?: Record<string, string>;
|
|
9
|
+
}
|
|
10
|
+
/** 这台部署配了任何一把 service 凭据吗(`SERVICE_AUTH_TOKEN` / `SERVICE_AUTH_TOKENS`)。 */
|
|
11
|
+
export declare function anyServiceCredential(config: Pick<BindHostConfig, "authToken" | "authTokens">): boolean;
|
|
12
|
+
/** 无鉴权写面(`ALLOW_UNAUTHED_WRITES`)+ 零凭据 ⇒ 起服把监听地址收窄到 loopback(见 {@link resolveBindHost})。 */
|
|
13
|
+
export declare function bindMustNarrow(config: Pick<BindHostConfig, "allowUnauthedWrites" | "authToken" | "authTokens">): boolean;
|
|
14
|
+
/**
|
|
15
|
+
* 这台进程的监听地址(绑址旋钮 + 无鉴权自收窄)。`undefined` = Node 缺省全接口。
|
|
16
|
+
* `BIND_HOST`(兼容 `HOST`)显式值恒生效;缺省:**无鉴权写面(`allowUnauthedWrites` 且零凭据)自动收窄到 127.0.0.1**,其余维持全接口。
|
|
17
|
+
*/
|
|
18
|
+
export declare function resolveBindHost(config: BindHostConfig): string | undefined;
|
|
19
|
+
/**
|
|
20
|
+
* 监听地址是不是**只在本机回环上**(别的主机连不上这个口)。`undefined`(Node 缺省全接口)、`0.0.0.0` / `::`(全接口)、任何别的地址或主机名 ⇒ 否。
|
|
21
|
+
* 认:IPv4 `127.0.0.0/8`、IPv6 `::1`、它们的 IPv4 映射拼法(经 {@link canonicalAddress} 折回点分 IPv4)、字面 `localhost`(大小写不敏感;
|
|
22
|
+
* 刻意不认 `*.localhost` 与别的主机名 —— 落不落在本机取决于系统解析器,不是这个值本身的事实)。
|
|
23
|
+
*/
|
|
24
|
+
export declare function listensLoopbackOnly(bindHost: string | undefined): boolean;
|
|
25
|
+
//# sourceMappingURL=bind-host.d.ts.map
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { isIP } from "node:net";
|
|
2
|
+
import { canonicalAddress } from "./net-address.js";
|
|
3
|
+
export function anyServiceCredential(config) {
|
|
4
|
+
return Boolean(config.authToken) || Object.keys(config.authTokens ?? {}).length > 0;
|
|
5
|
+
}
|
|
6
|
+
export function bindMustNarrow(config) {
|
|
7
|
+
return Boolean(config.allowUnauthedWrites) && !anyServiceCredential(config);
|
|
8
|
+
}
|
|
9
|
+
export function resolveBindHost(config) {
|
|
10
|
+
const mustNarrow = bindMustNarrow(config);
|
|
11
|
+
if (config.bindHost && !(mustNarrow && config.bindHostSource === "HOST"))
|
|
12
|
+
return config.bindHost;
|
|
13
|
+
return mustNarrow ? "127.0.0.1" : undefined;
|
|
14
|
+
}
|
|
15
|
+
export function listensLoopbackOnly(bindHost) {
|
|
16
|
+
if (bindHost === undefined)
|
|
17
|
+
return false;
|
|
18
|
+
if (bindHost.toLowerCase() === "localhost")
|
|
19
|
+
return true;
|
|
20
|
+
const address = canonicalAddress(bindHost);
|
|
21
|
+
if (address === undefined)
|
|
22
|
+
return false;
|
|
23
|
+
return isIP(address) === 4 ? address.startsWith("127.") : address === "::1";
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=bind-host.js.map
|
package/dist/boot/adoption.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
import type { AdoptionWiring } from "../adoption/plan.js";
|
|
1
2
|
import type { StoreBackend } from "../plugins/store-backend.js";
|
|
2
3
|
export interface AdoptionBootCtx {
|
|
3
4
|
backend: StoreBackend | undefined;
|
|
5
|
+
/** 可选存储面的接线事实(必填、无默认值;与 `POST /v1/adoption` 路由读的是同一对 boot 事实,见 {@link AdoptionWiring})。 */
|
|
6
|
+
wiring: AdoptionWiring;
|
|
4
7
|
logger: {
|
|
5
8
|
info?(msg: string, meta?: unknown): void;
|
|
6
9
|
warn?(msg: string, meta?: unknown): void;
|
package/dist/boot/adoption.js
CHANGED
package/dist/boot/crash-last.js
CHANGED
|
@@ -2,6 +2,7 @@ import { existsSync, readFileSync, unlinkSync, writeFileSync } from "node:fs";
|
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
import { redactSecrets } from "../trace/redact.js";
|
|
5
|
+
import { OWNER_ONLY_FILE_MODE } from "../plugins/owner-only-file-mode.js";
|
|
5
6
|
const CrashLastSchema = z.object({
|
|
6
7
|
at: z.string(),
|
|
7
8
|
version: z.string(),
|
|
@@ -25,7 +26,7 @@ export function writeCrashLast(dataRoot, info) {
|
|
|
25
26
|
...(info.inflight !== undefined ? { inflight: info.inflight } : {}),
|
|
26
27
|
err: redactSecrets(firstLine),
|
|
27
28
|
};
|
|
28
|
-
writeFileSync(crashLastPath(dataRoot), JSON.stringify(body) + "\n");
|
|
29
|
+
writeFileSync(crashLastPath(dataRoot), JSON.stringify(body) + "\n", { mode: OWNER_ONLY_FILE_MODE });
|
|
29
30
|
}
|
|
30
31
|
catch {
|
|
31
32
|
}
|
|
@@ -44,7 +44,7 @@ export interface LoadedModPackage {
|
|
|
44
44
|
export interface DeploymentModsAssembly {
|
|
45
45
|
readonly registrations: readonly ModRegistration<EngineDollar>[];
|
|
46
46
|
readonly loaded: readonly LoadedModPackage[];
|
|
47
|
-
/** 部署座在**任务座之下**挂了链成员(不是观察者)的站点式样 —— 引擎这一次准入的记录读出({@link belowTaskChainPatternsOf})。读者:请求 `settings.hooks`
|
|
47
|
+
/** 部署座在**任务座之下**挂了链成员(不是观察者)的站点式样 —— 引擎这一次准入的记录读出({@link belowTaskChainPatternsOf})。读者:请求 `settings.hooks` 两条车道的只许收紧判据(`hooks/hook-runner.ts` 的 `chainsBelowTaskOn` 一处)。 */
|
|
48
48
|
readonly belowTaskChainPatterns: readonly string[];
|
|
49
49
|
}
|
|
50
50
|
/**
|
package/dist/boot/device-lane.js
CHANGED
|
@@ -10,7 +10,7 @@ export function createDeviceLane(ctx) {
|
|
|
10
10
|
throw new Error("device lane: the device store is wired but the session store carries no execution placement seat — the session↔device binding lives on the " +
|
|
11
11
|
"root session row and is read only through that seat; refusing to start a device lane that could neither bind nor read a binding (assembly bug)");
|
|
12
12
|
}
|
|
13
|
-
const knobs = config.remoteExec
|
|
13
|
+
const knobs = config.remoteExec.provider === "device" ? config.remoteExec : undefined;
|
|
14
14
|
const enrollment = createDeviceEnrollment({
|
|
15
15
|
store,
|
|
16
16
|
seat,
|
|
@@ -48,14 +48,14 @@ export function assertDeviceLaneWired(isDeviceLane, lane, hasFactory) {
|
|
|
48
48
|
if (!lane) {
|
|
49
49
|
throw new Error("REMOTE_EXEC=device but the device lane could not be wired at boot [device-lane-unwired]: the SQL backend is " +
|
|
50
50
|
"configured yet this replica did not get one, so the device registry / session↔device binding / audit tables are absent. " +
|
|
51
|
-
"Refusing to serve a lane that would silently fall back to the
|
|
51
|
+
"Refusing to serve a lane that would silently fall back to the engine's stub env with no hands mounted — a worker claiming to " +
|
|
52
52
|
"execute on the employee's device while actually running inside its own process (#157). Fix the database " +
|
|
53
|
-
"(or
|
|
53
|
+
"(or declare another lane, e.g. REMOTE_EXEC=none) and restart (device-executor-lane-v2 §4.7)");
|
|
54
54
|
}
|
|
55
55
|
if (!hasFactory) {
|
|
56
56
|
throw new Error("REMOTE_EXEC=device but no DeviceExecutionEnv factory was built [device-lane-unwired]: the lane's stores are up " +
|
|
57
|
-
"yet `boot/execution-env.ts` produced no factory, so core would fall back to
|
|
58
|
-
"an assembly bug, not a configuration one — refusing to start rather than silently
|
|
57
|
+
"yet `boot/execution-env.ts` produced no factory, so core would fall back to its stub env with no hands mounted. This is " +
|
|
58
|
+
"an assembly bug, not a configuration one — refusing to start rather than silently run with no execution environment (#157)");
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
export async function noteDeviceRelayBindings(relay, store, logger) {
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
* `ENGINE_AUTO_EXIT` / `SEMA_PARENT_PID` 的表态上。
|
|
29
29
|
* 2. **自退判据 = 三合取,且必须持续满 `linger`**(`linger` = 孤儿态 `orphan.lingerMs`,否则 `lingerMs`):
|
|
30
30
|
* · 附着租约集空(`attachedStreams() === 0`);
|
|
31
|
-
* · 无必须等完的活(`inflight() === 0` —— 读 `drainState.blockingInflight` = **阻断集** `http + leader`,与排空等的、SIGHUP 空闲窗**同一只**,不另立第二判据;
|
|
32
|
-
* `/health.inflight` 是它再加会话驻留的后台 shell / monitor
|
|
31
|
+
* · 无必须等完的活(`inflight() === 0` —— 读 `drainState.blockingInflight` = **阻断集** `http + leader + backgroundAgents`,与排空等的、SIGHUP 空闲窗**同一只**,不另立第二判据;
|
|
32
|
+
* `/health.inflight` 是它再加会话驻留的后台 shell / monitor 的**总数**:同一只分项函数 `/health.inflightBreakdown` 派生的两个事实,不是两套计数,见下「已知收窄」);
|
|
33
33
|
* · HTTP 触点静默(`now() - lastActivityAt() >= lingerMs`),**且**最后一条附着流的**离场**
|
|
34
34
|
* 也已满窗(`now() - lastAttachEndedAt() >= lingerMs` —— codex R1-F1,见该 dep 的注)。
|
|
35
35
|
* 任何一条不满足即把计时清零(连续性判据,不是累计)。
|
|
@@ -67,17 +67,18 @@
|
|
|
67
67
|
* 每 15s 无限期跑下去的定时器 —— 为它引入周期性 SQL 轮询,代价压过收益。**bg run 在跑不退**那一臂
|
|
68
68
|
* 已由 `inflight()` 结构性守住;parked 行是 durable 的,引擎退掉不丢:下次起来仍可赎回(spawn 形里
|
|
69
69
|
* 「下次」就是壳的下一次 spawn)。伤害面 = 一条 parked run 的赎回被推迟到下次启动,不是丢失。
|
|
70
|
-
* 这是**允许的收窄,不是静默**:有了廉价 parked 计数口(或本腿改成事件驱动)
|
|
71
|
-
* · **会话驻留的后台 shell / monitor
|
|
72
|
-
*
|
|
70
|
+
* 这是**允许的收窄,不是静默**:有了廉价 parked 计数口(或本腿改成事件驱动)之后应当补上。停驻的后台子代理(任务表 `parked`)同一条律、同样不计。
|
|
71
|
+
* · **会话驻留的后台 shell / monitor 不入判据**。阻断集 `http + leader + backgroundAgents` 是「还有没有**必须等完**的活」:HTTP 腿(在飞 run 集 · 同步计费腿 ·
|
|
72
|
+
* admission 期请求)、leader 腿,以及活过起它的那条 HTTP 腿、仍在跑的后台子代理(core `backgroundScope:"session"`;它是一条在干活的模型腿,干完自己收尾,不等它 = 受控退把它中断)。
|
|
73
73
|
* 会话驻留的后台 shell / monitor(`session-resident-background.ts` 读;running ∧ 会话驻留 ∧ 非 retain)**报**在 `/health.inflight`(总数)与
|
|
74
74
|
* `inflightBreakdown.sessionResident` 里 —— 外部判官据此判「这台引擎此刻托管着多少活」—— 但**不阻断**自退:它不是一条腿,等它没有意义,而一只不退出的 shell
|
|
75
75
|
* (`while true`)若阻断,崩溃孤儿引擎就永生(孤儿窗 / SIGHUP 空闲窗同读阻断集,排空也每次等满窗)。窗到 / 排空完成,退出边界的后台收割
|
|
76
76
|
* (`reapAllSessionBackground` + 硬面,`boot/exit-boundary.ts`)收掉它们;retain 行按 retain 既有语义活过受控退。伤害面 = 壳没了且没人附着时,引擎照退、
|
|
77
|
-
* 驻留的进程随受控退被收掉(与 7.145.x
|
|
78
|
-
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
77
|
+
* 驻留的进程随受控退被收掉(与 7.145.x 逐字同,只把它报出来)。
|
|
78
|
+
* · **活过起它的腿的 workflow 不入判据**:任务表对它只投 `running`,一条腿停在审批门上等人时也是 `running`,读法分不出「在干活」与「在等人」;
|
|
79
|
+
* 等人的活若阻断,一张没人答的审批就让崩溃孤儿引擎永生(同上一条的病)。伤害面 = 壳没了且没人附着时,一条还在干活的 workflow 随受控退被收掉
|
|
80
|
+
* (与 7.146.x 同)。停驻位由 core 任务表投出后按停驻律分(见 `session-resident-background.ts` 头注)。
|
|
81
|
+
* (修前后台子代理也在这一条里:它们活过生它的 HTTP 腿之后在本腿眼里是 0,受控退把还在跑的子代理中断 —— 7.147.0 起收进阻断集,这条收窄只剩上面两类。)
|
|
81
82
|
* · **`/health` 探针不算触点**:`lastActivityAt` 的属主(`http/server.ts` 的 `noteActivity`)按既有契约
|
|
82
83
|
* 把 `/health` 与 `/metrics*` 排除在活性时钟之外(常态采样噪音不得把空闲窗永远撑开)。⇒ 一只**只**
|
|
83
84
|
* 轮询 `/health` 的壳不构成租约。这与 SIGHUP 空闲窗的判据同源,刻意保持一致而非在本腿另开一份。
|
|
@@ -278,7 +279,7 @@ export interface EngineLeaseFirstAttachFacts {
|
|
|
278
279
|
* [ref] —— 交接格(`GET /health` 的 `engineLease.handover`;交接口 200 体 = 其中 `since` / `lingerMs` / `backgroundShells` 三键加 `lane`)。
|
|
279
280
|
* · `since` = 进入交接车道的时刻(epoch ms,与首窗格同一只单调钟投影);幂等的再次交接回同一个值。
|
|
280
281
|
* · `lingerMs` = 交接窗;`backgroundShells` = 退出边界此刻会硬收的后台 shell 行数(现读)。窗只在它为 0、阻断集在飞为 0、且无附着与触点时起算。
|
|
281
|
-
* · 不带在飞数:阻断集在同一份 `/health` 里已由 `inflightBreakdown.http + leader` 读出(一个事实一处读);交接口 200 体若带它,读到的恒含这次请求自己。
|
|
282
|
+
* · 不带在飞数:阻断集在同一份 `/health` 里已由 `inflightBreakdown.http + leader + backgroundAgents` 读出(一个事实一处读);交接口 200 体若带它,读到的恒含这次请求自己。
|
|
282
283
|
*/
|
|
283
284
|
export interface EngineHandoverFacts {
|
|
284
285
|
readonly since: number;
|
|
@@ -321,7 +322,7 @@ export interface EngineLeaseHandle {
|
|
|
321
322
|
export interface EngineLeaseDeps {
|
|
322
323
|
/** 活附着数 = 本副本当前**打开着的 SSE 流**条数(`drainState.attachedStreams`,由 `createHttpServer` 自赋)。 */
|
|
323
324
|
attachedStreams: () => number;
|
|
324
|
-
/** 必须等完的活的数 —— **阻断集** `drainState.blockingInflight`(`http + leader`;与排空等的、SIGHUP 空闲窗同一只 getter。会话驻留的后台 shell / monitor 在
|
|
325
|
+
/** 必须等完的活的数 —— **阻断集** `drainState.blockingInflight`(`http + leader + backgroundAgents`;与排空等的、SIGHUP 空闲窗同一只 getter。会话驻留的后台 shell / monitor 在
|
|
325
326
|
* `/health.inflight` 的总数里、不在这里,见顶注「已知收窄」)。不自建第二套计数:两套计数迟早分叉,而分叉的那一侧恰好是「以为没 run 了」就把引擎关掉。 */
|
|
326
327
|
inflight: () => number;
|
|
327
328
|
/** 最后一次**非探针** HTTP 触点的单调时刻(`drainState.lastActivityAt`)。
|
|
@@ -12,14 +12,16 @@ import { type RemoteContainerEnvDeps } from "../plugins/remote-env-e2b.js";
|
|
|
12
12
|
import { type WorkspaceFillOf } from "../plugins/workspace-fill.js";
|
|
13
13
|
import { k8sExecutionEnvFactory, type K8sEnvConfig, type K8sEnvDeps, type SandboxSecretSeat } from "../plugins/remote-env-k8s.js";
|
|
14
14
|
import { type SandboxGitPlaneSeat, type SandboxGitRunRows } from "../sandbox-git-plane.js";
|
|
15
|
-
import {
|
|
15
|
+
import type { SandboxReaper } from "../plugins/sandbox-reaper.js";
|
|
16
16
|
import { type SpaceCommitRows } from "../workspace-space-commit.js";
|
|
17
17
|
import { type LocalDockerEnvDeps } from "../plugins/remote-env-local-docker.js";
|
|
18
|
+
import { type LocalDockerCapacity } from "../plugins/local-docker-capacity.js";
|
|
18
19
|
import * as facts from "../capability-facts.js";
|
|
19
20
|
import { type TaskAttachmentStore } from "../plugins/task-attachment-store.js";
|
|
20
21
|
import type { TaskInheritEnv } from "../request-value-closure.js";
|
|
21
22
|
import { type HeadRead } from "../session-incarnation.js";
|
|
22
23
|
import type { SpaceReclaimer } from "../workspace-space.js";
|
|
24
|
+
import { type SessionResidentCounts } from "../session-resident-background.js";
|
|
23
25
|
/**
|
|
24
26
|
* per-session 的 **cwd / shellEnv 登记簿**(TOC cwd seam + R-survey shellEnv seam)+ 它们的**租户围栏**。
|
|
25
27
|
*
|
|
@@ -59,10 +61,15 @@ export interface SessionScopedRegistries {
|
|
|
59
61
|
* (core 的访问元组要带 scope,没有进程总数的读口),读的就是这一张 —— 每次提交写一笔、`dropSession` 清一笔、LRU 有界,不另立第二张会话名册。 */
|
|
60
62
|
readonly sessionOwners: ReadonlyMap<string, string | null>;
|
|
61
63
|
/** 记录/对拍本会话的主人。与上次不同 ⇒ **先清两张表**再记新主(换主即清)。`null` = 匿名会话,
|
|
62
|
-
* 它同样是一个**稳定**的身份值(不是「未知」),所以匿名重入不会被判成换主。
|
|
63
|
-
|
|
64
|
+
* 它同样是一个**稳定**的身份值(不是「未知」),所以匿名重入不会被判成换主。
|
|
65
|
+
* `incarnation` = 这次提交的授权口读到的那一位住客(会话行上的化身;读不出 ⇒ 缺):与上次记下的那一位不同 ⇒ 同样先清(同一个 id 上换了住客 ——
|
|
66
|
+
* 删了重建、被拒提交铸下的会话撤回之后重登记 —— 同属主也不接上一位住客的东西);缺 ⇒ 记成「不知道是哪一位」,不因它清。 */
|
|
67
|
+
fenceSessionOwner(sid: string, owner: string | null, incarnation?: string): void;
|
|
64
68
|
/** 会话删除:两张表 + 身份记录一起清(留着身份记录会让同 id 的下一位与一个幽灵身份比对成「同主」)。 */
|
|
65
69
|
dropSession(sid: string): void;
|
|
70
|
+
/** 只清**这一位住客**的条目:记下的住客恰是 `incarnation` ⇒ 同 {@link dropSession}、答 `true`;否则(换了住客 / 不知道是哪一位 / 没有条目)一笔不动、答 `false`。
|
|
71
|
+
* 撤回出口在撤回事务落定之后调 —— 那一刻同 id 的下一位可能已经登记、围栏、写下了它自己的条目。 */
|
|
72
|
+
dropSessionOf(sid: string, incarnation: string): boolean;
|
|
66
73
|
}
|
|
67
74
|
export declare function createSessionScopedRegistries(maxEntries?: number): SessionScopedRegistries;
|
|
68
75
|
/**
|
|
@@ -158,11 +165,13 @@ export interface ExecutionEnvCtx {
|
|
|
158
165
|
/** run 店的按 id 读(成员凭据代理座读 run 行上受理时记下的身份元组 `RunRecord.identity`)。取值闭包:run 店第 7 段才绑(`late-binds.ts`),
|
|
159
166
|
* 平面开着时每个 run 的 pod 建起前求值一次。不传 / 答 `undefined`(没有存储后端)⇒ 读不到身份 ⇒ 不挂代理。 */
|
|
160
167
|
runRows?: () => SandboxGitRunRows | undefined;
|
|
161
|
-
/** 隔离车道三只适配器自己的测试缝(假 e2b SDK / 假集群 / 假 docker CLI),原样交给各自的工厂 —— 与 `K8sEnvDeps` 同一条律:生产装配不传。
|
|
168
|
+
/** 隔离车道三只适配器自己的测试缝(假 e2b SDK / 假集群 / 假 docker CLI),原样交给各自的工厂 —— 与 `K8sEnvDeps` 同一条律:生产装配不传。
|
|
169
|
+
* `localDockerReapNow` = local-docker 无主容器回收器的钟缝(保持窗从 run 行转终态那一拍起算;测试把「现在」拨过窗)。 */
|
|
162
170
|
laneDeps?: {
|
|
163
171
|
readonly e2b?: RemoteContainerEnvDeps;
|
|
164
172
|
readonly k8s?: K8sEnvDeps;
|
|
165
173
|
readonly localDocker?: LocalDockerEnvDeps;
|
|
174
|
+
readonly localDockerReapNow?: () => number;
|
|
166
175
|
};
|
|
167
176
|
}
|
|
168
177
|
export declare function createExecutionEnv(ctx: ExecutionEnvCtx): {
|
|
@@ -172,16 +181,18 @@ export declare function createExecutionEnv(ctx: ExecutionEnvCtx): {
|
|
|
172
181
|
setSessionCwd: (sid: string, cwd: string) => void;
|
|
173
182
|
setSessionShellEnv: (sid: string, env: Record<string, string>) => void;
|
|
174
183
|
setSessionInheritEnv: (sid: string, policy: TaskInheritEnv | undefined) => void;
|
|
175
|
-
fenceSessionOwner: (sid: string, owner: string | null) => void;
|
|
184
|
+
fenceSessionOwner: (sid: string, owner: string | null, incarnation?: string) => void;
|
|
176
185
|
dropSessionScoped: (sid: string) => void;
|
|
177
|
-
|
|
186
|
+
dropSessionScopedOf: (sid: string, incarnation: string) => boolean;
|
|
187
|
+
sessionResidentBackground: () => SessionResidentCounts;
|
|
178
188
|
executionEnvFactory: import("@sema-agent/core").ExecutionEnvFactory | undefined;
|
|
179
189
|
worktreeReap: (() => Promise<void>) | undefined;
|
|
180
190
|
sendUserFileTaskEnvs: TaskEnvRegistry | undefined;
|
|
181
|
-
lspManager: import("@sema-agent/core").NodeLspManager |
|
|
191
|
+
lspManager: import("@sema-agent/core").NodeLspManager | undefined;
|
|
182
192
|
spaceReclaimer: SpaceReclaimer | undefined;
|
|
183
193
|
sandboxSecretSeatGate: (() => Promise<void>) | undefined;
|
|
184
|
-
|
|
194
|
+
sandboxReaper: SandboxReaper | undefined;
|
|
185
195
|
sandboxGitPlane: SandboxGitPlaneSeat;
|
|
196
|
+
sandboxCapacity: LocalDockerCapacity | undefined;
|
|
186
197
|
};
|
|
187
198
|
//# sourceMappingURL=execution-env.d.ts.map
|