@openrig/cli 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/daemon/assets/plugins/openrig-core/.claude-plugin/plugin.json +15 -0
- package/daemon/assets/plugins/openrig-core/.codex-plugin/plugin.json +24 -0
- package/daemon/assets/plugins/openrig-core/LICENSE +200 -0
- package/daemon/assets/plugins/openrig-core/README.md +42 -0
- package/daemon/assets/plugins/openrig-core/hooks/claude.json +78 -0
- package/daemon/assets/plugins/openrig-core/hooks/codex.json +37 -0
- package/daemon/assets/{openrig-activity-hook-relay.cjs → plugins/openrig-core/hooks/scripts/activity-relay.cjs} +12 -0
- package/daemon/assets/plugins/openrig-core/hooks/scripts/compaction-restore-bridge.cjs +172 -0
- package/daemon/assets/plugins/openrig-core/skills/agent-startup-and-context-ingestion/SKILL.md +104 -0
- package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/SKILL.md +131 -0
- package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/precompact-hook.mjs +174 -0
- package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/restore-from-jsonl.mjs +433 -0
- package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/templates/compact-instruction.md +1 -0
- package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/templates/post-compact-restore-instruction.md +1 -0
- package/daemon/assets/plugins/openrig-core/skills/forming-an-openrig-mental-model/SKILL.md +305 -0
- package/daemon/{specs/agents/shared/skills/rig-architect → assets/plugins/openrig-core/skills/openrig-architect}/SKILL.md +38 -19
- package/daemon/assets/plugins/openrig-core/skills/openrig-operator/SKILL.md +222 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +597 -0
- package/daemon/assets/plugins/openrig-core/skills/queue-handoff/SKILL.md +122 -0
- package/daemon/assets/plugins/openrig-core/skills/seat-continuity-and-handover/SKILL.md +137 -0
- package/daemon/assets/vm-preview-fixtures/README.md +48 -0
- package/daemon/assets/vm-preview-fixtures/workflows/sample-basic-loop.yaml +79 -0
- package/daemon/dist/adapters/claude-code-adapter.d.ts +1 -3
- package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
- package/daemon/dist/adapters/claude-code-adapter.js +17 -57
- package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
- package/daemon/dist/adapters/cmux-transport.d.ts.map +1 -1
- package/daemon/dist/adapters/cmux-transport.js +81 -2
- package/daemon/dist/adapters/cmux-transport.js.map +1 -1
- package/daemon/dist/adapters/cmux.d.ts +4 -0
- package/daemon/dist/adapters/cmux.d.ts.map +1 -1
- package/daemon/dist/adapters/cmux.js +87 -0
- package/daemon/dist/adapters/cmux.js.map +1 -1
- package/daemon/dist/adapters/codex-runtime-adapter.d.ts +14 -3
- package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
- package/daemon/dist/adapters/codex-runtime-adapter.js +43 -57
- package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
- package/daemon/dist/db/migrations/040_workflow_specs_diagnostic.d.ts +32 -0
- package/daemon/dist/db/migrations/040_workflow_specs_diagnostic.d.ts.map +1 -0
- package/daemon/dist/db/migrations/040_workflow_specs_diagnostic.js +37 -0
- package/daemon/dist/db/migrations/040_workflow_specs_diagnostic.js.map +1 -0
- package/daemon/dist/domain/agent-manifest.d.ts.map +1 -1
- package/daemon/dist/domain/agent-manifest.js +116 -37
- package/daemon/dist/domain/agent-manifest.js.map +1 -1
- package/daemon/dist/domain/agent-resolver.js +1 -1
- package/daemon/dist/domain/agent-resolver.js.map +1 -1
- package/daemon/dist/domain/claude-compaction-enforcer.d.ts +81 -0
- package/daemon/dist/domain/claude-compaction-enforcer.d.ts.map +1 -0
- package/daemon/dist/domain/claude-compaction-enforcer.js +242 -0
- package/daemon/dist/domain/claude-compaction-enforcer.js.map +1 -0
- package/daemon/dist/domain/cmux-layout-service.d.ts +41 -0
- package/daemon/dist/domain/cmux-layout-service.d.ts.map +1 -0
- package/daemon/dist/domain/cmux-layout-service.js +184 -0
- package/daemon/dist/domain/cmux-layout-service.js.map +1 -0
- package/daemon/dist/domain/context-monitor.d.ts +15 -1
- package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
- package/daemon/dist/domain/context-monitor.js +38 -3
- package/daemon/dist/domain/context-monitor.js.map +1 -1
- package/daemon/dist/domain/kernel-boot-tracker.d.ts +74 -0
- package/daemon/dist/domain/kernel-boot-tracker.d.ts.map +1 -0
- package/daemon/dist/domain/kernel-boot-tracker.js +213 -0
- package/daemon/dist/domain/kernel-boot-tracker.js.map +1 -0
- package/daemon/dist/domain/kernel-boot.d.ts +50 -0
- package/daemon/dist/domain/kernel-boot.d.ts.map +1 -0
- package/daemon/dist/domain/kernel-boot.js +147 -0
- package/daemon/dist/domain/kernel-boot.js.map +1 -0
- package/daemon/dist/domain/mission-control/mission-control-read-layer.d.ts +5 -0
- package/daemon/dist/domain/mission-control/mission-control-read-layer.d.ts.map +1 -1
- package/daemon/dist/domain/mission-control/mission-control-read-layer.js +16 -2
- package/daemon/dist/domain/mission-control/mission-control-read-layer.js.map +1 -1
- package/daemon/dist/domain/mission-control/mission-control-write-contract.d.ts.map +1 -1
- package/daemon/dist/domain/mission-control/mission-control-write-contract.js +3 -1
- package/daemon/dist/domain/mission-control/mission-control-write-contract.js.map +1 -1
- package/daemon/dist/domain/plugin-discovery-service.d.ts +150 -0
- package/daemon/dist/domain/plugin-discovery-service.d.ts.map +1 -0
- package/daemon/dist/domain/plugin-discovery-service.js +468 -0
- package/daemon/dist/domain/plugin-discovery-service.js.map +1 -0
- package/daemon/dist/domain/plugin-vendor-service.d.ts +54 -0
- package/daemon/dist/domain/plugin-vendor-service.d.ts.map +1 -0
- package/daemon/dist/domain/plugin-vendor-service.js +111 -0
- package/daemon/dist/domain/plugin-vendor-service.js.map +1 -0
- package/daemon/dist/domain/profile-resolver.d.ts +3 -3
- package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
- package/daemon/dist/domain/profile-resolver.js +7 -7
- package/daemon/dist/domain/profile-resolver.js.map +1 -1
- package/daemon/dist/domain/projection-planner.d.ts +7 -1
- package/daemon/dist/domain/projection-planner.d.ts.map +1 -1
- package/daemon/dist/domain/projection-planner.js +44 -4
- package/daemon/dist/domain/projection-planner.js.map +1 -1
- package/daemon/dist/domain/queue-repository.d.ts +8 -1
- package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
- package/daemon/dist/domain/queue-repository.js +14 -5
- package/daemon/dist/domain/queue-repository.js.map +1 -1
- package/daemon/dist/domain/session-transport.d.ts.map +1 -1
- package/daemon/dist/domain/session-transport.js +33 -0
- package/daemon/dist/domain/session-transport.js.map +1 -1
- package/daemon/dist/domain/skill-library-discovery.d.ts +68 -0
- package/daemon/dist/domain/skill-library-discovery.d.ts.map +1 -0
- package/daemon/dist/domain/skill-library-discovery.js +144 -0
- package/daemon/dist/domain/skill-library-discovery.js.map +1 -0
- package/daemon/dist/domain/slices/slice-indexer.d.ts +19 -0
- package/daemon/dist/domain/slices/slice-indexer.d.ts.map +1 -1
- package/daemon/dist/domain/slices/slice-indexer.js +88 -6
- package/daemon/dist/domain/slices/slice-indexer.js.map +1 -1
- package/daemon/dist/domain/spec-library-service.d.ts +6 -0
- package/daemon/dist/domain/spec-library-service.d.ts.map +1 -1
- package/daemon/dist/domain/spec-library-service.js.map +1 -1
- package/daemon/dist/domain/spec-library-workflow-scanner.d.ts +43 -0
- package/daemon/dist/domain/spec-library-workflow-scanner.d.ts.map +1 -1
- package/daemon/dist/domain/spec-library-workflow-scanner.js +157 -3
- package/daemon/dist/domain/spec-library-workflow-scanner.js.map +1 -1
- package/daemon/dist/domain/spec-review-service.d.ts +1 -1
- package/daemon/dist/domain/spec-review-service.d.ts.map +1 -1
- package/daemon/dist/domain/spec-review-service.js +14 -1
- package/daemon/dist/domain/spec-review-service.js.map +1 -1
- package/daemon/dist/domain/types.d.ts +27 -7
- package/daemon/dist/domain/types.d.ts.map +1 -1
- package/daemon/dist/domain/types.js.map +1 -1
- package/daemon/dist/domain/user-settings/settings-store.d.ts +25 -1
- package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
- package/daemon/dist/domain/user-settings/settings-store.js +186 -4
- package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
- package/daemon/dist/domain/workflow-spec-cache.d.ts +27 -0
- package/daemon/dist/domain/workflow-spec-cache.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-spec-cache.js +59 -0
- package/daemon/dist/domain/workflow-spec-cache.js.map +1 -1
- package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -1
- package/daemon/dist/domain/workspace/default-workspace-scaffold.js +45 -0
- package/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -1
- package/daemon/dist/domain/workspace/getting-started-narrative.d.ts +15 -0
- package/daemon/dist/domain/workspace/getting-started-narrative.d.ts.map +1 -0
- package/daemon/dist/domain/workspace/getting-started-narrative.js +237 -0
- package/daemon/dist/domain/workspace/getting-started-narrative.js.map +1 -0
- package/daemon/dist/index.d.ts +2 -1
- package/daemon/dist/index.d.ts.map +1 -1
- package/daemon/dist/index.js +52 -17
- package/daemon/dist/index.js.map +1 -1
- package/daemon/dist/lib/pane-envelope.d.ts +7 -0
- package/daemon/dist/lib/pane-envelope.d.ts.map +1 -0
- package/daemon/dist/lib/pane-envelope.js +38 -0
- package/daemon/dist/lib/pane-envelope.js.map +1 -0
- package/daemon/dist/middleware/auth-bearer-token.d.ts +47 -5
- package/daemon/dist/middleware/auth-bearer-token.d.ts.map +1 -1
- package/daemon/dist/middleware/auth-bearer-token.js +109 -8
- package/daemon/dist/middleware/auth-bearer-token.js.map +1 -1
- package/daemon/dist/routes/kernel-status.d.ts +3 -0
- package/daemon/dist/routes/kernel-status.d.ts.map +1 -0
- package/daemon/dist/routes/kernel-status.js +40 -0
- package/daemon/dist/routes/kernel-status.js.map +1 -0
- package/daemon/dist/routes/mission-control.d.ts.map +1 -1
- package/daemon/dist/routes/mission-control.js +25 -2
- package/daemon/dist/routes/mission-control.js.map +1 -1
- package/daemon/dist/routes/missions.d.ts +3 -0
- package/daemon/dist/routes/missions.d.ts.map +1 -0
- package/daemon/dist/routes/missions.js +195 -0
- package/daemon/dist/routes/missions.js.map +1 -0
- package/daemon/dist/routes/plugins.d.ts +3 -0
- package/daemon/dist/routes/plugins.d.ts.map +1 -0
- package/daemon/dist/routes/plugins.js +223 -0
- package/daemon/dist/routes/plugins.js.map +1 -0
- package/daemon/dist/routes/rig-cmux.d.ts +3 -0
- package/daemon/dist/routes/rig-cmux.d.ts.map +1 -0
- package/daemon/dist/routes/rig-cmux.js +121 -0
- package/daemon/dist/routes/rig-cmux.js.map +1 -0
- package/daemon/dist/routes/skills.d.ts +3 -0
- package/daemon/dist/routes/skills.d.ts.map +1 -0
- package/daemon/dist/routes/skills.js +147 -0
- package/daemon/dist/routes/skills.js.map +1 -0
- package/daemon/dist/routes/slices.d.ts.map +1 -1
- package/daemon/dist/routes/slices.js +15 -0
- package/daemon/dist/routes/slices.js.map +1 -1
- package/daemon/dist/routes/spec-library.d.ts.map +1 -1
- package/daemon/dist/routes/spec-library.js +16 -1
- package/daemon/dist/routes/spec-library.js.map +1 -1
- package/daemon/dist/server.d.ts +31 -0
- package/daemon/dist/server.d.ts.map +1 -1
- package/daemon/dist/server.js +30 -0
- package/daemon/dist/server.js.map +1 -1
- package/daemon/dist/startup.d.ts.map +1 -1
- package/daemon/dist/startup.js +194 -5
- package/daemon/dist/startup.js.map +1 -1
- package/daemon/specs/agents/apps/vault-specialist/agent.yaml +0 -1
- package/daemon/specs/agents/conveyor/builder/agent.yaml +0 -1
- package/daemon/specs/agents/conveyor/lead/agent.yaml +0 -1
- package/daemon/specs/agents/conveyor/planner/agent.yaml +0 -1
- package/daemon/specs/agents/conveyor/reviewer/agent.yaml +0 -1
- package/daemon/specs/agents/design/product-designer/agent.yaml +0 -1
- package/daemon/specs/agents/development/implementer/agent.yaml +0 -1
- package/daemon/specs/agents/development/qa/agent.yaml +0 -1
- package/daemon/specs/agents/development/qa/guidance/role.md +0 -2
- package/daemon/specs/agents/orchestration/orchestrator/agent.yaml +0 -1
- package/daemon/specs/agents/research/analyst/agent.yaml +0 -1
- package/daemon/specs/agents/research/synthesizer/agent.yaml +0 -1
- package/daemon/specs/agents/review/independent-reviewer/agent.yaml +0 -1
- package/daemon/specs/agents/shared/agent.yaml +6 -6
- package/daemon/specs/agents/shared/skills/core/openrig-architect/SKILL.md +361 -0
- package/daemon/specs/agents/shared/skills/core/openrig-installer/SKILL.md +142 -0
- package/daemon/specs/agents/shared/skills/core/openrig-user/SKILL.md +6 -1
- package/daemon/specs/agents/shared/skills/core/openrig-user-settings/SKILL.md +4 -4
- package/daemon/specs/agents/shared/skills/core/rig-lifecycle/SKILL.md +116 -0
- package/daemon/specs/agents/shared/skills/pods/development-team/SKILL.md +0 -1
- package/daemon/specs/agents/shared/skills/pods/orchestration-team/SKILL.md +2 -2
- package/daemon/specs/agents/shared/skills/process/agent-browser/LOCAL-INSIGHTS.md +6 -6
- package/daemon/specs/agents/shared/skills/process/agent-browser/OPENRIG.md +40 -0
- package/daemon/specs/agents/shared/skills/process/agent-browser/SKILL.md +10 -0
- package/daemon/specs/agents/shared/skills/process/brainstorming/OPENRIG.md +48 -0
- package/daemon/specs/agents/shared/skills/process/brainstorming/SKILL.md +11 -0
- package/daemon/specs/agents/shared/skills/process/dogfood/SKILL.md +5 -0
- package/daemon/specs/agents/shared/skills/process/executing-plans/OPENRIG.md +56 -0
- package/daemon/specs/agents/shared/skills/process/executing-plans/SKILL.md +10 -0
- package/daemon/specs/agents/shared/skills/process/frontend-design/SKILL.md +5 -0
- package/daemon/specs/agents/shared/skills/process/systematic-debugging/SKILL.md +5 -0
- package/daemon/specs/agents/shared/skills/process/test-driven-development/SKILL.md +5 -0
- package/daemon/specs/agents/shared/skills/process/using-superpowers/OPENRIG.md +48 -0
- package/daemon/specs/agents/shared/skills/process/using-superpowers/SKILL.md +11 -0
- package/daemon/specs/agents/shared/skills/process/verification-before-completion/SKILL.md +5 -0
- package/daemon/specs/agents/shared/skills/process/writing-plans/OPENRIG.md +52 -0
- package/daemon/specs/agents/shared/skills/process/writing-plans/SKILL.md +12 -2
- package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/agent.yaml +35 -0
- package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/guidance/role.md +50 -0
- package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/startup/context.md +37 -0
- package/daemon/specs/rigs/launch/kernel/agents/operator/agent/agent.yaml +35 -0
- package/daemon/specs/rigs/launch/kernel/agents/operator/agent/guidance/role.md +49 -0
- package/daemon/specs/rigs/launch/kernel/agents/operator/agent/startup/context.md +63 -0
- package/daemon/specs/rigs/launch/kernel/agents/queue/worker/agent.yaml +35 -0
- package/daemon/specs/rigs/launch/kernel/agents/queue/worker/guidance/role.md +33 -0
- package/daemon/specs/rigs/launch/kernel/agents/queue/worker/startup/context.md +30 -0
- package/daemon/specs/rigs/launch/kernel/culture/CULTURE.md +69 -0
- package/daemon/specs/rigs/launch/kernel/rig-claude-only.yaml +59 -0
- package/daemon/specs/rigs/launch/kernel/rig-codex-only.yaml +59 -0
- package/daemon/specs/rigs/launch/kernel/rig.yaml +69 -0
- package/dist/commands/config-init-workspace.d.ts.map +1 -1
- package/dist/commands/config-init-workspace.js +253 -0
- package/dist/commands/config-init-workspace.js.map +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +11 -3
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/daemon.d.ts.map +1 -1
- package/dist/commands/daemon.js +53 -1
- package/dist/commands/daemon.js.map +1 -1
- package/dist/commands/heartbeat.d.ts.map +1 -1
- package/dist/commands/heartbeat.js +0 -5
- package/dist/commands/heartbeat.js.map +1 -1
- package/dist/commands/plugin.d.ts +4 -0
- package/dist/commands/plugin.d.ts.map +1 -0
- package/dist/commands/plugin.js +395 -0
- package/dist/commands/plugin.js.map +1 -0
- package/dist/commands/send.d.ts +8 -0
- package/dist/commands/send.d.ts.map +1 -1
- package/dist/commands/send.js +8 -0
- package/dist/commands/send.js.map +1 -1
- package/dist/commands/up.d.ts.map +1 -1
- package/dist/commands/up.js +13 -1
- package/dist/commands/up.js.map +1 -1
- package/dist/config-store.d.ts +18 -1
- package/dist/config-store.d.ts.map +1 -1
- package/dist/config-store.js +167 -4
- package/dist/config-store.js.map +1 -1
- package/dist/daemon-lifecycle.d.ts +20 -1
- package/dist/daemon-lifecycle.d.ts.map +1 -1
- package/dist/daemon-lifecycle.js +57 -7
- package/dist/daemon-lifecycle.js.map +1 -1
- package/dist/host-registry.d.ts +1 -1
- package/dist/host-registry.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/ui/dist/assets/index-C_Q5FczU.css +1 -0
- package/ui/dist/assets/index-Rl3ZBrUg.js +547 -0
- package/ui/dist/index.html +2 -2
- package/daemon/specs/agents/shared/skills/claude-compact-in-place/SKILL.md +0 -100
- package/daemon/specs/agents/shared/skills/process/containerized-e2e/SKILL.md +0 -256
- package/daemon/specs/agents/shared/skills/process/containerized-e2e/scripts/Dockerfile +0 -39
- package/daemon/specs/agents/shared/skills/process/containerized-e2e/scripts/build-e2e-image.sh +0 -37
- package/daemon/specs/agents/shared/skills/process/containerized-e2e/templates/control-plane-test.yaml +0 -40
- package/daemon/specs/agents/shared/skills/process/containerized-e2e/templates/e2e-report-template.md +0 -94
- package/daemon/specs/agents/shared/skills/process/containerized-e2e/templates/expansion-collision-fragment.yaml +0 -13
- package/daemon/specs/agents/shared/skills/process/containerized-e2e/templates/expansion-pod-fragment.yaml +0 -14
- package/ui/dist/assets/index-BDHU1JUK.js +0 -412
- package/ui/dist/assets/index-DXTyJSqu.css +0 -1
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
// V0.3.1 slice 23 founder-walk-queue-handoff-envelope.
|
|
2
|
+
//
|
|
3
|
+
// Daemon-side renderer for the email-style envelope the recipient's
|
|
4
|
+
// tmux pane shows when a peer sends them a message (`rig send`) or
|
|
5
|
+
// when a queue handoff/create nudges them. Wrapping the body with
|
|
6
|
+
// From / To / --- / body / --- / ↩ Reply gives both a sender
|
|
7
|
+
// identity and a copy-pasteable reply hint.
|
|
8
|
+
//
|
|
9
|
+
// PARITY CONTRACT with CLI:
|
|
10
|
+
// `packages/cli/src/commands/send.ts :: wrapSendBody` must produce
|
|
11
|
+
// BYTE-IDENTICAL output for the same inputs. The two implementations
|
|
12
|
+
// live in separate packages because cli + daemon don't cross-import
|
|
13
|
+
// today; the contract is enforced via:
|
|
14
|
+
// 1. Identical function body (visual diff)
|
|
15
|
+
// 2. `packages/daemon/test/pane-envelope.test.ts` mirroring the
|
|
16
|
+
// assertions in `packages/cli/test/send-header.test.ts`
|
|
17
|
+
// 3. Live integration parity (HG-5): a queue handoff nudge and a
|
|
18
|
+
// rig send to the same destination render byte-identical
|
|
19
|
+
// output except for the body content
|
|
20
|
+
// If you update this function, update wrapSendBody in lockstep.
|
|
21
|
+
const SENDER_FALLBACK = "<unknown sender>";
|
|
22
|
+
/** Wrap a tmux-pane body with the canonical From/To envelope. The
|
|
23
|
+
* recipient pane sees both the sender's identity and a reply hint.
|
|
24
|
+
* Cross-host nudges should NOT double-wrap: the remote rig wraps
|
|
25
|
+
* when it processes the same command (matches `wrapSendBody`'s
|
|
26
|
+
* cross-host carve-out). */
|
|
27
|
+
export function wrapPaneEnvelope(sender, recipient, body) {
|
|
28
|
+
const senderLabel = sender && sender.trim().length > 0 ? sender : SENDER_FALLBACK;
|
|
29
|
+
return [
|
|
30
|
+
`From: ${senderLabel}`,
|
|
31
|
+
`To: ${recipient}`,
|
|
32
|
+
"---",
|
|
33
|
+
body,
|
|
34
|
+
"---",
|
|
35
|
+
`↩ Reply: rig send ${senderLabel} "..."`,
|
|
36
|
+
].join("\n");
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=pane-envelope.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pane-envelope.js","sourceRoot":"","sources":["../../src/lib/pane-envelope.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,EAAE;AACF,oEAAoE;AACpE,mEAAmE;AACnE,kEAAkE;AAClE,6DAA6D;AAC7D,4CAA4C;AAC5C,EAAE;AACF,4BAA4B;AAC5B,mEAAmE;AACnE,qEAAqE;AACrE,oEAAoE;AACpE,uCAAuC;AACvC,6CAA6C;AAC7C,kEAAkE;AAClE,6DAA6D;AAC7D,mEAAmE;AACnE,8DAA8D;AAC9D,0CAA0C;AAC1C,gEAAgE;AAEhE,MAAM,eAAe,GAAG,kBAAkB,CAAC;AAE3C;;;;6BAI6B;AAC7B,MAAM,UAAU,gBAAgB,CAC9B,MAA0B,EAC1B,SAAiB,EACjB,IAAY;IAEZ,MAAM,WAAW,GAAG,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC;IAClF,OAAO;QACL,SAAS,WAAW,EAAE;QACtB,OAAO,SAAS,EAAE;QAClB,KAAK;QACL,IAAI;QACJ,KAAK;QACL,qBAAqB,WAAW,QAAQ;KACzC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type NetworkInterfaceInfo } from "node:os";
|
|
1
2
|
import type { MiddlewareHandler } from "hono";
|
|
2
3
|
/**
|
|
3
4
|
* Constant-time string equality using Node's timingSafeEqual.
|
|
@@ -32,18 +33,59 @@ export declare function authBearerTokenMiddleware(opts: AuthBearerTokenOpts): Mi
|
|
|
32
33
|
* treated as non-loopback.
|
|
33
34
|
*/
|
|
34
35
|
export declare function isLoopbackBind(host: string | undefined | null): boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Detect tailscale CGNAT IPv4 (100.64.0.0/10) and ULA IPv6 prefix
|
|
38
|
+
* (fd7a:115c:a1e0::/48). Returns true for tailnet-literal IP addresses
|
|
39
|
+
* only; hostname callers must first resolve via {@link resolveToIpOrNull}.
|
|
40
|
+
*
|
|
41
|
+
* Rationale: tailscale's WireGuard mesh + ACLs ARE the auth boundary, so
|
|
42
|
+
* a tailnet-bound daemon does not need an additional bearer token. The
|
|
43
|
+
* CGNAT IPv4 range and ULA IPv6 prefix are reserved by tailscale and
|
|
44
|
+
* documented; collisions on real-world networks are essentially zero.
|
|
45
|
+
*
|
|
46
|
+
* Boundary semantics for HG-3: CGNAT is 100.64.0.0/10 → first octet
|
|
47
|
+
* exactly 100, second octet 64..127 inclusive. 100.63.x.x and
|
|
48
|
+
* 100.128.x.x are NOT tailnet.
|
|
49
|
+
*/
|
|
50
|
+
export declare function isTailscaleBind(host: string | undefined | null): boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Pure helper for {@link detectTailscaleInterface}: takes a NetworkInterfaces
|
|
53
|
+
* dictionary (the shape returned by os.networkInterfaces()) and returns the
|
|
54
|
+
* first non-internal address that matches the tailnet IP ranges, or null.
|
|
55
|
+
* Factored out so tests can supply synthetic interface fixtures without
|
|
56
|
+
* mocking node:os.
|
|
57
|
+
*/
|
|
58
|
+
export declare function findTailscaleIpInInterfaces(interfaces: NodeJS.Dict<NetworkInterfaceInfo[]>): string | null;
|
|
59
|
+
/**
|
|
60
|
+
* Probe the host's network interfaces and return the first tailscale-IP
|
|
61
|
+
* address found (CGNAT IPv4 or tailnet ULA IPv6), or null when no tailnet
|
|
62
|
+
* interface is currently active. Used at daemon startup to decide whether
|
|
63
|
+
* to multi-bind (loopback + tailnet) or loopback-only. Detection is
|
|
64
|
+
* IP-based, not interface-name-based, so it survives platform differences
|
|
65
|
+
* in how tailscale names its tun device.
|
|
66
|
+
*/
|
|
67
|
+
export declare function detectTailscaleInterface(): string | null;
|
|
68
|
+
/**
|
|
69
|
+
* Resolve a hostname to its first IP via node:dns/promises lookup.
|
|
70
|
+
* Returns null on resolution failure (DNS error, timeout, no such host).
|
|
71
|
+
* Wrapped with a 5s race-timeout per Risk 9.2 in the slice IMPL-PRD so an
|
|
72
|
+
* unresponsive resolver does not stall daemon startup indefinitely.
|
|
73
|
+
*/
|
|
74
|
+
export declare function resolveToIpOrNull(host: string): Promise<string | null>;
|
|
35
75
|
export declare class AuthBearerTokenStartupError extends Error {
|
|
36
76
|
constructor(message: string);
|
|
37
77
|
}
|
|
38
78
|
/**
|
|
39
79
|
* Startup-side check (HARD-GATE audit row 8). Throws an explicit
|
|
40
|
-
* AuthBearerTokenStartupError when the bind interface is
|
|
41
|
-
* AND the bearer token is empty.
|
|
42
|
-
*
|
|
43
|
-
*
|
|
80
|
+
* AuthBearerTokenStartupError when the bind interface is genuinely
|
|
81
|
+
* public/LAN AND the bearer token is empty. Loopback or tailscale-IP
|
|
82
|
+
* binds short-circuit (the tailnet is the auth boundary). Hostname
|
|
83
|
+
* binds resolve via DNS first; if resolution yields a loopback or
|
|
84
|
+
* tailnet IP, the same short-circuit applies. Public/LAN binds without
|
|
85
|
+
* a bearer throw and the daemon refuses to start.
|
|
44
86
|
*/
|
|
45
87
|
export declare function assertBindAuthInvariant(opts: {
|
|
46
88
|
host: string;
|
|
47
89
|
bearerToken: string | null;
|
|
48
|
-
}): void
|
|
90
|
+
}): Promise<void>;
|
|
49
91
|
//# sourceMappingURL=auth-bearer-token.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-bearer-token.d.ts","sourceRoot":"","sources":["../../src/middleware/auth-bearer-token.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth-bearer-token.d.ts","sourceRoot":"","sources":["../../src/middleware/auth-bearer-token.ts"],"names":[],"mappings":"AA0BA,OAAO,EAAqB,KAAK,oBAAoB,EAAE,MAAM,SAAS,CAAC;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,MAAM,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAe/D;AAwBD,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,mBAAmB,GACxB,iBAAiB,CAyBnB;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAWvE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAaxE;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,GAC9C,MAAM,GAAG,IAAI,CASf;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,GAAG,IAAI,CAExD;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAa5E;AAED,qBAAa,2BAA4B,SAAQ,KAAK;gBACxC,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;;;;GAQG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBhB"}
|
|
@@ -22,6 +22,8 @@
|
|
|
22
22
|
// integrity, not view confidentiality).
|
|
23
23
|
import { Buffer } from "node:buffer";
|
|
24
24
|
import { timingSafeEqual } from "node:crypto";
|
|
25
|
+
import { promises as dns } from "node:dns";
|
|
26
|
+
import { networkInterfaces } from "node:os";
|
|
25
27
|
/**
|
|
26
28
|
* Constant-time string equality using Node's timingSafeEqual.
|
|
27
29
|
* Returns false when lengths differ (timingSafeEqual throws on
|
|
@@ -110,6 +112,89 @@ export function isLoopbackBind(host) {
|
|
|
110
112
|
return true;
|
|
111
113
|
return false;
|
|
112
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* Detect tailscale CGNAT IPv4 (100.64.0.0/10) and ULA IPv6 prefix
|
|
117
|
+
* (fd7a:115c:a1e0::/48). Returns true for tailnet-literal IP addresses
|
|
118
|
+
* only; hostname callers must first resolve via {@link resolveToIpOrNull}.
|
|
119
|
+
*
|
|
120
|
+
* Rationale: tailscale's WireGuard mesh + ACLs ARE the auth boundary, so
|
|
121
|
+
* a tailnet-bound daemon does not need an additional bearer token. The
|
|
122
|
+
* CGNAT IPv4 range and ULA IPv6 prefix are reserved by tailscale and
|
|
123
|
+
* documented; collisions on real-world networks are essentially zero.
|
|
124
|
+
*
|
|
125
|
+
* Boundary semantics for HG-3: CGNAT is 100.64.0.0/10 → first octet
|
|
126
|
+
* exactly 100, second octet 64..127 inclusive. 100.63.x.x and
|
|
127
|
+
* 100.128.x.x are NOT tailnet.
|
|
128
|
+
*/
|
|
129
|
+
export function isTailscaleBind(host) {
|
|
130
|
+
if (!host)
|
|
131
|
+
return false;
|
|
132
|
+
const trimmed = host.trim().toLowerCase();
|
|
133
|
+
const ipv4Match = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/.exec(trimmed);
|
|
134
|
+
if (ipv4Match) {
|
|
135
|
+
const first = parseInt(ipv4Match[1], 10);
|
|
136
|
+
const second = parseInt(ipv4Match[2], 10);
|
|
137
|
+
if (first === 100 && second >= 64 && second <= 127)
|
|
138
|
+
return true;
|
|
139
|
+
return false;
|
|
140
|
+
}
|
|
141
|
+
const cleaned = trimmed.replace(/^\[|\]$/g, "");
|
|
142
|
+
if (cleaned.startsWith("fd7a:115c:a1e0:"))
|
|
143
|
+
return true;
|
|
144
|
+
return false;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Pure helper for {@link detectTailscaleInterface}: takes a NetworkInterfaces
|
|
148
|
+
* dictionary (the shape returned by os.networkInterfaces()) and returns the
|
|
149
|
+
* first non-internal address that matches the tailnet IP ranges, or null.
|
|
150
|
+
* Factored out so tests can supply synthetic interface fixtures without
|
|
151
|
+
* mocking node:os.
|
|
152
|
+
*/
|
|
153
|
+
export function findTailscaleIpInInterfaces(interfaces) {
|
|
154
|
+
for (const addrs of Object.values(interfaces)) {
|
|
155
|
+
if (!addrs)
|
|
156
|
+
continue;
|
|
157
|
+
for (const addr of addrs) {
|
|
158
|
+
if (addr.internal)
|
|
159
|
+
continue;
|
|
160
|
+
if (isTailscaleBind(addr.address))
|
|
161
|
+
return addr.address;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
return null;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Probe the host's network interfaces and return the first tailscale-IP
|
|
168
|
+
* address found (CGNAT IPv4 or tailnet ULA IPv6), or null when no tailnet
|
|
169
|
+
* interface is currently active. Used at daemon startup to decide whether
|
|
170
|
+
* to multi-bind (loopback + tailnet) or loopback-only. Detection is
|
|
171
|
+
* IP-based, not interface-name-based, so it survives platform differences
|
|
172
|
+
* in how tailscale names its tun device.
|
|
173
|
+
*/
|
|
174
|
+
export function detectTailscaleInterface() {
|
|
175
|
+
return findTailscaleIpInInterfaces(networkInterfaces());
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Resolve a hostname to its first IP via node:dns/promises lookup.
|
|
179
|
+
* Returns null on resolution failure (DNS error, timeout, no such host).
|
|
180
|
+
* Wrapped with a 5s race-timeout per Risk 9.2 in the slice IMPL-PRD so an
|
|
181
|
+
* unresponsive resolver does not stall daemon startup indefinitely.
|
|
182
|
+
*/
|
|
183
|
+
export async function resolveToIpOrNull(host) {
|
|
184
|
+
try {
|
|
185
|
+
const timeout = new Promise((resolve) => {
|
|
186
|
+
setTimeout(() => resolve(null), 5000).unref();
|
|
187
|
+
});
|
|
188
|
+
const lookup = dns
|
|
189
|
+
.lookup(host, { all: false })
|
|
190
|
+
.then((r) => r.address)
|
|
191
|
+
.catch(() => null);
|
|
192
|
+
return await Promise.race([lookup, timeout]);
|
|
193
|
+
}
|
|
194
|
+
catch {
|
|
195
|
+
return null;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
113
198
|
export class AuthBearerTokenStartupError extends Error {
|
|
114
199
|
constructor(message) {
|
|
115
200
|
super(message);
|
|
@@ -118,18 +203,34 @@ export class AuthBearerTokenStartupError extends Error {
|
|
|
118
203
|
}
|
|
119
204
|
/**
|
|
120
205
|
* Startup-side check (HARD-GATE audit row 8). Throws an explicit
|
|
121
|
-
* AuthBearerTokenStartupError when the bind interface is
|
|
122
|
-
* AND the bearer token is empty.
|
|
123
|
-
*
|
|
124
|
-
*
|
|
206
|
+
* AuthBearerTokenStartupError when the bind interface is genuinely
|
|
207
|
+
* public/LAN AND the bearer token is empty. Loopback or tailscale-IP
|
|
208
|
+
* binds short-circuit (the tailnet is the auth boundary). Hostname
|
|
209
|
+
* binds resolve via DNS first; if resolution yields a loopback or
|
|
210
|
+
* tailnet IP, the same short-circuit applies. Public/LAN binds without
|
|
211
|
+
* a bearer throw and the daemon refuses to start.
|
|
125
212
|
*/
|
|
126
|
-
export function assertBindAuthInvariant(opts) {
|
|
213
|
+
export async function assertBindAuthInvariant(opts) {
|
|
127
214
|
if (isLoopbackBind(opts.host))
|
|
128
215
|
return;
|
|
216
|
+
if (isTailscaleBind(opts.host))
|
|
217
|
+
return;
|
|
218
|
+
let resolvedIp = null;
|
|
219
|
+
// Hostname (non-IP literal) — resolve and re-check.
|
|
220
|
+
if (!/^[\d.]+$/.test(opts.host) && !opts.host.includes(":")) {
|
|
221
|
+
resolvedIp = await resolveToIpOrNull(opts.host);
|
|
222
|
+
if (resolvedIp) {
|
|
223
|
+
if (isLoopbackBind(resolvedIp))
|
|
224
|
+
return;
|
|
225
|
+
if (isTailscaleBind(resolvedIp))
|
|
226
|
+
return;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
129
229
|
if (opts.bearerToken && opts.bearerToken.length > 0)
|
|
130
230
|
return;
|
|
131
|
-
throw new AuthBearerTokenStartupError(`daemon refusing to start: bind host '${opts.host}'
|
|
132
|
-
`
|
|
133
|
-
`
|
|
231
|
+
throw new AuthBearerTokenStartupError(`daemon refusing to start: bind host '${opts.host}'${resolvedIp ? ` (resolves to ${resolvedIp})` : ""} is not loopback or tailscale, ` +
|
|
232
|
+
`and auth.bearerToken (env OPENRIG_AUTH_BEARER_TOKEN) is empty. ` +
|
|
233
|
+
`Either: (a) bind to 127.0.0.1 / localhost, (b) bind to a tailscale interface (100.64.0.0/10 IPv4 or fd7a:115c:a1e0::/48 IPv6), ` +
|
|
234
|
+
`or (c) set OPENRIG_AUTH_BEARER_TOKEN to a non-empty value before starting the daemon.`);
|
|
134
235
|
}
|
|
135
236
|
//# sourceMappingURL=auth-bearer-token.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-bearer-token.js","sourceRoot":"","sources":["../../src/middleware/auth-bearer-token.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,EAAE;AACF,uDAAuD;AACvD,yEAAyE;AACzE,wCAAwC;AACxC,oEAAoE;AACpE,mDAAmD;AACnD,qEAAqE;AACrE,iEAAiE;AACjE,EAAE;AACF,uEAAuE;AACvE,sEAAsE;AACtE,qEAAqE;AACrE,oBAAoB;AACpB,EAAE;AACF,iEAAiE;AACjE,uEAAuE;AACvE,gEAAgE;AAChE,qEAAqE;AACrE,iEAAiE;AACjE,mEAAmE;AACnE,wCAAwC;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"auth-bearer-token.js","sourceRoot":"","sources":["../../src/middleware/auth-bearer-token.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kernel-status.d.ts","sourceRoot":"","sources":["../../src/routes/kernel-status.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,eAAO,MAAM,kBAAkB,4EAAa,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
// V0.3.1 slice 05 kernel-rig-as-default — forward-fix #3 architectural.
|
|
2
|
+
//
|
|
3
|
+
// GET /api/kernel/status — read-only observability surface for the
|
|
4
|
+
// background kernel-boot. Pairs with the architectural decoupling in
|
|
5
|
+
// kernel-boot-tracker.ts: healthz binds early; this route lets
|
|
6
|
+
// operators (and CLI's `--wait-for-kernel`) observe kernel agent
|
|
7
|
+
// readiness independently of HTTP health.
|
|
8
|
+
//
|
|
9
|
+
// Returns one of two shapes:
|
|
10
|
+
//
|
|
11
|
+
// 200 { kernel_state, agents[], first_unready_since, variant, detail }
|
|
12
|
+
// — when the tracker is wired (the standard daemon composition).
|
|
13
|
+
//
|
|
14
|
+
// 503 { error: 'kernel_boot_tracker_unavailable', message: ... }
|
|
15
|
+
// — when AppDeps was constructed without a tracker (test fixtures
|
|
16
|
+
// or custom daemon compositions). Clear hint instead of a 500.
|
|
17
|
+
import { Hono } from "hono";
|
|
18
|
+
export const kernelStatusRoutes = new Hono();
|
|
19
|
+
kernelStatusRoutes.get("/status", (c) => {
|
|
20
|
+
const tracker = c.get("kernelBootTracker");
|
|
21
|
+
if (!tracker) {
|
|
22
|
+
return c.json({
|
|
23
|
+
error: "kernel_boot_tracker_unavailable",
|
|
24
|
+
message: "Kernel-boot tracker not wired into this daemon. Use --no-kernel or check startup logs for a kernel-boot failure that prevented tracker construction.",
|
|
25
|
+
}, 503);
|
|
26
|
+
}
|
|
27
|
+
const status = tracker.getStatus();
|
|
28
|
+
return c.json({
|
|
29
|
+
kernel_state: status.kernelState,
|
|
30
|
+
agents: status.agents.map((a) => ({
|
|
31
|
+
session_name: a.sessionName,
|
|
32
|
+
runtime: a.runtime,
|
|
33
|
+
startup_status: a.startupStatus,
|
|
34
|
+
})),
|
|
35
|
+
first_unready_since: status.firstUnreadySince,
|
|
36
|
+
variant: status.variant,
|
|
37
|
+
detail: status.detail,
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
//# sourceMappingURL=kernel-status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kernel-status.js","sourceRoot":"","sources":["../../src/routes/kernel-status.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,EAAE;AACF,mEAAmE;AACnE,qEAAqE;AACrE,+DAA+D;AAC/D,iEAAiE;AACjE,0CAA0C;AAC1C,EAAE;AACF,6BAA6B;AAC7B,EAAE;AACF,yEAAyE;AACzE,qEAAqE;AACrE,EAAE;AACF,mEAAmE;AACnE,sEAAsE;AACtE,qEAAqE;AAErE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,IAAI,EAAE,CAAC;AAE7C,kBAAkB,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;IACtC,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,mBAA4B,CAAkC,CAAC;IACrF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,CAAC,IAAI,CACX;YACE,KAAK,EAAE,iCAAiC;YACxC,OAAO,EACL,sJAAsJ;SACzJ,EACD,GAAG,CACJ,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACnC,OAAO,CAAC,CAAC,IAAI,CAAC;QACZ,YAAY,EAAE,MAAM,CAAC,WAAW;QAChC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAChC,YAAY,EAAE,CAAC,CAAC,WAAW;YAC3B,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,cAAc,EAAE,CAAC,CAAC,aAAa;SAChC,CAAC,CAAC;QACH,mBAAmB,EAAE,MAAM,CAAC,iBAAiB;QAC7C,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mission-control.d.ts","sourceRoot":"","sources":["../../src/routes/mission-control.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAuB5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,wBAAwB;IACvC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,wBAAgB,oBAAoB,CAAC,IAAI,CAAC,EAAE,wBAAwB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"mission-control.d.ts","sourceRoot":"","sources":["../../src/routes/mission-control.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAuB5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,wBAAwB;IACvC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,wBAAgB,oBAAoB,CAAC,IAAI,CAAC,EAAE,wBAAwB,GAAG,IAAI,CA2W1E"}
|
|
@@ -41,7 +41,7 @@ export function missionControlRoutes(opts) {
|
|
|
41
41
|
.get(tableName);
|
|
42
42
|
return Boolean(row);
|
|
43
43
|
}
|
|
44
|
-
function listDestinations(db) {
|
|
44
|
+
function listDestinations(db, operatorSeatFallback) {
|
|
45
45
|
const destinations = new Map();
|
|
46
46
|
const addDestination = (candidate) => {
|
|
47
47
|
const sessionName = candidate.sessionName.trim();
|
|
@@ -108,6 +108,23 @@ export function missionControlRoutes(opts) {
|
|
|
108
108
|
});
|
|
109
109
|
}
|
|
110
110
|
}
|
|
111
|
+
// V0.3.1 slice 05 — belt-and-suspenders for kernel-down state: if
|
|
112
|
+
// the configured operator seat isn't in the topology + queue
|
|
113
|
+
// history yet (fresh install, kernel hasn't booted, or kernel
|
|
114
|
+
// crashed), still include it so the picker can route to the
|
|
115
|
+
// seat the rest of the daemon's mission-control read layer will
|
|
116
|
+
// resolve. Source label intentionally stays "queue" so the picker
|
|
117
|
+
// sort order keeps live topology entries on top.
|
|
118
|
+
if (operatorSeatFallback) {
|
|
119
|
+
const trimmed = operatorSeatFallback.trim();
|
|
120
|
+
if (trimmed && !destinations.has(trimmed)) {
|
|
121
|
+
destinations.set(trimmed, {
|
|
122
|
+
sessionName: trimmed,
|
|
123
|
+
label: trimmed,
|
|
124
|
+
source: "queue",
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
}
|
|
111
128
|
return [...destinations.values()].sort((a, b) => {
|
|
112
129
|
if (a.source !== b.source)
|
|
113
130
|
return a.source === "topology" ? -1 : 1;
|
|
@@ -143,11 +160,17 @@ export function missionControlRoutes(opts) {
|
|
|
143
160
|
});
|
|
144
161
|
// GET /destinations — phone-friendly route/handoff candidates. MUST precede
|
|
145
162
|
// /views/:view-name catchall with the other Mission Control literal routes.
|
|
163
|
+
// V0.3.1 slice 05 — resolve the operator-seat fallback from the
|
|
164
|
+
// mission-control read layer's defaultOperatorSession (which itself
|
|
165
|
+
// tracks the workspace.operator_seat_name setting) so the picker
|
|
166
|
+
// always offers the configured operator seat even when the kernel
|
|
167
|
+
// hasn't booted yet.
|
|
146
168
|
app.get("/destinations", (c) => {
|
|
147
169
|
const db = getDb(c);
|
|
148
170
|
if (!db)
|
|
149
171
|
return c.json({ destinations: [] });
|
|
150
|
-
|
|
172
|
+
const operatorSeat = getReadLayer(c).getDefaultOperatorSession();
|
|
173
|
+
return c.json({ destinations: listDestinations(db, operatorSeat) });
|
|
151
174
|
});
|
|
152
175
|
// SSE for mission_control.* events. MUST precede /views/:view-name
|
|
153
176
|
// (per PL-004 Phase A R1 SSE route-order lesson).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mission-control.js","sourceRoot":"","sources":["../../src/routes/mission-control.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mission-control.js","sourceRoot":"","sources":["../../src/routes/mission-control.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"missions.d.ts","sourceRoot":"","sources":["../../src/routes/missions.ts"],"names":[],"mappings":"AA0BA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAY5B,wBAAgB,cAAc,IAAI,IAAI,CA+ErC"}
|