@openrig/cli 0.3.0 → 0.3.2
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 +45 -58
- package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
- package/daemon/dist/adapters/tmux.d.ts +36 -0
- package/daemon/dist/adapters/tmux.d.ts.map +1 -1
- package/daemon/dist/adapters/tmux.js +66 -0
- package/daemon/dist/adapters/tmux.js.map +1 -1
- package/daemon/dist/db/migrations/037_mission_control_actions.d.ts +5 -1
- package/daemon/dist/db/migrations/037_mission_control_actions.d.ts.map +1 -1
- package/daemon/dist/db/migrations/037_mission_control_actions.js +5 -1
- package/daemon/dist/db/migrations/037_mission_control_actions.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/db/migrations/041_rig_policy.d.ts +32 -0
- package/daemon/dist/db/migrations/041_rig_policy.d.ts.map +1 -0
- package/daemon/dist/db/migrations/041_rig_policy.js +47 -0
- package/daemon/dist/db/migrations/041_rig_policy.js.map +1 -0
- package/daemon/dist/domain/agent-images/resume-token-discovery.js +1 -1
- package/daemon/dist/domain/agent-images/resume-token-discovery.js.map +1 -1
- package/daemon/dist/domain/agent-images/snapshot-capturer.d.ts.map +1 -1
- package/daemon/dist/domain/agent-images/snapshot-capturer.js +2 -1
- package/daemon/dist/domain/agent-images/snapshot-capturer.js.map +1 -1
- package/daemon/dist/domain/agent-manifest.d.ts.map +1 -1
- package/daemon/dist/domain/agent-manifest.js +143 -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/bootstrap-orchestrator.d.ts.map +1 -1
- package/daemon/dist/domain/bootstrap-orchestrator.js +86 -6
- package/daemon/dist/domain/bootstrap-orchestrator.js.map +1 -1
- package/daemon/dist/domain/bundle-agent-images-router.d.ts +95 -0
- package/daemon/dist/domain/bundle-agent-images-router.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-agent-images-router.js +140 -0
- package/daemon/dist/domain/bundle-agent-images-router.js.map +1 -0
- package/daemon/dist/domain/bundle-assembler.d.ts +18 -1
- package/daemon/dist/domain/bundle-assembler.d.ts.map +1 -1
- package/daemon/dist/domain/bundle-assembler.js +11 -1
- package/daemon/dist/domain/bundle-assembler.js.map +1 -1
- package/daemon/dist/domain/bundle-audit.d.ts +89 -0
- package/daemon/dist/domain/bundle-audit.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-audit.js +87 -0
- package/daemon/dist/domain/bundle-audit.js.map +1 -0
- package/daemon/dist/domain/bundle-conflict-detector.d.ts +57 -0
- package/daemon/dist/domain/bundle-conflict-detector.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-conflict-detector.js +49 -0
- package/daemon/dist/domain/bundle-conflict-detector.js.map +1 -0
- package/daemon/dist/domain/bundle-context-packs-router.d.ts +100 -0
- package/daemon/dist/domain/bundle-context-packs-router.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-context-packs-router.js +158 -0
- package/daemon/dist/domain/bundle-context-packs-router.js.map +1 -0
- package/daemon/dist/domain/bundle-plugins-router.d.ts +69 -0
- package/daemon/dist/domain/bundle-plugins-router.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-plugins-router.js +87 -0
- package/daemon/dist/domain/bundle-plugins-router.js.map +1 -0
- package/daemon/dist/domain/bundle-skills-router.d.ts +62 -0
- package/daemon/dist/domain/bundle-skills-router.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-skills-router.js +90 -0
- package/daemon/dist/domain/bundle-skills-router.js.map +1 -0
- package/daemon/dist/domain/bundle-types.d.ts +106 -0
- package/daemon/dist/domain/bundle-types.d.ts.map +1 -1
- package/daemon/dist/domain/bundle-types.js +375 -0
- package/daemon/dist/domain/bundle-types.js.map +1 -1
- package/daemon/dist/domain/bundle-workflow-specs-router.d.ts +94 -0
- package/daemon/dist/domain/bundle-workflow-specs-router.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-workflow-specs-router.js +144 -0
- package/daemon/dist/domain/bundle-workflow-specs-router.js.map +1 -0
- 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 +19 -1
- package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
- package/daemon/dist/domain/context-monitor.js +62 -14
- package/daemon/dist/domain/context-monitor.js.map +1 -1
- package/daemon/dist/domain/graph-projection.d.ts +6 -0
- package/daemon/dist/domain/graph-projection.d.ts.map +1 -1
- package/daemon/dist/domain/graph-projection.js +6 -0
- package/daemon/dist/domain/graph-projection.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/native-resume-probe.js +7 -7
- package/daemon/dist/domain/native-resume-probe.js.map +1 -1
- package/daemon/dist/domain/node-inventory.d.ts +18 -0
- package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
- package/daemon/dist/domain/node-inventory.js +98 -0
- package/daemon/dist/domain/node-inventory.js.map +1 -1
- package/daemon/dist/domain/node-launcher.d.ts +12 -0
- package/daemon/dist/domain/node-launcher.d.ts.map +1 -1
- package/daemon/dist/domain/node-launcher.js +25 -1
- package/daemon/dist/domain/node-launcher.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/pod-bundle-assembler.d.ts +16 -1
- package/daemon/dist/domain/pod-bundle-assembler.d.ts.map +1 -1
- package/daemon/dist/domain/pod-bundle-assembler.js +11 -1
- package/daemon/dist/domain/pod-bundle-assembler.js.map +1 -1
- package/daemon/dist/domain/profile-resolver.d.ts +13 -3
- package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
- package/daemon/dist/domain/profile-resolver.js +11 -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/ps-projection.d.ts +22 -0
- package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
- package/daemon/dist/domain/ps-projection.js +57 -0
- package/daemon/dist/domain/ps-projection.js.map +1 -1
- package/daemon/dist/domain/queue-repository.d.ts +44 -1
- package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
- package/daemon/dist/domain/queue-repository.js +112 -6
- package/daemon/dist/domain/queue-repository.js.map +1 -1
- package/daemon/dist/domain/restore-check-service.d.ts +4 -0
- package/daemon/dist/domain/restore-check-service.d.ts.map +1 -1
- package/daemon/dist/domain/restore-check-service.js +16 -7
- package/daemon/dist/domain/restore-check-service.js.map +1 -1
- package/daemon/dist/domain/rig-policy/rig-policy-defaults.d.ts +48 -0
- package/daemon/dist/domain/rig-policy/rig-policy-defaults.d.ts.map +1 -0
- package/daemon/dist/domain/rig-policy/rig-policy-defaults.js +96 -0
- package/daemon/dist/domain/rig-policy/rig-policy-defaults.js.map +1 -0
- package/daemon/dist/domain/rig-policy/rig-policy-store.d.ts +46 -0
- package/daemon/dist/domain/rig-policy/rig-policy-store.d.ts.map +1 -0
- package/daemon/dist/domain/rig-policy/rig-policy-store.js +171 -0
- package/daemon/dist/domain/rig-policy/rig-policy-store.js.map +1 -0
- package/daemon/dist/domain/rig-policy/rig-policy-types.d.ts +145 -0
- package/daemon/dist/domain/rig-policy/rig-policy-types.d.ts.map +1 -0
- package/daemon/dist/domain/rig-policy/rig-policy-types.js +52 -0
- package/daemon/dist/domain/rig-policy/rig-policy-types.js.map +1 -0
- package/daemon/dist/domain/rig-policy/rig-policy-validator.d.ts +58 -0
- package/daemon/dist/domain/rig-policy/rig-policy-validator.d.ts.map +1 -0
- package/daemon/dist/domain/rig-policy/rig-policy-validator.js +211 -0
- package/daemon/dist/domain/rig-policy/rig-policy-validator.js.map +1 -0
- package/daemon/dist/domain/rigspec-instantiator.d.ts +1 -1
- package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-instantiator.js +109 -18
- package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
- package/daemon/dist/domain/seat-activity-service.d.ts +79 -0
- package/daemon/dist/domain/seat-activity-service.d.ts.map +1 -0
- package/daemon/dist/domain/seat-activity-service.js +123 -0
- package/daemon/dist/domain/seat-activity-service.js.map +1 -0
- 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 +31 -0
- package/daemon/dist/domain/slices/slice-indexer.d.ts.map +1 -1
- package/daemon/dist/domain/slices/slice-indexer.js +111 -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 +19 -0
- 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 +106 -10
- 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 +49 -0
- package/daemon/dist/domain/workflow-spec-cache.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-spec-cache.js +96 -0
- package/daemon/dist/domain/workflow-spec-cache.js.map +1 -1
- package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts +7 -0
- package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -1
- package/daemon/dist/domain/workspace/default-workspace-scaffold.js +201 -3
- 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/domain/workspace/workspace-doctor.d.ts +197 -0
- package/daemon/dist/domain/workspace/workspace-doctor.d.ts.map +1 -0
- package/daemon/dist/domain/workspace/workspace-doctor.js +448 -0
- package/daemon/dist/domain/workspace/workspace-doctor.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 +63 -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/bundles.d.ts.map +1 -1
- package/daemon/dist/routes/bundles.js +966 -7
- package/daemon/dist/routes/bundles.js.map +1 -1
- package/daemon/dist/routes/config.d.ts.map +1 -1
- package/daemon/dist/routes/config.js +19 -2
- package/daemon/dist/routes/config.js.map +1 -1
- package/daemon/dist/routes/info.d.ts +3 -0
- package/daemon/dist/routes/info.d.ts.map +1 -0
- package/daemon/dist/routes/info.js +20 -0
- package/daemon/dist/routes/info.js.map +1 -0
- 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/queue.d.ts +18 -0
- package/daemon/dist/routes/queue.d.ts.map +1 -1
- package/daemon/dist/routes/queue.js +97 -5
- package/daemon/dist/routes/queue.js.map +1 -1
- 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/rig-policy.d.ts +9 -0
- package/daemon/dist/routes/rig-policy.d.ts.map +1 -0
- package/daemon/dist/routes/rig-policy.js +174 -0
- package/daemon/dist/routes/rig-policy.js.map +1 -0
- package/daemon/dist/routes/rigs.d.ts.map +1 -1
- package/daemon/dist/routes/rigs.js +10 -2
- package/daemon/dist/routes/rigs.js.map +1 -1
- package/daemon/dist/routes/sessions.d.ts.map +1 -1
- package/daemon/dist/routes/sessions.js +26 -3
- package/daemon/dist/routes/sessions.js.map +1 -1
- 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/routes/up.d.ts +25 -0
- package/daemon/dist/routes/up.d.ts.map +1 -1
- package/daemon/dist/routes/up.js +70 -3
- package/daemon/dist/routes/up.js.map +1 -1
- package/daemon/dist/routes/workspace.d.ts.map +1 -1
- package/daemon/dist/routes/workspace.js +80 -1
- package/daemon/dist/routes/workspace.js.map +1 -1
- package/daemon/dist/server.d.ts +41 -0
- package/daemon/dist/server.d.ts.map +1 -1
- package/daemon/dist/server.js +41 -0
- package/daemon/dist/server.js.map +1 -1
- package/daemon/dist/startup.d.ts.map +1 -1
- package/daemon/dist/startup.js +236 -6
- 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/orchestration/orchestrator/guidance/role.md +28 -4
- 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 +288 -6
- 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/conveyor/rig.yaml +1 -1
- 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/client.d.ts +3 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +13 -1
- package/dist/client.js.map +1 -1
- package/dist/commands/bundle.d.ts.map +1 -1
- package/dist/commands/bundle.js +123 -2
- package/dist/commands/bundle.js.map +1 -1
- package/dist/commands/config-init-workspace.d.ts.map +1 -1
- package/dist/commands/config-init-workspace.js +293 -5
- 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/ps.d.ts.map +1 -1
- package/dist/commands/ps.js +51 -8
- package/dist/commands/ps.js.map +1 -1
- package/dist/commands/queue.d.ts +6 -0
- package/dist/commands/queue.d.ts.map +1 -1
- package/dist/commands/queue.js +103 -5
- package/dist/commands/queue.js.map +1 -1
- package/dist/commands/rig-policy.d.ts +48 -0
- package/dist/commands/rig-policy.d.ts.map +1 -0
- package/dist/commands/rig-policy.js +429 -0
- package/dist/commands/rig-policy.js.map +1 -0
- package/dist/commands/scope.d.ts +6 -0
- package/dist/commands/scope.d.ts.map +1 -0
- package/dist/commands/scope.js +659 -0
- package/dist/commands/scope.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 +60 -1
- package/dist/commands/up.js.map +1 -1
- package/dist/commands/workflow.d.ts +9 -0
- package/dist/commands/workflow.d.ts.map +1 -1
- package/dist/commands/workflow.js +139 -1
- package/dist/commands/workflow.js.map +1 -1
- package/dist/commands/workspace.d.ts +20 -0
- package/dist/commands/workspace.d.ts.map +1 -1
- package/dist/commands/workspace.js +138 -7
- package/dist/commands/workspace.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 +45 -2
- package/dist/daemon-lifecycle.d.ts.map +1 -1
- package/dist/daemon-lifecycle.js +90 -9
- 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 +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/scope/dot-id.d.ts +43 -0
- package/dist/lib/scope/dot-id.d.ts.map +1 -0
- package/dist/lib/scope/dot-id.js +165 -0
- package/dist/lib/scope/dot-id.js.map +1 -0
- package/dist/lib/scope/scope-fs.d.ts +79 -0
- package/dist/lib/scope/scope-fs.d.ts.map +1 -0
- package/dist/lib/scope/scope-fs.js +468 -0
- package/dist/lib/scope/scope-fs.js.map +1 -0
- package/dist/lib/scope/templates.d.ts +38 -0
- package/dist/lib/scope/templates.d.ts.map +1 -0
- package/dist/lib/scope/templates.js +109 -0
- package/dist/lib/scope/templates.js.map +1 -0
- package/dist/lib/scope/types.d.ts +61 -0
- package/dist/lib/scope/types.d.ts.map +1 -0
- package/dist/lib/scope/types.js +38 -0
- package/dist/lib/scope/types.js.map +1 -0
- package/dist/lib/scope-templates/backlog-deprecation.md +26 -0
- package/dist/lib/scope-templates/backlog-tech-debt.md +22 -0
- package/dist/lib/scope-templates/bug-fix.md +30 -0
- package/dist/lib/scope-templates/mission-notes.md +97 -0
- package/dist/lib/scope-templates/mission-placeholder.md +20 -0
- package/dist/lib/scope-templates/mission-release.md +25 -0
- package/dist/lib/scope-templates/placeholder.md +30 -0
- package/dist/lib/scope-templates/release-feature.md +26 -0
- package/dist/lib/scope-templates/research.md +22 -0
- package/package.json +2 -2
- package/ui/dist/assets/index-C_Q5FczU.css +1 -0
- package/ui/dist/assets/index-GjTxfi9S.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 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-vendor-service.js","sourceRoot":"","sources":["../../src/domain/plugin-vendor-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type AgentResolverFsOps } from "./agent-resolver.js";
|
|
2
|
-
import { type PodBundleManifest } from "./bundle-types.js";
|
|
2
|
+
import { type PodBundleManifest, type BundleProvenance, type BundleCompatibility } from "./bundle-types.js";
|
|
3
3
|
export interface PodAssemblerFsOps extends AgentResolverFsOps {
|
|
4
4
|
mkdirp(path: string): void;
|
|
5
5
|
writeFile(path: string, content: string): void;
|
|
@@ -12,6 +12,21 @@ export interface PodAssembleOptions {
|
|
|
12
12
|
outputDir: string;
|
|
13
13
|
bundleName: string;
|
|
14
14
|
bundleVersion: string;
|
|
15
|
+
/**
|
|
16
|
+
* Optional Item-1 provenance input. Caller fills the fields it knows
|
|
17
|
+
* (sourceHost, authorSession, daemonVersion, cliVersion, sourceRigId,
|
|
18
|
+
* sourceRigName, notes). The assembler mirrors root createdAt into
|
|
19
|
+
* provenance.createdAt unless caller pre-set it (caller value wins
|
|
20
|
+
* for test determinism). Missing block = no provenance recorded
|
|
21
|
+
* (backward compat).
|
|
22
|
+
*/
|
|
23
|
+
provenance?: BundleProvenance;
|
|
24
|
+
/**
|
|
25
|
+
* Optional Item-2 compatibility input. Caller declares minimum
|
|
26
|
+
* daemon + CLI versions and optional schema_version reaffirmation.
|
|
27
|
+
* Missing block = no compatibility recorded (backward compat).
|
|
28
|
+
*/
|
|
29
|
+
compatibility?: BundleCompatibility;
|
|
15
30
|
}
|
|
16
31
|
export interface PodAssembleResult {
|
|
17
32
|
manifest: PodBundleManifest;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pod-bundle-assembler.d.ts","sourceRoot":"","sources":["../../src/domain/pod-bundle-assembler.ts"],"names":[],"mappings":"AAIA,OAAO,EAAmB,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAA8B,KAAK,iBAAiB,EAA4D,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"pod-bundle-assembler.d.ts","sourceRoot":"","sources":["../../src/domain/pod-bundle-assembler.ts"],"names":[],"mappings":"AAIA,OAAO,EAAmB,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAA8B,KAAK,iBAAiB,EAA4D,KAAK,gBAAgB,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAGlM,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IAC3D,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B;;;;OAIG;IACH,aAAa,CAAC,EAAE,mBAAmB,CAAC;CACrC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;;;GAIG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,EAAE,CAAoB;gBAElB,IAAI,EAAE;QAAE,KAAK,EAAE,iBAAiB,CAAA;KAAE;IAI9C;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,kBAAkB,GAAG,iBAAiB;IAsJrD,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,0BAA0B;IAkBlC,OAAO,CAAC,kBAAkB;CAoB3B"}
|
|
@@ -116,15 +116,25 @@ export class PodBundleAssembler {
|
|
|
116
116
|
const rewrittenRigYaml = this.rewriteRigSpecRefs(rigSpecYaml, refRewrites);
|
|
117
117
|
this.fs.writeFile(nodePath.join(opts.outputDir, "rig.yaml"), rewrittenRigYaml);
|
|
118
118
|
// 4. Build manifest
|
|
119
|
+
const createdAt = new Date().toISOString();
|
|
119
120
|
const manifest = {
|
|
120
121
|
schemaVersion: 2,
|
|
121
122
|
name: opts.bundleName,
|
|
122
123
|
version: opts.bundleVersion,
|
|
123
|
-
createdAt
|
|
124
|
+
createdAt,
|
|
124
125
|
rigSpec: "rig.yaml",
|
|
125
126
|
agents: agentEntries,
|
|
126
127
|
cultureFile: rigSpec.cultureFile,
|
|
127
128
|
};
|
|
129
|
+
if (opts.provenance) {
|
|
130
|
+
manifest.provenance = {
|
|
131
|
+
...opts.provenance,
|
|
132
|
+
createdAt: opts.provenance.createdAt ?? createdAt,
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
if (opts.compatibility) {
|
|
136
|
+
manifest.compatibility = { ...opts.compatibility };
|
|
137
|
+
}
|
|
128
138
|
// Write manifest
|
|
129
139
|
this.fs.writeFile(nodePath.join(opts.outputDir, "bundle.yaml"), serializePodBundleManifest(manifest));
|
|
130
140
|
collectedFiles.push("bundle.yaml");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pod-bundle-assembler.js","sourceRoot":"","sources":["../../src/domain/pod-bundle-assembler.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,eAAe,EAA2B,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,0BAA0B,
|
|
1
|
+
{"version":3,"file":"pod-bundle-assembler.js","sourceRoot":"","sources":["../../src/domain/pod-bundle-assembler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import type { LifecycleDefaults, RigSpec, RigSpecPod, RigSpecPodMember, StartupBlock, SkillResource, GuidanceResource, SubagentResource,
|
|
1
|
+
import type { LifecycleDefaults, RigSpec, RigSpecPod, RigSpecPodMember, StartupBlock, SkillResource, GuidanceResource, SubagentResource, RuntimeResource, PluginResource } from "./types.js";
|
|
2
2
|
import type { ResolvedAgentSpec, ResourceCollision } from "./agent-resolver.js";
|
|
3
3
|
export interface QualifiedResource {
|
|
4
4
|
effectiveId: string;
|
|
5
5
|
sourceSpec: string;
|
|
6
6
|
sourcePath: string;
|
|
7
|
-
resource: SkillResource | GuidanceResource | SubagentResource |
|
|
7
|
+
resource: SkillResource | GuidanceResource | SubagentResource | RuntimeResource | PluginResource;
|
|
8
8
|
}
|
|
9
9
|
export interface ResolvedResources {
|
|
10
10
|
skills: QualifiedResource[];
|
|
11
11
|
guidance: QualifiedResource[];
|
|
12
12
|
subagents: QualifiedResource[];
|
|
13
|
-
|
|
13
|
+
plugins: QualifiedResource[];
|
|
14
14
|
runtimeResources: QualifiedResource[];
|
|
15
15
|
}
|
|
16
16
|
export interface ResolvedNodeConfig {
|
|
@@ -24,6 +24,16 @@ export interface ResolvedNodeConfig {
|
|
|
24
24
|
resolvedSpecName: string;
|
|
25
25
|
resolvedSpecVersion: string;
|
|
26
26
|
resolvedSpecHash: string;
|
|
27
|
+
/**
|
|
28
|
+
* Slice 15 — per-seat activity-detection tuning. Forwarded verbatim
|
|
29
|
+
* from `profile.activity` after agent-manifest normalization (which
|
|
30
|
+
* dropped invalid values). The instantiator passes
|
|
31
|
+
* `silenceWindowSeconds` to NodeLauncher.launchNode where it overrides
|
|
32
|
+
* the launcher's default (3s) for the tmux monitor-silence call.
|
|
33
|
+
*/
|
|
34
|
+
activity?: {
|
|
35
|
+
silenceWindowSeconds?: number;
|
|
36
|
+
};
|
|
27
37
|
}
|
|
28
38
|
export interface ResolutionContext {
|
|
29
39
|
baseSpec: ResolvedAgentSpec;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile-resolver.d.ts","sourceRoot":"","sources":["../../src/domain/profile-resolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAC8B,iBAAiB,EACzD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EACnD,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"profile-resolver.d.ts","sourceRoot":"","sources":["../../src/domain/profile-resolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAC8B,iBAAiB,EACzD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EACnD,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,cAAc,EACnF,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAMhF,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,aAAa,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,eAAe,GAAG,cAAc,CAAC;CAClG;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,gBAAgB,EAAE,iBAAiB,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,iBAAiB,GAAG,SAAS,CAAC;IACzC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,OAAO,EAAE,YAAY,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE;QAAE,oBAAoB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9C;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,gBAAgB,CAAC;IACzB,GAAG,EAAE,UAAU,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;IACb,eAAe,CAAC,EAAE,YAAY,CAAC;IAC/B;;;sDAGkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,gBAAgB,GACxB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,kBAAkB,CAAA;CAAE,GACxC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAwBpC;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,iBAAiB,GAAG,gBAAgB,CA8H1E"}
|
|
@@ -3,12 +3,12 @@ import { homedir as osHomedir } from "node:os";
|
|
|
3
3
|
import { resolveStartup } from "./startup-resolver.js";
|
|
4
4
|
import { discoverSkillsForRuntime } from "./skill-discovery.js";
|
|
5
5
|
// -- Constants --
|
|
6
|
-
const RESOURCE_CATEGORIES = ["skills", "guidance", "subagents", "
|
|
6
|
+
const RESOURCE_CATEGORIES = ["skills", "guidance", "subagents", "plugins", "runtimeResources"];
|
|
7
7
|
const YAML_CATEGORY_MAP = {
|
|
8
8
|
skills: "skills",
|
|
9
9
|
guidance: "guidance",
|
|
10
10
|
subagents: "subagents",
|
|
11
|
-
|
|
11
|
+
plugins: "plugins",
|
|
12
12
|
runtime_resources: "runtimeResources",
|
|
13
13
|
runtimeResources: "runtimeResources",
|
|
14
14
|
};
|
|
@@ -136,6 +136,10 @@ export function resolveNodeConfig(ctx) {
|
|
|
136
136
|
resolvedSpecName: spec.name,
|
|
137
137
|
resolvedSpecVersion: spec.version,
|
|
138
138
|
resolvedSpecHash: baseSpec.hash,
|
|
139
|
+
// Slice 15 — pass through the parsed activity block (or undefined
|
|
140
|
+
// when the profile didn't declare one). NodeLauncher applies the
|
|
141
|
+
// default 3s when this is missing.
|
|
142
|
+
activity: profile.activity,
|
|
139
143
|
},
|
|
140
144
|
};
|
|
141
145
|
}
|
|
@@ -144,12 +148,12 @@ function buildResourcePool(base, imports) {
|
|
|
144
148
|
skills: new Map(),
|
|
145
149
|
guidance: new Map(),
|
|
146
150
|
subagents: new Map(),
|
|
147
|
-
|
|
151
|
+
plugins: new Map(),
|
|
148
152
|
runtimeResources: new Map(),
|
|
149
153
|
};
|
|
150
154
|
// Base spec resources (unqualified id)
|
|
151
155
|
for (const cat of RESOURCE_CATEGORIES) {
|
|
152
|
-
const resources = base.spec.resources[cat];
|
|
156
|
+
const resources = base.spec.resources[cat] ?? [];
|
|
153
157
|
for (const r of resources) {
|
|
154
158
|
const entries = pool[cat].get(r.id) ?? [];
|
|
155
159
|
entries.push({ effectiveId: r.id, sourceSpec: base.spec.name, sourcePath: base.sourcePath, resource: r });
|
|
@@ -161,7 +165,7 @@ function buildResourcePool(base, imports) {
|
|
|
161
165
|
// "colliding imported resources remain addressable only by qualified id"
|
|
162
166
|
for (const imp of imports) {
|
|
163
167
|
for (const cat of RESOURCE_CATEGORIES) {
|
|
164
|
-
const resources = imp.spec.resources[cat];
|
|
168
|
+
const resources = imp.spec.resources[cat] ?? [];
|
|
165
169
|
for (const r of resources) {
|
|
166
170
|
const qualifiedId = `${imp.spec.name}:${r.id}`;
|
|
167
171
|
// Index under qualified id only
|
|
@@ -194,14 +198,14 @@ function resolveProfileUses(profile, pool, baseSpecName, errors) {
|
|
|
194
198
|
skills: [],
|
|
195
199
|
guidance: [],
|
|
196
200
|
subagents: [],
|
|
197
|
-
|
|
201
|
+
plugins: [],
|
|
198
202
|
runtimeResources: [],
|
|
199
203
|
};
|
|
200
204
|
const usesMap = {
|
|
201
205
|
skills: profile.uses.skills,
|
|
202
206
|
guidance: profile.uses.guidance,
|
|
203
207
|
subagents: profile.uses.subagents,
|
|
204
|
-
|
|
208
|
+
plugins: profile.uses.plugins,
|
|
205
209
|
runtimeResources: profile.uses.runtimeResources,
|
|
206
210
|
};
|
|
207
211
|
for (const cat of RESOURCE_CATEGORIES) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile-resolver.js","sourceRoot":"","sources":["../../src/domain/profile-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,SAAS,CAAC;AAO/C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAqB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"profile-resolver.js","sourceRoot":"","sources":["../../src/domain/profile-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import type { ResolvedNodeConfig } from "./profile-resolver.js";
|
|
|
3
3
|
import type { ResourceCollision } from "./agent-resolver.js";
|
|
4
4
|
export type ProjectionClassification = "safe_projection" | "managed_merge" | "hash_conflict" | "no_op";
|
|
5
5
|
export interface ProjectionEntry {
|
|
6
|
-
category: "skill" | "guidance" | "subagent" | "
|
|
6
|
+
category: "skill" | "guidance" | "subagent" | "plugin" | "runtime_resource";
|
|
7
7
|
effectiveId: string;
|
|
8
8
|
sourceSpec: string;
|
|
9
9
|
sourcePath: string;
|
|
@@ -18,6 +18,12 @@ export interface ProjectionEntry {
|
|
|
18
18
|
};
|
|
19
19
|
mergeStrategy?: "managed_block" | "append";
|
|
20
20
|
target?: string;
|
|
21
|
+
/** Plugin runtime applicability hint. Only meaningful for category=plugin.
|
|
22
|
+
* - "claude" / "codex": explicit operator override; only the named runtime adapter projects
|
|
23
|
+
* - "auto" or undefined: adapter detects manifest dirs (.claude-plugin/ vs .codex-plugin/)
|
|
24
|
+
* and projects only when its runtime-specific manifest is present
|
|
25
|
+
*/
|
|
26
|
+
pluginType?: "claude" | "codex" | "auto";
|
|
21
27
|
}
|
|
22
28
|
export interface ProjectionPlan {
|
|
23
29
|
runtime: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection-planner.d.ts","sourceRoot":"","sources":["../../src/domain/projection-planner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"projection-planner.d.ts","sourceRoot":"","sources":["../../src/domain/projection-planner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,KAAK,EAAE,kBAAkB,EAAwC,MAAM,uBAAuB,CAAC;AACtG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAI7D,MAAM,MAAM,wBAAwB,GAAG,iBAAiB,GAAG,eAAe,GAAG,eAAe,GAAG,OAAO,CAAC;AAEvG,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,kBAAkB,CAAC;IAC5E,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,wBAAwB,CAAC;IACzC,cAAc,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChF,aAAa,CAAC,EAAE,eAAe,GAAG,QAAQ,CAAC;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,UAAU,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;CAC1C;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAChC,KAAK,EAAE,eAAe,CAAC;IACvB,wGAAwG;IACxG,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAC3F;AAED,MAAM,MAAM,UAAU,GAClB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,GAClC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAcpC;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,GAAG,UAAU,CAuHjE"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import nodePath from "node:path";
|
|
2
|
+
import * as os from "node:os";
|
|
2
3
|
import { classifyResourceProjection } from "./conflict-detector.js";
|
|
3
4
|
// -- Category mapping --
|
|
4
5
|
const CATEGORY_MAP = {
|
|
5
6
|
skills: "skill",
|
|
6
7
|
guidance: "guidance",
|
|
7
8
|
subagents: "subagent",
|
|
8
|
-
|
|
9
|
+
plugins: "plugin",
|
|
9
10
|
runtimeResources: "runtime_resource",
|
|
10
11
|
};
|
|
11
12
|
// -- Public API --
|
|
@@ -40,8 +41,25 @@ export function planProjection(input) {
|
|
|
40
41
|
if (rr.runtime !== config.runtime)
|
|
41
42
|
continue;
|
|
42
43
|
}
|
|
43
|
-
|
|
44
|
-
|
|
44
|
+
// Plugins use a different shape: { id, source: { kind, path } } — extract path from source.
|
|
45
|
+
// Plugin paths support three forms (per DESIGN.md §5.2):
|
|
46
|
+
// 1. absolute system path → preserved exactly
|
|
47
|
+
// 2. tilde-home-prefixed (~/... or bare ~) → expanded to os.homedir()
|
|
48
|
+
// 3. relative to spec dir → resolved against qr.sourcePath
|
|
49
|
+
// ~user (with username) is NOT expanded — treated as a literal relative segment
|
|
50
|
+
// per Node's nodePath convention to avoid surprising operators with implicit
|
|
51
|
+
// username lookups.
|
|
52
|
+
let resourcePath;
|
|
53
|
+
let absolutePath;
|
|
54
|
+
if (catKey === "plugins") {
|
|
55
|
+
const pluginSource = qr.resource.source;
|
|
56
|
+
resourcePath = pluginSource.path;
|
|
57
|
+
absolutePath = resolvePluginPath(resourcePath, qr.sourcePath);
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
resourcePath = qr.resource.path;
|
|
61
|
+
absolutePath = nodePath.resolve(qr.sourcePath, resourcePath);
|
|
62
|
+
}
|
|
45
63
|
const entry = {
|
|
46
64
|
category: catSingular,
|
|
47
65
|
effectiveId: qr.effectiveId,
|
|
@@ -54,6 +72,10 @@ export function planProjection(input) {
|
|
|
54
72
|
if (catKey === "runtimeResources") {
|
|
55
73
|
entry.resourceType = qr.resource.type;
|
|
56
74
|
}
|
|
75
|
+
if (catKey === "plugins") {
|
|
76
|
+
const pluginRes = qr.resource;
|
|
77
|
+
entry.pluginType = pluginRes.pluginType ?? "auto";
|
|
78
|
+
}
|
|
57
79
|
// Guidance-specific
|
|
58
80
|
if (catKey === "guidance") {
|
|
59
81
|
const g = qr.resource;
|
|
@@ -104,7 +126,7 @@ function checkAmbiguity(selected, collisions) {
|
|
|
104
126
|
{ category: "skills", resources: selected.skills },
|
|
105
127
|
{ category: "guidance", resources: selected.guidance },
|
|
106
128
|
{ category: "subagents", resources: selected.subagents },
|
|
107
|
-
{ category: "
|
|
129
|
+
{ category: "plugins", resources: selected.plugins },
|
|
108
130
|
{ category: "runtimeResources", resources: selected.runtimeResources },
|
|
109
131
|
];
|
|
110
132
|
for (const { category, resources } of categoryEntries) {
|
|
@@ -128,4 +150,22 @@ function checkAmbiguity(selected, collisions) {
|
|
|
128
150
|
}
|
|
129
151
|
// Classification is now handled via classifyResourceProjection from conflict-detector.ts
|
|
130
152
|
// when resolveTargetPath is provided. Without it, entries default to safe_projection.
|
|
153
|
+
/**
|
|
154
|
+
* Resolve a plugin source.path to a concrete absolute path.
|
|
155
|
+
* Three forms supported:
|
|
156
|
+
* - absolute (`/abs/...`) → preserved exactly
|
|
157
|
+
* - tilde-home (`~/...` or `~`) → expanded to os.homedir()
|
|
158
|
+
* - relative (`plugins/...`) → resolved against specSourcePath
|
|
159
|
+
* `~user/...` (with explicit username) is NOT expanded; treated as a
|
|
160
|
+
* literal relative segment per Node's nodePath convention.
|
|
161
|
+
*/
|
|
162
|
+
function resolvePluginPath(rawPath, specSourcePath) {
|
|
163
|
+
if (rawPath === "~")
|
|
164
|
+
return os.homedir();
|
|
165
|
+
if (rawPath.startsWith("~/"))
|
|
166
|
+
return nodePath.join(os.homedir(), rawPath.slice(2));
|
|
167
|
+
if (nodePath.isAbsolute(rawPath))
|
|
168
|
+
return rawPath;
|
|
169
|
+
return nodePath.resolve(specSourcePath, rawPath);
|
|
170
|
+
}
|
|
131
171
|
//# sourceMappingURL=projection-planner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection-planner.js","sourceRoot":"","sources":["../../src/domain/projection-planner.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"projection-planner.js","sourceRoot":"","sources":["../../src/domain/projection-planner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type Database from "better-sqlite3";
|
|
2
2
|
import type { NodeLifecycleState, RigLifecycleState } from "./types.js";
|
|
3
|
+
import type { SeatActivityService } from "./seat-activity-service.js";
|
|
3
4
|
export interface PsEntry {
|
|
4
5
|
rigId: string;
|
|
5
6
|
name: string;
|
|
@@ -15,6 +16,20 @@ export interface PsEntry {
|
|
|
15
16
|
rigName: string;
|
|
16
17
|
nodeCount: number;
|
|
17
18
|
runningCount: number;
|
|
19
|
+
/**
|
|
20
|
+
* Slice 15 — count of nodes whose `terminal-active` primitive
|
|
21
|
+
* reports `isActiveWithinWindow === true`. PARALLEL to `runningCount`
|
|
22
|
+
* (which stays `process-alive` semantics). Sourced exclusively from
|
|
23
|
+
* the SeatActivityService; never from queue/assignment state.
|
|
24
|
+
*/
|
|
25
|
+
activeCount: number;
|
|
26
|
+
/**
|
|
27
|
+
* Slice 15 — count of nodes whose `has-work-to-do` primitive reports
|
|
28
|
+
* `hasAssignedWork === true`. Derived from the pending queue items
|
|
29
|
+
* with `destination_session` matching the node's canonical session
|
|
30
|
+
* name. Independent from `activeCount` (non-inference contract).
|
|
31
|
+
*/
|
|
32
|
+
hasWorkCount: number;
|
|
18
33
|
status: "running" | "partial" | "stopped";
|
|
19
34
|
/** Always populated. Folded from per-node `lifecycleState` (post-L2);
|
|
20
35
|
* empty rigs derive `stopped`. Never undefined or null. */
|
|
@@ -45,9 +60,16 @@ export declare function deriveRigLifecycleState(nodeStates: NodeLifecycleState[]
|
|
|
45
60
|
*/
|
|
46
61
|
export declare class PsProjectionService {
|
|
47
62
|
readonly db: Database.Database;
|
|
63
|
+
private readonly seatActivity;
|
|
48
64
|
constructor(deps: {
|
|
49
65
|
db: Database.Database;
|
|
66
|
+
seatActivity?: SeatActivityService;
|
|
50
67
|
});
|
|
51
68
|
getEntries(): PsEntry[];
|
|
52
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* Slice 15 — count of pending qitems assigned to a specific canonical
|
|
72
|
+
* session name. Exposed for per-node enrichment in node-inventory.
|
|
73
|
+
*/
|
|
74
|
+
export declare function countPendingWorkForSession(db: Database.Database, canonicalSessionName: string): number;
|
|
53
75
|
//# sourceMappingURL=ps-projection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ps-projection.d.ts","sourceRoot":"","sources":["../../src/domain/ps-projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"ps-projection.d.ts","sourceRoot":"","sources":["../../src/domain/ps-projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAExE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;;;OAQG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC1C;+DAC2D;IAC3D,cAAc,EAAE,iBAAiB,CAAC;IAClC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,kBAAkB,EAAE,GAAG,iBAAiB,CAa3F;AAED;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;gBAE9C,IAAI,EAAE;QAAE,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;QAAC,YAAY,CAAC,EAAE,mBAAmB,CAAA;KAAE;IAK/E,UAAU,IAAI,OAAO,EAAE;CA2ExB;AAwBD;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,EAAE,MAAM,GAAG,MAAM,CAMtG"}
|
|
@@ -36,8 +36,10 @@ export function deriveRigLifecycleState(nodeStates) {
|
|
|
36
36
|
*/
|
|
37
37
|
export class PsProjectionService {
|
|
38
38
|
db;
|
|
39
|
+
seatActivity;
|
|
39
40
|
constructor(deps) {
|
|
40
41
|
this.db = deps.db;
|
|
42
|
+
this.seatActivity = deps.seatActivity ?? null;
|
|
41
43
|
}
|
|
42
44
|
getEntries() {
|
|
43
45
|
const rows = this.db.prepare(`
|
|
@@ -67,12 +69,35 @@ export class PsProjectionService {
|
|
|
67
69
|
// node-inventory pass per rig; this matches the v0 "derive, no migration" decision.
|
|
68
70
|
const inventory = getNodeInventory(this.db, r.rig_id);
|
|
69
71
|
const lifecycleState = deriveRigLifecycleState(inventory.map((e) => e.lifecycleState));
|
|
72
|
+
// Slice 15 — `terminal-active` count. Subset of running tmux-bound
|
|
73
|
+
// seats whose latest SeatActivity observation says
|
|
74
|
+
// `isActiveWithinWindow === true`. Sourced ONLY from the activity
|
|
75
|
+
// service; never derived from queue state.
|
|
76
|
+
let activeCount = 0;
|
|
77
|
+
if (this.seatActivity) {
|
|
78
|
+
for (const node of inventory) {
|
|
79
|
+
if (node.sessionStatus !== "running")
|
|
80
|
+
continue;
|
|
81
|
+
if (!node.canonicalSessionName)
|
|
82
|
+
continue;
|
|
83
|
+
const obs = this.seatActivity.getSeatActivity(node.canonicalSessionName);
|
|
84
|
+
if (obs?.isActiveWithinWindow === true)
|
|
85
|
+
activeCount++;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
// Slice 15 — `has-work-to-do` count. Subset of nodes with at
|
|
89
|
+
// least one pending qitem whose `destination_session` matches the
|
|
90
|
+
// node's `canonicalSessionName`. Sourced ONLY from the queue
|
|
91
|
+
// projection; never from tmux output.
|
|
92
|
+
const hasWorkCount = countNodesWithPendingWork(this.db, r.rig_id);
|
|
70
93
|
return {
|
|
71
94
|
rigId: r.rig_id,
|
|
72
95
|
name: r.name,
|
|
73
96
|
rigName: r.name,
|
|
74
97
|
nodeCount: r.node_count,
|
|
75
98
|
runningCount: r.running_count,
|
|
99
|
+
activeCount,
|
|
100
|
+
hasWorkCount,
|
|
76
101
|
status,
|
|
77
102
|
lifecycleState,
|
|
78
103
|
uptime: r.earliest_running_at ? formatDuration(now - new Date(r.earliest_running_at + "Z").getTime()) : null,
|
|
@@ -81,6 +106,38 @@ export class PsProjectionService {
|
|
|
81
106
|
});
|
|
82
107
|
}
|
|
83
108
|
}
|
|
109
|
+
/**
|
|
110
|
+
* Slice 15 — count nodes in this rig that have at least one pending
|
|
111
|
+
* qitem assigned to them (queue.destination_session matches a node's
|
|
112
|
+
* latest session_name). Pure SQL query — does NOT consult tmux output
|
|
113
|
+
* or SeatActivity (non-inference contract).
|
|
114
|
+
*/
|
|
115
|
+
function countNodesWithPendingWork(db, rigId) {
|
|
116
|
+
const row = db.prepare(`
|
|
117
|
+
SELECT COUNT(DISTINCT n.id) as c
|
|
118
|
+
FROM nodes n
|
|
119
|
+
JOIN sessions s ON s.node_id = n.id
|
|
120
|
+
AND s.id = (SELECT s2.id FROM sessions s2 WHERE s2.node_id = n.id ORDER BY s2.id DESC LIMIT 1)
|
|
121
|
+
WHERE n.rig_id = ?
|
|
122
|
+
AND EXISTS (
|
|
123
|
+
SELECT 1 FROM queue_items q
|
|
124
|
+
WHERE q.destination_session = s.session_name
|
|
125
|
+
AND q.state = 'pending'
|
|
126
|
+
)
|
|
127
|
+
`).get(rigId);
|
|
128
|
+
return row?.c ?? 0;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Slice 15 — count of pending qitems assigned to a specific canonical
|
|
132
|
+
* session name. Exposed for per-node enrichment in node-inventory.
|
|
133
|
+
*/
|
|
134
|
+
export function countPendingWorkForSession(db, canonicalSessionName) {
|
|
135
|
+
const row = db.prepare(`
|
|
136
|
+
SELECT COUNT(*) as c FROM queue_items
|
|
137
|
+
WHERE destination_session = ? AND state = 'pending'
|
|
138
|
+
`).get(canonicalSessionName);
|
|
139
|
+
return row?.c ?? 0;
|
|
140
|
+
}
|
|
84
141
|
function formatDuration(ms) {
|
|
85
142
|
const seconds = Math.floor(ms / 1000);
|
|
86
143
|
if (seconds < 60)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ps-projection.js","sourceRoot":"","sources":["../../src/domain/ps-projection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ps-projection.js","sourceRoot":"","sources":["../../src/domain/ps-projection.ts"],"names":[],"mappings":"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"}
|