@openrig/cli 0.5.9 → 0.5.11
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/README.md +24 -5
- package/daemon/assets/plugins/openrig-core/skills/agent-operated-workflows/SKILL.md +4 -2
- package/daemon/assets/plugins/openrig-core/skills/applying-a-permission-policy/SKILL.md +11 -14
- package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/SKILL.md +51 -59
- package/daemon/assets/plugins/openrig-core/skills/forming-an-openrig-mental-model/SKILL.md +11 -10
- package/daemon/assets/plugins/openrig-core/skills/messaging-the-human/SKILL.md +48 -61
- package/daemon/assets/plugins/openrig-core/skills/mission-slice-sop/SKILL.md +19 -5
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/SKILL.md +39 -50
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/trunk-diff.sh +1 -1
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/LEARNED.md +7 -5
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/PLAYBOOK.md +3 -4
- package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/SPEC.md +7 -7
- package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +80 -64
- package/daemon/assets/plugins/openrig-core/skills/orienting-to-an-inherited-seat/CHANGELOG.md +14 -58
- package/daemon/assets/plugins/openrig-core/skills/queue-handoff/SKILL.md +8 -9
- package/daemon/assets/plugins/openrig-core/skills/retiring-and-inheriting-a-seat/CHANGELOG.md +20 -46
- package/daemon/assets/plugins/openrig-core/skills/retiring-and-inheriting-a-seat/SKILL.md +62 -76
- package/daemon/assets/plugins/openrig-core/skills/seat-continuity-and-handover/SKILL.md +28 -22
- package/daemon/assets/plugins/openrig-core/skills/session-compaction-and-restore/SKILL.md +13 -15
- package/daemon/context-packs/onboarding-width/manifest.yaml +1 -3
- package/daemon/context-packs/onboarding-width/public-reference-material.md +19 -24
- package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +80 -33
- package/daemon/context-packs/skills/agent-operated-software/manifest.yaml +1 -1
- package/daemon/context-packs/skills/agent-operated-workflows/SKILL.md +4 -2
- package/daemon/context-packs/skills/agent-operated-workflows/manifest.yaml +1 -1
- package/daemon/context-packs/skills/applying-a-permission-policy/SKILL.md +11 -14
- package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +1 -1
- package/daemon/context-packs/skills/claude-compaction-restore/SKILL.md +51 -59
- package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/agent-starters/SKILL.md +21 -19
- 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 +32 -16
- package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/cross-host-rig-commands/SKILL.md +84 -148
- package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +3 -3
- package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/messaging-the-human/SKILL.md +48 -61
- package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +3 -3
- package/daemon/context-packs/skills/core/openrig-architect/SKILL.md +40 -47
- 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-skills/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-upgrade/SKILL.md +16 -0
- 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/SKILL.md +12 -10
- 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/SKILL.md +15 -13
- 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/delegating-work/manifest.yaml +1 -1
- package/daemon/context-packs/skills/forming-an-openrig-mental-model/SKILL.md +11 -10
- package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +1 -1
- package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +1 -1
- package/daemon/context-packs/skills/mission-slice-sop/SKILL.md +19 -5
- package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +1 -1
- package/daemon/context-packs/skills/openrig-operating-model/SKILL.md +39 -50
- package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +1 -1
- package/daemon/context-packs/skills/openrig-operating-model/scripts/trunk-diff.sh +1 -1
- package/daemon/context-packs/skills/openrig-operating-model/templates/LEARNED.md +7 -5
- package/daemon/context-packs/skills/openrig-operating-model/templates/PLAYBOOK.md +3 -4
- package/daemon/context-packs/skills/openrig-operating-model/templates/SPEC.md +7 -7
- package/daemon/context-packs/skills/openrig-user/SKILL.md +80 -64
- package/daemon/context-packs/skills/openrig-user/manifest.yaml +1 -1
- package/daemon/context-packs/skills/orienting-to-an-inherited-seat/CHANGELOG.md +14 -58
- package/daemon/context-packs/skills/orienting-to-an-inherited-seat/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/SKILL.md +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/SKILL.md +2 -2
- package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/requirements-writer/SKILL.md +1 -1
- package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/ui-mockup/SKILL.md +3 -3
- package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/development-team/SKILL.md +40 -139
- package/daemon/context-packs/skills/pods/development-team/manifest.yaml +3 -3
- package/daemon/context-packs/skills/pods/orchestration-team/SKILL.md +80 -118
- package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +3 -3
- package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/review-team/SKILL.md +34 -31
- package/daemon/context-packs/skills/pods/review-team/manifest.yaml +3 -3
- package/daemon/context-packs/skills/process/agent-browser/LOCAL-INSIGHTS.md +24 -53
- package/daemon/context-packs/skills/process/agent-browser/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/frontend-design/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/systematic-debugging/find-polluter.sh +29 -15
- package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/test-driven-development/SKILL.md +53 -48
- package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/verification-before-completion/SKILL.md +3 -3
- package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
- package/daemon/context-packs/skills/queue-handoff/SKILL.md +8 -9
- package/daemon/context-packs/skills/queue-handoff/manifest.yaml +1 -1
- package/daemon/context-packs/skills/refocusing/manifest.yaml +1 -1
- package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/CHANGELOG.md +20 -46
- package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/SKILL.md +62 -76
- package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +1 -1
- package/daemon/context-packs/skills/seat-continuity-and-handover/SKILL.md +28 -22
- package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +1 -1
- package/daemon/context-packs/skills/session-compaction-and-restore/SKILL.md +13 -15
- package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +1 -1
- package/daemon/context-packs/skills/software-for-agents/manifest.yaml +1 -1
- package/daemon/context-packs/world-example/manifest.yaml +1 -1
- package/daemon/context-packs/world-public/build-your-world.md +12 -7
- package/daemon/context-packs/world-public/manifest.yaml +1 -1
- package/daemon/dist/adapters/tmux.d.ts +7 -9
- package/daemon/dist/adapters/tmux.d.ts.map +1 -1
- package/daemon/dist/adapters/tmux.js +7 -35
- package/daemon/dist/adapters/tmux.js.map +1 -1
- package/daemon/dist/build-info.js +3 -3
- package/daemon/dist/daemon-shutdown.d.ts +27 -0
- package/daemon/dist/daemon-shutdown.d.ts.map +1 -0
- package/daemon/dist/daemon-shutdown.js +84 -0
- package/daemon/dist/daemon-shutdown.js.map +1 -0
- package/daemon/dist/domain/codex-thread-id.d.ts +1 -0
- package/daemon/dist/domain/codex-thread-id.d.ts.map +1 -1
- package/daemon/dist/domain/codex-thread-id.js +32 -23
- package/daemon/dist/domain/codex-thread-id.js.map +1 -1
- package/daemon/dist/domain/context-usage-store.d.ts +2 -0
- package/daemon/dist/domain/context-usage-store.d.ts.map +1 -1
- package/daemon/dist/domain/context-usage-store.js +7 -28
- package/daemon/dist/domain/context-usage-store.js.map +1 -1
- package/daemon/dist/domain/crash-cart-conductor.js +1 -1
- package/daemon/dist/domain/crash-cart-conductor.js.map +1 -1
- package/daemon/dist/domain/execution-view.d.ts.map +1 -1
- package/daemon/dist/domain/execution-view.js +24 -3
- package/daemon/dist/domain/execution-view.js.map +1 -1
- package/daemon/dist/domain/gateway/channel-operations.d.ts +39 -0
- package/daemon/dist/domain/gateway/channel-operations.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/channel-operations.js +35 -0
- package/daemon/dist/domain/gateway/channel-operations.js.map +1 -0
- package/daemon/dist/domain/gateway/connections-projection.d.ts +61 -0
- package/daemon/dist/domain/gateway/connections-projection.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/connections-projection.js +149 -0
- package/daemon/dist/domain/gateway/connections-projection.js.map +1 -0
- package/daemon/dist/domain/gateway/gateway-subsystem.d.ts +3 -0
- package/daemon/dist/domain/gateway/gateway-subsystem.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/gateway-subsystem.js +3 -0
- package/daemon/dist/domain/gateway/gateway-subsystem.js.map +1 -1
- package/daemon/dist/domain/gateway/human-readiness.d.ts +37 -0
- package/daemon/dist/domain/gateway/human-readiness.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/human-readiness.js +44 -0
- package/daemon/dist/domain/gateway/human-readiness.js.map +1 -0
- package/daemon/dist/domain/gateway/human-registry.d.ts +5 -8
- package/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/human-registry.js +5 -8
- package/daemon/dist/domain/gateway/human-registry.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/inbound.d.ts +16 -1
- package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/inbound.js +35 -12
- package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/queue-access.d.ts +1 -0
- package/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/queue-access.js +1 -0
- package/daemon/dist/domain/gateway/slack/queue-access.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts +18 -0
- package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/slack-subsystem.js +63 -8
- package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +13 -0
- package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/socket-inbound.js +59 -1
- package/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/state-store.d.ts +21 -0
- package/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/state-store.js +28 -1
- package/daemon/dist/domain/gateway/slack/state-store.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/thread-routing.d.ts +2 -0
- package/daemon/dist/domain/gateway/slack/thread-routing.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/thread-routing.js +6 -1
- package/daemon/dist/domain/gateway/slack/thread-routing.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +4 -0
- package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/thread-seat-map.js +11 -0
- package/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -1
- package/daemon/dist/domain/health-checkpoints.d.ts +57 -0
- package/daemon/dist/domain/health-checkpoints.d.ts.map +1 -0
- package/daemon/dist/domain/health-checkpoints.js +198 -0
- package/daemon/dist/domain/health-checkpoints.js.map +1 -0
- package/daemon/dist/domain/health-context.d.ts +14 -0
- package/daemon/dist/domain/health-context.d.ts.map +1 -0
- package/daemon/dist/domain/health-context.js +93 -0
- package/daemon/dist/domain/health-context.js.map +1 -0
- package/daemon/dist/domain/health-detectors.d.ts +106 -0
- package/daemon/dist/domain/health-detectors.d.ts.map +1 -0
- package/daemon/dist/domain/health-detectors.js +392 -0
- package/daemon/dist/domain/health-detectors.js.map +1 -0
- package/daemon/dist/domain/health-diagnosis.d.ts +143 -0
- package/daemon/dist/domain/health-diagnosis.d.ts.map +1 -0
- package/daemon/dist/domain/health-diagnosis.js +249 -0
- package/daemon/dist/domain/health-diagnosis.js.map +1 -0
- package/daemon/dist/domain/health-passive-ceremony.d.ts +19 -0
- package/daemon/dist/domain/health-passive-ceremony.d.ts.map +1 -0
- package/daemon/dist/domain/health-passive-ceremony.js +234 -0
- package/daemon/dist/domain/health-passive-ceremony.js.map +1 -0
- package/daemon/dist/domain/health-policy.d.ts +45 -0
- package/daemon/dist/domain/health-policy.d.ts.map +1 -0
- package/daemon/dist/domain/health-policy.js +89 -0
- package/daemon/dist/domain/health-policy.js.map +1 -0
- package/daemon/dist/domain/health-projection.d.ts +237 -0
- package/daemon/dist/domain/health-projection.d.ts.map +1 -0
- package/daemon/dist/domain/health-projection.js +312 -0
- package/daemon/dist/domain/health-projection.js.map +1 -0
- package/daemon/dist/domain/lifecycle-obligations.d.ts +18 -0
- package/daemon/dist/domain/lifecycle-obligations.d.ts.map +1 -0
- package/daemon/dist/domain/lifecycle-obligations.js +35 -0
- package/daemon/dist/domain/lifecycle-obligations.js.map +1 -0
- package/daemon/dist/domain/mission-control/mission-control-read-layer.d.ts.map +1 -1
- package/daemon/dist/domain/mission-control/mission-control-read-layer.js +14 -11
- package/daemon/dist/domain/mission-control/mission-control-read-layer.js.map +1 -1
- package/daemon/dist/domain/model-divergence/current-generation-record.d.ts.map +1 -1
- package/daemon/dist/domain/model-divergence/current-generation-record.js +6 -1
- package/daemon/dist/domain/model-divergence/current-generation-record.js.map +1 -1
- package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
- package/daemon/dist/domain/node-inventory.js +1 -0
- package/daemon/dist/domain/node-inventory.js.map +1 -1
- package/daemon/dist/domain/policies/workflow-keepalive.d.ts +1 -0
- package/daemon/dist/domain/policies/workflow-keepalive.d.ts.map +1 -1
- package/daemon/dist/domain/policies/workflow-keepalive.js +7 -4
- package/daemon/dist/domain/policies/workflow-keepalive.js.map +1 -1
- package/daemon/dist/domain/project-lifecycle-compiler.d.ts +7 -0
- package/daemon/dist/domain/project-lifecycle-compiler.d.ts.map +1 -1
- package/daemon/dist/domain/project-lifecycle-compiler.js +133 -8
- package/daemon/dist/domain/project-lifecycle-compiler.js.map +1 -1
- package/daemon/dist/domain/queue-repository.d.ts +14 -0
- package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
- package/daemon/dist/domain/queue-repository.js +60 -5
- package/daemon/dist/domain/queue-repository.js.map +1 -1
- package/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -1
- package/daemon/dist/domain/queue-stuck-sweep.js +1 -0
- package/daemon/dist/domain/queue-stuck-sweep.js.map +1 -1
- package/daemon/dist/domain/queue-transition-log.d.ts +5 -0
- package/daemon/dist/domain/queue-transition-log.d.ts.map +1 -1
- package/daemon/dist/domain/queue-transition-log.js +28 -0
- package/daemon/dist/domain/queue-transition-log.js.map +1 -1
- package/daemon/dist/domain/queue-wait-backoff.d.ts +21 -0
- package/daemon/dist/domain/queue-wait-backoff.d.ts.map +1 -0
- package/daemon/dist/domain/queue-wait-backoff.js +96 -0
- package/daemon/dist/domain/queue-wait-backoff.js.map +1 -0
- package/daemon/dist/domain/queue-wake-repository.d.ts +1 -0
- package/daemon/dist/domain/queue-wake-repository.d.ts.map +1 -1
- package/daemon/dist/domain/queue-wake-repository.js +8 -3
- package/daemon/dist/domain/queue-wake-repository.js.map +1 -1
- package/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
- package/daemon/dist/domain/seat-lifecycle-service.js +8 -1
- package/daemon/dist/domain/seat-lifecycle-service.js.map +1 -1
- package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
- package/daemon/dist/domain/startup-orchestrator.js +27 -11
- package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
- package/daemon/dist/domain/startup-proof.d.ts.map +1 -1
- package/daemon/dist/domain/startup-proof.js +10 -9
- package/daemon/dist/domain/startup-proof.js.map +1 -1
- package/daemon/dist/domain/startup-resolver.d.ts +3 -1
- package/daemon/dist/domain/startup-resolver.d.ts.map +1 -1
- package/daemon/dist/domain/startup-resolver.js +18 -0
- package/daemon/dist/domain/startup-resolver.js.map +1 -1
- package/daemon/dist/domain/startup-validation.d.ts.map +1 -1
- package/daemon/dist/domain/startup-validation.js +12 -1
- package/daemon/dist/domain/startup-validation.js.map +1 -1
- package/daemon/dist/domain/types.d.ts +16 -1
- 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 +9 -1
- package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
- package/daemon/dist/domain/user-settings/settings-store.js +86 -12
- package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
- package/daemon/dist/domain/watchdog-jobs-repository.d.ts +2 -0
- package/daemon/dist/domain/watchdog-jobs-repository.d.ts.map +1 -1
- package/daemon/dist/domain/watchdog-jobs-repository.js +5 -0
- package/daemon/dist/domain/watchdog-jobs-repository.js.map +1 -1
- package/daemon/dist/domain/workflow-boot-sweep.d.ts +1 -0
- package/daemon/dist/domain/workflow-boot-sweep.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-boot-sweep.js +3 -0
- package/daemon/dist/domain/workflow-boot-sweep.js.map +1 -1
- package/daemon/dist/domain/workflow-exception-escalation.d.ts +4 -3
- package/daemon/dist/domain/workflow-exception-escalation.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-exception-escalation.js +22 -21
- package/daemon/dist/domain/workflow-exception-escalation.js.map +1 -1
- package/daemon/dist/domain/workflow-exception-router.d.ts +4 -3
- package/daemon/dist/domain/workflow-exception-router.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-exception-router.js +7 -6
- package/daemon/dist/domain/workflow-exception-router.js.map +1 -1
- package/daemon/dist/domain/workflow-human-destination.d.ts +18 -0
- package/daemon/dist/domain/workflow-human-destination.d.ts.map +1 -0
- package/daemon/dist/domain/workflow-human-destination.js +40 -0
- package/daemon/dist/domain/workflow-human-destination.js.map +1 -0
- package/daemon/dist/domain/workflow-projector.d.ts +28 -3
- package/daemon/dist/domain/workflow-projector.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-projector.js +134 -33
- package/daemon/dist/domain/workflow-projector.js.map +1 -1
- package/daemon/dist/domain/workflow-role-context.d.ts +4 -6
- package/daemon/dist/domain/workflow-role-context.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-role-context.js +7 -14
- package/daemon/dist/domain/workflow-role-context.js.map +1 -1
- package/daemon/dist/domain/workflow-runtime.d.ts +12 -3
- package/daemon/dist/domain/workflow-runtime.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-runtime.js +124 -25
- package/daemon/dist/domain/workflow-runtime.js.map +1 -1
- package/daemon/dist/domain/workflow-spec-cache.d.ts +2 -2
- package/daemon/dist/domain/workflow-spec-cache.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-spec-cache.js +16 -0
- package/daemon/dist/domain/workflow-spec-cache.js.map +1 -1
- package/daemon/dist/domain/workflow-types.d.ts +8 -0
- package/daemon/dist/domain/workflow-types.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-types.js.map +1 -1
- package/daemon/dist/domain/workflow-validator.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-validator.js +57 -24
- package/daemon/dist/domain/workflow-validator.js.map +1 -1
- package/daemon/dist/gateway-human-registry-surface.d.ts +1 -0
- package/daemon/dist/gateway-human-registry-surface.d.ts.map +1 -1
- package/daemon/dist/gateway-human-registry-surface.js +1 -0
- package/daemon/dist/gateway-human-registry-surface.js.map +1 -1
- package/daemon/dist/gateway-slack-surface.d.ts +1 -0
- package/daemon/dist/gateway-slack-surface.d.ts.map +1 -1
- package/daemon/dist/gateway-slack-surface.js +1 -0
- package/daemon/dist/gateway-slack-surface.js.map +1 -1
- package/daemon/dist/health-detectors-surface.d.ts +2 -0
- package/daemon/dist/health-detectors-surface.d.ts.map +1 -0
- package/daemon/dist/health-detectors-surface.js +2 -0
- package/daemon/dist/health-detectors-surface.js.map +1 -0
- package/daemon/dist/health-projection-surface.d.ts +2 -0
- package/daemon/dist/health-projection-surface.d.ts.map +1 -0
- package/daemon/dist/health-projection-surface.js +2 -0
- package/daemon/dist/health-projection-surface.js.map +1 -0
- package/daemon/dist/index.d.ts.map +1 -1
- package/daemon/dist/index.js +38 -95
- package/daemon/dist/index.js.map +1 -1
- package/daemon/dist/lib/pane-envelope.d.ts.map +1 -1
- package/daemon/dist/lib/pane-envelope.js +4 -1
- package/daemon/dist/lib/pane-envelope.js.map +1 -1
- package/daemon/dist/project-lifecycle-surface.d.ts +1 -1
- package/daemon/dist/project-lifecycle-surface.d.ts.map +1 -1
- package/daemon/dist/routes/gateway.d.ts +5 -1
- package/daemon/dist/routes/gateway.d.ts.map +1 -1
- package/daemon/dist/routes/gateway.js +80 -22
- package/daemon/dist/routes/gateway.js.map +1 -1
- package/daemon/dist/routes/health-diagnosis.d.ts +3 -0
- package/daemon/dist/routes/health-diagnosis.d.ts.map +1 -0
- package/daemon/dist/routes/health-diagnosis.js +47 -0
- package/daemon/dist/routes/health-diagnosis.js.map +1 -0
- package/daemon/dist/routes/health.d.ts +3 -0
- package/daemon/dist/routes/health.d.ts.map +1 -0
- package/daemon/dist/routes/health.js +50 -0
- package/daemon/dist/routes/health.js.map +1 -0
- package/daemon/dist/routes/hosts.d.ts +2 -0
- package/daemon/dist/routes/hosts.d.ts.map +1 -1
- package/daemon/dist/routes/hosts.js +12 -5
- package/daemon/dist/routes/hosts.js.map +1 -1
- package/daemon/dist/routes/queue.d.ts.map +1 -1
- package/daemon/dist/routes/queue.js +4 -3
- package/daemon/dist/routes/queue.js.map +1 -1
- package/daemon/dist/routes/require-sender-identity.d.ts +3 -1
- package/daemon/dist/routes/require-sender-identity.d.ts.map +1 -1
- package/daemon/dist/routes/require-sender-identity.js +11 -5
- package/daemon/dist/routes/require-sender-identity.js.map +1 -1
- package/daemon/dist/routes/sessions.d.ts.map +1 -1
- package/daemon/dist/routes/sessions.js +95 -27
- package/daemon/dist/routes/sessions.js.map +1 -1
- package/daemon/dist/routes/workflow.d.ts.map +1 -1
- package/daemon/dist/routes/workflow.js +6 -1
- package/daemon/dist/routes/workflow.js.map +1 -1
- package/daemon/dist/server.d.ts +8 -0
- package/daemon/dist/server.d.ts.map +1 -1
- package/daemon/dist/server.js +10 -1
- package/daemon/dist/server.js.map +1 -1
- package/daemon/dist/startup.d.ts.map +1 -1
- package/daemon/dist/startup.js +35 -4
- package/daemon/dist/startup.js.map +1 -1
- package/daemon/docs/reference/agent-spec.md +6 -0
- package/daemon/docs/reference/getting-started.md +134 -28
- package/daemon/docs/reference/health-diagnosis.md +331 -0
- package/daemon/docs/reference/mission-install.md +5 -0
- package/daemon/docs/reference/product-journey-sdlc.md +53 -15
- package/daemon/docs/reference/project-release-profile.yaml +82 -0
- package/daemon/docs/reference/release-boundary.md +5 -0
- package/daemon/docs/reference/rig-spec.md +43 -4
- package/daemon/docs/reference/sdlc-conventions.md +6 -4
- package/daemon/specs/agents/conveyor/planner/guidance/role.md +5 -3
- package/daemon/specs/agents/conveyor/planner/startup/context.md +13 -4
- package/daemon/specs/agents/design/product-designer/agent.yaml +4 -3
- package/daemon/specs/agents/design/product-designer/guidance/role.md +12 -10
- package/daemon/specs/agents/development/implementer/agent.yaml +1 -9
- package/daemon/specs/agents/development/implementer/guidance/role.md +21 -43
- package/daemon/specs/agents/development/qa/agent.yaml +2 -11
- package/daemon/specs/agents/development/qa/guidance/role.md +21 -73
- package/daemon/specs/agents/orchestration/orchestrator/agent.yaml +1 -9
- package/daemon/specs/agents/orchestration/orchestrator/guidance/role.md +25 -72
- package/daemon/specs/agents/product-management/pm/guidance/role.md +19 -17
- package/daemon/specs/agents/review/independent-reviewer/agent.yaml +1 -9
- package/daemon/specs/agents/review/independent-reviewer/guidance/role.md +20 -35
- package/daemon/specs/agents/shared/skills/core/agent-starters/SKILL.md +21 -19
- package/daemon/specs/agents/shared/skills/core/agent-startup-and-context-ingestion/SKILL.md +32 -16
- package/daemon/specs/agents/shared/skills/core/cross-host-rig-commands/SKILL.md +84 -148
- package/daemon/specs/agents/shared/skills/core/messaging-the-human/SKILL.md +48 -61
- package/daemon/specs/agents/shared/skills/core/openrig-architect/SKILL.md +40 -47
- package/daemon/specs/agents/shared/skills/core/openrig-upgrade/SKILL.md +16 -0
- package/daemon/specs/agents/shared/skills/core/session-source-fork/SKILL.md +12 -10
- package/daemon/specs/agents/shared/skills/core/topology-mutation-and-seat-management/SKILL.md +15 -13
- package/daemon/specs/agents/shared/skills/pm/exec-summary/SKILL.md +1 -1
- package/daemon/specs/agents/shared/skills/pm/plan-review/SKILL.md +2 -2
- package/daemon/specs/agents/shared/skills/pm/requirements-writer/SKILL.md +1 -1
- package/daemon/specs/agents/shared/skills/pm/ui-mockup/SKILL.md +3 -3
- package/daemon/specs/agents/shared/skills/pods/development-team/SKILL.md +40 -139
- package/daemon/specs/agents/shared/skills/pods/orchestration-team/SKILL.md +80 -118
- package/daemon/specs/agents/shared/skills/pods/review-team/SKILL.md +34 -31
- package/daemon/specs/agents/shared/skills/process/agent-browser/LOCAL-INSIGHTS.md +24 -53
- package/daemon/specs/agents/shared/skills/process/systematic-debugging/find-polluter.sh +29 -15
- package/daemon/specs/agents/shared/skills/process/test-driven-development/SKILL.md +53 -48
- package/daemon/specs/agents/shared/skills/process/verification-before-completion/SKILL.md +3 -3
- package/daemon/specs/rigs/launch/demo/CULTURE.md +21 -30
- package/daemon/specs/rigs/launch/first-project/CULTURE.md +39 -0
- package/daemon/specs/rigs/launch/first-project/rig.yaml +31 -0
- package/daemon/specs/rigs/launch/implementation-pair/rig.yaml +3 -3
- package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/startup/context.md +1 -1
- package/daemon/specs/rigs/launch/kernel/agents/operator/agent/guidance/role.md +21 -7
- package/daemon/specs/rigs/launch/kernel/agents/operator/agent/startup/context.md +2 -2
- package/daemon/specs/rigs/launch/kernel/agents/queue/worker/guidance/role.md +19 -11
- package/daemon/specs/rigs/launch/kernel/agents/queue/worker/startup/context.md +3 -2
- package/daemon/specs/rigs/launch/kernel/culture/CULTURE.md +15 -8
- package/daemon/specs/rigs/launch/kernel/rig-claude-only.yaml +7 -0
- package/daemon/specs/rigs/launch/kernel/rig-codex-only.yaml +7 -0
- package/daemon/specs/rigs/launch/kernel/rig.yaml +9 -4
- package/daemon/specs/rigs/preview/product-team/CULTURE.md +26 -71
- package/daemon/specs/rigs/preview/product-team/topology/seats/dev1-qa/CRAFT.md +6 -4
- package/dist/build-info.js +3 -3
- package/dist/client.d.ts +6 -20
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +53 -32
- package/dist/client.js.map +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +2 -0
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/context.d.ts.map +1 -1
- package/dist/commands/context.js +15 -13
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/daemon.d.ts.map +1 -1
- package/dist/commands/daemon.js +31 -27
- package/dist/commands/daemon.js.map +1 -1
- package/dist/commands/destroy.js +1 -1
- package/dist/commands/destroy.js.map +1 -1
- package/dist/commands/gateway.d.ts +17 -0
- package/dist/commands/gateway.d.ts.map +1 -1
- package/dist/commands/gateway.js +99 -13
- package/dist/commands/gateway.js.map +1 -1
- package/dist/commands/health.d.ts +12 -0
- package/dist/commands/health.d.ts.map +1 -0
- package/dist/commands/health.js +403 -0
- package/dist/commands/health.js.map +1 -0
- package/dist/commands/host.d.ts.map +1 -1
- package/dist/commands/host.js +2 -0
- package/dist/commands/host.js.map +1 -1
- package/dist/commands/launch.d.ts.map +1 -1
- package/dist/commands/launch.js +2 -2
- package/dist/commands/launch.js.map +1 -1
- package/dist/commands/queue.d.ts +18 -0
- package/dist/commands/queue.d.ts.map +1 -1
- package/dist/commands/queue.js +71 -5
- package/dist/commands/queue.js.map +1 -1
- package/dist/commands/send.d.ts.map +1 -1
- package/dist/commands/send.js +8 -9
- package/dist/commands/send.js.map +1 -1
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +10 -9
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/slack.d.ts.map +1 -1
- package/dist/commands/slack.js +39 -11
- package/dist/commands/slack.js.map +1 -1
- package/dist/commands/tui.d.ts +2 -0
- package/dist/commands/tui.d.ts.map +1 -1
- package/dist/commands/tui.js +26 -10
- package/dist/commands/tui.js.map +1 -1
- package/dist/commands/walk.d.ts.map +1 -1
- package/dist/commands/walk.js +24 -48
- package/dist/commands/walk.js.map +1 -1
- package/dist/commands/workflow-render.d.ts +19 -0
- package/dist/commands/workflow-render.d.ts.map +1 -1
- package/dist/commands/workflow-render.js +12 -1
- package/dist/commands/workflow-render.js.map +1 -1
- package/dist/commands/workflow.d.ts.map +1 -1
- package/dist/commands/workflow.js +12 -8
- package/dist/commands/workflow.js.map +1 -1
- package/dist/config-store.d.ts +10 -1
- package/dist/config-store.d.ts.map +1 -1
- package/dist/config-store.js +87 -14
- package/dist/config-store.js.map +1 -1
- package/dist/cross-host-executor.d.ts +1 -1
- package/dist/cross-host-executor.js +2 -2
- package/dist/cross-host-executor.js.map +1 -1
- package/dist/daemon-lifecycle.d.ts +12 -11
- package/dist/daemon-lifecycle.d.ts.map +1 -1
- package/dist/daemon-lifecycle.js +283 -146
- package/dist/daemon-lifecycle.js.map +1 -1
- package/dist/daemon-start-lock.d.ts +9 -0
- package/dist/daemon-start-lock.d.ts.map +1 -0
- package/dist/daemon-start-lock.js +47 -0
- package/dist/daemon-start-lock.js.map +1 -0
- package/dist/front-door.d.ts.map +1 -1
- package/dist/front-door.js +8 -1
- package/dist/front-door.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/file-transfer.js +1 -1
- package/dist/lib/file-transfer.js.map +1 -1
- package/dist/lib/scope/scope-fs.js +2 -2
- package/dist/lib/scope/scope-fs.js.map +1 -1
- package/dist/lib/walk-consumption.d.ts +6 -0
- package/dist/lib/walk-consumption.d.ts.map +1 -0
- package/dist/lib/walk-consumption.js +78 -0
- package/dist/lib/walk-consumption.js.map +1 -0
- package/dist/local-origin.d.ts +3 -0
- package/dist/local-origin.d.ts.map +1 -0
- package/dist/local-origin.js +37 -0
- package/dist/local-origin.js.map +1 -0
- package/dist/read-view.d.ts +17 -0
- package/dist/read-view.d.ts.map +1 -0
- package/dist/read-view.js +17 -0
- package/dist/read-view.js.map +1 -0
- package/dist/shared-tui.d.ts +12 -0
- package/dist/shared-tui.d.ts.map +1 -0
- package/dist/shared-tui.js +37 -0
- package/dist/shared-tui.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/adapters/tmux.d.ts +7 -9
- package/node_modules/@openrig/daemon/dist/adapters/tmux.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/adapters/tmux.js +7 -35
- package/node_modules/@openrig/daemon/dist/adapters/tmux.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/build-info.js +3 -3
- package/node_modules/@openrig/daemon/dist/daemon-shutdown.d.ts +27 -0
- package/node_modules/@openrig/daemon/dist/daemon-shutdown.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/daemon-shutdown.js +84 -0
- package/node_modules/@openrig/daemon/dist/daemon-shutdown.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/codex-thread-id.d.ts +1 -0
- package/node_modules/@openrig/daemon/dist/domain/codex-thread-id.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/codex-thread-id.js +32 -23
- package/node_modules/@openrig/daemon/dist/domain/codex-thread-id.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/context-usage-store.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/domain/context-usage-store.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/context-usage-store.js +7 -28
- package/node_modules/@openrig/daemon/dist/domain/context-usage-store.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/crash-cart-conductor.js +1 -1
- package/node_modules/@openrig/daemon/dist/domain/crash-cart-conductor.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/execution-view.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/execution-view.js +24 -3
- package/node_modules/@openrig/daemon/dist/domain/execution-view.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/channel-operations.d.ts +39 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/channel-operations.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/channel-operations.js +35 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/channel-operations.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/connections-projection.d.ts +61 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/connections-projection.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/connections-projection.js +149 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/connections-projection.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.d.ts +3 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.js +3 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/human-readiness.d.ts +37 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/human-readiness.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/human-readiness.js +44 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/human-readiness.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.d.ts +5 -8
- 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 +5 -8
- package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.d.ts +16 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.js +35 -12
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.d.ts +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.js +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts +18 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.js +63 -8
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +13 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.js +59 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.d.ts +21 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.js +28 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.js +6 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +4 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.js +11 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/health-checkpoints.d.ts +57 -0
- package/node_modules/@openrig/daemon/dist/domain/health-checkpoints.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-checkpoints.js +198 -0
- package/node_modules/@openrig/daemon/dist/domain/health-checkpoints.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-context.d.ts +14 -0
- package/node_modules/@openrig/daemon/dist/domain/health-context.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-context.js +93 -0
- package/node_modules/@openrig/daemon/dist/domain/health-context.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-detectors.d.ts +106 -0
- package/node_modules/@openrig/daemon/dist/domain/health-detectors.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-detectors.js +392 -0
- package/node_modules/@openrig/daemon/dist/domain/health-detectors.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-diagnosis.d.ts +143 -0
- package/node_modules/@openrig/daemon/dist/domain/health-diagnosis.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-diagnosis.js +249 -0
- package/node_modules/@openrig/daemon/dist/domain/health-diagnosis.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-passive-ceremony.d.ts +19 -0
- package/node_modules/@openrig/daemon/dist/domain/health-passive-ceremony.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-passive-ceremony.js +234 -0
- package/node_modules/@openrig/daemon/dist/domain/health-passive-ceremony.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-policy.d.ts +45 -0
- package/node_modules/@openrig/daemon/dist/domain/health-policy.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-policy.js +89 -0
- package/node_modules/@openrig/daemon/dist/domain/health-policy.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-projection.d.ts +237 -0
- package/node_modules/@openrig/daemon/dist/domain/health-projection.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/health-projection.js +312 -0
- package/node_modules/@openrig/daemon/dist/domain/health-projection.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/lifecycle-obligations.d.ts +18 -0
- package/node_modules/@openrig/daemon/dist/domain/lifecycle-obligations.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/lifecycle-obligations.js +35 -0
- package/node_modules/@openrig/daemon/dist/domain/lifecycle-obligations.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/mission-control/mission-control-read-layer.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/mission-control/mission-control-read-layer.js +14 -11
- package/node_modules/@openrig/daemon/dist/domain/mission-control/mission-control-read-layer.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/model-divergence/current-generation-record.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/model-divergence/current-generation-record.js +6 -1
- package/node_modules/@openrig/daemon/dist/domain/model-divergence/current-generation-record.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 +1 -0
- package/node_modules/@openrig/daemon/dist/domain/node-inventory.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/policies/workflow-keepalive.d.ts +1 -0
- package/node_modules/@openrig/daemon/dist/domain/policies/workflow-keepalive.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/policies/workflow-keepalive.js +7 -4
- package/node_modules/@openrig/daemon/dist/domain/policies/workflow-keepalive.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/project-lifecycle-compiler.d.ts +7 -0
- package/node_modules/@openrig/daemon/dist/domain/project-lifecycle-compiler.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/project-lifecycle-compiler.js +133 -8
- package/node_modules/@openrig/daemon/dist/domain/project-lifecycle-compiler.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-repository.d.ts +14 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-repository.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-repository.js +60 -5
- 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.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.js +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-transition-log.d.ts +5 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-transition-log.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-transition-log.js +28 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-transition-log.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-wait-backoff.d.ts +21 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wait-backoff.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wait-backoff.js +96 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wait-backoff.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.d.ts +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.js +8 -3
- package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-lifecycle-service.js +8 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-lifecycle-service.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/startup-orchestrator.js +27 -11
- package/node_modules/@openrig/daemon/dist/domain/startup-orchestrator.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/startup-proof.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/startup-proof.js +10 -9
- package/node_modules/@openrig/daemon/dist/domain/startup-proof.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/startup-resolver.d.ts +3 -1
- package/node_modules/@openrig/daemon/dist/domain/startup-resolver.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/startup-resolver.js +18 -0
- package/node_modules/@openrig/daemon/dist/domain/startup-resolver.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/startup-validation.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/startup-validation.js +12 -1
- package/node_modules/@openrig/daemon/dist/domain/startup-validation.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/types.d.ts +16 -1
- 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 +9 -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 +86 -12
- package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/watchdog-jobs-repository.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/domain/watchdog-jobs-repository.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/watchdog-jobs-repository.js +5 -0
- package/node_modules/@openrig/daemon/dist/domain/watchdog-jobs-repository.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-boot-sweep.d.ts +1 -0
- package/node_modules/@openrig/daemon/dist/domain/workflow-boot-sweep.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-boot-sweep.js +3 -0
- package/node_modules/@openrig/daemon/dist/domain/workflow-boot-sweep.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-exception-escalation.d.ts +4 -3
- package/node_modules/@openrig/daemon/dist/domain/workflow-exception-escalation.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-exception-escalation.js +22 -21
- package/node_modules/@openrig/daemon/dist/domain/workflow-exception-escalation.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-exception-router.d.ts +4 -3
- package/node_modules/@openrig/daemon/dist/domain/workflow-exception-router.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-exception-router.js +7 -6
- package/node_modules/@openrig/daemon/dist/domain/workflow-exception-router.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-human-destination.d.ts +18 -0
- package/node_modules/@openrig/daemon/dist/domain/workflow-human-destination.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/workflow-human-destination.js +40 -0
- package/node_modules/@openrig/daemon/dist/domain/workflow-human-destination.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/workflow-projector.d.ts +28 -3
- package/node_modules/@openrig/daemon/dist/domain/workflow-projector.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-projector.js +134 -33
- package/node_modules/@openrig/daemon/dist/domain/workflow-projector.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-role-context.d.ts +4 -6
- package/node_modules/@openrig/daemon/dist/domain/workflow-role-context.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-role-context.js +7 -14
- package/node_modules/@openrig/daemon/dist/domain/workflow-role-context.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-runtime.d.ts +12 -3
- package/node_modules/@openrig/daemon/dist/domain/workflow-runtime.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-runtime.js +124 -25
- package/node_modules/@openrig/daemon/dist/domain/workflow-runtime.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-spec-cache.d.ts +2 -2
- package/node_modules/@openrig/daemon/dist/domain/workflow-spec-cache.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-spec-cache.js +16 -0
- package/node_modules/@openrig/daemon/dist/domain/workflow-spec-cache.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-types.d.ts +8 -0
- package/node_modules/@openrig/daemon/dist/domain/workflow-types.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-types.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-validator.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workflow-validator.js +57 -24
- package/node_modules/@openrig/daemon/dist/domain/workflow-validator.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/gateway-human-registry-surface.d.ts +1 -0
- package/node_modules/@openrig/daemon/dist/gateway-human-registry-surface.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/gateway-human-registry-surface.js +1 -0
- package/node_modules/@openrig/daemon/dist/gateway-human-registry-surface.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/gateway-slack-surface.d.ts +1 -0
- package/node_modules/@openrig/daemon/dist/gateway-slack-surface.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/gateway-slack-surface.js +1 -0
- package/node_modules/@openrig/daemon/dist/gateway-slack-surface.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/health-detectors-surface.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/health-detectors-surface.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/health-detectors-surface.js +2 -0
- package/node_modules/@openrig/daemon/dist/health-detectors-surface.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/health-projection-surface.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/health-projection-surface.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/health-projection-surface.js +2 -0
- package/node_modules/@openrig/daemon/dist/health-projection-surface.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/index.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/index.js +38 -95
- package/node_modules/@openrig/daemon/dist/index.js.map +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 +4 -1
- package/node_modules/@openrig/daemon/dist/lib/pane-envelope.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/project-lifecycle-surface.d.ts +1 -1
- package/node_modules/@openrig/daemon/dist/project-lifecycle-surface.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/gateway.d.ts +5 -1
- package/node_modules/@openrig/daemon/dist/routes/gateway.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/gateway.js +80 -22
- package/node_modules/@openrig/daemon/dist/routes/gateway.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/health-diagnosis.d.ts +3 -0
- package/node_modules/@openrig/daemon/dist/routes/health-diagnosis.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/routes/health-diagnosis.js +47 -0
- package/node_modules/@openrig/daemon/dist/routes/health-diagnosis.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/routes/health.d.ts +3 -0
- package/node_modules/@openrig/daemon/dist/routes/health.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/routes/health.js +50 -0
- package/node_modules/@openrig/daemon/dist/routes/health.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/routes/hosts.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/routes/hosts.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/hosts.js +12 -5
- package/node_modules/@openrig/daemon/dist/routes/hosts.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 +4 -3
- package/node_modules/@openrig/daemon/dist/routes/queue.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/require-sender-identity.d.ts +3 -1
- package/node_modules/@openrig/daemon/dist/routes/require-sender-identity.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/require-sender-identity.js +11 -5
- package/node_modules/@openrig/daemon/dist/routes/require-sender-identity.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/sessions.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/sessions.js +95 -27
- package/node_modules/@openrig/daemon/dist/routes/sessions.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/workflow.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/workflow.js +6 -1
- package/node_modules/@openrig/daemon/dist/routes/workflow.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/server.d.ts +8 -0
- package/node_modules/@openrig/daemon/dist/server.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/server.js +10 -1
- package/node_modules/@openrig/daemon/dist/server.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/startup.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/startup.js +35 -4
- package/node_modules/@openrig/daemon/dist/startup.js.map +1 -1
- package/node_modules/@openrig/daemon/package.json +13 -1
- package/package.json +1 -1
- package/tui/dist/commands/completion.d.ts +8 -0
- package/tui/dist/commands/completion.d.ts.map +1 -0
- package/tui/dist/commands/completion.js +37 -0
- package/tui/dist/commands/completion.js.map +1 -0
- package/tui/dist/commands/registry.d.ts +7 -1
- package/tui/dist/commands/registry.d.ts.map +1 -1
- package/tui/dist/commands/registry.js +48 -1
- package/tui/dist/commands/registry.js.map +1 -1
- package/tui/dist/connections/connections-model.d.ts +72 -0
- package/tui/dist/connections/connections-model.d.ts.map +1 -0
- package/tui/dist/connections/connections-model.js +64 -0
- package/tui/dist/connections/connections-model.js.map +1 -0
- package/tui/dist/daemon-client.d.ts +3 -0
- package/tui/dist/daemon-client.d.ts.map +1 -1
- package/tui/dist/daemon-client.js +5 -0
- package/tui/dist/daemon-client.js.map +1 -1
- package/tui/dist/detail.d.ts +3 -0
- package/tui/dist/detail.d.ts.map +1 -1
- package/tui/dist/detail.js +23 -0
- package/tui/dist/detail.js.map +1 -1
- package/tui/dist/execution/execution-model.d.ts +1 -1
- package/tui/dist/execution/execution-model.d.ts.map +1 -1
- package/tui/dist/execution/execution-model.js +46 -170
- package/tui/dist/execution/execution-model.js.map +1 -1
- package/tui/dist/execution/workflow-model.d.ts +6 -0
- package/tui/dist/execution/workflow-model.d.ts.map +1 -0
- package/tui/dist/execution/workflow-model.js +219 -0
- package/tui/dist/execution/workflow-model.js.map +1 -0
- package/tui/dist/grammar.d.ts.map +1 -1
- package/tui/dist/grammar.js +1 -2
- package/tui/dist/grammar.js.map +1 -1
- package/tui/dist/health/health-model.d.ts +25 -0
- package/tui/dist/health/health-model.d.ts.map +1 -0
- package/tui/dist/health/health-model.js +323 -0
- package/tui/dist/health/health-model.js.map +1 -0
- package/tui/dist/hydrate.d.ts.map +1 -1
- package/tui/dist/hydrate.js +57 -9
- package/tui/dist/hydrate.js.map +1 -1
- package/tui/dist/input.d.ts +2 -0
- package/tui/dist/input.d.ts.map +1 -1
- package/tui/dist/input.js +30 -6
- package/tui/dist/input.js.map +1 -1
- package/tui/dist/main.js +47 -10
- package/tui/dist/main.js.map +1 -1
- package/tui/dist/render.d.ts +4 -0
- package/tui/dist/render.d.ts.map +1 -1
- package/tui/dist/render.js +150 -75
- package/tui/dist/render.js.map +1 -1
- package/tui/dist/sections.d.ts.map +1 -1
- package/tui/dist/sections.js +1 -0
- package/tui/dist/sections.js.map +1 -1
- package/tui/dist/socket-server.d.ts +4 -0
- package/tui/dist/socket-server.d.ts.map +1 -1
- package/tui/dist/socket-server.js +4 -0
- package/tui/dist/socket-server.js.map +1 -1
- package/tui/dist/state.d.ts +3 -1
- package/tui/dist/state.d.ts.map +1 -1
- package/tui/dist/state.js +58 -14
- package/tui/dist/state.js.map +1 -1
- package/tui/dist/stylize.js +3 -3
- package/tui/dist/stylize.js.map +1 -1
- package/tui/dist/time.d.ts +9 -0
- package/tui/dist/time.d.ts.map +1 -0
- package/tui/dist/time.js +42 -0
- package/tui/dist/time.js.map +1 -0
- package/tui/dist/types.d.ts +126 -2
- package/tui/dist/types.d.ts.map +1 -1
|
@@ -4,8 +4,8 @@ description: Use when implementing any feature or bugfix, before writing impleme
|
|
|
4
4
|
metadata:
|
|
5
5
|
openrig:
|
|
6
6
|
vendored_from: "Obra Superpowers (https://github.com/obra/superpowers)"
|
|
7
|
-
vendoring_pattern:
|
|
8
|
-
last_upstream_check: "2026-05-13 (
|
|
7
|
+
vendoring_pattern: modify-the-file
|
|
8
|
+
last_upstream_check: "2026-05-13 (historical upstream comparison; local scope and preservation adaptations made since)"
|
|
9
9
|
---
|
|
10
10
|
|
|
11
11
|
# Test-Driven Development (TDD)
|
|
@@ -20,43 +20,41 @@ Write the test first. Watch it fail. Write minimal code to pass.
|
|
|
20
20
|
|
|
21
21
|
## When to Use
|
|
22
22
|
|
|
23
|
-
**
|
|
23
|
+
**Use test-first for selected behavior where regression risk warrants it:**
|
|
24
24
|
- New features
|
|
25
25
|
- Bug fixes
|
|
26
26
|
- Refactoring
|
|
27
27
|
- Behavior changes
|
|
28
28
|
|
|
29
|
-
**
|
|
29
|
+
**Choose proportionate verification for work such as:**
|
|
30
30
|
- Throwaway prototypes
|
|
31
31
|
- Generated code
|
|
32
32
|
- Configuration files
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
Resolve the task's selected project/mission/slice procedure first. A required
|
|
35
|
+
TDD step remains required within that scope; changing it needs the authority
|
|
36
|
+
named by that selection. Outside it, choose verification that can detect the
|
|
37
|
+
failure without adding a human approval ritual. The procedure below describes
|
|
38
|
+
TDD when selected, not a completion gate for every kind of work.
|
|
35
39
|
|
|
36
|
-
**Chunk size
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
back-and-forth is overhead, not virtue, once the SDLC's gates (QA, review, guards) bound a larger chunk's
|
|
42
|
-
risk. Match the chunk to the task; treat it as a configured lever — never as license to write code before
|
|
43
|
-
its test (that's the rationalization this skill exists to stop).
|
|
40
|
+
**Chunk size follows the outcome.** Keep red → green → refactor for the behavior
|
|
41
|
+
being changed and build a coherent chunk. TDD does not require two people,
|
|
42
|
+
pre-edit permission or a guard: independence and review cadence come from the
|
|
43
|
+
project/mission/slice component or wave selection. An explicitly selected gate
|
|
44
|
+
still applies; an unselected role cannot add one.
|
|
44
45
|
|
|
45
|
-
|
|
46
|
+
|
|
47
|
+
## Test-First Contract for Selected Behavior
|
|
46
48
|
|
|
47
49
|
```
|
|
48
|
-
|
|
50
|
+
Selected TDD behavior: observe the expected failure before implementing the fix.
|
|
49
51
|
```
|
|
50
52
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
- Don't look at it
|
|
57
|
-
- Delete means delete
|
|
58
|
-
|
|
59
|
-
Implement fresh from tests. Period.
|
|
53
|
+
Already wrote the implementation? Preserve existing and others' bytes. Establish
|
|
54
|
+
the failing baseline in an isolated copy or by reversibly setting aside only
|
|
55
|
+
your owned change, then implement from the behavioral test. This skill grants
|
|
56
|
+
no authority to delete code. If a failing baseline cannot be demonstrated,
|
|
57
|
+
record that limit and follow the selected procedure; do not call tests-after TDD.
|
|
60
58
|
|
|
61
59
|
## Red-Green-Refactor
|
|
62
60
|
|
|
@@ -126,7 +124,7 @@ Vague name, tests mock not code
|
|
|
126
124
|
|
|
127
125
|
### Verify RED - Watch It Fail
|
|
128
126
|
|
|
129
|
-
**
|
|
127
|
+
**Required to establish RED in the selected TDD cycle.**
|
|
130
128
|
|
|
131
129
|
```bash
|
|
132
130
|
npm test path/to/test.test.ts
|
|
@@ -181,7 +179,7 @@ Don't add features, refactor other code, or "improve" beyond the test.
|
|
|
181
179
|
|
|
182
180
|
### Verify GREEN - Watch It Pass
|
|
183
181
|
|
|
184
|
-
**
|
|
182
|
+
**Required to establish GREEN in the selected TDD cycle.**
|
|
185
183
|
|
|
186
184
|
```bash
|
|
187
185
|
npm test path/to/test.test.ts
|
|
@@ -239,13 +237,11 @@ Manual testing is ad-hoc. You think you tested everything but:
|
|
|
239
237
|
|
|
240
238
|
Automated tests are systematic. They run the same way every time.
|
|
241
239
|
|
|
242
|
-
**"
|
|
240
|
+
**"I already spent X hours on the implementation"**
|
|
243
241
|
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
The "waste" is keeping code you can't trust. Working code without real tests is technical debt.
|
|
242
|
+
Time spent does not prove behavior. Preserve the work and demonstrate that the
|
|
243
|
+
test detects the missing behavior on a baseline without the owned change.
|
|
244
|
+
Then verify the implementation against it. Report the actual sequence honestly.
|
|
249
245
|
|
|
250
246
|
**"TDD is dogmatic, being pragmatic means adapting"**
|
|
251
247
|
|
|
@@ -269,21 +265,24 @@ Tests-first force edge case discovery before implementing. Tests-after verify yo
|
|
|
269
265
|
|
|
270
266
|
## Common Rationalizations
|
|
271
267
|
|
|
268
|
+
These challenges apply within selected TDD work, not to an authorized choice
|
|
269
|
+
of another verification method.
|
|
270
|
+
|
|
272
271
|
| Excuse | Reality |
|
|
273
272
|
|--------|---------|
|
|
274
|
-
| "Too simple to test" |
|
|
273
|
+
| "Too simple to test" | Simplicity alone does not waive a selected behavioral check. |
|
|
275
274
|
| "I'll test after" | Tests passing immediately prove nothing. |
|
|
276
275
|
| "Tests after achieve same goals" | Tests-after = "what does this do?" Tests-first = "what should this do?" |
|
|
277
276
|
| "Already manually tested" | Ad-hoc ≠ systematic. No record, can't re-run. |
|
|
278
|
-
| "
|
|
279
|
-
| "Keep as reference, write tests first" |
|
|
280
|
-
| "Need to explore first" |
|
|
277
|
+
| "Already spent X hours" | Time spent is not evidence; preserve the work and prove the failing baseline. |
|
|
278
|
+
| "Keep as reference, write tests first" | Tests derived from the implementation risk repeating its assumptions; use the required behavior and a failing baseline. |
|
|
279
|
+
| "Need to explore first" | Keep exploration separate from the implementation and begin the selected TDD cycle when the behavior is understood. |
|
|
281
280
|
| "Test hard = design unclear" | Listen to test. Hard to test = hard to use. |
|
|
282
281
|
| "TDD will slow me down" | TDD faster than debugging. Pragmatic = test-first. |
|
|
283
282
|
| "Manual test faster" | Manual doesn't prove edge cases. You'll re-test every change. |
|
|
284
283
|
| "Existing code has no tests" | You're improving it. Add tests for existing code. |
|
|
285
284
|
|
|
286
|
-
## Red Flags
|
|
285
|
+
## Red Flags in Selected TDD Work
|
|
287
286
|
|
|
288
287
|
- Code before test
|
|
289
288
|
- Test after implementation
|
|
@@ -295,11 +294,13 @@ Tests-first force edge case discovery before implementing. Tests-after verify yo
|
|
|
295
294
|
- "Tests after achieve the same purpose"
|
|
296
295
|
- "It's about spirit not ritual"
|
|
297
296
|
- "Keep as reference" or "adapt existing code"
|
|
298
|
-
- "Already spent X hours,
|
|
297
|
+
- "Already spent X hours, so verification can wait"
|
|
299
298
|
- "TDD is dogmatic, I'm being pragmatic"
|
|
300
299
|
- "This is different because..."
|
|
301
300
|
|
|
302
|
-
|
|
301
|
+
Check whether the claimed RED → GREEN sequence actually happened. Repair the
|
|
302
|
+
missing evidence using the preservation rule above; these signals never
|
|
303
|
+
authorize deleting existing work.
|
|
303
304
|
|
|
304
305
|
## Example: Bug Fix
|
|
305
306
|
|
|
@@ -340,9 +341,9 @@ Extract validation for multiple fields if needed.
|
|
|
340
341
|
|
|
341
342
|
## Verification Checklist
|
|
342
343
|
|
|
343
|
-
Before
|
|
344
|
+
Before claiming the selected TDD work complete:
|
|
344
345
|
|
|
345
|
-
- [ ]
|
|
346
|
+
- [ ] Tests cover the selected behavioral outcomes
|
|
346
347
|
- [ ] Watched each test fail before implementing
|
|
347
348
|
- [ ] Each test failed for expected reason (feature missing, not typo)
|
|
348
349
|
- [ ] Wrote minimal code to pass each test
|
|
@@ -351,22 +352,25 @@ Before marking work complete:
|
|
|
351
352
|
- [ ] Tests use real code (mocks only if unavoidable)
|
|
352
353
|
- [ ] Edge cases and errors covered
|
|
353
354
|
|
|
354
|
-
|
|
355
|
+
An unmet selected check remains visible. Address it or obtain the disposition
|
|
356
|
+
required by the selected procedure; do not turn this checklist into a gate on
|
|
357
|
+
unselected work or erase code to make the history look test-first.
|
|
355
358
|
|
|
356
359
|
## When Stuck
|
|
357
360
|
|
|
358
361
|
| Problem | Solution |
|
|
359
362
|
|---------|----------|
|
|
360
|
-
| Don't know how to test | Write
|
|
363
|
+
| Don't know how to test | Write the desired API and assertion first. Consult the relevant peer or work owner if the behavior is unclear. |
|
|
361
364
|
| Test too complicated | Design too complicated. Simplify interface. |
|
|
362
365
|
| Must mock everything | Code too coupled. Use dependency injection. |
|
|
363
366
|
| Test setup huge | Extract helpers. Still complex? Simplify design. |
|
|
364
367
|
|
|
365
368
|
## Debugging Integration
|
|
366
369
|
|
|
367
|
-
|
|
370
|
+
For a bug in selected TDD scope, write a failing test reproducing it. Follow the
|
|
371
|
+
TDD cycle to demonstrate the fix and prevent regression.
|
|
368
372
|
|
|
369
|
-
|
|
373
|
+
Outside that scope, choose a proportionate regression check and retain its evidence.
|
|
370
374
|
|
|
371
375
|
## Testing Anti-Patterns
|
|
372
376
|
|
|
@@ -378,8 +382,9 @@ When adding mocks or test utilities, read @testing-anti-patterns.md to avoid com
|
|
|
378
382
|
## Final Rule
|
|
379
383
|
|
|
380
384
|
```
|
|
381
|
-
|
|
382
|
-
Otherwise → not
|
|
385
|
+
Selected TDD behavior → test exists and failed first
|
|
386
|
+
Otherwise → do not claim a test-first sequence
|
|
383
387
|
```
|
|
384
388
|
|
|
385
|
-
|
|
389
|
+
Honor explicitly selected gates and their decision owner. This skill adds no
|
|
390
|
+
universal human permission step, deletion authority or gate on unselected work.
|
|
@@ -4,7 +4,7 @@ description: Use when about to claim work is complete, fixed, or passing, before
|
|
|
4
4
|
metadata:
|
|
5
5
|
openrig:
|
|
6
6
|
vendored_from: "Obra Superpowers (https://github.com/obra/superpowers)"
|
|
7
|
-
vendoring_pattern:
|
|
7
|
+
vendoring_pattern: modify-the-file
|
|
8
8
|
last_upstream_check: "2026-05-13 (diff against plugin source pulled 2026-05-11 = identical)"
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -116,10 +116,10 @@ Running a verification is necessary but not sufficient: a check can exit clean a
|
|
|
116
116
|
|
|
117
117
|
- **Assert on CONTENT, never shape or count.** Output that *looks* like success — a non-zero count, a clean exit, no error text — can carry failure as its content. Before trusting a check, ask what its output looks like *when it fails*: if failure and success are indistinguishable at a glance, the check proves nothing. (`[1 lines]` and `No matches found` both read as "a match" to a line-count.)
|
|
118
118
|
- **Compare the returned value to the value you PASSED — never to a description of it.** A confident label (`evidenceRef NOW SET:` printed above the untouched original) is indistinguishable from a verification in a transcript. Diff the actual result against your actual input, not against a claim about it.
|
|
119
|
-
- **Find the untested axis.** Thorough coverage of ONE axis reads as thorough coverage overall. Ask what every one of your tests shares — a healthy manifest, a default option value, the happy path — and treat that shared assumption as the dimension you never tested.
|
|
119
|
+
- **Find the untested axis.** Thorough coverage of ONE axis reads as thorough coverage overall. Ask what every one of your tests shares — a healthy manifest, a default option value, the happy path — and treat that shared assumption as the dimension you never tested.
|
|
120
120
|
- **A syntax check proves parseability and nothing else.** A clean `node --check` / lint / parse pass is the *covered* axis; boot and runtime are the untested one. Parseable ≠ sound.
|
|
121
121
|
- **A failure whose shape is a HANG reports nothing.** A bare `await` against a stated deadline that never re-checks cannot fail loudly. Race it against a timer so failure has a shape you can see.
|
|
122
|
-
- **A completeness inventory read through a truncating display is worthless.** When deciding *which occurrences to change*, count with `grep -c` / `grep -o` / full-line output — never `cut`, `head`, or a pager, which can hide a match *past* the cut
|
|
122
|
+
- **A completeness inventory read through a truncating display is worthless.** When deciding *which occurrences to change*, count with `grep -c` / `grep -o` / full-line output — never `cut`, `head`, or a pager, which can hide a match *past* the cut. Distinguish *"I found N"* (a count) from *"I saw N"* (a display). Audit multiline prose **by paragraph, not by line** — a line filter both misses long-line matches and false-flags paragraphs whose companion text is on the next line. Then re-audit with a **different method** than the one that built the inventory — same-method re-checking reproduces the blind spot. (Empty/short output is a claim about your COMMAND until re-proven a second way.)
|
|
123
123
|
|
|
124
124
|
## Why This Matters
|
|
125
125
|
|
|
@@ -2,36 +2,27 @@
|
|
|
2
2
|
|
|
3
3
|
This is the stable launch-grade version of the full product squad. Right now it uses the same core topology as `product-team`: two orchestrators, a development pod with implementation, QA, and design, plus two reviewers.
|
|
4
4
|
|
|
5
|
-
##
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
5. `dev1.impl` sends the diff and verification output back to QA
|
|
27
|
-
6. QA approves or rejects with specifics
|
|
28
|
-
7. if commit authority is enabled, the implementer may commit
|
|
29
|
-
8. if commit authority is not enabled, stop at a QA-approved working tree and report that honestly
|
|
30
|
-
|
|
31
|
-
The **review pod** (`rev1`) provides independent scrutiny:
|
|
32
|
-
- reviewers inspect milestone work, current diffs, verification output, and transcripts
|
|
33
|
-
- if commit authority is disabled, they still review the work that exists instead of waiting for commits
|
|
34
|
-
- reviewers report findings with evidence and clear severity
|
|
5
|
+
## Work selection
|
|
6
|
+
|
|
7
|
+
Derive identity with `rig whoami --json`, then follow
|
|
8
|
+
`project.yaml -> mission.yaml -> active slice.yaml -> selected component or wave
|
|
9
|
+
map -> addressed context`. Use
|
|
10
|
+
`docs/reference/product-journey-sdlc.md#resolve-the-selected-path` (installed:
|
|
11
|
+
`$OPENRIG_HOME/reference/product-journey-sdlc.md#resolve-the-selected-path`).
|
|
12
|
+
No selection means light Part A. Only the selected work's required capabilities
|
|
13
|
+
need to be ready; do not wait for the whole topology or invent work for idle roles.
|
|
14
|
+
|
|
15
|
+
Orchestration routes outcomes and resolves exceptions. Implementation completes
|
|
16
|
+
coherent changes and verifies by effect. QA compares the actual outcome with the
|
|
17
|
+
contract; it may be builder-held for a tiny change. Independent reviewers enter
|
|
18
|
+
only on an explicit assignment or the authored review boundary. For a wave, local
|
|
19
|
+
checks remain per slice and independent review fires once over the accumulated
|
|
20
|
+
wave. A named rigorous slice retains its selected checks. A topology does not
|
|
21
|
+
select a pre-edit, QA, guard, review or lock gate.
|
|
22
|
+
|
|
23
|
+
Load only addressed context and skills relevant to the assignment, expanding the
|
|
24
|
+
investigation when evidence requires it. Do not preload unrelated doctrine or
|
|
25
|
+
turn an idle review seat into a milestone scanner.
|
|
35
26
|
|
|
36
27
|
## Communication
|
|
37
28
|
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# First project
|
|
2
|
+
|
|
3
|
+
Work in the repository selected at launch. The user supplies an outcome; the
|
|
4
|
+
owner carries it through implementation, appropriate checks and a durable
|
|
5
|
+
result. Read the repository instructions and existing project/mission/slice
|
|
6
|
+
context before changing anything. If there is no selected workflow, keep the
|
|
7
|
+
path light. Do not install a release process for a first task.
|
|
8
|
+
|
|
9
|
+
## Receiving work
|
|
10
|
+
|
|
11
|
+
Run `rig whoami --json` and check `rig queue list --owned --limit 1000`.
|
|
12
|
+
Claim an assigned row before working. For a vague request, inspect the relevant
|
|
13
|
+
code first, then ask for the one decision that changes the outcome.
|
|
14
|
+
When the user starts with a terminal message, create and claim the durable task
|
|
15
|
+
from your own seat before implementation; an unbound user shell need not forge
|
|
16
|
+
a queue identity.
|
|
17
|
+
|
|
18
|
+
For the first meaningful code change, ask dev-check for an independent check
|
|
19
|
+
of the exact diff and the behavior it promises. Subsequent checks should match
|
|
20
|
+
the consequence of the work. Hand off through `rig queue handoff`, with the
|
|
21
|
+
repository path, candidate commit or diff, checks run and any limits. Consult
|
|
22
|
+
`--help` for current syntax. Do not use chat text as the work record.
|
|
23
|
+
|
|
24
|
+
The checker records observations against that candidate and returns actionable
|
|
25
|
+
findings to the owner. The owner resolves findings and records the final result
|
|
26
|
+
and continuation on the queue. Point to evidence in the project's existing
|
|
27
|
+
work artifacts, or a repository-local task note if it has no work tree yet.
|
|
28
|
+
Do not mark a change accepted because another row closed.
|
|
29
|
+
|
|
30
|
+
## Boundaries and continuation
|
|
31
|
+
|
|
32
|
+
Keep local edits and commits within the assigned change. Publishing, pushes,
|
|
33
|
+
release and destructive operations need their own authorization. A permission
|
|
34
|
+
prompt is incomplete work; name the exact missing decision and retain the row.
|
|
35
|
+
|
|
36
|
+
On re-entry read current queue state and project artifacts; do not repeat a
|
|
37
|
+
finished change or launch duplicate seats. Explain the result in terms the
|
|
38
|
+
user can exercise, state what was not checked, and name the next useful action.
|
|
39
|
+
Leave the project ready for another outcome at the same owner address.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
version: "0.2"
|
|
2
|
+
name: first-project
|
|
3
|
+
summary: >
|
|
4
|
+
Two Codex seats in your repository: an outcome owner and an independent
|
|
5
|
+
checker. Give the owner one bounded change; follow the durable result and
|
|
6
|
+
continue at the same address. See docs/reference/getting-started.md.
|
|
7
|
+
|
|
8
|
+
culture_file: CULTURE.md
|
|
9
|
+
|
|
10
|
+
pods:
|
|
11
|
+
- id: dev
|
|
12
|
+
label: Project
|
|
13
|
+
members:
|
|
14
|
+
- id: owner
|
|
15
|
+
agent_ref: "local:../../../agents/development/implementer"
|
|
16
|
+
runtime: codex
|
|
17
|
+
model: gpt-6-astra
|
|
18
|
+
profile: default
|
|
19
|
+
cwd: "."
|
|
20
|
+
- id: check
|
|
21
|
+
agent_ref: "local:../../../agents/development/qa"
|
|
22
|
+
runtime: codex
|
|
23
|
+
model: gpt-6-astra
|
|
24
|
+
profile: default
|
|
25
|
+
cwd: "."
|
|
26
|
+
edges:
|
|
27
|
+
- kind: delegates_to
|
|
28
|
+
from: owner
|
|
29
|
+
to: check
|
|
30
|
+
|
|
31
|
+
edges: []
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
version: "0.2"
|
|
2
2
|
name: implementation-pair
|
|
3
3
|
summary: >
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
A focused development pair providing implementation and QA capabilities.
|
|
5
|
+
Project/mission/slice components choose the work and any independent checks;
|
|
6
|
+
no composition means light Part A, not a per-edit approval loop.
|
|
7
7
|
|
|
8
8
|
pods:
|
|
9
9
|
- id: dev
|
|
@@ -32,6 +32,6 @@ Don't list every skill; the user can ask if they're curious.
|
|
|
32
32
|
|
|
33
33
|
- `rig whoami --json` returns your identity.
|
|
34
34
|
- `rig ps --nodes --rig kernel --json` shows the kernel's 4-member
|
|
35
|
-
topology (3 agents + the
|
|
35
|
+
topology (3 agents + the shared operator terminal).
|
|
36
36
|
- The operator agent can answer "what rigs were running before the
|
|
37
37
|
last reboot?" from the daemon's persisted state.
|
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
# Operator Agent — Role
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
For a topology or health question, inspect `rig status`, `rig ps --nodes -A`
|
|
4
|
+
and the affected work before acting. You already own these operational
|
|
5
|
+
diagnoses; the queue worker retains intake classification. Never report an
|
|
6
|
+
unknown activity signal as idle or a persisted running record as process proof.
|
|
7
|
+
|
|
8
|
+
The shared dashboard is the kernel's `operator.human` terminal. The human can enter with
|
|
9
|
+
`rig tui --shared`, or through `rig terminal open kernel --provider herdr`
|
|
10
|
+
(cmux is also supported). It is an ordinary TUI in a terminal, not an agent
|
|
11
|
+
or human-message inbox. Capture it before driving it, preserve the user's view
|
|
12
|
+
unless the task calls for navigation, and use the registered human channel for
|
|
13
|
+
decisions. If the TUI has exited, its shell remains; run `rig tui` there once.
|
|
14
|
+
|
|
15
|
+
You run OpenRig on behalf of the user. The operator pod's `operator.human`
|
|
16
|
+
member holds their shared terminal view. Human decisions use the registered
|
|
17
|
+
human channel; a terminal attachment is not a person's address.
|
|
6
18
|
|
|
7
19
|
## What you do
|
|
8
20
|
|
|
@@ -28,7 +40,8 @@ with them and escalate to them when ops decisions need human approval.
|
|
|
28
40
|
that you spin up on the user's behalf, not in the kernel.
|
|
29
41
|
- Decisions with significant blast radius (destroying state,
|
|
30
42
|
force-killing sessions with in-flight work) without human
|
|
31
|
-
approval.
|
|
43
|
+
approval. Discover the registered human with `rig gateway human list` and
|
|
44
|
+
follow `messaging-the-human` when that decision is needed.
|
|
32
45
|
|
|
33
46
|
## Failure modes to watch
|
|
34
47
|
|
|
@@ -42,6 +55,7 @@ with them and escalate to them when ops decisions need human approval.
|
|
|
42
55
|
|
|
43
56
|
## When you are uncertain
|
|
44
57
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
58
|
+
Use the relevant peer for technical questions. When a human decision is
|
|
59
|
+
required, use the registered human channel and preserve the request's delivery
|
|
60
|
+
receipt. The user may hold context about recent reboots, migrations or plans to
|
|
61
|
+
retire a rig; typing into the shared dashboard does not deliver that request.
|
|
@@ -46,8 +46,8 @@ See the `openrig-operator` skill for the canonical script.
|
|
|
46
46
|
|
|
47
47
|
## What's already running
|
|
48
48
|
|
|
49
|
-
- The kernel rig itself (you, advisor.lead, queue.worker, the
|
|
50
|
-
|
|
49
|
+
- The kernel rig itself (you, advisor.lead, queue.worker, the shared
|
|
50
|
+
operator terminal).
|
|
51
51
|
- Whatever non-kernel rigs were running before the daemon restarted
|
|
52
52
|
have their rig records persisted in SQLite (the daemon does NOT
|
|
53
53
|
cull rigs on restart) but their member sessions are likely
|
|
@@ -7,15 +7,21 @@ fleet can pick them up.
|
|
|
7
7
|
|
|
8
8
|
## What you do
|
|
9
9
|
|
|
10
|
-
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
- Inspect new stream items with `rig stream list --json`. Hint-destination
|
|
11
|
+
filtering is exact, so `?` does not mean unassigned. Read missing hints and
|
|
12
|
+
existing classifications before choosing a destination.
|
|
13
13
|
- For each: decide the destination seat (which rig + which member),
|
|
14
|
-
the priority (`
|
|
15
|
-
tier
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
14
|
+
the priority (`routine` / `urgent` / `critical`, as exposed by queue help),
|
|
15
|
+
any tier selected by the actual configured SLA policy, and the task tags.
|
|
16
|
+
Do not infer private mode rules or create a new tier system. If policy is
|
|
17
|
+
missing and changes the routing decision, ask the advisor.
|
|
18
|
+
- Use `rig project lease-show` and `rig project lease-acquire --help` before
|
|
19
|
+
classification. `rig project classify --help` exposes the classification
|
|
20
|
+
fields and idempotent stream-item linkage. Respect the current lease holder;
|
|
21
|
+
do not create duplicate work by bypassing classification on a repeated item.
|
|
22
|
+
If the chosen route needs an actionable queue row, record the classification
|
|
23
|
+
reference and create it from your own seat with `--body-file`, then verify
|
|
24
|
+
its durable body and delivery. A stream item is not a sender identity.
|
|
19
25
|
- When ambiguity is real, escalate to `advisor.lead` — don't
|
|
20
26
|
guess destinations.
|
|
21
27
|
|
|
@@ -28,6 +34,8 @@ fleet can pick them up.
|
|
|
28
34
|
|
|
29
35
|
## Cadence
|
|
30
36
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
37
|
+
An event in the daemon is not by itself a wake in your terminal. Check the
|
|
38
|
+
configured delivery/watchdog path before claiming unattended intake is live.
|
|
39
|
+
Work arrives through an explicit operator prompt or configured wake. Do not
|
|
40
|
+
simulate watching with capture loops. Use `rig queue` for the queue command
|
|
41
|
+
surface and closure-reason rules.
|
|
@@ -10,8 +10,9 @@ classify stream-to-queue substrate.
|
|
|
10
10
|
destination.
|
|
11
11
|
|
|
12
12
|
If the stream is empty or every item already has a destination
|
|
13
|
-
assigned, settle into a listening posture.
|
|
14
|
-
|
|
13
|
+
assigned, settle into a listening posture. Confirm an actual configured wake
|
|
14
|
+
before claiming unattended intake is running; a stream event alone is not a
|
|
15
|
+
terminal delivery. Do not poll panes to simulate watching.
|
|
15
16
|
|
|
16
17
|
## What's already running
|
|
17
18
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Kernel Rig Culture
|
|
2
2
|
|
|
3
3
|
The kernel is the class-of-one always-on rig. Three pods, three agents,
|
|
4
|
-
one
|
|
4
|
+
one shared terminal. The kernel exists so the user can chat with their
|
|
5
5
|
machine and have things happen.
|
|
6
6
|
|
|
7
7
|
## Roles at a glance
|
|
@@ -15,17 +15,24 @@ machine and have things happen.
|
|
|
15
15
|
shepherding install / upgrade / migration ceremonies. The operator
|
|
16
16
|
acts on behalf of the operator.human; ops decisions needing human
|
|
17
17
|
approval escalate.
|
|
18
|
-
- **operator.human** is the
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
- **operator.human** is the shared mission-control terminal. A fresh kernel
|
|
19
|
+
starts `rig tui` there. `rig tui --shared` attaches another client to that
|
|
20
|
+
same terminal; detaching preserves navigation. It is a screen, not proof a
|
|
21
|
+
person is watching or a destination that can answer a queue item. Use the
|
|
22
|
+
registered human delivery channel when a decision is required.
|
|
23
23
|
- **queue.worker** classifies stream-to-queue substrate. New stream
|
|
24
24
|
items get labeled, owned, prioritized; the worker's output is
|
|
25
25
|
durable queue items that the rest of the fleet can pick up.
|
|
26
26
|
|
|
27
27
|
## Operating principles
|
|
28
28
|
|
|
29
|
+
- **Share the view deliberately.** Agents can capture the kernel terminal and
|
|
30
|
+
operate its TUI through the existing terminal controls. Tell the user before
|
|
31
|
+
changing their current view. Never type a prompt into the TUI as if it were
|
|
32
|
+
a human inbox. Plain `rig tui` opens an independent view. Older kernels keep
|
|
33
|
+
their existing shell until someone runs `rig tui` there; do not restart the
|
|
34
|
+
whole kernel to update this terminal.
|
|
35
|
+
|
|
29
36
|
- **Kernel auto-boot has two distinct lifecycle phases.**
|
|
30
37
|
- *First boot* (no prior kernel rig in SQLite): `rig daemon start`
|
|
31
38
|
instantiates the kernel from the shipped variant per the
|
|
@@ -50,8 +57,8 @@ machine and have things happen.
|
|
|
50
57
|
follows the supported migration guidance for the installed version,
|
|
51
58
|
and verifies daemon plus rig health before closing the operation.
|
|
52
59
|
- **Skills earn their slot.** Each agent loads a lean roster at
|
|
53
|
-
startup
|
|
54
|
-
|
|
60
|
+
startup for its role and selected work; other capabilities remain discoverable
|
|
61
|
+
through the installed skill catalog when their triggers apply.
|
|
55
62
|
- **Status flows through the queue.** Substantive ACKs, phase
|
|
56
63
|
boundaries, forensic findings, and verify-routing land as qitems
|
|
57
64
|
with destinations + tags. Conversational replies use rig send.
|
|
@@ -25,6 +25,13 @@ pods:
|
|
|
25
25
|
runtime: terminal
|
|
26
26
|
profile: none
|
|
27
27
|
cwd: "."
|
|
28
|
+
startup:
|
|
29
|
+
actions:
|
|
30
|
+
- type: send_text
|
|
31
|
+
value: rig tui
|
|
32
|
+
phase: after_ready
|
|
33
|
+
applies_on: [fresh_start]
|
|
34
|
+
idempotent: true
|
|
28
35
|
- id: agent
|
|
29
36
|
agent_ref: "local:agents/operator/agent"
|
|
30
37
|
runtime: claude-code
|
|
@@ -25,6 +25,13 @@ pods:
|
|
|
25
25
|
runtime: terminal
|
|
26
26
|
profile: none
|
|
27
27
|
cwd: "."
|
|
28
|
+
startup:
|
|
29
|
+
actions:
|
|
30
|
+
- type: send_text
|
|
31
|
+
value: rig tui
|
|
32
|
+
phase: after_ready
|
|
33
|
+
applies_on: [fresh_start]
|
|
34
|
+
idempotent: true
|
|
28
35
|
- id: agent
|
|
29
36
|
agent_ref: "local:agents/operator/agent"
|
|
30
37
|
runtime: codex
|
|
@@ -9,7 +9,7 @@ summary: >
|
|
|
9
9
|
re-creating the rig. Member tmux sessions survive daemon-restart-only;
|
|
10
10
|
a HOST reboot drops tmux and the reconciler marks sessions detached,
|
|
11
11
|
at which point the operator pod owns the agent-restart workflow
|
|
12
|
-
|
|
12
|
+
through the current operator workflow. Dual-runtime variant; Claude Code +
|
|
13
13
|
Codex both authenticated.
|
|
14
14
|
|
|
15
15
|
culture_file: culture/CULTURE.md
|
|
@@ -28,13 +28,18 @@ pods:
|
|
|
28
28
|
label: Operator
|
|
29
29
|
members:
|
|
30
30
|
- id: human
|
|
31
|
-
#
|
|
32
|
-
# startup actions. Real human interaction routes through the
|
|
33
|
-
# operator agent + the host shell.
|
|
31
|
+
# Shared mission control; humans attach and agents use the same pane.
|
|
34
32
|
agent_ref: "builtin:terminal"
|
|
35
33
|
runtime: terminal
|
|
36
34
|
profile: none
|
|
37
35
|
cwd: "."
|
|
36
|
+
startup:
|
|
37
|
+
actions:
|
|
38
|
+
- type: send_text
|
|
39
|
+
value: rig tui
|
|
40
|
+
phase: after_ready
|
|
41
|
+
applies_on: [fresh_start]
|
|
42
|
+
idempotent: true
|
|
38
43
|
- id: agent
|
|
39
44
|
agent_ref: "local:agents/operator/agent"
|
|
40
45
|
runtime: codex
|