@openrig/cli 0.3.1 → 0.3.3-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/daemon/assets/plugins/openrig-core/skills/forming-an-openrig-mental-model/SKILL.md +1 -1
- package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +8 -8
- package/daemon/dist/adapters/cmux-transport.d.ts.map +1 -1
- package/daemon/dist/adapters/cmux-transport.js +51 -9
- package/daemon/dist/adapters/cmux-transport.js.map +1 -1
- package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
- package/daemon/dist/adapters/codex-runtime-adapter.js +34 -5
- package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
- package/daemon/dist/adapters/tmux.d.ts +68 -1
- package/daemon/dist/adapters/tmux.d.ts.map +1 -1
- package/daemon/dist/adapters/tmux.js +141 -2
- 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/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/db/migrations/042_rig_archive.d.ts +16 -0
- package/daemon/dist/db/migrations/042_rig_archive.d.ts.map +1 -0
- package/daemon/dist/db/migrations/042_rig_archive.js +21 -0
- package/daemon/dist/db/migrations/042_rig_archive.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.js +27 -0
- package/daemon/dist/domain/agent-manifest.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/context-monitor.d.ts +5 -1
- package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
- package/daemon/dist/domain/context-monitor.js +28 -15
- 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/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/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 +10 -0
- package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
- package/daemon/dist/domain/profile-resolver.js +4 -0
- package/daemon/dist/domain/profile-resolver.js.map +1 -1
- package/daemon/dist/domain/ps-projection.d.ts +28 -1
- package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
- package/daemon/dist/domain/ps-projection.js +67 -1
- package/daemon/dist/domain/ps-projection.js.map +1 -1
- package/daemon/dist/domain/queue-repository.d.ts +37 -1
- package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
- package/daemon/dist/domain/queue-repository.js +99 -2
- 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-expansion-service.d.ts +1 -1
- package/daemon/dist/domain/rig-expansion-service.d.ts.map +1 -1
- package/daemon/dist/domain/rig-expansion-service.js +12 -10
- package/daemon/dist/domain/rig-expansion-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/rig-repository.d.ts +28 -2
- package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
- package/daemon/dist/domain/rig-repository.js +40 -3
- package/daemon/dist/domain/rig-repository.js.map +1 -1
- package/daemon/dist/domain/rigspec-instantiator.d.ts +177 -1
- package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-instantiator.js +414 -55
- package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
- package/daemon/dist/domain/rigspec-preflight.d.ts +19 -1
- package/daemon/dist/domain/rigspec-preflight.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-preflight.js +30 -12
- package/daemon/dist/domain/rigspec-preflight.js.map +1 -1
- package/daemon/dist/domain/rigspec-schema.d.ts +1 -0
- package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-schema.js +4 -1
- package/daemon/dist/domain/rigspec-schema.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 +15 -0
- package/daemon/dist/domain/session-transport.d.ts.map +1 -1
- package/daemon/dist/domain/session-transport.js +8 -3
- package/daemon/dist/domain/session-transport.js.map +1 -1
- package/daemon/dist/domain/slices/slice-indexer.d.ts +12 -0
- package/daemon/dist/domain/slices/slice-indexer.d.ts.map +1 -1
- package/daemon/dist/domain/slices/slice-indexer.js +23 -0
- package/daemon/dist/domain/slices/slice-indexer.js.map +1 -1
- 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/topology-converge.d.ts +97 -0
- package/daemon/dist/domain/topology-converge.d.ts.map +1 -0
- package/daemon/dist/domain/topology-converge.js +70 -0
- package/daemon/dist/domain/topology-converge.js.map +1 -0
- package/daemon/dist/domain/types.d.ts +85 -3
- package/daemon/dist/domain/types.d.ts.map +1 -1
- package/daemon/dist/domain/types.js.map +1 -1
- package/daemon/dist/domain/whoami-service.d.ts +8 -0
- package/daemon/dist/domain/whoami-service.d.ts.map +1 -1
- package/daemon/dist/domain/whoami-service.js +1 -0
- package/daemon/dist/domain/whoami-service.js.map +1 -1
- package/daemon/dist/domain/workflow-runtime.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-runtime.js +9 -1
- package/daemon/dist/domain/workflow-runtime.js.map +1 -1
- package/daemon/dist/domain/workflow-spec-cache.d.ts +41 -0
- package/daemon/dist/domain/workflow-spec-cache.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-spec-cache.js +63 -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 +156 -3
- package/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -1
- 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.map +1 -1
- package/daemon/dist/index.js +11 -0
- package/daemon/dist/index.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/ps.js +4 -1
- package/daemon/dist/routes/ps.js.map +1 -1
- 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-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 +134 -4
- 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/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 +10 -0
- package/daemon/dist/server.d.ts.map +1 -1
- package/daemon/dist/server.js +11 -0
- package/daemon/dist/server.js.map +1 -1
- package/daemon/dist/startup.d.ts.map +1 -1
- package/daemon/dist/startup.js +46 -4
- package/daemon/dist/startup.js.map +1 -1
- package/daemon/docs/reference/getting-started.md +69 -0
- package/daemon/specs/agents/orchestration/orchestrator/guidance/role.md +28 -4
- package/daemon/specs/agents/shared/skills/core/openrig-user/SKILL.md +361 -15
- package/daemon/specs/agents/shared/skills/core/rig-lifecycle/SKILL.md +2 -2
- package/daemon/specs/rigs/launch/conveyor/rig.yaml +1 -1
- 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/add.d.ts +4 -0
- package/dist/commands/add.d.ts.map +1 -0
- package/dist/commands/add.js +115 -0
- package/dist/commands/add.js.map +1 -0
- package/dist/commands/archive.d.ts +10 -0
- package/dist/commands/archive.d.ts.map +1 -0
- package/dist/commands/archive.js +68 -0
- package/dist/commands/archive.js.map +1 -0
- package/dist/commands/bootstrap.js +2 -2
- package/dist/commands/bootstrap.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 +40 -5
- package/dist/commands/config-init-workspace.js.map +1 -1
- package/dist/commands/discover.js +2 -2
- package/dist/commands/discover.js.map +1 -1
- package/dist/commands/down.d.ts +1 -1
- package/dist/commands/down.d.ts.map +1 -1
- package/dist/commands/down.js +91 -3
- package/dist/commands/down.js.map +1 -1
- package/dist/commands/ps.d.ts.map +1 -1
- package/dist/commands/ps.js +72 -10
- 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.map +1 -1
- package/dist/commands/send.js +11 -0
- package/dist/commands/send.js.map +1 -1
- package/dist/commands/setup.d.ts +7 -0
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +28 -1
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +35 -2
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/unarchive.d.ts +10 -0
- package/dist/commands/unarchive.d.ts.map +1 -0
- package/dist/commands/unarchive.js +53 -0
- package/dist/commands/unarchive.js.map +1 -0
- package/dist/commands/up.d.ts.map +1 -1
- package/dist/commands/up.js +97 -0
- package/dist/commands/up.js.map +1 -1
- package/dist/commands/whoami.d.ts.map +1 -1
- package/dist/commands/whoami.js +4 -1
- package/dist/commands/whoami.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 +141 -4
- 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 +140 -10
- package/dist/commands/workspace.js.map +1 -1
- package/dist/daemon-lifecycle.d.ts +48 -1
- package/dist/daemon-lifecycle.d.ts.map +1 -1
- package/dist/daemon-lifecycle.js +57 -2
- package/dist/daemon-lifecycle.js.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -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/dist/mcp-server.d.ts.map +1 -1
- package/dist/mcp-server.js +29 -0
- package/dist/mcp-server.js.map +1 -1
- package/dist/release-surface/affected-skills.d.ts +49 -0
- package/dist/release-surface/affected-skills.d.ts.map +1 -0
- package/dist/release-surface/affected-skills.js +153 -0
- package/dist/release-surface/affected-skills.js.map +1 -0
- package/dist/release-surface/extract-surface.d.ts +23 -0
- package/dist/release-surface/extract-surface.d.ts.map +1 -0
- package/dist/release-surface/extract-surface.js +193 -0
- package/dist/release-surface/extract-surface.js.map +1 -0
- package/dist/release-surface/generate.d.ts +2 -0
- package/dist/release-surface/generate.d.ts.map +1 -0
- package/dist/release-surface/generate.js +51 -0
- package/dist/release-surface/generate.js.map +1 -0
- package/dist/release-surface/surface-diff.d.ts +40 -0
- package/dist/release-surface/surface-diff.d.ts.map +1 -0
- package/dist/release-surface/surface-diff.js +212 -0
- package/dist/release-surface/surface-diff.js.map +1 -0
- package/package.json +2 -2
- package/ui/dist/assets/index-CrJgCmkX.js +552 -0
- package/ui/dist/index.html +1 -1
- package/ui/dist/assets/index-Rl3ZBrUg.js +0 -547
package/dist/commands/down.js
CHANGED
|
@@ -4,7 +4,57 @@ import { getDaemonStatus, getDaemonUrl } from "../daemon-lifecycle.js";
|
|
|
4
4
|
import { realDeps } from "./daemon.js";
|
|
5
5
|
const LONG_RUNNING_TIMEOUT_MS = 45_000;
|
|
6
6
|
/**
|
|
7
|
-
* `rig down
|
|
7
|
+
* Resolve a `rig down` handle (rig name OR id) to a concrete rig id, mirroring
|
|
8
|
+
* the `/api/rigs/summary` path `rig up` uses. Resolution is a PRE-STEP: the
|
|
9
|
+
* existing teardown + guards downstream are unchanged; this only maps the
|
|
10
|
+
* handle to an id.
|
|
11
|
+
*
|
|
12
|
+
* Safety order (destructive-op):
|
|
13
|
+
* 1. id-exact-match FIRST, across ALL rigs incl. archived - an id is unique, so
|
|
14
|
+
* it is never ambiguous, and an archived rig's id must still reach the
|
|
15
|
+
* canonical teardown id path (AC-2 unchanged).
|
|
16
|
+
* 2. else name-filter over ACTIVE (non-archived) rigs only:
|
|
17
|
+
* - exactly 1 active match -> resolve to that id;
|
|
18
|
+
* - >1 active matches -> AMBIGUOUS: halt, never guess (load-bearing AC-3);
|
|
19
|
+
* - 0 active matches -> NOT_FOUND: halt, honest error (AC-4).
|
|
20
|
+
*
|
|
21
|
+
* `/api/rigs/summary` defaults to ACTIVE-only and exposes `archivedAt`; we fetch
|
|
22
|
+
* with `includeArchived=true` so an archived id still id-matches, then filter
|
|
23
|
+
* names to active. So an active+archived same-name pair is NOT ambiguous (only
|
|
24
|
+
* the active candidate counts), and an archived-only name does not resolve by
|
|
25
|
+
* name (use the id, or the archive path).
|
|
26
|
+
*/
|
|
27
|
+
async function resolveRigHandle(client, handle) {
|
|
28
|
+
let summaries;
|
|
29
|
+
try {
|
|
30
|
+
// includeArchived=true so an archived rig's id still id-matches below
|
|
31
|
+
// (preserving today's `rig down <id>` path); names are filtered to active.
|
|
32
|
+
const res = await client.get("/api/rigs/summary?includeArchived=true");
|
|
33
|
+
if (res.status !== 200 || !Array.isArray(res.data)) {
|
|
34
|
+
return { kind: "passthrough", handle };
|
|
35
|
+
}
|
|
36
|
+
summaries = res.data;
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
return { kind: "passthrough", handle };
|
|
40
|
+
}
|
|
41
|
+
// 1. id-exact-match first, across ALL rigs incl. archived (AC-2: down by id,
|
|
42
|
+
// unchanged; ids are never ambiguous; archived ids still reach teardown).
|
|
43
|
+
if (summaries.some((r) => r.id === handle)) {
|
|
44
|
+
return { kind: "resolved", id: handle };
|
|
45
|
+
}
|
|
46
|
+
// 2. name-filter over ACTIVE (non-archived) rigs only, symmetric with `up`.
|
|
47
|
+
const activeNameMatches = summaries.filter((r) => r.name === handle && r.archivedAt == null);
|
|
48
|
+
if (activeNameMatches.length === 1) {
|
|
49
|
+
return { kind: "resolved", id: activeNameMatches[0].id };
|
|
50
|
+
}
|
|
51
|
+
if (activeNameMatches.length > 1) {
|
|
52
|
+
return { kind: "ambiguous", name: handle, ids: activeNameMatches.map((r) => r.id) };
|
|
53
|
+
}
|
|
54
|
+
return { kind: "not_found", handle };
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* `rig down <rig>` - tear down a rig by name or id.
|
|
8
58
|
* @param depsOverride - injectable deps for testing
|
|
9
59
|
* @returns Commander command
|
|
10
60
|
*/
|
|
@@ -12,12 +62,12 @@ export function downCommand(depsOverride) {
|
|
|
12
62
|
const cmd = new Command("down").description("Tear down a rig");
|
|
13
63
|
const getDepsF = () => depsOverride ?? { lifecycleDeps: realDeps(), clientFactory: (url) => new DaemonClient(url) };
|
|
14
64
|
cmd
|
|
15
|
-
.argument("<
|
|
65
|
+
.argument("<rig>", "Rig name or id to tear down")
|
|
16
66
|
.option("--delete", "Delete rig record after stopping")
|
|
17
67
|
.option("--force", "Kill sessions immediately")
|
|
18
68
|
.option("--snapshot", "Take snapshot before teardown")
|
|
19
69
|
.option("--json", "JSON output for agents")
|
|
20
|
-
.action(async (
|
|
70
|
+
.action(async (rigHandle, opts) => {
|
|
21
71
|
const deps = getDepsF();
|
|
22
72
|
const status = await getDaemonStatus(deps.lifecycleDeps);
|
|
23
73
|
if (status.state !== "running" || status.healthy === false) {
|
|
@@ -26,6 +76,44 @@ export function downCommand(depsOverride) {
|
|
|
26
76
|
return;
|
|
27
77
|
}
|
|
28
78
|
const client = deps.clientFactory(getDaemonUrl(status));
|
|
79
|
+
// Resolve the handle (name OR id) to a concrete id BEFORE the teardown POST.
|
|
80
|
+
// Ambiguous/not-found halt here and never reach `/api/down` - for a
|
|
81
|
+
// destructive op, ambiguity must stop, never guess (AC-3 load-bearing).
|
|
82
|
+
const resolution = await resolveRigHandle(client, rigHandle);
|
|
83
|
+
if (resolution.kind === "ambiguous") {
|
|
84
|
+
const fact = `'${resolution.name}' matches ${resolution.ids.length} rigs.`;
|
|
85
|
+
const consequence = "Refusing to tear down: an ambiguous name could destroy the wrong rig.";
|
|
86
|
+
const action = `Re-run with the specific id, e.g. ${resolution.ids.map((id) => `rig down ${id}`).join(" | ")}`;
|
|
87
|
+
if (opts.json) {
|
|
88
|
+
console.log(JSON.stringify({ error: { fact, consequence, action, candidates: resolution.ids } }));
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
console.error(`Error: ${fact}`);
|
|
92
|
+
console.error(` ${consequence}`);
|
|
93
|
+
console.error(` ${action}`);
|
|
94
|
+
}
|
|
95
|
+
process.exitCode = 2;
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
if (resolution.kind === "not_found") {
|
|
99
|
+
const fact = `No rig found matching '${resolution.handle}'.`;
|
|
100
|
+
const consequence = "Nothing was torn down.";
|
|
101
|
+
const action = "List rigs with: rig ps";
|
|
102
|
+
if (opts.json) {
|
|
103
|
+
console.log(JSON.stringify({ error: { fact, consequence, action } }));
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
console.error(`Error: ${fact}`);
|
|
107
|
+
console.error(` ${consequence}`);
|
|
108
|
+
console.error(` ${action}`);
|
|
109
|
+
}
|
|
110
|
+
process.exitCode = 2;
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
// resolved -> the looked-up id; passthrough -> the raw handle (summary
|
|
114
|
+
// unavailable; daemon resolves by exact id, 404s if absent). Either way
|
|
115
|
+
// the SAME existing teardown path + guards run below - no forked path.
|
|
116
|
+
const rigId = resolution.kind === "resolved" ? resolution.id : resolution.handle;
|
|
29
117
|
const res = await client.post("/api/down", {
|
|
30
118
|
rigId,
|
|
31
119
|
delete: opts.delete ?? false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"down.js","sourceRoot":"","sources":["../../src/commands/down.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,YAAY,EAAsB,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAavC,MAAM,uBAAuB,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"down.js","sourceRoot":"","sources":["../../src/commands/down.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ps.d.ts","sourceRoot":"","sources":["../../src/commands/ps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAe,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,KAAK,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"ps.d.ts","sourceRoot":"","sources":["../../src/commands/ps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAe,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,KAAK,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AA6K9F,MAAM,WAAW,MAAO,SAAQ,UAAU;IACxC;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,MAAM,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;IAC/D,YAAY,CAAC,EAAE,CACb,IAAI,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAC/C,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,IAAI,CAAC,EAAE,uBAAuB,KAC3B,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC;CAC7C;AAgPD;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAmPxD"}
|
package/dist/commands/ps.js
CHANGED
|
@@ -53,6 +53,8 @@ const ALLOWED_RIG_FIELDS = new Set([
|
|
|
53
53
|
"rigName",
|
|
54
54
|
"nodeCount",
|
|
55
55
|
"runningCount",
|
|
56
|
+
"activeCount",
|
|
57
|
+
"hasWorkCount",
|
|
56
58
|
"status",
|
|
57
59
|
"lifecycleState",
|
|
58
60
|
"uptime",
|
|
@@ -74,6 +76,9 @@ const ALLOWED_NODE_FIELDS = new Set([
|
|
|
74
76
|
"tmuxAttachCommand",
|
|
75
77
|
"resumeCommand",
|
|
76
78
|
"latestError",
|
|
79
|
+
"terminalActive",
|
|
80
|
+
"hasAssignedWork",
|
|
81
|
+
"pendingWorkCount",
|
|
77
82
|
"agentActivity",
|
|
78
83
|
"contextUsage",
|
|
79
84
|
]);
|
|
@@ -241,6 +246,12 @@ function applyNodeFilter(entries, filter) {
|
|
|
241
246
|
return true;
|
|
242
247
|
});
|
|
243
248
|
}
|
|
249
|
+
// OPR.0.3.3.19 - build the /api/ps path, opting archived rigs back in when
|
|
250
|
+
// --include-archived is set. Default (no flag) leaves the daemon's
|
|
251
|
+
// archived-excluding default in force.
|
|
252
|
+
function psApiPath(opts) {
|
|
253
|
+
return opts.includeArchived ? "/api/ps?includeArchived=true" : "/api/ps";
|
|
254
|
+
}
|
|
244
255
|
function selectFields(entries, fields) {
|
|
245
256
|
return entries.map((e) => {
|
|
246
257
|
const out = {};
|
|
@@ -331,6 +342,7 @@ Examples:
|
|
|
331
342
|
rig ps --filter name-prefix=demo Filter by rig-name prefix
|
|
332
343
|
rig ps --nodes Per-node detail (human; truncated to ${HUMAN_NODE_BUDGET})
|
|
333
344
|
rig ps --nodes --json --limit 50 Bounded per-node JSON envelope
|
|
345
|
+
rig ps --include-archived Include archived rigs (marked with *); hidden by default
|
|
334
346
|
rig ps --nodes --active Show only nodes whose agentActivity.state == running (PL-019)
|
|
335
347
|
rig ps --nodes --filter agentActivity.state=running
|
|
336
348
|
Same as --active (the explicit form)
|
|
@@ -344,11 +356,12 @@ Other keys are rejected. agentActivity.state is node-level (use with --nodes);
|
|
|
344
356
|
allowed values: running, needs_input, idle, unknown.
|
|
345
357
|
|
|
346
358
|
--fields accepts (rig-level): rigId, name, rigName, nodeCount, runningCount,
|
|
347
|
-
status, lifecycleState, uptime, latestSnapshot.
|
|
359
|
+
activeCount, hasWorkCount, status, lifecycleState, uptime, latestSnapshot.
|
|
348
360
|
--fields accepts (node-level, with --nodes): rigId, rigName, logicalId, podId,
|
|
349
361
|
podNamespace, canonicalSessionName, nodeKind, runtime, sessionStatus,
|
|
350
362
|
startupStatus, restoreOutcome, lifecycleState, tmuxAttachCommand,
|
|
351
|
-
resumeCommand, latestError,
|
|
363
|
+
resumeCommand, latestError, terminalActive, hasAssignedWork,
|
|
364
|
+
pendingWorkCount, agentActivity. Other keys are rejected.
|
|
352
365
|
\`name\` is rig-level only; for node entries use \`rigName\`. Nested-field
|
|
353
366
|
projection (e.g. \`agentActivity.state\`) is not supported in this slice; pass
|
|
354
367
|
\`agentActivity\` to project the whole object and read the nested value
|
|
@@ -374,6 +387,7 @@ Exit codes:
|
|
|
374
387
|
.option("--summary", "Emit aggregate-only output (counts by status/lifecycle)")
|
|
375
388
|
.option("--filter <key=value>", "Filter entries; supported keys: status, lifecycleState, name-prefix, name, agentActivity.state")
|
|
376
389
|
.option("--active", "Shortcut for --filter agentActivity.state=running (PL-019)")
|
|
390
|
+
.option("--include-archived", "Include archived rigs (default hides them); parity with 'rig stream list --include-archived'")
|
|
377
391
|
.option("--host <id>", "Run on a remote host declared in ~/.openrig/hosts.yaml (CLI-side ssh shell-out)")
|
|
378
392
|
.action(async (opts) => {
|
|
379
393
|
const deps = getDepsF();
|
|
@@ -445,7 +459,7 @@ Exit codes:
|
|
|
445
459
|
await handleNodes(client, opts, parsedFilter, limit, fields, useEnvelope);
|
|
446
460
|
return;
|
|
447
461
|
}
|
|
448
|
-
const res = await client.get(
|
|
462
|
+
const res = await client.get(psApiPath(opts));
|
|
449
463
|
if (res.status >= 400) {
|
|
450
464
|
console.error(`Failed to fetch rig list from daemon (HTTP ${res.status}). Check daemon status with: rig status`);
|
|
451
465
|
process.exitCode = 2;
|
|
@@ -502,10 +516,21 @@ Exit codes:
|
|
|
502
516
|
// Human output: apply default truncation budget unless --full.
|
|
503
517
|
const humanList = (opts.full || limit !== null) ? limited : limited.slice(0, HUMAN_RIG_BUDGET);
|
|
504
518
|
const humanTruncated = !opts.full && limit === null && filtered.length > HUMAN_RIG_BUDGET;
|
|
505
|
-
const header = padRigRow("RIG", "NODES", "RUNNING", "STATUS", "LIFECYCLE", "UPTIME", "SNAPSHOT");
|
|
519
|
+
const header = padRigRow("RIG", "NODES", "RUNNING", "ACTIVE", "WORK", "STATUS", "LIFECYCLE", "UPTIME", "SNAPSHOT");
|
|
506
520
|
console.log(header);
|
|
521
|
+
let anyArchivedShown = false;
|
|
507
522
|
for (const e of humanList) {
|
|
508
|
-
|
|
523
|
+
// OPR.0.3.3.19 - archived rigs only appear under --include-archived;
|
|
524
|
+
// mark them with a trailing "*" (legend footer below) so the operator
|
|
525
|
+
// can tell archived from active at a glance.
|
|
526
|
+
if (e.isArchived)
|
|
527
|
+
anyArchivedShown = true;
|
|
528
|
+
console.log(padRigRow(e.isArchived ? `${e.rigName ?? e.name} *` : (e.rigName ?? e.name), String(e.nodeCount), String(e.runningCount),
|
|
529
|
+
// Slice 15 — "—" when daemon predates the field; honest absence.
|
|
530
|
+
e.activeCount !== undefined ? String(e.activeCount) : "—", e.hasWorkCount !== undefined ? String(e.hasWorkCount) : "—", e.status, abbrevRigLifecycle(e.lifecycleState), e.uptime ?? "—", e.latestSnapshot ?? "—"));
|
|
531
|
+
}
|
|
532
|
+
if (anyArchivedShown) {
|
|
533
|
+
console.log("* = archived (hidden from the default view; shown via --include-archived). Reverse with: rig unarchive <rig>");
|
|
509
534
|
}
|
|
510
535
|
if (humanTruncated) {
|
|
511
536
|
const remaining = filtered.length - HUMAN_RIG_BUDGET;
|
|
@@ -520,7 +545,7 @@ Exit codes:
|
|
|
520
545
|
return cmd;
|
|
521
546
|
}
|
|
522
547
|
async function handleNodes(client, opts, parsedFilter, limit, fields, useEnvelope) {
|
|
523
|
-
const rigRes = await client.get(
|
|
548
|
+
const rigRes = await client.get(psApiPath(opts));
|
|
524
549
|
if (rigRes.status >= 400) {
|
|
525
550
|
console.error(`Failed to fetch rig list from daemon (HTTP ${rigRes.status}). Check daemon status with: rig status`);
|
|
526
551
|
process.exitCode = 2;
|
|
@@ -578,14 +603,17 @@ async function handleNodes(client, opts, parsedFilter, limit, fields, useEnvelop
|
|
|
578
603
|
}
|
|
579
604
|
const humanList = (opts.full || limit !== null) ? limited : limited.slice(0, HUMAN_NODE_BUDGET);
|
|
580
605
|
const humanTruncated = !opts.full && limit === null && filtered.length > HUMAN_NODE_BUDGET;
|
|
581
|
-
const header = padNodeRow("RIG", "POD", "MEMBER", "SESSION", "RUNTIME", "STATUS", "STARTUP", "LIFECYCLE", "ACTIVITY", "CTX", "RESTORE", "ERROR");
|
|
606
|
+
const header = padNodeRow("RIG", "POD", "MEMBER", "SESSION", "RUNTIME", "STATUS", "STARTUP", "LIFECYCLE", "TERMINAL", "WORK", "ACTIVITY", "CTX", "RESTORE", "ERROR");
|
|
582
607
|
console.log(header);
|
|
583
608
|
for (const n of humanList) {
|
|
584
609
|
const parts = n.logicalId.split(".");
|
|
585
610
|
const pod = n.podNamespace ?? (parts.length > 1 ? parts[0] : "—");
|
|
586
611
|
const member = parts.length > 1 ? parts.slice(1).join(".") : n.logicalId;
|
|
587
612
|
const rig = `${n.rigName}#${n.rigId}`;
|
|
588
|
-
console.log(padNodeRow(rig, pod, member, n.canonicalSessionName ?? "—", n.runtime ?? "—", n.sessionStatus ?? "—", n.startupStatus ?? "—", abbrevNodeLifecycle(n.lifecycleState),
|
|
613
|
+
console.log(padNodeRow(rig, pod, member, n.canonicalSessionName ?? "—", n.runtime ?? "—", n.sessionStatus ?? "—", n.startupStatus ?? "—", abbrevNodeLifecycle(n.lifecycleState),
|
|
614
|
+
// Slice 15 — terminal-active + has-work as DISTINCT columns
|
|
615
|
+
// (non-inference contract: never collapsed into one signal).
|
|
616
|
+
formatTerminalActive(n.terminalActive), formatHasWork(n.hasAssignedWork, n.pendingWorkCount), formatActivity(n.agentActivity), formatContextUsage(n.contextUsage), n.restoreOutcome, n.latestError ? truncate(n.latestError, 30) : "—"));
|
|
589
617
|
}
|
|
590
618
|
if (humanTruncated) {
|
|
591
619
|
const remaining = filtered.length - HUMAN_NODE_BUDGET;
|
|
@@ -614,18 +642,24 @@ function truncate(s, max) {
|
|
|
614
642
|
function fitCell(value, width) {
|
|
615
643
|
return truncate(value, width).padEnd(width);
|
|
616
644
|
}
|
|
617
|
-
function padRigRow(rig, nodes, running, status, lifecycle, uptime, snapshot) {
|
|
645
|
+
function padRigRow(rig, nodes, running, active, work, status, lifecycle, uptime, snapshot) {
|
|
618
646
|
return [
|
|
619
647
|
fitCell(rig, 24),
|
|
620
648
|
fitCell(nodes, 7),
|
|
621
649
|
fitCell(running, 9),
|
|
650
|
+
// Slice 15 — distinct columns for the three orthogonal primitives.
|
|
651
|
+
// RUNNING = process-alive (legacy); ACTIVE = terminal-active (tmux);
|
|
652
|
+
// WORK = has-assigned-work (queue). UI/CLI render them separately so
|
|
653
|
+
// operators see which dimension differs at a glance.
|
|
654
|
+
fitCell(active, 8),
|
|
655
|
+
fitCell(work, 6),
|
|
622
656
|
fitCell(status, 10),
|
|
623
657
|
fitCell(lifecycle, 11),
|
|
624
658
|
fitCell(uptime, 11),
|
|
625
659
|
snapshot,
|
|
626
660
|
].join("");
|
|
627
661
|
}
|
|
628
|
-
function padNodeRow(rig, pod, member, session, runtime, status, startup, lifecycle, activity, ctx, restore, error) {
|
|
662
|
+
function padNodeRow(rig, pod, member, session, runtime, status, startup, lifecycle, terminal, work, activity, ctx, restore, error) {
|
|
629
663
|
return [
|
|
630
664
|
fitCell(rig, 30),
|
|
631
665
|
fitCell(pod, 10),
|
|
@@ -635,12 +669,38 @@ function padNodeRow(rig, pod, member, session, runtime, status, startup, lifecyc
|
|
|
635
669
|
fitCell(status, 10),
|
|
636
670
|
fitCell(startup, 10),
|
|
637
671
|
fitCell(lifecycle, 11),
|
|
672
|
+
// Slice 15 — distinct TERMINAL + WORK columns.
|
|
673
|
+
fitCell(terminal, 9),
|
|
674
|
+
fitCell(work, 6),
|
|
638
675
|
fitCell(activity, 12),
|
|
639
676
|
fitCell(ctx, 6),
|
|
640
677
|
fitCell(restore, 10),
|
|
641
678
|
error,
|
|
642
679
|
].join("");
|
|
643
680
|
}
|
|
681
|
+
// Slice 15 — render the terminal-active primitive honestly.
|
|
682
|
+
// `null` (no signal) is rendered distinctly from `false` (silent past
|
|
683
|
+
// threshold) so an operator can see whether the daemon hasn't observed
|
|
684
|
+
// the seat yet vs has observed and seen no output.
|
|
685
|
+
function formatTerminalActive(t) {
|
|
686
|
+
if (t === true)
|
|
687
|
+
return "active";
|
|
688
|
+
if (t === false)
|
|
689
|
+
return "idle";
|
|
690
|
+
return "—"; // null / undefined → no signal
|
|
691
|
+
}
|
|
692
|
+
// Slice 15 — render has-work with a hint of how much.
|
|
693
|
+
// Pending count appended in parens when known and > 1 keeps the column
|
|
694
|
+
// compact while remaining honest.
|
|
695
|
+
function formatHasWork(has, count) {
|
|
696
|
+
if (has === undefined)
|
|
697
|
+
return "—";
|
|
698
|
+
if (!has)
|
|
699
|
+
return "no";
|
|
700
|
+
if (typeof count === "number" && count > 1)
|
|
701
|
+
return `${count}`;
|
|
702
|
+
return "yes";
|
|
703
|
+
}
|
|
644
704
|
// PL-012: render context-usage as a 5-char cell — "<percent>%" when
|
|
645
705
|
// known + fresh, "<percent>%*" when known but stale, "??" when unknown.
|
|
646
706
|
// 4-char width keeps the table compact without truncating two-digit
|
|
@@ -680,6 +740,8 @@ async function runCrossHostPs(hostId, opts, deps) {
|
|
|
680
740
|
argv.push("--summary");
|
|
681
741
|
if (opts.filter !== undefined)
|
|
682
742
|
argv.push("--filter", opts.filter);
|
|
743
|
+
if (opts.includeArchived)
|
|
744
|
+
argv.push("--include-archived");
|
|
683
745
|
if (opts.json)
|
|
684
746
|
argv.push("--json");
|
|
685
747
|
const result = await runner(host, argv);
|
package/dist/commands/ps.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ps.js","sourceRoot":"","sources":["../../src/commands/ps.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ps.js","sourceRoot":"","sources":["../../src/commands/ps.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/queue.d.ts
CHANGED
|
@@ -12,5 +12,11 @@ import type { StatusDeps } from "./status.js";
|
|
|
12
12
|
*/
|
|
13
13
|
export interface QueueDeps extends StatusDeps {
|
|
14
14
|
}
|
|
15
|
+
export interface ResolveBodyOpts {
|
|
16
|
+
body?: string;
|
|
17
|
+
bodyFile?: string;
|
|
18
|
+
}
|
|
19
|
+
export declare function defaultStdinReader(): Promise<string>;
|
|
20
|
+
export declare function resolveQueueBody(opts: ResolveBodyOpts, stdinReader?: () => Promise<string>): Promise<string>;
|
|
15
21
|
export declare function queueCommand(depsOverride?: QueueDeps): Command;
|
|
16
22
|
//# sourceMappingURL=queue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/commands/queue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/commands/queue.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;;;;;;GASG;AAEH,MAAM,WAAW,SAAU,SAAQ,UAAU;CAAG;AAqChD,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAgB1D;AAED,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,eAAe,EACrB,WAAW,GAAE,MAAM,OAAO,CAAC,MAAM,CAAsB,GACtD,OAAO,CAAC,MAAM,CAAC,CAwCjB;AAoBD,wBAAgB,YAAY,CAAC,YAAY,CAAC,EAAE,SAAS,GAAG,OAAO,CA+d9D"}
|
package/dist/commands/queue.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
1
2
|
import { Command } from "commander";
|
|
2
3
|
import { DaemonClient } from "../client.js";
|
|
3
4
|
import { getDaemonStatus, getDaemonUrl } from "../daemon-lifecycle.js";
|
|
@@ -23,6 +24,75 @@ function printResult(json, body, status) {
|
|
|
23
24
|
if (status >= 400)
|
|
24
25
|
process.exitCode = status >= 500 ? 2 : 1;
|
|
25
26
|
}
|
|
27
|
+
export async function defaultStdinReader() {
|
|
28
|
+
return new Promise((resolve, reject) => {
|
|
29
|
+
let data = "";
|
|
30
|
+
process.stdin.setEncoding("utf8");
|
|
31
|
+
process.stdin.on("data", (chunk) => { data += chunk; });
|
|
32
|
+
process.stdin.on("end", () => resolve(data));
|
|
33
|
+
process.stdin.on("error", reject);
|
|
34
|
+
if (process.stdin.isTTY) {
|
|
35
|
+
// No pipe is connected to stdin; resolve immediately to empty
|
|
36
|
+
// rather than blocking forever waiting for data on a TTY. The
|
|
37
|
+
// empty body then flows through to the daemon's content
|
|
38
|
+
// validation (queue-repository owns the body contract); the CLI
|
|
39
|
+
// does not error locally on empty stdin.
|
|
40
|
+
resolve("");
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
export async function resolveQueueBody(opts, stdinReader = defaultStdinReader) {
|
|
45
|
+
const hasInline = opts.body !== undefined && opts.body !== "";
|
|
46
|
+
const hasFile = opts.bodyFile !== undefined && opts.bodyFile !== "";
|
|
47
|
+
if (hasInline && hasFile) {
|
|
48
|
+
const err = new Error("--body and --body-file are mutually exclusive.");
|
|
49
|
+
err.fact = "Both --body and --body-file were passed; the body source is ambiguous.";
|
|
50
|
+
err.consequence = "rig queue create did not run; daemon was not contacted.";
|
|
51
|
+
err.action = "Pass exactly one of --body or --body-file.";
|
|
52
|
+
throw err;
|
|
53
|
+
}
|
|
54
|
+
if (!hasInline && !hasFile) {
|
|
55
|
+
const err = new Error("Missing required body input.");
|
|
56
|
+
err.fact = "Neither --body nor --body-file was provided.";
|
|
57
|
+
err.consequence = "rig queue create did not run; daemon was not contacted.";
|
|
58
|
+
err.action = "Pass the qitem body via --body \"<text>\" or --body-file <path> (use - for stdin).";
|
|
59
|
+
throw err;
|
|
60
|
+
}
|
|
61
|
+
if (hasInline) {
|
|
62
|
+
if (opts.body === "-")
|
|
63
|
+
return stdinReader();
|
|
64
|
+
return opts.body;
|
|
65
|
+
}
|
|
66
|
+
// hasFile path
|
|
67
|
+
if (opts.bodyFile === "-")
|
|
68
|
+
return stdinReader();
|
|
69
|
+
const absPath = opts.bodyFile;
|
|
70
|
+
if (!fs.existsSync(absPath)) {
|
|
71
|
+
const err = new Error(`--body-file path does not exist: ${absPath}`);
|
|
72
|
+
err.fact = `--body-file path does not exist: ${absPath}`;
|
|
73
|
+
err.consequence = "rig queue create did not run; daemon was not contacted.";
|
|
74
|
+
err.action = "Check the path; pass an absolute path; or use --body-file - to read from stdin.";
|
|
75
|
+
throw err;
|
|
76
|
+
}
|
|
77
|
+
const stat = fs.statSync(absPath);
|
|
78
|
+
if (!stat.isFile()) {
|
|
79
|
+
const err = new Error(`--body-file path is not a regular file: ${absPath}`);
|
|
80
|
+
err.fact = `--body-file path is not a regular file: ${absPath}`;
|
|
81
|
+
err.consequence = "rig queue create did not run; daemon was not contacted.";
|
|
82
|
+
err.action = "Pass a path to a readable file (not a directory, symlink-to-directory, or block device). Use --body-file - to read from stdin.";
|
|
83
|
+
throw err;
|
|
84
|
+
}
|
|
85
|
+
return fs.readFileSync(absPath, "utf8");
|
|
86
|
+
}
|
|
87
|
+
function emitBodyResolveError(err, json) {
|
|
88
|
+
if (json) {
|
|
89
|
+
console.log(JSON.stringify({ ok: false, error: { fact: err.fact ?? err.message, consequence: err.consequence ?? "", action: err.action ?? "" } }, null, 2));
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
process.stderr.write(`Error: ${err.fact ?? err.message}\n${err.consequence ?? ""}\n${err.action ?? ""}\n`);
|
|
93
|
+
}
|
|
94
|
+
process.exitCode = 1;
|
|
95
|
+
}
|
|
26
96
|
function resolveCurrentSession(explicit, optionName) {
|
|
27
97
|
const session = explicit ?? readOpenRigEnv("OPENRIG_SESSION_NAME", "RIGGED_SESSION_NAME");
|
|
28
98
|
if (session)
|
|
@@ -42,24 +112,52 @@ export function queueCommand(depsOverride) {
|
|
|
42
112
|
.description("Create a new qitem")
|
|
43
113
|
.requiredOption("--source <session>", "Source session")
|
|
44
114
|
.requiredOption("--destination <session>", "Destination session (the seat that owns the work)")
|
|
45
|
-
.
|
|
115
|
+
.option("--body <text>", "Qitem body inline (use - to read from stdin; mutually exclusive with --body-file)")
|
|
116
|
+
.option("--body-file <path>", "Read qitem body from a file path (use - for stdin; mutually exclusive with --body). Kills the backtick-shell-corruption class for multiline bodies.")
|
|
117
|
+
.option("--mission <id>", "First-class mission scope; translated to a mission:<id> tag (composes with --tags)")
|
|
118
|
+
.option("--slice <id>", "First-class slice scope; translated to a slice:<id> tag (composes with --tags)")
|
|
46
119
|
.option("--priority <priority>", "Priority: routine | urgent | critical", "routine")
|
|
47
120
|
.option("--tier <tier>", "Tier (e.g. fast, routine, deep, critical) — drives SLA")
|
|
48
|
-
.option("--tags <tags>", "Comma-separated tags")
|
|
121
|
+
.option("--tags <tags>", "Comma-separated tags (composes with --mission and --slice)")
|
|
49
122
|
.option("--expires-at <iso>", "ISO timestamp at which the qitem expires")
|
|
50
123
|
.option("--id <qitemId>", "Idempotent qitem_id (skip if not provided)")
|
|
51
124
|
.option("--target-repo <name>", "PL-007: typed repo scope (must match a repo in the source rig's RigSpec.workspace.repos[])")
|
|
52
125
|
.option("--no-nudge", "Suppress the default destination nudge (cold-queue)")
|
|
53
126
|
.option("--json", "JSON output for agents")
|
|
54
127
|
.action(async (opts) => {
|
|
128
|
+
// OPR.0.3.2.21.FR-4(a) — resolve body BEFORE contacting the daemon
|
|
129
|
+
// so a missing/ambiguous body fails fast and locally.
|
|
130
|
+
let resolvedBody;
|
|
131
|
+
try {
|
|
132
|
+
resolvedBody = await resolveQueueBody({ body: opts.body, bodyFile: opts.bodyFile });
|
|
133
|
+
}
|
|
134
|
+
catch (err) {
|
|
135
|
+
emitBodyResolveError(err, opts.json ?? false);
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
55
138
|
const deps = getDeps();
|
|
56
|
-
|
|
139
|
+
// OPR.0.3.2.21.FR-4(b) — first-class --mission / --slice flags
|
|
140
|
+
// translate to canonical mission:<id> / slice:<id> tags. Composes
|
|
141
|
+
// with --tags (any flag-derived tags prepend; explicit --tags
|
|
142
|
+
// append). De-duplicates so passing both --mission X and
|
|
143
|
+
// --tags mission:X yields one mission:X tag.
|
|
144
|
+
const fromTagsArg = opts.tags ? opts.tags.split(",").map((s) => s.trim()).filter(Boolean) : [];
|
|
145
|
+
const fromFlags = [];
|
|
146
|
+
if (opts.mission)
|
|
147
|
+
fromFlags.push(`mission:${opts.mission}`);
|
|
148
|
+
if (opts.slice)
|
|
149
|
+
fromFlags.push(`slice:${opts.slice}`);
|
|
150
|
+
const merged = [...fromFlags, ...fromTagsArg];
|
|
151
|
+
const seen = new Set();
|
|
152
|
+
const dedupedTags = merged.filter((t) => { if (seen.has(t))
|
|
153
|
+
return false; seen.add(t); return true; });
|
|
154
|
+
const tags = dedupedTags.length > 0 ? dedupedTags : undefined;
|
|
57
155
|
await withClient(deps, async (client) => {
|
|
58
156
|
const res = await client.post("/api/queue/create", {
|
|
59
157
|
qitemId: opts.id,
|
|
60
158
|
sourceSession: opts.source,
|
|
61
159
|
destinationSession: opts.destination,
|
|
62
|
-
body:
|
|
160
|
+
body: resolvedBody,
|
|
63
161
|
priority: opts.priority,
|
|
64
162
|
tier: opts.tier,
|
|
65
163
|
tags,
|
|
@@ -108,7 +206,7 @@ export function queueCommand(depsOverride) {
|
|
|
108
206
|
});
|
|
109
207
|
cmd
|
|
110
208
|
.command("update <qitemId>")
|
|
111
|
-
.description("Mutate qitem state. state=done REQUIRES --closure-reason (one of: handed_off_to, blocked_on, denied, canceled, no-follow-on, escalation)")
|
|
209
|
+
.description("Mutate qitem state. state=done REQUIRES --closure-reason (one of: handed_off_to, blocked_on, denied, canceled, no-follow-on, escalation). Closure ≠ acceptance: handed_off_to records delivery to the next stage; acceptance is the next stage's verdict on its own qitem, not this closure.")
|
|
112
210
|
.option("--actor <session>", "Actor session performing the transition (defaults to OPENRIG_SESSION_NAME)")
|
|
113
211
|
.requiredOption("--state <state>", "New state: pending | in-progress | done | blocked | failed | denied | canceled | handed-off")
|
|
114
212
|
.option("--closure-reason <reason>", "Required for state=done")
|