@openrig/cli 0.5.4 → 0.5.5
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/guidance/openrig-start.md +7 -0
- package/daemon/assets/onboarding/01-world-and-purpose.md +52 -0
- package/daemon/assets/onboarding/02-self-and-competent-action.md +57 -0
- package/daemon/assets/plugins/openrig-core/README.md +5 -2
- package/daemon/assets/plugins/openrig-core/hooks/claude.json +3 -12
- package/daemon/assets/plugins/openrig-core/hooks/codex.json +5 -12
- package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus.cjs +194 -124
- package/daemon/assets/plugins/openrig-core/skills/mission-slice-sop/SKILL.md +18 -23
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/CHANGELOG.md +92 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/REVISION-GUIDE.md +34 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/ROADMAP.md +23 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/ROLLOUT.md +234 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/SKILL.md +404 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/compose.py +653 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/scaffold.sh +34 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/trace-due.sh +32 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/trace-stamp.sh +5 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/trunk-diff.sh +18 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/LEARNED.md +40 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/NOTES.md +9 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/PLAYBOOK.md +5 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/SOP.md +24 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/SPEC.md +54 -0
- package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +2 -0
- package/daemon/assets/plugins/openrig-core/skills/refocusing/SKILL.md +31 -0
- package/daemon/assets/plugins/openrig-core/skills/refocusing/references/refocus.md +22 -0
- package/daemon/assets/plugins/openrig-core/skills/refocusing/scripts/trace-to-root.py +221 -0
- package/daemon/assets/plugins/openrig-core/skills/retiring-and-inheriting-a-seat/SKILL.md +3 -3
- package/daemon/context-packs/onboarding-width/manifest.yaml +11 -0
- package/daemon/context-packs/{world/install/reference-material.md → onboarding-width/public-reference-material.md} +4 -26
- package/daemon/context-packs/{world/install/what-you-can-do.md → onboarding-width/public-what-you-can-do.md} +13 -9
- package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/SKILL.md +1 -1
- package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/attention-queue/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/requirements-writer/SKILL.md +21 -15
- package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +3 -3
- package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/development-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/brainstorming/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/executing-plans/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/using-superpowers/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/writing-plans/manifest.yaml +1 -1
- package/daemon/context-packs/world-example/manifest.yaml +8 -0
- package/daemon/context-packs/world-example/your-world.md +37 -0
- package/daemon/dist/adapters/claude-code-adapter.d.ts +15 -0
- package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
- package/daemon/dist/adapters/claude-code-adapter.js +57 -0
- package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
- package/daemon/dist/build-info.js +3 -3
- package/daemon/dist/db/all-migrations.d.ts.map +1 -1
- package/daemon/dist/db/all-migrations.js +4 -0
- package/daemon/dist/db/all-migrations.js.map +1 -1
- package/daemon/dist/db/migrations/072_thread_seat_map.d.ts +3 -0
- package/daemon/dist/db/migrations/072_thread_seat_map.d.ts.map +1 -0
- package/daemon/dist/db/migrations/072_thread_seat_map.js +22 -0
- package/daemon/dist/db/migrations/072_thread_seat_map.js.map +1 -0
- package/daemon/dist/db/migrations/073_queue_transition_wakes.d.ts +3 -0
- package/daemon/dist/db/migrations/073_queue_transition_wakes.d.ts.map +1 -0
- package/daemon/dist/db/migrations/073_queue_transition_wakes.js +21 -0
- package/daemon/dist/db/migrations/073_queue_transition_wakes.js.map +1 -0
- package/daemon/dist/domain/activity-taxonomy.d.ts +112 -0
- package/daemon/dist/domain/activity-taxonomy.d.ts.map +1 -0
- package/daemon/dist/domain/activity-taxonomy.js +99 -0
- package/daemon/dist/domain/activity-taxonomy.js.map +1 -0
- package/daemon/dist/domain/bind-plan.d.ts +19 -0
- package/daemon/dist/domain/bind-plan.d.ts.map +1 -0
- package/daemon/dist/domain/bind-plan.js +25 -0
- package/daemon/dist/domain/bind-plan.js.map +1 -0
- package/daemon/dist/domain/event-bus.d.ts +6 -0
- package/daemon/dist/domain/event-bus.d.ts.map +1 -1
- package/daemon/dist/domain/event-bus.js +15 -5
- package/daemon/dist/domain/event-bus.js.map +1 -1
- package/daemon/dist/domain/gateway/gateway-process-main.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/gateway-process-main.js +9 -0
- package/daemon/dist/domain/gateway/gateway-process-main.js.map +1 -1
- package/daemon/dist/domain/gateway/gateway-process.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/gateway-process.js +9 -0
- package/daemon/dist/domain/gateway/gateway-process.js.map +1 -1
- package/daemon/dist/domain/gateway/gateway-subsystem.d.ts +80 -0
- package/daemon/dist/domain/gateway/gateway-subsystem.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/gateway-subsystem.js +149 -0
- package/daemon/dist/domain/gateway/gateway-subsystem.js.map +1 -0
- package/daemon/dist/domain/gateway/human-registry.d.ts +109 -0
- package/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/human-registry.js +250 -0
- package/daemon/dist/domain/gateway/human-registry.js.map +1 -1
- package/{dist → daemon/dist/domain/gateway}/slack/config.d.ts +8 -5
- package/daemon/dist/domain/gateway/slack/config.d.ts.map +1 -0
- package/{dist → daemon/dist/domain/gateway}/slack/config.js +8 -6
- package/daemon/dist/domain/gateway/slack/config.js.map +1 -0
- package/{dist → daemon/dist/domain/gateway}/slack/inbound-admission.d.ts +1 -1
- package/daemon/dist/domain/gateway/slack/inbound-admission.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/inbound-admission.js.map +1 -0
- package/{dist → daemon/dist/domain/gateway}/slack/inbound.d.ts +14 -3
- package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -0
- package/{dist → daemon/dist/domain/gateway}/slack/inbound.js +6 -5
- package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/message.d.ts +80 -0
- package/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/message.js +164 -0
- package/daemon/dist/domain/gateway/slack/message.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/outbound-driver.d.ts +54 -0
- package/daemon/dist/domain/gateway/slack/outbound-driver.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/outbound-driver.js +96 -0
- package/daemon/dist/domain/gateway/slack/outbound-driver.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/queue-access.d.ts +53 -0
- package/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/queue-access.js +72 -0
- package/daemon/dist/domain/gateway/slack/queue-access.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/secrets.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/secrets.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/slack-api.d.ts +106 -0
- package/daemon/dist/domain/gateway/slack/slack-api.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/slack-api.js +198 -0
- package/daemon/dist/domain/gateway/slack/slack-api.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +47 -0
- package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/slack-delivery.js +147 -0
- package/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts +21 -0
- package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/slack-subsystem.js +198 -0
- package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +30 -0
- package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/socket-inbound.js +99 -0
- package/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/state-store.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/thread-routing.d.ts +17 -0
- package/daemon/dist/domain/gateway/slack/thread-routing.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/thread-routing.js +35 -0
- package/daemon/dist/domain/gateway/slack/thread-routing.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +56 -0
- package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/thread-seat-map.js +103 -0
- package/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -0
- package/daemon/dist/domain/gateway/spawn-gateway.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/spawn-gateway.js +9 -0
- package/daemon/dist/domain/gateway/spawn-gateway.js.map +1 -1
- package/daemon/dist/domain/gateway/transport.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/transport.js +9 -0
- package/daemon/dist/domain/gateway/transport.js.map +1 -1
- package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
- package/daemon/dist/domain/node-inventory.js +20 -0
- package/daemon/dist/domain/node-inventory.js.map +1 -1
- package/daemon/dist/domain/parked-query.d.ts +81 -0
- package/daemon/dist/domain/parked-query.d.ts.map +1 -0
- package/daemon/dist/domain/parked-query.js +126 -0
- package/daemon/dist/domain/parked-query.js.map +1 -0
- package/daemon/dist/domain/queue-pickup.d.ts +38 -0
- package/daemon/dist/domain/queue-pickup.d.ts.map +1 -0
- package/daemon/dist/domain/queue-pickup.js +67 -0
- package/daemon/dist/domain/queue-pickup.js.map +1 -0
- package/daemon/dist/domain/queue-repository.d.ts +38 -10
- package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
- package/daemon/dist/domain/queue-repository.js +267 -35
- package/daemon/dist/domain/queue-repository.js.map +1 -1
- package/daemon/dist/domain/queue-stuck-sweep.d.ts +77 -0
- package/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -0
- package/daemon/dist/domain/queue-stuck-sweep.js +348 -0
- package/daemon/dist/domain/queue-stuck-sweep.js.map +1 -0
- package/daemon/dist/domain/queue-wake-ladder.d.ts +96 -0
- package/daemon/dist/domain/queue-wake-ladder.d.ts.map +1 -0
- package/daemon/dist/domain/queue-wake-ladder.js +533 -0
- package/daemon/dist/domain/queue-wake-ladder.js.map +1 -0
- package/daemon/dist/domain/queue-wake-repository.d.ts +37 -0
- package/daemon/dist/domain/queue-wake-repository.d.ts.map +1 -0
- package/daemon/dist/domain/queue-wake-repository.js +80 -0
- package/daemon/dist/domain/queue-wake-repository.js.map +1 -0
- package/daemon/dist/domain/rebuild-priming-chain.d.ts +28 -0
- package/daemon/dist/domain/rebuild-priming-chain.d.ts.map +1 -0
- package/daemon/dist/domain/rebuild-priming-chain.js +71 -0
- package/daemon/dist/domain/rebuild-priming-chain.js.map +1 -0
- package/daemon/dist/domain/review/compose.d.ts +3 -1
- package/daemon/dist/domain/review/compose.d.ts.map +1 -1
- package/daemon/dist/domain/review/compose.js +14 -8
- package/daemon/dist/domain/review/compose.js.map +1 -1
- package/daemon/dist/domain/review/gather.d.ts.map +1 -1
- package/daemon/dist/domain/review/gather.js +3 -1
- package/daemon/dist/domain/review/gather.js.map +1 -1
- package/daemon/dist/domain/rigspec-instantiator.d.ts +3 -0
- package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-instantiator.js +18 -0
- package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
- package/daemon/dist/domain/scope/plan-lock-artifacts.d.ts +6 -5
- package/daemon/dist/domain/scope/plan-lock-artifacts.d.ts.map +1 -1
- package/daemon/dist/domain/scope/plan-lock-artifacts.js +23 -20
- package/daemon/dist/domain/scope/plan-lock-artifacts.js.map +1 -1
- package/daemon/dist/domain/scope/scaffold-placeholder.d.ts +4 -5
- package/daemon/dist/domain/scope/scaffold-placeholder.d.ts.map +1 -1
- package/daemon/dist/domain/scope/scaffold-placeholder.js +6 -7
- package/daemon/dist/domain/scope/scaffold-placeholder.js.map +1 -1
- package/daemon/dist/domain/scope/scope-approve.d.ts +1 -1
- package/daemon/dist/domain/scope/scope-approve.d.ts.map +1 -1
- package/daemon/dist/domain/scope/scope-approve.js +5 -4
- package/daemon/dist/domain/scope/scope-approve.js.map +1 -1
- package/daemon/dist/domain/scope/scope-audit.d.ts +42 -3
- package/daemon/dist/domain/scope/scope-audit.d.ts.map +1 -1
- package/daemon/dist/domain/scope/scope-audit.js +78 -93
- package/daemon/dist/domain/scope/scope-audit.js.map +1 -1
- package/daemon/dist/domain/scope/scope-view-projection.d.ts.map +1 -1
- package/daemon/dist/domain/scope/scope-view-projection.js +7 -2
- package/daemon/dist/domain/scope/scope-view-projection.js.map +1 -1
- package/daemon/dist/domain/seat-activity-service.d.ts +91 -0
- package/daemon/dist/domain/seat-activity-service.d.ts.map +1 -1
- package/daemon/dist/domain/seat-activity-service.js +416 -1
- package/daemon/dist/domain/seat-activity-service.js.map +1 -1
- package/daemon/dist/domain/seat-handover-planner.d.ts +14 -0
- package/daemon/dist/domain/seat-handover-planner.d.ts.map +1 -1
- package/daemon/dist/domain/seat-handover-planner.js +14 -1
- package/daemon/dist/domain/seat-handover-planner.js.map +1 -1
- package/daemon/dist/domain/seat-handover-service.d.ts +54 -1
- package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
- package/daemon/dist/domain/seat-handover-service.js +162 -19
- package/daemon/dist/domain/seat-handover-service.js.map +1 -1
- package/daemon/dist/domain/session-transport.js +1 -2
- package/daemon/dist/domain/session-transport.js.map +1 -1
- package/daemon/dist/domain/successor-session-launcher.d.ts +6 -1
- package/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
- package/daemon/dist/domain/successor-session-launcher.js +3 -3
- package/daemon/dist/domain/successor-session-launcher.js.map +1 -1
- package/daemon/dist/domain/types.d.ts +33 -0
- 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 +1 -1
- package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
- package/daemon/dist/domain/user-settings/settings-store.js +48 -0
- package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
- package/daemon/dist/domain/view-projector.d.ts +1 -1
- package/daemon/dist/domain/view-projector.d.ts.map +1 -1
- package/daemon/dist/domain/view-projector.js +41 -2
- package/daemon/dist/domain/view-projector.js.map +1 -1
- package/daemon/dist/domain/watchdog-policy-engine.d.ts +7 -0
- package/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -1
- package/daemon/dist/domain/watchdog-policy-engine.js +3 -0
- package/daemon/dist/domain/watchdog-policy-engine.js.map +1 -1
- package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts +4 -3
- package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -1
- package/daemon/dist/domain/workspace/default-workspace-scaffold.js +56 -196
- package/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -1
- package/daemon/dist/domain/workspace/getting-started-narrative.js +1 -1
- package/daemon/dist/domain/workspace/getting-started-narrative.js.map +1 -1
- package/daemon/dist/domain/workspace/workspace-doctor.d.ts +8 -11
- package/daemon/dist/domain/workspace/workspace-doctor.d.ts.map +1 -1
- package/daemon/dist/domain/workspace/workspace-doctor.js +23 -25
- package/daemon/dist/domain/workspace/workspace-doctor.js.map +1 -1
- package/daemon/dist/gateway-slack-surface.d.ts +4 -0
- package/daemon/dist/gateway-slack-surface.d.ts.map +1 -0
- package/daemon/dist/gateway-slack-surface.js +8 -0
- package/daemon/dist/gateway-slack-surface.js.map +1 -0
- package/daemon/dist/index.d.ts +29 -0
- package/daemon/dist/index.d.ts.map +1 -1
- package/daemon/dist/index.js +99 -4
- package/daemon/dist/index.js.map +1 -1
- package/daemon/dist/lib/pane-envelope.d.ts +1 -1
- package/daemon/dist/lib/pane-envelope.d.ts.map +1 -1
- package/daemon/dist/lib/pane-envelope.js +8 -14
- package/daemon/dist/lib/pane-envelope.js.map +1 -1
- package/daemon/dist/routes/activity.d.ts +13 -0
- package/daemon/dist/routes/activity.d.ts.map +1 -1
- package/daemon/dist/routes/activity.js +186 -0
- package/daemon/dist/routes/activity.js.map +1 -1
- package/daemon/dist/routes/config.js +2 -2
- package/daemon/dist/routes/config.js.map +1 -1
- package/daemon/dist/routes/gateway.d.ts +3 -0
- package/daemon/dist/routes/gateway.d.ts.map +1 -0
- package/daemon/dist/routes/gateway.js +46 -0
- package/daemon/dist/routes/gateway.js.map +1 -0
- package/daemon/dist/routes/health-summary.d.ts.map +1 -1
- package/daemon/dist/routes/health-summary.js +8 -0
- package/daemon/dist/routes/health-summary.js.map +1 -1
- package/daemon/dist/routes/queue.d.ts.map +1 -1
- package/daemon/dist/routes/queue.js +3 -1
- package/daemon/dist/routes/queue.js.map +1 -1
- package/daemon/dist/routes/scope-audit.d.ts.map +1 -1
- package/daemon/dist/routes/scope-audit.js +72 -13
- package/daemon/dist/routes/scope-audit.js.map +1 -1
- package/daemon/dist/routes/seat.d.ts.map +1 -1
- package/daemon/dist/routes/seat.js +15 -0
- package/daemon/dist/routes/seat.js.map +1 -1
- package/daemon/dist/server.d.ts +17 -0
- package/daemon/dist/server.d.ts.map +1 -1
- package/daemon/dist/server.js +25 -4
- package/daemon/dist/server.js.map +1 -1
- package/daemon/dist/startup.d.ts +4 -0
- package/daemon/dist/startup.d.ts.map +1 -1
- package/daemon/dist/startup.js +33 -0
- package/daemon/dist/startup.js.map +1 -1
- package/daemon/docs/reference/agent-state-taxonomy.md +106 -0
- package/daemon/docs/reference/project-workspace.md +22 -14
- package/daemon/docs/reference/refocus-channel.md +27 -14
- package/daemon/docs/reference/sdlc-conventions.md +24 -13
- package/daemon/specs/agents/shared/skills/core/agent-startup-and-context-ingestion/SKILL.md +1 -1
- package/daemon/specs/agents/shared/skills/pm/requirements-writer/SKILL.md +21 -15
- package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/guidance/role.md +1 -1
- package/dist/build-info.js +3 -3
- package/dist/commands/config-init-workspace.d.ts.map +1 -1
- package/dist/commands/config-init-workspace.js +32 -57
- package/dist/commands/config-init-workspace.js.map +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +5 -0
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/daemon.d.ts.map +1 -1
- package/dist/commands/daemon.js +14 -4
- package/dist/commands/daemon.js.map +1 -1
- package/dist/commands/gateway.d.ts +19 -1
- package/dist/commands/gateway.d.ts.map +1 -1
- package/dist/commands/gateway.js +157 -33
- package/dist/commands/gateway.js.map +1 -1
- package/dist/commands/parked.d.ts +3 -0
- package/dist/commands/parked.d.ts.map +1 -0
- package/dist/commands/parked.js +83 -0
- package/dist/commands/parked.js.map +1 -0
- package/dist/commands/proof.d.ts +2 -1
- package/dist/commands/proof.d.ts.map +1 -1
- package/dist/commands/proof.js +8 -8
- package/dist/commands/proof.js.map +1 -1
- package/dist/commands/ps.d.ts +10 -0
- package/dist/commands/ps.d.ts.map +1 -1
- package/dist/commands/ps.js +14 -3
- package/dist/commands/ps.js.map +1 -1
- package/dist/commands/queue.d.ts.map +1 -1
- package/dist/commands/queue.js +31 -3
- package/dist/commands/queue.js.map +1 -1
- package/dist/commands/scope.d.ts.map +1 -1
- package/dist/commands/scope.js +255 -136
- package/dist/commands/scope.js.map +1 -1
- package/dist/commands/seat.d.ts.map +1 -1
- package/dist/commands/seat.js +40 -10
- package/dist/commands/seat.js.map +1 -1
- package/dist/commands/send.d.ts +1 -1
- package/dist/commands/send.d.ts.map +1 -1
- package/dist/commands/send.js +13 -14
- package/dist/commands/send.js.map +1 -1
- package/dist/commands/slack.d.ts +14 -28
- package/dist/commands/slack.d.ts.map +1 -1
- package/dist/commands/slack.js +73 -187
- package/dist/commands/slack.js.map +1 -1
- package/dist/commands/start.d.ts +3 -0
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +12 -5
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/up.d.ts.map +1 -1
- package/dist/commands/up.js +11 -4
- package/dist/commands/up.js.map +1 -1
- package/dist/commands/view.d.ts +4 -2
- package/dist/commands/view.d.ts.map +1 -1
- package/dist/commands/view.js +1 -1
- package/dist/commands/view.js.map +1 -1
- package/dist/commands/watchdog.d.ts.map +1 -1
- package/dist/commands/watchdog.js +2 -1
- package/dist/commands/watchdog.js.map +1 -1
- package/dist/commands/workspace.js +1 -1
- package/dist/config-store.d.ts +15 -1
- package/dist/config-store.d.ts.map +1 -1
- package/dist/config-store.js +60 -0
- package/dist/config-store.js.map +1 -1
- package/dist/cross-host-target.d.ts.map +1 -1
- package/dist/cross-host-target.js +5 -4
- package/dist/cross-host-target.js.map +1 -1
- package/dist/daemon-lifecycle.d.ts +45 -3
- package/dist/daemon-lifecycle.d.ts.map +1 -1
- package/dist/daemon-lifecycle.js +126 -0
- package/dist/daemon-lifecycle.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/scope/capability-delta.d.ts +9 -0
- package/dist/lib/scope/capability-delta.d.ts.map +1 -0
- package/dist/lib/scope/capability-delta.js +73 -0
- package/dist/lib/scope/capability-delta.js.map +1 -0
- package/dist/lib/scope/scaffold-placeholder.d.ts +4 -5
- package/dist/lib/scope/scaffold-placeholder.d.ts.map +1 -1
- package/dist/lib/scope/scaffold-placeholder.js +6 -7
- package/dist/lib/scope/scaffold-placeholder.js.map +1 -1
- package/dist/lib/scope/scope-audit.d.ts +42 -3
- package/dist/lib/scope/scope-audit.d.ts.map +1 -1
- package/dist/lib/scope/scope-audit.js +78 -93
- package/dist/lib/scope/scope-audit.js.map +1 -1
- package/dist/lib/scope/scope-fs.d.ts +18 -14
- package/dist/lib/scope/scope-fs.d.ts.map +1 -1
- package/dist/lib/scope/scope-fs.js +60 -29
- package/dist/lib/scope/scope-fs.js.map +1 -1
- package/dist/lib/scope/templates.d.ts +17 -17
- package/dist/lib/scope/templates.d.ts.map +1 -1
- package/dist/lib/scope/templates.js +35 -39
- package/dist/lib/scope/templates.js.map +1 -1
- package/dist/lib/scope-templates/backlog-deprecation.md +3 -1
- package/dist/lib/scope-templates/backlog-tech-debt.md +3 -1
- package/dist/lib/scope-templates/bug-fix.md +3 -1
- package/dist/lib/scope-templates/capability-delta.md +60 -0
- package/dist/lib/scope-templates/mission-placeholder.md +9 -40
- package/dist/lib/scope-templates/mission-progress.md +5 -6
- package/dist/lib/scope-templates/mission-release.md +9 -40
- package/dist/lib/scope-templates/notes.md +14 -0
- package/dist/lib/scope-templates/placeholder.md +3 -1
- package/dist/lib/scope-templates/proof.md +1 -1
- package/dist/lib/scope-templates/release-feature.md +3 -1
- package/dist/lib/scope-templates/research.md +3 -1
- package/dist/lib/scope-templates/slice-progress.md +4 -5
- package/node_modules/@openrig/daemon/dist/adapters/claude-code-adapter.d.ts +15 -0
- package/node_modules/@openrig/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/adapters/claude-code-adapter.js +57 -0
- package/node_modules/@openrig/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/build-info.js +3 -3
- package/node_modules/@openrig/daemon/dist/db/all-migrations.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/db/all-migrations.js +4 -0
- package/node_modules/@openrig/daemon/dist/db/all-migrations.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/db/migrations/072_thread_seat_map.d.ts +3 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/072_thread_seat_map.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/072_thread_seat_map.js +22 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/072_thread_seat_map.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/073_queue_transition_wakes.d.ts +3 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/073_queue_transition_wakes.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/073_queue_transition_wakes.js +21 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/073_queue_transition_wakes.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/activity-taxonomy.d.ts +112 -0
- package/node_modules/@openrig/daemon/dist/domain/activity-taxonomy.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/activity-taxonomy.js +99 -0
- package/node_modules/@openrig/daemon/dist/domain/activity-taxonomy.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/bind-plan.d.ts +19 -0
- package/node_modules/@openrig/daemon/dist/domain/bind-plan.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/bind-plan.js +25 -0
- package/node_modules/@openrig/daemon/dist/domain/bind-plan.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/event-bus.d.ts +6 -0
- package/node_modules/@openrig/daemon/dist/domain/event-bus.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/event-bus.js +15 -5
- package/node_modules/@openrig/daemon/dist/domain/event-bus.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process-main.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process-main.js +9 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process-main.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process.js +9 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.d.ts +80 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.js +149 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.d.ts +109 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.js +250 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/config.d.ts +44 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/config.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/config.js +62 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/config.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound-admission.d.ts +8 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound-admission.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound-admission.js +20 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound-admission.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.d.ts +113 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.js +146 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.d.ts +80 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.js +164 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.d.ts +54 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.js +96 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.d.ts +53 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.js +72 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/secrets.d.ts +21 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/secrets.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/secrets.js +73 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/secrets.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-api.d.ts +106 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-api.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-api.js +198 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-api.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +47 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.js +147 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts +21 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.js +198 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +30 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.js +99 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.d.ts +62 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.js +132 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.d.ts +17 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.js +35 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +56 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.js +103 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/spawn-gateway.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/spawn-gateway.js +9 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/spawn-gateway.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/transport.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/transport.js +9 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/transport.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/node-inventory.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/node-inventory.js +20 -0
- package/node_modules/@openrig/daemon/dist/domain/node-inventory.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/parked-query.d.ts +81 -0
- package/node_modules/@openrig/daemon/dist/domain/parked-query.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/parked-query.js +126 -0
- package/node_modules/@openrig/daemon/dist/domain/parked-query.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-pickup.d.ts +38 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-pickup.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-pickup.js +67 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-pickup.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-repository.d.ts +38 -10
- package/node_modules/@openrig/daemon/dist/domain/queue-repository.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-repository.js +267 -35
- package/node_modules/@openrig/daemon/dist/domain/queue-repository.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.d.ts +77 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.js +348 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wake-ladder.d.ts +96 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wake-ladder.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wake-ladder.js +533 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wake-ladder.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.d.ts +37 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.js +80 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/rebuild-priming-chain.d.ts +28 -0
- package/node_modules/@openrig/daemon/dist/domain/rebuild-priming-chain.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/rebuild-priming-chain.js +71 -0
- package/node_modules/@openrig/daemon/dist/domain/rebuild-priming-chain.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/review/compose.d.ts +3 -1
- package/node_modules/@openrig/daemon/dist/domain/review/compose.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/review/compose.js +14 -8
- package/node_modules/@openrig/daemon/dist/domain/review/compose.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/review/gather.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/review/gather.js +3 -1
- package/node_modules/@openrig/daemon/dist/domain/review/gather.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.d.ts +3 -0
- package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.js +18 -0
- package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/plan-lock-artifacts.d.ts +6 -5
- package/node_modules/@openrig/daemon/dist/domain/scope/plan-lock-artifacts.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/plan-lock-artifacts.js +23 -20
- package/node_modules/@openrig/daemon/dist/domain/scope/plan-lock-artifacts.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/scaffold-placeholder.d.ts +4 -5
- package/node_modules/@openrig/daemon/dist/domain/scope/scaffold-placeholder.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/scaffold-placeholder.js +6 -7
- package/node_modules/@openrig/daemon/dist/domain/scope/scaffold-placeholder.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-approve.d.ts +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-approve.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-approve.js +5 -4
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-approve.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-audit.d.ts +42 -3
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-audit.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-audit.js +78 -93
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-audit.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.js +7 -2
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-activity-service.d.ts +91 -0
- package/node_modules/@openrig/daemon/dist/domain/seat-activity-service.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-activity-service.js +416 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-activity-service.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-handover-planner.d.ts +14 -0
- package/node_modules/@openrig/daemon/dist/domain/seat-handover-planner.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-handover-planner.js +14 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-handover-planner.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-handover-service.d.ts +54 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-handover-service.js +162 -19
- package/node_modules/@openrig/daemon/dist/domain/seat-handover-service.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/session-transport.js +1 -2
- package/node_modules/@openrig/daemon/dist/domain/session-transport.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/successor-session-launcher.d.ts +6 -1
- package/node_modules/@openrig/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/successor-session-launcher.js +3 -3
- package/node_modules/@openrig/daemon/dist/domain/successor-session-launcher.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/types.d.ts +33 -0
- package/node_modules/@openrig/daemon/dist/domain/types.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/types.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
- package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.js +48 -0
- package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/view-projector.d.ts +1 -1
- package/node_modules/@openrig/daemon/dist/domain/view-projector.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/view-projector.js +41 -2
- package/node_modules/@openrig/daemon/dist/domain/view-projector.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.d.ts +7 -0
- package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.js +3 -0
- package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts +4 -3
- package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.js +56 -196
- package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workspace/getting-started-narrative.js +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workspace/getting-started-narrative.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workspace/workspace-doctor.d.ts +8 -11
- package/node_modules/@openrig/daemon/dist/domain/workspace/workspace-doctor.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workspace/workspace-doctor.js +23 -25
- package/node_modules/@openrig/daemon/dist/domain/workspace/workspace-doctor.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/gateway-slack-surface.d.ts +4 -0
- package/node_modules/@openrig/daemon/dist/gateway-slack-surface.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/gateway-slack-surface.js +8 -0
- package/node_modules/@openrig/daemon/dist/gateway-slack-surface.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/index.d.ts +29 -0
- package/node_modules/@openrig/daemon/dist/index.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/index.js +99 -4
- package/node_modules/@openrig/daemon/dist/index.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/lib/pane-envelope.d.ts +1 -1
- package/node_modules/@openrig/daemon/dist/lib/pane-envelope.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/lib/pane-envelope.js +8 -14
- package/node_modules/@openrig/daemon/dist/lib/pane-envelope.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/activity.d.ts +13 -0
- package/node_modules/@openrig/daemon/dist/routes/activity.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/activity.js +186 -0
- package/node_modules/@openrig/daemon/dist/routes/activity.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/config.js +2 -2
- package/node_modules/@openrig/daemon/dist/routes/config.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/gateway.d.ts +3 -0
- package/node_modules/@openrig/daemon/dist/routes/gateway.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/routes/gateway.js +46 -0
- package/node_modules/@openrig/daemon/dist/routes/gateway.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/routes/health-summary.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/health-summary.js +8 -0
- package/node_modules/@openrig/daemon/dist/routes/health-summary.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/queue.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/queue.js +3 -1
- package/node_modules/@openrig/daemon/dist/routes/queue.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/scope-audit.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/scope-audit.js +72 -13
- package/node_modules/@openrig/daemon/dist/routes/scope-audit.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/seat.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/seat.js +15 -0
- package/node_modules/@openrig/daemon/dist/routes/seat.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/server.d.ts +17 -0
- package/node_modules/@openrig/daemon/dist/server.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/server.js +25 -4
- package/node_modules/@openrig/daemon/dist/server.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/startup.d.ts +4 -0
- package/node_modules/@openrig/daemon/dist/startup.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/startup.js +33 -0
- package/node_modules/@openrig/daemon/dist/startup.js.map +1 -1
- package/node_modules/@openrig/daemon/package.json +5 -1
- package/package.json +1 -1
- package/tui/dist/daemon-client.d.ts +5 -0
- package/tui/dist/daemon-client.d.ts.map +1 -1
- package/tui/dist/daemon-client.js +17 -0
- package/tui/dist/daemon-client.js.map +1 -1
- package/tui/dist/hydrate.d.ts.map +1 -1
- package/tui/dist/hydrate.js +12 -4
- package/tui/dist/hydrate.js.map +1 -1
- package/tui/dist/live-events.d.ts +21 -0
- package/tui/dist/live-events.d.ts.map +1 -0
- package/tui/dist/live-events.js +88 -0
- package/tui/dist/live-events.js.map +1 -0
- package/tui/dist/live.js +1 -1
- package/tui/dist/main.js +27 -8
- package/tui/dist/main.js.map +1 -1
- package/tui/dist/refresh.d.ts +10 -1
- package/tui/dist/refresh.d.ts.map +1 -1
- package/tui/dist/refresh.js +22 -2
- package/tui/dist/refresh.js.map +1 -1
- package/daemon/context-packs/world/install/01-world-from-primitives.md +0 -97
- package/daemon/context-packs/world/install/02-permission-self-sleep.md +0 -141
- package/daemon/context-packs/world/install/03-what-this-is-for.md +0 -86
- package/daemon/context-packs/world/install/04-ontology.md +0 -790
- package/daemon/context-packs/world/install/05-harness-power-use.md +0 -355
- package/daemon/context-packs/world/install/06-a-competent-turn.md +0 -225
- package/daemon/context-packs/world/install/manifest.yaml +0 -125
- package/dist/lib/scope-templates/mission-brief.md +0 -20
- package/dist/lib/scope-templates/mission-notes.md +0 -102
- package/dist/slack/config.d.ts.map +0 -1
- package/dist/slack/config.js.map +0 -1
- package/dist/slack/connector-server.d.ts +0 -31
- package/dist/slack/connector-server.d.ts.map +0 -1
- package/dist/slack/connector-server.js +0 -108
- package/dist/slack/connector-server.js.map +0 -1
- package/dist/slack/inbound-admission.d.ts.map +0 -1
- package/dist/slack/inbound-admission.js.map +0 -1
- package/dist/slack/inbound.d.ts.map +0 -1
- package/dist/slack/inbound.js.map +0 -1
- package/dist/slack/message.d.ts +0 -39
- package/dist/slack/message.d.ts.map +0 -1
- package/dist/slack/message.js +0 -88
- package/dist/slack/message.js.map +0 -1
- package/dist/slack/outbound.d.ts +0 -39
- package/dist/slack/outbound.d.ts.map +0 -1
- package/dist/slack/outbound.js +0 -63
- package/dist/slack/outbound.js.map +0 -1
- package/dist/slack/queue-bridge.d.ts +0 -61
- package/dist/slack/queue-bridge.d.ts.map +0 -1
- package/dist/slack/queue-bridge.js +0 -114
- package/dist/slack/queue-bridge.js.map +0 -1
- package/dist/slack/secrets.d.ts.map +0 -1
- package/dist/slack/secrets.js.map +0 -1
- package/dist/slack/slack-api.d.ts +0 -49
- package/dist/slack/slack-api.d.ts.map +0 -1
- package/dist/slack/slack-api.js +0 -110
- package/dist/slack/slack-api.js.map +0 -1
- package/dist/slack/slack-delivery.d.ts +0 -14
- package/dist/slack/slack-delivery.d.ts.map +0 -1
- package/dist/slack/slack-delivery.js +0 -28
- package/dist/slack/slack-delivery.js.map +0 -1
- package/dist/slack/state-store.d.ts.map +0 -1
- package/dist/slack/state-store.js.map +0 -1
- /package/{dist → daemon/dist/domain/gateway}/slack/inbound-admission.js +0 -0
- /package/{dist → daemon/dist/domain/gateway}/slack/secrets.d.ts +0 -0
- /package/{dist → daemon/dist/domain/gateway}/slack/secrets.js +0 -0
- /package/{dist → daemon/dist/domain/gateway}/slack/state-store.d.ts +0 -0
- /package/{dist → daemon/dist/domain/gateway}/slack/state-store.js +0 -0
|
@@ -56,7 +56,7 @@ export function workspaceScaffoldDirs() {
|
|
|
56
56
|
function subdirReadmeContent(subdir) {
|
|
57
57
|
switch (subdir) {
|
|
58
58
|
case "missions":
|
|
59
|
-
return "# missions\n\
|
|
59
|
+
return "# missions\n\nMissions live here. Each mission owns a `slices/` child folder and appears in the OpenRig TUI.\n\nExpected shape:\n\n```text\nmissions/<mission-name>/SPEC.md\nmissions/<mission-name>/NOTES.md\nmissions/<mission-name>/PROGRESS.md\nmissions/<mission-name>/slices/<slice-name>/SPEC.md\nmissions/<mission-name>/slices/<slice-name>/PROGRESS.md\nmissions/<mission-name>/slices/<slice-name>/PROOF.md\n```\n\nEvery mission and slice SPEC carries an authored `intent:`, advisory sibling build-order `depends_on:` dot-IDs, and a stable dot-ID (`id: OPR.<ver>[.<n>]`). Use `rig scope mission create <name>` and `rig scope slice create <mission> <slug>` to mint conformant artifacts. Folder names are operator-facing slugs; `id:` is the stable handle that survives renames.\n";
|
|
60
60
|
case "artifacts":
|
|
61
61
|
return "# artifacts\n\nWork products live here: plans, drafts, generated outputs, and other files that a slice may reference before closure.\n";
|
|
62
62
|
case "evidence":
|
|
@@ -68,23 +68,23 @@ function subdirReadmeContent(subdir) {
|
|
|
68
68
|
case "specs":
|
|
69
69
|
return "# specs\n\nWorkspace specs (rig specs / agent specs / workflow specs / context packs / skills). OpenRig's Library browses this directory alongside bundled specs.\n";
|
|
70
70
|
case "dogfood-evidence":
|
|
71
|
-
return "# dogfood-evidence\n\nProof packets live here. Each proof packet folder is matched to a
|
|
71
|
+
return "# dogfood-evidence\n\nProof packets live here. Each proof packet folder is matched to a slice by folder-name tokens and may contain markdown, screenshots, videos, traces, and other verification artifacts.\n";
|
|
72
72
|
default:
|
|
73
73
|
return `# ${subdir}\n`;
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
const WORKSPACE_README = `# OpenRig Workspace
|
|
77
77
|
|
|
78
|
-
This workspace is file-backed. The
|
|
78
|
+
This workspace is file-backed. The OpenRig TUI mirrors this structure:
|
|
79
79
|
|
|
80
|
-
- \`missions/<mission-id>\` becomes a
|
|
81
|
-
- \`missions/<mission-id>/slices/<slice-id>\` becomes a
|
|
82
|
-
- Queue items should mention or tag the mission id and slice id so
|
|
80
|
+
- \`missions/<mission-id>\` becomes a TUI mission.
|
|
81
|
+
- \`missions/<mission-id>/slices/<slice-id>\` becomes a TUI slice.
|
|
82
|
+
- Queue items should mention or tag the mission id and slice id so the TUI can attach live work to the right slice.
|
|
83
83
|
- \`artifacts/\` is for work products that a slice needs to keep.
|
|
84
84
|
- \`evidence/\` is for proof notes and verification summaries.
|
|
85
|
-
- \`dogfood-evidence/<proof-packet-id>\`
|
|
85
|
+
- \`dogfood-evidence/<proof-packet-id>\` supplies test evidence when the packet id contains the slice id tokens.
|
|
86
86
|
|
|
87
|
-
Use stable kebab-case names for mission and slice folders. Every mission/slice
|
|
87
|
+
Use stable kebab-case names for mission and slice folders. Every mission/slice \`SPEC.md\` carries authored \`intent:\`, advisory sibling build-order \`depends_on:\`, and a stable dot-ID (\`id: OPR.<ver>[.<n>]\`). Mint conformant artifacts via \`rig scope mission create <name>\` and \`rig scope slice create <mission> <slug>\`. Folder names are operator-facing slugs; \`id:\` is the rename-proof handle.
|
|
88
88
|
`;
|
|
89
89
|
const STEERING_PLACEHOLDER = `---
|
|
90
90
|
title: Priority Stack
|
|
@@ -94,14 +94,14 @@ status: placeholder
|
|
|
94
94
|
# OpenRig Priority Stack
|
|
95
95
|
|
|
96
96
|
This file is a placeholder created by \`rig config init-workspace\`. Edit it
|
|
97
|
-
to record your top priorities. OpenRig
|
|
98
|
-
|
|
97
|
+
to record your top priorities. The OpenRig TUI reads this file alongside the
|
|
98
|
+
work tree.
|
|
99
99
|
|
|
100
100
|
## Top 3
|
|
101
101
|
|
|
102
102
|
1. Run the \`conveyor\` starter rig.
|
|
103
103
|
2. Move one packet through \`basic-loop\` or \`conveyor\`.
|
|
104
|
-
3. Inspect the
|
|
104
|
+
3. Inspect the mission, queue, story, and proof surfaces in the TUI.
|
|
105
105
|
|
|
106
106
|
## In Motion
|
|
107
107
|
|
|
@@ -117,6 +117,8 @@ id: ${mission.dotId}
|
|
|
117
117
|
title: ${mission.title}
|
|
118
118
|
status: ${mission.status}
|
|
119
119
|
mission: ${mission.id}
|
|
120
|
+
intent: ${JSON.stringify(mission.objective)}
|
|
121
|
+
depends_on: []
|
|
120
122
|
---
|
|
121
123
|
|
|
122
124
|
# ${mission.title}
|
|
@@ -125,7 +127,7 @@ ${mission.objective}
|
|
|
125
127
|
|
|
126
128
|
## Slices
|
|
127
129
|
|
|
128
|
-
${mission.slices.map((slice) => `- [${slice.title}](slices/${slice.id}/
|
|
130
|
+
${mission.slices.map((slice) => `- [${slice.title}](slices/${slice.id}/SPEC.md)`).join("\n")}
|
|
129
131
|
`;
|
|
130
132
|
}
|
|
131
133
|
function missionProgress(mission) {
|
|
@@ -137,7 +139,9 @@ mission: ${mission.id}
|
|
|
137
139
|
|
|
138
140
|
# ${mission.title} Progress
|
|
139
141
|
|
|
140
|
-
|
|
142
|
+
## Acceptance
|
|
143
|
+
|
|
144
|
+
- [ ] Keep mission SPEC current.
|
|
141
145
|
- [ ] Keep active slices queue-backed with mission and slice ids.
|
|
142
146
|
`;
|
|
143
147
|
}
|
|
@@ -154,6 +158,8 @@ status: ${slice.status}
|
|
|
154
158
|
mission: ${mission.id}
|
|
155
159
|
rail-item: ${mission.id}
|
|
156
160
|
slice: ${slice.id}
|
|
161
|
+
intent: ${JSON.stringify(slice.objective)}
|
|
162
|
+
depends_on: []
|
|
157
163
|
---
|
|
158
164
|
|
|
159
165
|
${narrative.readme}`;
|
|
@@ -165,6 +171,8 @@ status: ${slice.status}
|
|
|
165
171
|
mission: ${mission.id}
|
|
166
172
|
rail-item: ${mission.id}
|
|
167
173
|
slice: ${slice.id}
|
|
174
|
+
intent: ${JSON.stringify(slice.objective)}
|
|
175
|
+
depends_on: []
|
|
168
176
|
---
|
|
169
177
|
|
|
170
178
|
# ${slice.title}
|
|
@@ -179,7 +187,7 @@ ${slice.objective}
|
|
|
179
187
|
|
|
180
188
|
## Proof contract
|
|
181
189
|
|
|
182
|
-
- [ ] The work is visible in the Project slice — captured
|
|
190
|
+
- [ ] The work is visible in the Project slice — captured from this SPEC.md.
|
|
183
191
|
|
|
184
192
|
## Queue Mapping
|
|
185
193
|
|
|
@@ -218,6 +226,8 @@ slice: ${slice.id}
|
|
|
218
226
|
|
|
219
227
|
# ${slice.title} Progress
|
|
220
228
|
|
|
229
|
+
## Acceptance
|
|
230
|
+
|
|
221
231
|
- [ ] Define the next concrete packet.
|
|
222
232
|
- [ ] Attach queue work to this slice id.
|
|
223
233
|
- [ ] Capture proof or notes before closing.
|
|
@@ -226,7 +236,7 @@ slice: ${slice.id}
|
|
|
226
236
|
function sliceProof(slice) {
|
|
227
237
|
return `# PROOF — ${slice.dotId} ${slice.title}
|
|
228
238
|
|
|
229
|
-
> **WHO/WHEN:** the impl/QA pair that worked the slice, at slice-close — a slice is NOT done until this file exists and every proof-contract item has evidence (mapped 1:1, artifacts under \`proof/\`). See the \`mission-slice-sop\` skill + the conventions SSOT (\`docs/reference/sdlc-conventions.md\` in the repo, \`$OPENRIG_HOME/reference/sdlc-conventions.md\` on an installed package).
|
|
239
|
+
> **WHO/WHEN:** the impl/QA pair that worked the slice, at slice-close — a slice is NOT done until this file exists and every \`SPEC.md\` proof-contract item has evidence (mapped 1:1, artifacts under \`proof/\`). See the \`mission-slice-sop\` skill + the conventions SSOT (\`docs/reference/sdlc-conventions.md\` in the repo, \`$OPENRIG_HOME/reference/sdlc-conventions.md\` on an installed package).
|
|
230
240
|
>
|
|
231
241
|
> **HOW (the drop verb, not hand-placement):** put media files under \`proof/\`, then ATTACH them with \`rig proof add ${slice.dotId} --artifact-type qa --verdict PASS --candidate-sha <tip> --money-evidence "<one line>" --evidences "1" --media "screenshot-01.png"\` — the drop writes the C1 header the Living Notes DELIVERED pairing joins on. Hand-placing files without a drop leaves the deliverable unpaired and \`unverified\`.
|
|
232
242
|
|
|
@@ -249,190 +259,45 @@ Dropped via \`rig proof add … --evidences … --media …\` (one drop per verd
|
|
|
249
259
|
<documented residue: what's not covered + where it's tracked>
|
|
250
260
|
`;
|
|
251
261
|
}
|
|
252
|
-
function
|
|
253
|
-
return
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
rail-item: ${mission.id}
|
|
258
|
-
slice: ${slice.id}
|
|
259
|
-
---
|
|
260
|
-
|
|
261
|
-
# ${slice.title} Implementation Notes
|
|
262
|
-
|
|
263
|
-
## Intent
|
|
264
|
-
|
|
265
|
-
${slice.objective}
|
|
266
|
-
|
|
267
|
-
## Mini-requirements
|
|
268
|
-
|
|
269
|
-
1. The work is visible in the Project slice and its queue items link back to \`${slice.id}\`.
|
|
270
|
-
|
|
271
|
-
## Proof contract
|
|
272
|
-
|
|
273
|
-
- [ ] The work is visible in the Project slice — captured.
|
|
274
|
-
- [ ] Queue items include enough body or tag context to link back to \`${slice.id}\`.
|
|
275
|
-
- [ ] Proof artifacts are referenced from the slice before closure (drop via \`rig proof add\`).
|
|
276
|
-
|
|
277
|
-
> Conventions SSOT: \`docs/reference/sdlc-conventions.md (installed: $OPENRIG_HOME/reference/sdlc-conventions.md)\` — section names, proof-contract format, the two locks, C1 headers. For a small slice the mini-requirements may BE the whole PRD.
|
|
278
|
-
`;
|
|
279
|
-
}
|
|
280
|
-
const MISSION_BRIEF_BUILT_IN = `# {{mission_name}} — Brief
|
|
281
|
-
<optional one-line italic TL;DR>
|
|
282
|
-
|
|
283
|
-
## What & why
|
|
284
|
-
<orientation, read-first: what this mission delivers + why it matters. MANDATORY.>
|
|
285
|
-
|
|
286
|
-
## Building
|
|
287
|
-
<what is actively in flight right now — brief-altitude, a few bullets, NOT the PROGRESS task list>
|
|
288
|
-
|
|
289
|
-
## Progress
|
|
290
|
-
<how far: a high-altitude phase/wave rollup. Points at PROGRESS.md for active/next detail.>
|
|
291
|
-
|
|
292
|
-
## Proven
|
|
293
|
-
<what has landed WITH proof — brief-altitude proof gauge. Points at the Proof tab / per-slice proof/.>
|
|
294
|
-
|
|
295
|
-
## Needs you
|
|
296
|
-
<open decisions + reviews waiting on the human/founder — the "never have to ask for status" section. Empty = nothing blocked on you.>
|
|
297
|
-
|
|
298
|
-
## Pointers
|
|
299
|
-
→ MISSION_NOTES.md (continuity / restore) · → PROGRESS.md (active / next) · other key links
|
|
300
|
-
`;
|
|
301
|
-
export function renderDaemonMissionBrief(missionName) {
|
|
302
|
-
return MISSION_BRIEF_BUILT_IN.replace(/\{\{mission_name\}\}/g, missionName);
|
|
262
|
+
function applyNotesPlaceholders(content, opts) {
|
|
263
|
+
return content
|
|
264
|
+
.replace(/\{\{mission_id\}\}/g, opts.mission_id)
|
|
265
|
+
.replace(/\{\{mission_name\}\}/g, opts.mission_name)
|
|
266
|
+
.replace(/\{\{created_date\}\}/g, opts.created_date);
|
|
303
267
|
}
|
|
304
|
-
|
|
305
|
-
// rendering for the daemon's `/api/config/init-workspace` route so
|
|
306
|
-
// UI-driven init lands the same scaffold as CLI-driven init. The
|
|
307
|
-
// template content is duplicated here from
|
|
308
|
-
// packages/cli/src/lib/scope-templates/mission-notes.md to keep the
|
|
309
|
-
// daemon side dependency-free of the cli package; a parity test in
|
|
310
|
-
// getting-started-narrative-parity.test.ts asserts CLI + daemon emit
|
|
311
|
-
// byte-identical MISSION_NOTES content given the same opts. Same
|
|
312
|
-
// env-var-pivot pattern the CLI surface honors:
|
|
313
|
-
// OPENRIG_MISSION_NOTES_TEMPLATE_PATH > built-in.
|
|
314
|
-
const MISSION_NOTES_BUILT_IN = `---
|
|
268
|
+
const NOTES_BUILT_IN = `---
|
|
315
269
|
mission: {{mission_id}}
|
|
316
270
|
name: {{mission_name}}
|
|
317
|
-
|
|
318
|
-
authored: {{created_date}}
|
|
319
|
-
last-updated: {{created_date}}
|
|
271
|
+
created: {{created_date}}
|
|
320
272
|
---
|
|
321
273
|
|
|
322
|
-
#
|
|
274
|
+
# Notes — {{mission_name}}
|
|
323
275
|
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
> Pointer-first by design — index durable canonical artifacts; don't duplicate
|
|
327
|
-
> them (duplication is the stale-breadcrumb failure mode this convention
|
|
328
|
-
> exists to kill).
|
|
276
|
+
Context and observations that help the mission but do not change its
|
|
277
|
+
\`SPEC.md\` contract or \`PROGRESS.md\` acceptance checklist belong here.
|
|
329
278
|
|
|
330
|
-
##
|
|
279
|
+
## Notes
|
|
331
280
|
|
|
332
|
-
|
|
333
|
-
surprises. Updated by anyone when material changes. Keep to 5-15 lines.)
|
|
334
|
-
|
|
335
|
-
## §2. Active workstreams + drivers + tips
|
|
336
|
-
|
|
337
|
-
(Per-workstream rows. THIS SECTION IS THE MISSION CODEMAP. Each row:
|
|
338
|
-
state / driver / branch+tip-SHA / latest blocker or ACK.)
|
|
339
|
-
|
|
340
|
-
- (workstream-id) — state — driver — tip-SHA — blocker/ACK
|
|
341
|
-
|
|
342
|
-
## §3. Open scope-decisions
|
|
343
|
-
|
|
344
|
-
(Labeled gates the operator owns. Per gate: where the gate is, what's needed,
|
|
345
|
-
who routed.)
|
|
346
|
-
|
|
347
|
-
- OQ-1: (decision needed) — gate at <artifact-path> — surfaced by <seat>
|
|
348
|
-
|
|
349
|
-
## §4. Slice inventory
|
|
350
|
-
|
|
351
|
-
(Full table of slices on this mission.)
|
|
352
|
-
|
|
353
|
-
| # | slice | state | driver | blocker |
|
|
354
|
-
|---|---|---|---|---|
|
|
355
|
-
|
|
356
|
-
## §5. Pending dispatches
|
|
357
|
-
|
|
358
|
-
(Next-go items waiting on driver availability or convergence. Immediately-ready
|
|
359
|
-
set, not full backlog.)
|
|
360
|
-
|
|
361
|
-
## §6. Ledgers
|
|
362
|
-
|
|
363
|
-
(Mission-specific shared ledgers: release version + tag, SC counts, cumulative
|
|
364
|
-
deltas, etc.)
|
|
365
|
-
|
|
366
|
-
## §7. Banked memories that apply here
|
|
367
|
-
|
|
368
|
-
(Bulleted: banked-feedback / banked-project memories load-bearing on restore
|
|
369
|
-
for this mission. Ones learned during this mission go into the same list.)
|
|
370
|
-
|
|
371
|
-
## §8. Convention pointers
|
|
372
|
-
|
|
373
|
-
(Which banked conventions this mission inherits. Cross-reference each by path.
|
|
374
|
-
This section is the principles/conventions inheritance surface for the mission.)
|
|
375
|
-
|
|
376
|
-
- \`conventions/mission-notes/README.md\` — this convention (apply on every restore)
|
|
377
|
-
|
|
378
|
-
## §9. Reconstruction protocol
|
|
379
|
-
|
|
380
|
-
(Commands to run after compaction or for onboarding. Refresh as the mission's
|
|
381
|
-
restore-needs evolve.)
|
|
382
|
-
|
|
383
|
-
1. \`rig whoami --json\` — confirm seat identity
|
|
384
|
-
2. Read this file's §1 + your §A-§X section + this §9
|
|
385
|
-
3. Read \`missions/{{mission_id}}/README.md\` for mission scope
|
|
386
|
-
4. Read \`missions/{{mission_id}}/PROGRESS.md\` for delivery state
|
|
387
|
-
5. \`rig queue list --mine --full --json\` — triage your durable inbox from full
|
|
388
|
-
bodies; use \`rig queue show <id> --full --json\` for individual items. Never
|
|
389
|
-
use the bare compact queue list for triage.
|
|
390
|
-
6. Optionally check \`rig transcript <your-session> --tail 100\` as secondary
|
|
391
|
-
evidence. It may be unavailable or incomplete for some runtimes; little or
|
|
392
|
-
no output does not prove the session was quiet.
|
|
393
|
-
7. State "restored from {{mission_id}}; resumed at <action>" before acting
|
|
394
|
-
|
|
395
|
-
## §10. What NOT to reconstruct
|
|
396
|
-
|
|
397
|
-
(Explicit pruning — completed slices / merged commits / closed ACK packets are
|
|
398
|
-
recoverable on demand and don't need to be in working memory. Name them to
|
|
399
|
-
free attention.)
|
|
400
|
-
|
|
401
|
-
## §A. <first-seat>@<rig> notes
|
|
402
|
-
|
|
403
|
-
(First seat's notes. Pattern: append cont.N entries with date + state of the
|
|
404
|
-
world from this seat's perspective. Latest = truth. Other seats READ but
|
|
405
|
-
don't modify.)
|
|
406
|
-
|
|
407
|
-
DONE {{created_date}} (cont.0 — mission scaffolded):
|
|
408
|
-
- Mission scaffolded via \`rig scope mission create\`. Template applied; this
|
|
409
|
-
file is the seed state. First substantive cont.1 entry follows when work
|
|
410
|
-
begins.
|
|
411
|
-
|
|
412
|
-
## §B / §C / ... — per-seat sections
|
|
413
|
-
|
|
414
|
-
(Each additional seat adds an h2 ## §X section under their own header as they
|
|
415
|
-
join. Section pattern matches §A.)
|
|
281
|
+
- {{created_date}} — mission scaffolded.
|
|
416
282
|
`;
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
283
|
+
/** Current NOTES.md renderer. The retired environment variable remains a
|
|
284
|
+
* readable fallback so existing installs do not break during the rename. */
|
|
285
|
+
export function renderDaemonNotes(opts) {
|
|
286
|
+
const current = process.env.OPENRIG_NOTES_TEMPLATE_PATH;
|
|
287
|
+
const legacy = process.env.OPENRIG_MISSION_NOTES_TEMPLATE_PATH;
|
|
288
|
+
const selected = current?.trim() ? current : legacy?.trim() ? legacy : null;
|
|
289
|
+
if (selected) {
|
|
290
|
+
const variable = current?.trim()
|
|
291
|
+
? "OPENRIG_NOTES_TEMPLATE_PATH"
|
|
292
|
+
: "OPENRIG_MISSION_NOTES_TEMPLATE_PATH";
|
|
293
|
+
const absPath = path.resolve(selected.trim());
|
|
427
294
|
if (!fs.existsSync(absPath)) {
|
|
428
|
-
throw new Error(
|
|
429
|
-
"
|
|
430
|
-
"or unset it to use the built-in bundled fallback.");
|
|
295
|
+
throw new Error(`${variable} points at "${selected}", which does not exist. ` +
|
|
296
|
+
"NOTES.md not scaffolded. Set OPENRIG_NOTES_TEMPLATE_PATH to an absolute readable file, or unset the override.");
|
|
431
297
|
}
|
|
432
|
-
|
|
433
|
-
return applyMissionNotesPlaceholders(raw, opts);
|
|
298
|
+
return applyNotesPlaceholders(fs.readFileSync(absPath, "utf8"), opts);
|
|
434
299
|
}
|
|
435
|
-
return
|
|
300
|
+
return applyNotesPlaceholders(NOTES_BUILT_IN, opts);
|
|
436
301
|
}
|
|
437
302
|
export function workspaceScaffoldFiles() {
|
|
438
303
|
const files = [
|
|
@@ -447,21 +312,16 @@ export function workspaceScaffoldFiles() {
|
|
|
447
312
|
{ relPath: "dogfood-evidence/README.md", content: subdirReadmeContent("dogfood-evidence") },
|
|
448
313
|
];
|
|
449
314
|
for (const mission of DEFAULT_MISSIONS) {
|
|
450
|
-
files.push({ relPath: `missions/${mission.id}/
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
// resolution + env-var-pivot mirrors the CLI surface;
|
|
454
|
-
// getting-started-narrative-parity.test.ts asserts byte-identity.
|
|
455
|
-
{
|
|
456
|
-
relPath: `missions/${mission.id}/MISSION_NOTES.md`,
|
|
457
|
-
content: renderDaemonMissionNotes({
|
|
315
|
+
files.push({ relPath: `missions/${mission.id}/SPEC.md`, content: missionReadme(mission) }, { relPath: `missions/${mission.id}/PROGRESS.md`, content: missionProgress(mission) }, {
|
|
316
|
+
relPath: `missions/${mission.id}/NOTES.md`,
|
|
317
|
+
content: renderDaemonNotes({
|
|
458
318
|
mission_id: mission.dotId,
|
|
459
319
|
mission_name: mission.title,
|
|
460
320
|
created_date: new Date().toISOString().slice(0, 10),
|
|
461
321
|
}),
|
|
462
322
|
});
|
|
463
323
|
for (const slice of mission.slices) {
|
|
464
|
-
files.push({ relPath: `missions/${mission.id}/slices/${slice.id}/
|
|
324
|
+
files.push({ relPath: `missions/${mission.id}/slices/${slice.id}/SPEC.md`, content: sliceReadme(mission, slice) }, { relPath: `missions/${mission.id}/slices/${slice.id}/PROGRESS.md`, content: sliceProgress(mission, slice) }, { relPath: `missions/${mission.id}/slices/${slice.id}/PROOF.md`, content: sliceProof(slice) });
|
|
465
325
|
// V0.3.1 slice 21: getting-started slices ship a timeline.md
|
|
466
326
|
// so the Story tab renders the worked-example narrative via
|
|
467
327
|
// slice-06's useSliceTimelineMarkdown hook.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-workspace-scaffold.js","sourceRoot":"","sources":["../../../src/domain/workspace/default-workspace-scaffold.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,mEAAmE;AACnE,qBAAqB;AACrB,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAwB3E,oEAAoE;AACpE,+DAA+D;AAC/D,6DAA6D;AAC7D,qEAAqE;AACrE,yDAAyD;AACzD,MAAM,gBAAgB,GAAqB;IACzC;QACE,EAAE,EAAE,iBAAiB;QACrB,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,iBAAiB;QACxB,MAAM,EAAE,QAAQ;QAChB,SAAS,EAAE,2FAA2F;QACtG,MAAM,EAAE;YACN;gBACE,EAAE,EAAE,oBAAoB;gBACxB,KAAK,EAAE,cAAc;gBACrB,KAAK,EAAE,oBAAoB;gBAC3B,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,mGAAmG;aAC/G;YACD;gBACE,EAAE,EAAE,0BAA0B;gBAC9B,KAAK,EAAE,cAAc;gBACrB,KAAK,EAAE,0BAA0B;gBACjC,MAAM,EAAE,OAAO;gBACf,SAAS,EAAE,kGAAkG;aAC9G;SACF;KACF;CACF,CAAC;AAEF,MAAM,UAAU,qBAAqB;IACnC,OAAO;QACL,UAAU;QACV,WAAW;QACX,UAAU;QACV,UAAU;QACV,aAAa;QACb,OAAO;QACP,kBAAkB;QAClB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACvC,YAAY,OAAO,CAAC,EAAE,EAAE;YACxB,YAAY,OAAO,CAAC,EAAE,SAAS;YAC/B,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;gBACnC,YAAY,OAAO,CAAC,EAAE,WAAW,KAAK,CAAC,EAAE,EAAE;gBAC3C,YAAY,OAAO,CAAC,EAAE,WAAW,KAAK,CAAC,EAAE,QAAQ;aAClD,CAAC;SACH,CAAC;KACH,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc;IACzC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,UAAU;YACb,OAAO,
|
|
1
|
+
{"version":3,"file":"default-workspace-scaffold.js","sourceRoot":"","sources":["../../../src/domain/workspace/default-workspace-scaffold.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// V0.3.1 slice 21 onboarding-conveyor.
|
|
2
2
|
//
|
|
3
3
|
// Narrative tab content for the getting-started mission's two slices.
|
|
4
|
-
// The scaffold writes these as
|
|
4
|
+
// The scaffold writes these as SPEC.md / timeline.md / PROGRESS.md
|
|
5
5
|
// inside each slice folder so a new operator's fresh install ships
|
|
6
6
|
// with a click-through-to-learn experience: opening each tab teaches
|
|
7
7
|
// both (a) what a conveyor run is and (b) what each Project tab does.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getting-started-narrative.js","sourceRoot":"","sources":["../../../src/domain/workspace/getting-started-narrative.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,EAAE;AACF,sEAAsE;AACtE,
|
|
1
|
+
{"version":3,"file":"getting-started-narrative.js","sourceRoot":"","sources":["../../../src/domain/workspace/getting-started-narrative.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,EAAE;AACF,sEAAsE;AACtE,mEAAmE;AACnE,mEAAmE;AACnE,qEAAqE;AACrE,sEAAsE;AACtE,EAAE;AACF,4BAA4B;AAC5B,sEAAsE;AACtE,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,iEAAiE;AACjE,YAAY;AACZ,EAAE;AACF,6HAA6H;AAE7H,MAAM,CAAC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BxC,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2C1C,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6B1C,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwC9C,CAAC;AAEF,MAAM,CAAC,MAAM,iCAAiC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BhD,CAAC;AAEF,MAAM,CAAC,MAAM,iCAAiC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BhD,CAAC;AAEF;;iEAEiE;AACjE,MAAM,CAAC,MAAM,yBAAyB,GAGlC;IACF,oBAAoB,EAAE;QACpB,MAAM,EAAE,yBAAyB;QACjC,QAAQ,EAAE,2BAA2B;QACrC,QAAQ,EAAE,2BAA2B;KACtC;IACD,0BAA0B,EAAE;QAC1B,MAAM,EAAE,+BAA+B;QACvC,QAAQ,EAAE,iCAAiC;QAC3C,QAAQ,EAAE,iCAAiC;KAC5C;CACF,CAAC"}
|
|
@@ -126,14 +126,14 @@ export declare function checkDaemonReload(opts: CheckDaemonReloadInput): DoctorC
|
|
|
126
126
|
export interface CheckSliceDocsInput {
|
|
127
127
|
/** Resolved missions folder root. The check walks each
|
|
128
128
|
* `<missionsRoot>/<mission>/slices/<slice>/` and verifies it has
|
|
129
|
-
*
|
|
129
|
+
* SPEC.md or a readable legacy node file. */
|
|
130
130
|
missionsRoot: string;
|
|
131
131
|
}
|
|
132
132
|
/**
|
|
133
133
|
* Check #6 — optional slice docs.
|
|
134
134
|
*
|
|
135
135
|
* Walks each mission's slices subdirectory and reports slices that
|
|
136
|
-
* have
|
|
136
|
+
* have neither SPEC.md nor a readable legacy node file.
|
|
137
137
|
* Warn-only (empty slices are sometimes intentional staging per
|
|
138
138
|
* IMPL-PRD §57-59). The walk is bounded to one mission + one slice
|
|
139
139
|
* level; we don't recurse into slice subdirs.
|
|
@@ -142,11 +142,11 @@ export declare function checkOptionalSliceDocs(opts: CheckSliceDocsInput): Docto
|
|
|
142
142
|
/**
|
|
143
143
|
* Check #8 — SDLC convention sections (OPR.0.4.4.23).
|
|
144
144
|
*
|
|
145
|
-
* Walks each mission's slices and reports
|
|
145
|
+
* Walks each mission's slices and reports work-node files missing any of the
|
|
146
146
|
* convention sections (`## Intent` / `## Mini-requirements` /
|
|
147
|
-
* `## Proof contract`)
|
|
147
|
+
* `## Proof contract`). Warn-only (advisory /
|
|
148
148
|
* fail-open — the deep per-slice audit is `rig scope audit`; this row is
|
|
149
|
-
* the workspace-level pointer). Slices with no
|
|
149
|
+
* the workspace-level pointer). Slices with no work-node file are check #6's
|
|
150
150
|
* concern, not double-reported here.
|
|
151
151
|
*/
|
|
152
152
|
export declare function checkSdlcConventionSections(opts: CheckSliceDocsInput): DoctorCheck;
|
|
@@ -154,13 +154,10 @@ export interface CheckMissionNotesInput {
|
|
|
154
154
|
missionsRoot: string;
|
|
155
155
|
}
|
|
156
156
|
/**
|
|
157
|
-
* Check #7 —
|
|
157
|
+
* Check #7 — mission NOTES presence.
|
|
158
158
|
*
|
|
159
|
-
* Verifies each mission directory has
|
|
160
|
-
*
|
|
161
|
-
* only because legacy missions predate the convention; the
|
|
162
|
-
* operator can run `rig scope mission create` (which now auto-
|
|
163
|
-
* scaffolds the file per FR-3) for new missions.
|
|
159
|
+
* Verifies each mission directory has current `NOTES.md` or readable legacy
|
|
160
|
+
* `MISSION_NOTES.md`. Warn-only because legacy missions can predate both.
|
|
164
161
|
*/
|
|
165
162
|
export declare function checkMissionNotesPresence(opts: CheckMissionNotesInput): DoctorCheck;
|
|
166
163
|
export interface RunDoctorInput {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-doctor.d.ts","sourceRoot":"","sources":["../../../src/domain/workspace/workspace-doctor.ts"],"names":[],"mappings":"AAwBA,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;AAEjD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;AAE7D,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,mBAAmB,CAAC;CAC7B;AAoBD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,uBAAuB,GAAG,WAAW,CAgCtF;AAED,MAAM,WAAW,wBAAwB;IACvC,aAAa,EAAE,MAAM,CAAC;IACtB;;;;2BAIuB;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,wBAAwB,GAAG,WAAW,CAoC/E;AAED;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb;iFAC6E;IAC7E,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,MAAM,CAAC;IACtB;qEACiE;IACjE,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,mBAAmB,CAAC;IACrC;;;;;;sEAMkE;IAClE,aAAa,CAAC,EAAE,cAAc,EAAE,CAAC;CAClC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,uBAAuB,GAAG,WAAW,CAqC7E;AAoBD,MAAM,WAAW,yBAAyB;IACxC,gEAAgE;IAChE,kBAAkB,EAAE,MAAM,CAAC;IAC3B;;iBAEa;IACb,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,yBAAyB,GAAG,WAAW,CAoBjF;AAED,MAAM,WAAW,sBAAsB;IACrC,mDAAmD;IACnD,cAAc,EAAE,MAAM,CAAC;IACvB;;;;mDAI+C;IAC/C,eAAe,EAAE,IAAI,CAAC;CACvB;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,sBAAsB,GAAG,WAAW,CAiD3E;AAED,MAAM,WAAW,mBAAmB;IAClC;;
|
|
1
|
+
{"version":3,"file":"workspace-doctor.d.ts","sourceRoot":"","sources":["../../../src/domain/workspace/workspace-doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
// 4. Daemon points at this workspace
|
|
9
9
|
// 5. Daemon reload needed
|
|
10
10
|
// 6. Optional slice docs (warn-only)
|
|
11
|
-
// 7. MISSION_NOTES
|
|
11
|
+
// 7. NOTES.md presence (with readable legacy MISSION_NOTES.md fallback)
|
|
12
12
|
//
|
|
13
13
|
// Per-check return shape is `{check, status: "ok"|"warn"|"fail",
|
|
14
14
|
// message, fixHint?, evidence?}` per FR-5 IMPL-PRD §76-78. The shape
|
|
@@ -286,7 +286,7 @@ const SLICE_DOC_FILES = withSpecFirst(["README.md", "IMPLEMENTATION-PRD.md", "IM
|
|
|
286
286
|
* Check #6 — optional slice docs.
|
|
287
287
|
*
|
|
288
288
|
* Walks each mission's slices subdirectory and reports slices that
|
|
289
|
-
* have
|
|
289
|
+
* have neither SPEC.md nor a readable legacy node file.
|
|
290
290
|
* Warn-only (empty slices are sometimes intentional staging per
|
|
291
291
|
* IMPL-PRD §57-59). The walk is bounded to one mission + one slice
|
|
292
292
|
* level; we don't recurse into slice subdirs.
|
|
@@ -334,29 +334,29 @@ export function checkOptionalSliceDocs(opts) {
|
|
|
334
334
|
return {
|
|
335
335
|
check: "optional_slice_docs",
|
|
336
336
|
status: "ok",
|
|
337
|
-
message: `every slice under '${missionsRoot}' has a
|
|
337
|
+
message: `every slice under '${missionsRoot}' has SPEC.md or a readable legacy node file`,
|
|
338
338
|
evidence: { missionsRoot, bareSlices: [] },
|
|
339
339
|
};
|
|
340
340
|
}
|
|
341
341
|
return {
|
|
342
342
|
check: "optional_slice_docs",
|
|
343
343
|
status: "warn",
|
|
344
|
-
message: `${bareSlices.length} slice${bareSlices.length === 1 ? " has" : "s have"} no
|
|
345
|
-
fixHint: "author
|
|
344
|
+
message: `${bareSlices.length} slice${bareSlices.length === 1 ? " has" : "s have"} no SPEC.md or readable legacy node file`,
|
|
345
|
+
fixHint: "author SPEC.md in each bare slice directory; legacy README.md, IMPLEMENTATION-PRD.md, and IMPL-PRD.md remain readable; warn-only because empty slices are sometimes intentional staging",
|
|
346
346
|
evidence: { missionsRoot, bareSlices },
|
|
347
347
|
};
|
|
348
348
|
}
|
|
349
|
-
//
|
|
350
|
-
//
|
|
349
|
+
// The SDLC convention sections a slice SPEC (or legacy node file) must carry.
|
|
350
|
+
// SSOT: docs/reference/sdlc-conventions.md.
|
|
351
351
|
const SDLC_CONVENTION_SECTIONS = ["## Intent", "## Mini-requirements", "## Proof contract"];
|
|
352
352
|
/**
|
|
353
353
|
* Check #8 — SDLC convention sections (OPR.0.4.4.23).
|
|
354
354
|
*
|
|
355
|
-
* Walks each mission's slices and reports
|
|
355
|
+
* Walks each mission's slices and reports work-node files missing any of the
|
|
356
356
|
* convention sections (`## Intent` / `## Mini-requirements` /
|
|
357
|
-
* `## Proof contract`)
|
|
357
|
+
* `## Proof contract`). Warn-only (advisory /
|
|
358
358
|
* fail-open — the deep per-slice audit is `rig scope audit`; this row is
|
|
359
|
-
* the workspace-level pointer). Slices with no
|
|
359
|
+
* the workspace-level pointer). Slices with no work-node file are check #6's
|
|
360
360
|
* concern, not double-reported here.
|
|
361
361
|
*/
|
|
362
362
|
export function checkSdlcConventionSections(opts) {
|
|
@@ -399,7 +399,7 @@ export function checkSdlcConventionSections(opts) {
|
|
|
399
399
|
readme = fs.readFileSync(readmePath ?? path.join(slicePath, "SPEC.md"), "utf-8");
|
|
400
400
|
}
|
|
401
401
|
catch {
|
|
402
|
-
continue; // no
|
|
402
|
+
continue; // no work-node file = check #6's finding, not a section finding
|
|
403
403
|
}
|
|
404
404
|
slicesChecked++;
|
|
405
405
|
const missing = SDLC_CONVENTION_SECTIONS.filter((section) => !new RegExp(`^${section.replace("## ", "##\\s+")}\\s*$`, "m").test(readme));
|
|
@@ -412,26 +412,23 @@ export function checkSdlcConventionSections(opts) {
|
|
|
412
412
|
return {
|
|
413
413
|
check: "sdlc_convention_sections",
|
|
414
414
|
status: "ok",
|
|
415
|
-
message: `every slice
|
|
415
|
+
message: `every slice work-node file under '${missionsRoot}' carries the SDLC convention sections (${slicesChecked} checked)`,
|
|
416
416
|
evidence: { missionsRoot, slicesChecked, offenders: [] },
|
|
417
417
|
};
|
|
418
418
|
}
|
|
419
419
|
return {
|
|
420
420
|
check: "sdlc_convention_sections",
|
|
421
421
|
status: "warn",
|
|
422
|
-
message: `${offenders.length} slice
|
|
422
|
+
message: `${offenders.length} slice work-node file${offenders.length === 1 ? " is" : "s are"} missing SDLC convention sections (Intent / Mini-requirements / Proof contract)`,
|
|
423
423
|
fixHint: "add the missing sections per docs/reference/sdlc-conventions.md (installed: $OPENRIG_HOME/reference/sdlc-conventions.md) (rig scope slice create scaffolds them); run rig scope audit <mission> for per-slice findings — advisory only, nothing is blocked",
|
|
424
424
|
evidence: { missionsRoot, slicesChecked, offenders },
|
|
425
425
|
};
|
|
426
426
|
}
|
|
427
427
|
/**
|
|
428
|
-
* Check #7 —
|
|
428
|
+
* Check #7 — mission NOTES presence.
|
|
429
429
|
*
|
|
430
|
-
* Verifies each mission directory has
|
|
431
|
-
*
|
|
432
|
-
* only because legacy missions predate the convention; the
|
|
433
|
-
* operator can run `rig scope mission create` (which now auto-
|
|
434
|
-
* scaffolds the file per FR-3) for new missions.
|
|
430
|
+
* Verifies each mission directory has current `NOTES.md` or readable legacy
|
|
431
|
+
* `MISSION_NOTES.md`. Warn-only because legacy missions can predate both.
|
|
435
432
|
*/
|
|
436
433
|
export function checkMissionNotesPresence(opts) {
|
|
437
434
|
const { missionsRoot } = opts;
|
|
@@ -447,7 +444,7 @@ export function checkMissionNotesPresence(opts) {
|
|
|
447
444
|
check: "mission_notes_presence",
|
|
448
445
|
status: "warn",
|
|
449
446
|
message: code === "ENOENT"
|
|
450
|
-
? `missions root '${missionsRoot}' does not exist; no
|
|
447
|
+
? `missions root '${missionsRoot}' does not exist; no mission notes to check`
|
|
451
448
|
: `cannot read missions root '${missionsRoot}': ${err.message}`,
|
|
452
449
|
evidence: { missionsRoot, errorCode: code ?? "unknown" },
|
|
453
450
|
};
|
|
@@ -455,8 +452,9 @@ export function checkMissionNotesPresence(opts) {
|
|
|
455
452
|
const missing = [];
|
|
456
453
|
for (const mission of missions) {
|
|
457
454
|
const missionDir = path.join(missionsRoot, mission);
|
|
458
|
-
const
|
|
459
|
-
|
|
455
|
+
const currentNotesPath = path.join(missionDir, "NOTES.md");
|
|
456
|
+
const legacyNotesPath = path.join(missionDir, "MISSION_NOTES.md");
|
|
457
|
+
if (!fs.existsSync(currentNotesPath) && !fs.existsSync(legacyNotesPath)) {
|
|
460
458
|
missing.push({ mission, path: missionDir });
|
|
461
459
|
}
|
|
462
460
|
}
|
|
@@ -464,15 +462,15 @@ export function checkMissionNotesPresence(opts) {
|
|
|
464
462
|
return {
|
|
465
463
|
check: "mission_notes_presence",
|
|
466
464
|
status: "ok",
|
|
467
|
-
message: `every mission under '${missionsRoot}' has MISSION_NOTES.md`,
|
|
465
|
+
message: `every mission under '${missionsRoot}' has NOTES.md or readable legacy MISSION_NOTES.md`,
|
|
468
466
|
evidence: { missionsRoot, missing: [] },
|
|
469
467
|
};
|
|
470
468
|
}
|
|
471
469
|
return {
|
|
472
470
|
check: "mission_notes_presence",
|
|
473
471
|
status: "warn",
|
|
474
|
-
message: `${missing.length} mission${missing.length === 1 ? " has" : "s have"} no MISSION_NOTES.md`,
|
|
475
|
-
fixHint: "
|
|
472
|
+
message: `${missing.length} mission${missing.length === 1 ? " has" : "s have"} no NOTES.md or readable legacy MISSION_NOTES.md`,
|
|
473
|
+
fixHint: "run `rig scope mission repair <id>` for an existing mission, or `rig scope mission create <id>` for a new one",
|
|
476
474
|
evidence: { missionsRoot, missing },
|
|
477
475
|
};
|
|
478
476
|
}
|