@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
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { loadHumanRegistry, resolveRegisteredHumanAddress } from "./gateway/human-registry.js";
|
|
2
|
+
import { SettingsStore } from "./user-settings/settings-store.js";
|
|
3
|
+
export class WorkflowHumanDestinationError extends Error {
|
|
4
|
+
details;
|
|
5
|
+
code = "workflow_human_destination_unavailable";
|
|
6
|
+
constructor(details, message) {
|
|
7
|
+
super(message);
|
|
8
|
+
this.details = details;
|
|
9
|
+
this.name = "WorkflowHumanDestinationError";
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
/** The existing operator selection, resolved afresh only when a human is needed. */
|
|
13
|
+
export function resolveWorkflowHumanDestination(configured = () => new SettingsStore().resolveOne("workspace.operator_seat_name").value, registry = loadHumanRegistry) {
|
|
14
|
+
let selected;
|
|
15
|
+
let loaded;
|
|
16
|
+
try {
|
|
17
|
+
selected = configured();
|
|
18
|
+
loaded = registry();
|
|
19
|
+
}
|
|
20
|
+
catch (error) {
|
|
21
|
+
throw new WorkflowHumanDestinationError({ state: "unavailable" }, `Workflow human selection is unavailable: ${error instanceof Error ? error.message : String(error)}`);
|
|
22
|
+
}
|
|
23
|
+
if (!loaded.ok) {
|
|
24
|
+
throw new WorkflowHumanDestinationError({ state: "registry-unavailable" }, loaded.error);
|
|
25
|
+
}
|
|
26
|
+
const addresses = loaded.entities.map((human) => human.address);
|
|
27
|
+
if (typeof selected === "string" && selected.trim()) {
|
|
28
|
+
const address = resolveRegisteredHumanAddress(selected.trim(), loaded.entities);
|
|
29
|
+
if (address)
|
|
30
|
+
return address;
|
|
31
|
+
throw new WorkflowHumanDestinationError({ state: "unregistered", selected, addresses }, "workspace.operator_seat_name does not select a registered human. Inspect rig gateway human list --json and select the intended registered address.");
|
|
32
|
+
}
|
|
33
|
+
if (addresses.length === 1)
|
|
34
|
+
return addresses[0];
|
|
35
|
+
throw new WorkflowHumanDestinationError({ state: addresses.length ? "ambiguous" : "missing", addresses }, "Workflow human fallback needs one registered human. Inspect rig gateway human list --json; when several exist, explicitly select workspace.operator_seat_name. No human destination was invented.");
|
|
36
|
+
}
|
|
37
|
+
export function workflowHumanDestination(selection = resolveWorkflowHumanDestination) {
|
|
38
|
+
return typeof selection === "function" ? selection() : selection;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=workflow-human-destination.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-human-destination.js","sourceRoot":"","sources":["../../src/domain/workflow-human-destination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAmB,MAAM,6BAA6B,CAAC;AAChH,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAElE,MAAM,OAAO,6BAA8B,SAAQ,KAAK;IAE1B;IADnB,IAAI,GAAG,wCAAwC,CAAC;IACzD,YAA4B,OAAkD,EAAE,OAAe;QAC7F,KAAK,CAAC,OAAO,CAAC,CAAC;QADW,YAAO,GAAP,OAAO,CAA2C;QAE5E,IAAI,CAAC,IAAI,GAAG,+BAA+B,CAAC;IAC9C,CAAC;CACF;AAED,oFAAoF;AACpF,MAAM,UAAU,+BAA+B,CAC7C,aAA4B,GAAG,EAAE,CAAC,IAAI,aAAa,EAAE,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC,KAAK,EACtG,WAA6B,iBAAiB;IAE9C,IAAI,QAAiB,CAAC;IACtB,IAAI,MAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,UAAU,EAAE,CAAC;QACxB,MAAM,GAAG,QAAQ,EAAE,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,6BAA6B,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,EAC9D,4CAA4C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC1G,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,IAAI,6BAA6B,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3F,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChE,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACpD,MAAM,OAAO,GAAG,6BAA6B,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChF,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;QAC5B,MAAM,IAAI,6BAA6B,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,EACpF,oJAAoJ,CAAC,CAAC;IAC1J,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC,CAAC,CAAE,CAAC;IACjD,MAAM,IAAI,6BAA6B,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,EACtG,mMAAmM,CAAC,CAAC;AACzM,CAAC;AAID,MAAM,UAAU,wBAAwB,CAAC,YAAsC,+BAA+B;IAC5G,OAAO,OAAO,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACnE,CAAC"}
|
|
@@ -6,7 +6,32 @@ import type { WorkflowSpecCache } from "./workflow-spec-cache.js";
|
|
|
6
6
|
import type { WorkflowStepTrailLog } from "./workflow-step-trail-log.js";
|
|
7
7
|
import type { WorkflowExitKind, WorkflowInstance, WorkflowSpec, WorkflowStepSpec } from "./workflow-types.js";
|
|
8
8
|
import { type RoleResolutionContext } from "./workflow-role-context.js";
|
|
9
|
+
import { type WorkflowHumanDestination } from "./workflow-human-destination.js";
|
|
9
10
|
import type { WatchdogJobsRepository } from "./watchdog-jobs-repository.js";
|
|
11
|
+
/** One occurrence-bound action, shared by packet bodies and authored wait wakes. */
|
|
12
|
+
export declare function renderWorkflowProjectCommand(input: {
|
|
13
|
+
instanceId: string;
|
|
14
|
+
packetId: string;
|
|
15
|
+
ownerSession: string;
|
|
16
|
+
step?: Pick<WorkflowStepSpec, "acceptance">;
|
|
17
|
+
}): string;
|
|
18
|
+
/** Refreshes guidance when a packet is recreated (route/resume) instead of
|
|
19
|
+
* carrying a stale packet id or owner forward in copied body text. */
|
|
20
|
+
export declare function withWorkflowContinuation(input: {
|
|
21
|
+
body: string;
|
|
22
|
+
contextRefs?: string[];
|
|
23
|
+
instanceId: string;
|
|
24
|
+
packetId: string;
|
|
25
|
+
ownerSession: string;
|
|
26
|
+
step?: Pick<WorkflowStepSpec, "acceptance">;
|
|
27
|
+
}): string;
|
|
28
|
+
export declare function workflowWaitWakeMessage(input: {
|
|
29
|
+
spec: WorkflowSpec;
|
|
30
|
+
instance: WorkflowInstance;
|
|
31
|
+
step: WorkflowStepSpec;
|
|
32
|
+
packetId: string;
|
|
33
|
+
ownerSession: string;
|
|
34
|
+
}): string;
|
|
10
35
|
/**
|
|
11
36
|
* OPR.0.4.6.WF2 FR-2: canonical-session → node runtime column lookup
|
|
12
37
|
* (the harness-pin reconciliation source). Latest session row wins
|
|
@@ -79,7 +104,7 @@ export declare class WorkflowProjector {
|
|
|
79
104
|
* (the validateRig precedent — the projector never reads config
|
|
80
105
|
* itself). hostDefault is read LIVE per exception (dial flips apply
|
|
81
106
|
* to future items only). Absent = engine defaults (orchestrator-
|
|
82
|
-
* first chain with
|
|
107
|
+
* first chain with registered-human selection). */
|
|
83
108
|
private readonly exceptionDial?;
|
|
84
109
|
constructor(db: Database.Database, eventBus: EventBus, queueRepo: QueueRepository, instanceStore: WorkflowInstanceStore, trailLog: WorkflowStepTrailLog, specCache: WorkflowSpecCache, now?: () => Date,
|
|
85
110
|
/** OPR.0.4.6.WF1 FR-3: optional — arms/disarms packet or legacy-instance keepalives in-txn. */
|
|
@@ -88,10 +113,10 @@ export declare class WorkflowProjector {
|
|
|
88
113
|
* (the validateRig precedent — the projector never reads config
|
|
89
114
|
* itself). hostDefault is read LIVE per exception (dial flips apply
|
|
90
115
|
* to future items only). Absent = engine defaults (orchestrator-
|
|
91
|
-
* first chain with
|
|
116
|
+
* first chain with registered-human selection). */
|
|
92
117
|
exceptionDial?: {
|
|
93
118
|
hostDefault: () => "orchestrator" | "human_only" | null;
|
|
94
|
-
humanFallbackSeat:
|
|
119
|
+
humanFallbackSeat: WorkflowHumanDestination;
|
|
95
120
|
} | undefined);
|
|
96
121
|
private nodeRuntimeOf;
|
|
97
122
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-projector.d.ts","sourceRoot":"","sources":["../../src/domain/workflow-projector.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,4BAA4B,CAAC;AAIpC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"workflow-projector.d.ts","sourceRoot":"","sources":["../../src/domain/workflow-projector.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,4BAA4B,CAAC;AAIpC,OAAO,EAA4B,KAAK,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC1G,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAW5E,oFAAoF;AACpF,wBAAgB,4BAA4B,CAAC,KAAK,EAAE;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;CAC7C,GAAG,MAAM,CAQT;AAED;sEACsE;AACtE,wBAAgB,wBAAwB,CAAC,KAAK,EAAE;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;CAC7C,GAAG,MAAM,CAYT;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,IAAI,EAAE,YAAY,CAAC;IACnB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,IAAI,EAAE,gBAAgB,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,MAAM,CAST;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAUnF;AAED,qBAAa,sBAAuB,SAAQ,KAAK;aAE7B,IAAI,EAAE,MAAM;aAEZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFjC,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAKpD;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,eAAe,EAAE,MAAM,CAAC;IACxB,4CAA4C;IAC5C,IAAI,EAAE,gBAAgB,CAAC;IACvB,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iEAAiE;IACjE,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,wDAAwD;IACxD,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,gBAAgB,CAAC;IAChC,0EAA0E;IAC1E,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,iCAAiC;IACjC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,iCAAiC;IACjC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,iGAAiG;IACjG,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,+FAA+F;IAC/F,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAClC;;;;wDAIoD;IACpD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;gBAdd,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,eAAe,EAC1B,aAAa,EAAE,qBAAqB,EACpC,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAC5B,GAAG,GAAE,MAAM,IAAuB;IACnD,+FAA+F;IAC9E,gBAAgB,CAAC,EAAE,sBAAsB,YAAA;IAC1D;;;;wDAIoD;IACnC,aAAa,CAAC,EAAE;QAC/B,WAAW,EAAE,MAAM,cAAc,GAAG,YAAY,GAAG,IAAI,CAAC;QACxD,iBAAiB,EAAE,wBAAwB,CAAC;KAC7C,YAAA;IAGH,OAAO,CAAC,aAAa;IAIrB;;;;OAIG;IACG,OAAO,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;YA2uBpD,sBAAsB;CAwRrC;AA8FD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,YAAY,EAClB,WAAW,EAAE,gBAAgB,EAC7B,YAAY,CAAC,EAAE,gBAAgB,GAC9B,gBAAgB,GAAG,IAAI,CAgBzB;AAwDD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,gBAAgB,EACtB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI;AAC9C;;;4DAG4D;AAC5D,OAAO,CAAC,EAAE,qBAAqB,GAC9B,MAAM,GAAG,IAAI,CAuCf;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,gBAAgB,EACtB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GAC5C,IAAI,CAUN;AAiFD;;;;;;;;;GASG;AACH,MAAM,WAAW,iBAAiB;IAChC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,8EAA8E;IAC9E,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,EAAE,OAAO,GAAG,cAAc,CAAC;IAC/B;;;;;yEAKqE;IACrE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,wBAAgB,WAAW,CACzB,IAAI,EAAE,YAAY,EAClB,SAAS,EAAE,gBAAgB,EAC3B,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI;AAC7C;;;gEAGgE;AAChE,OAAO,CAAC,EAAE,qBAAqB,GAC9B,iBAAiB,CA+GnB"}
|
|
@@ -24,9 +24,50 @@ import { isHumanSeatSession } from "./human-route-enforcer.js";
|
|
|
24
24
|
import { selectRoleSeat } from "./workflow-role-resolver.js";
|
|
25
25
|
import { roleResolutionContext, tryResolveRoleByCapability, } from "./workflow-role-context.js";
|
|
26
26
|
import { classifyFailedInstance, classifyGateTrip, workflowExceptionTags } from "./workflow-exception.js";
|
|
27
|
-
import { newQitemId } from "./queue-repository.js";
|
|
27
|
+
import { newQitemId, QueueRepositoryError } from "./queue-repository.js";
|
|
28
28
|
import { resolveExceptionRoute } from "./workflow-exception-router.js";
|
|
29
|
+
import { workflowHumanDestination } from "./workflow-human-destination.js";
|
|
29
30
|
import { disarmWorkflowKeepalive, ensureWorkflowKeepaliveArmed, } from "./workflow-keepalive-arming.js";
|
|
31
|
+
import { requiredLifecycleSteps } from "./lifecycle-obligations.js";
|
|
32
|
+
import { shellQuote } from "../adapters/shell-quote.js";
|
|
33
|
+
const WORKFLOW_CONTEXT_SHORTCUT = "Context: this workflow packet is a shortcut, not the whole story; inspect additional project, mission, and receipt evidence before choosing an authored exit.";
|
|
34
|
+
/** One occurrence-bound action, shared by packet bodies and authored wait wakes. */
|
|
35
|
+
export function renderWorkflowProjectCommand(input) {
|
|
36
|
+
const base = `rig workflow project --instance ${input.instanceId} --current-packet ${input.packetId} --exit <handoff|waiting|done|failed> --actor-session ${input.ownerSession}`;
|
|
37
|
+
const acceptance = input.step?.acceptance;
|
|
38
|
+
if (!acceptance)
|
|
39
|
+
return base;
|
|
40
|
+
const verdict = acceptance.verdicts.length === 1
|
|
41
|
+
? acceptance.verdicts[0]
|
|
42
|
+
: `<${acceptance.verdicts.join("|")}>`;
|
|
43
|
+
return `${base} --acceptance-candidate ${shellQuote(acceptance.candidate)} --acceptance-verdict ${shellQuote(verdict)} --acceptance-evidence-ref ${shellQuote(acceptance.evidence_ref)}`;
|
|
44
|
+
}
|
|
45
|
+
/** Refreshes guidance when a packet is recreated (route/resume) instead of
|
|
46
|
+
* carrying a stale packet id or owner forward in copied body text. */
|
|
47
|
+
export function withWorkflowContinuation(input) {
|
|
48
|
+
const lines = input.body
|
|
49
|
+
.split("\n")
|
|
50
|
+
.filter((line) => !line.startsWith("Continuation: ") && line !== WORKFLOW_CONTEXT_SHORTCUT && !(input.contextRefs && line.startsWith("Context reference: ")));
|
|
51
|
+
while (lines.at(-1) === "")
|
|
52
|
+
lines.pop();
|
|
53
|
+
return [
|
|
54
|
+
...lines,
|
|
55
|
+
"",
|
|
56
|
+
...(input.contextRefs ?? []).map((ref) => `Context reference: ${ref}`),
|
|
57
|
+
`Continuation: ${renderWorkflowProjectCommand(input)}`,
|
|
58
|
+
WORKFLOW_CONTEXT_SHORTCUT,
|
|
59
|
+
].join("\n");
|
|
60
|
+
}
|
|
61
|
+
export function workflowWaitWakeMessage(input) {
|
|
62
|
+
return [
|
|
63
|
+
`Workflow wait re-presentation (blocker progress or reminder): ${input.spec.id}@${input.spec.version} instance ${input.instance.instanceId} step ${input.step.id}.`,
|
|
64
|
+
`You still own the same frontier packet ${input.packetId}. Read it and inspect current evidence before choosing an authored exit.`,
|
|
65
|
+
...(input.step.objective ? [`Objective: ${input.step.objective}`] : []),
|
|
66
|
+
...(input.spec.context_refs ?? []).map((ref) => `Context reference: ${ref}`),
|
|
67
|
+
`Continuation: ${renderWorkflowProjectCommand({ ...input, instanceId: input.instance.instanceId })}`,
|
|
68
|
+
WORKFLOW_CONTEXT_SHORTCUT,
|
|
69
|
+
].join("\n");
|
|
70
|
+
}
|
|
30
71
|
/**
|
|
31
72
|
* OPR.0.4.6.WF2 FR-2: canonical-session → node runtime column lookup
|
|
32
73
|
* (the harness-pin reconciliation source). Latest session row wins
|
|
@@ -70,7 +111,7 @@ export class WorkflowProjector {
|
|
|
70
111
|
* (the validateRig precedent — the projector never reads config
|
|
71
112
|
* itself). hostDefault is read LIVE per exception (dial flips apply
|
|
72
113
|
* to future items only). Absent = engine defaults (orchestrator-
|
|
73
|
-
* first chain with
|
|
114
|
+
* first chain with registered-human selection). */
|
|
74
115
|
exceptionDial) {
|
|
75
116
|
this.db = db;
|
|
76
117
|
this.eventBus = eventBus;
|
|
@@ -137,6 +178,15 @@ export class WorkflowProjector {
|
|
|
137
178
|
allowedExits: currentStep.allowed_exits,
|
|
138
179
|
});
|
|
139
180
|
}
|
|
181
|
+
// Project profile receipts are agent-authored references. Presence is mechanical;
|
|
182
|
+
// the daemon neither reads the referenced prose nor decides its substance.
|
|
183
|
+
if (requiredLifecycleSteps(instance.lifecycleBinding).includes(currentStep.id) &&
|
|
184
|
+
(input.exit === "done" || input.exit === "handoff")) {
|
|
185
|
+
const receipt = input.closureEvidence?.evidence_ref;
|
|
186
|
+
if (typeof receipt !== "string" || receipt.trim() === "") {
|
|
187
|
+
throw new WorkflowProjectorError("lifecycle_receipt_required", `Boundary step "${currentStep.id}" needs an agent-judged receipt. Supply --evidence-ref; a terminal queue row is not acceptance.`, { stepId: currentStep.id, instanceId: instance.instanceId });
|
|
188
|
+
}
|
|
189
|
+
}
|
|
140
190
|
validateAcceptance(currentStep, input, instance);
|
|
141
191
|
// A declared dependency graph opts into the S06 packet-addressed
|
|
142
192
|
// executor. Legacy specs keep the mature serial scribe below exactly.
|
|
@@ -144,7 +194,14 @@ export class WorkflowProjector {
|
|
|
144
194
|
if (!packetBinding) {
|
|
145
195
|
throw new WorkflowProjectorError("frontier_binding_indeterminate", `workflow instance ${instance.instanceId} has a dependency graph but frontier packet ${input.currentPacketId} has no unique step binding; refusing to infer from current_step_id`, { instanceId: instance.instanceId, currentPacketId: input.currentPacketId });
|
|
146
196
|
}
|
|
147
|
-
return this.projectDependencyGraph({
|
|
197
|
+
return this.projectDependencyGraph({
|
|
198
|
+
input,
|
|
199
|
+
instance,
|
|
200
|
+
spec,
|
|
201
|
+
currentStep,
|
|
202
|
+
packetBinding,
|
|
203
|
+
currentOwnerSession: currentPacket.destinationSession,
|
|
204
|
+
});
|
|
148
205
|
}
|
|
149
206
|
// Determine next step (one-hop default; multi-hop is graduation).
|
|
150
207
|
// OPR.0.4.6.WF2 FR-1: the recorded exit participates — a MAPPED exit
|
|
@@ -164,8 +221,7 @@ export class WorkflowProjector {
|
|
|
164
221
|
// the same transactional scribe).
|
|
165
222
|
const willRoute = branchRouted || input.exit === "handoff";
|
|
166
223
|
// FR-5 (G3): the waiting-replay ABSORPTION check. `waiting`
|
|
167
|
-
// deliberately KEEPS the closed packet on the frontier
|
|
168
|
-
// keepalive wakes the parked owner off it), so a replayed waiting
|
|
224
|
+
// deliberately KEEPS the closed packet on the frontier, so a replayed waiting
|
|
169
225
|
// project passes the frontier guard — before this slice it
|
|
170
226
|
// double-wrote the trail. Absorption closes the hole under the
|
|
171
227
|
// guard-ratified FULL CLOSURE-INTENT IDENTITY (G-WF1-1): the replay
|
|
@@ -307,6 +363,20 @@ export class WorkflowProjector {
|
|
|
307
363
|
handedOffTo: closure.handedOffTo,
|
|
308
364
|
blockedOn: closure.blockedOn,
|
|
309
365
|
transitionNote: closure.transitionNote,
|
|
366
|
+
wakeMaxSeconds: effectiveExit === "waiting" && !routes ? currentStep.re_present_max_seconds : undefined,
|
|
367
|
+
wakeProgressEvidence: input.closureEvidence,
|
|
368
|
+
wakeAfterSeconds: effectiveExit === "waiting" && !routes
|
|
369
|
+
? currentStep.re_present_after_seconds
|
|
370
|
+
: undefined,
|
|
371
|
+
wakeMessage: effectiveExit === "waiting" && !routes && currentStep.re_present_after_seconds !== undefined
|
|
372
|
+
? workflowWaitWakeMessage({
|
|
373
|
+
spec,
|
|
374
|
+
instance,
|
|
375
|
+
step: currentStep,
|
|
376
|
+
packetId: input.currentPacketId,
|
|
377
|
+
ownerSession: currentPacket.destinationSession,
|
|
378
|
+
})
|
|
379
|
+
: undefined,
|
|
310
380
|
});
|
|
311
381
|
registerEvent(queueUpdate.persistedEvent);
|
|
312
382
|
// 3. If this close routes (structural handoff OR branch-mapped
|
|
@@ -345,21 +415,21 @@ export class WorkflowProjector {
|
|
|
345
415
|
// PREALLOCATED so occurrence:<gatePacketId> exists at create
|
|
346
416
|
// (identity queryable from birth — arch cell-2). Handler-role
|
|
347
417
|
// gates stay negative (deterministic handoffs, not exceptions).
|
|
348
|
-
const
|
|
349
|
-
const gateException = gateCompile
|
|
418
|
+
const nextPacketId = newQitemId();
|
|
419
|
+
const gateException = gateCompile
|
|
350
420
|
? classifyGateTrip({
|
|
351
421
|
workflowName: instance.workflowName,
|
|
352
422
|
instanceId: instance.instanceId,
|
|
353
423
|
gatedStepId: nextStep.id,
|
|
354
424
|
gateKind: gateCompile.kind,
|
|
355
|
-
gatePacketId:
|
|
425
|
+
gatePacketId: nextPacketId,
|
|
356
426
|
parkOn: gateCompile.parkOn,
|
|
357
427
|
})
|
|
358
428
|
: null;
|
|
359
429
|
// P34 (site :466, the ROUTES branch) — the stage call follows the create
|
|
360
430
|
// immediately below; see the seam assert at the end of this transaction.
|
|
361
431
|
createdNext = this.queueRepo.createWithinTransaction({
|
|
362
|
-
qitemId:
|
|
432
|
+
qitemId: nextPacketId,
|
|
363
433
|
sourceSession: input.actorSession,
|
|
364
434
|
destinationSession: resolvedNextOwner,
|
|
365
435
|
body: workflowHandoffBody({
|
|
@@ -370,6 +440,8 @@ export class WorkflowProjector {
|
|
|
370
440
|
actorSession: input.actorSession,
|
|
371
441
|
resultNote: effectiveResultNote,
|
|
372
442
|
gate: gateCompile,
|
|
443
|
+
packetId: nextPacketId,
|
|
444
|
+
ownerSession: resolvedNextOwner,
|
|
373
445
|
}),
|
|
374
446
|
priority: "routine",
|
|
375
447
|
tier: gateCompile?.tier ?? "mode2",
|
|
@@ -526,13 +598,13 @@ export class WorkflowProjector {
|
|
|
526
598
|
// txn. A handoff ensures the per-instance job is armed (idempotent
|
|
527
599
|
// — also heals pre-WF-1 instances on their first post-upgrade
|
|
528
600
|
// hop); a terminal status disarms it (no orphaned watchdog
|
|
529
|
-
// noise). Waiting keeps the job armed
|
|
530
|
-
//
|
|
601
|
+
// noise). Waiting keeps the deadline-gated job armed but quiet while
|
|
602
|
+
// blocked; an authored re-presentation rule uses the separate one-shot
|
|
603
|
+
// park timer above. Plain INSERT/UPDATE, verified txn-composable.
|
|
531
604
|
if (this.watchdogJobsRepo) {
|
|
532
605
|
if (routes && resolvedNextOwner) {
|
|
533
|
-
// Any route arms the keepalive for the new owner — including a
|
|
534
|
-
//
|
|
535
|
-
// gate target exactly like any parked owner).
|
|
606
|
+
// Any route arms the keepalive for the new owner — including a gate
|
|
607
|
+
// park, whose delivery attention is handled by the queue wake intent.
|
|
536
608
|
ensureWorkflowKeepaliveArmed(this.watchdogJobsRepo, {
|
|
537
609
|
instanceId: instance.instanceId,
|
|
538
610
|
targetSession: resolvedNextOwner,
|
|
@@ -596,13 +668,13 @@ export class WorkflowProjector {
|
|
|
596
668
|
// FAC-1 (arch Q3 — routing uniformity, bounded): declared
|
|
597
669
|
// preferred_targets stay the override; a bound instance's
|
|
598
670
|
// orchestrator-role dial position falls through to a
|
|
599
|
-
//
|
|
600
|
-
//
|
|
601
|
-
//
|
|
602
|
-
//
|
|
671
|
+
// capability pick on the bound rig (evidenced no-match →
|
|
672
|
+
// registered-human selection, with an explicit error if no
|
|
673
|
+
// human can be selected). Evidence-read failures propagate
|
|
674
|
+
// and roll back the close. Fresh decision per episode.
|
|
603
675
|
resolveRoleTarget: (role) => spec.roles?.[role]?.preferred_targets?.[0] ??
|
|
604
676
|
tryResolveRoleByCapability(roleCtx, role),
|
|
605
|
-
humanFallbackSeat: this.exceptionDial?.humanFallbackSeat
|
|
677
|
+
humanFallbackSeat: this.exceptionDial?.humanFallbackSeat,
|
|
606
678
|
});
|
|
607
679
|
const evidenceRef = `rig workflow trace ${instance.instanceId}`;
|
|
608
680
|
const itemBody = `WORKFLOW EXCEPTION (${exception.identity.exceptionClass})\n` +
|
|
@@ -627,16 +699,13 @@ export class WorkflowProjector {
|
|
|
627
699
|
try {
|
|
628
700
|
createdException = createExceptionItem(route.destinationSession, route.tier);
|
|
629
701
|
}
|
|
630
|
-
catch {
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
//
|
|
634
|
-
//
|
|
635
|
-
//
|
|
636
|
-
|
|
637
|
-
// real storage error and propagates: the whole close rolls
|
|
638
|
-
// back rather than committing an item-less failure.
|
|
639
|
-
createdException = createExceptionItem(this.exceptionDial?.humanFallbackSeat ?? "human@host", "human-gate");
|
|
702
|
+
catch (error) {
|
|
703
|
+
if (!(error instanceof QueueRepositoryError) || error.code !== "unknown_destination_rig" || route.humanRouted)
|
|
704
|
+
throw error;
|
|
705
|
+
// Only an unavailable agent rig invokes human selection. Other
|
|
706
|
+
// admission/storage failures propagate unchanged and roll back the
|
|
707
|
+
// close, retaining the failure+attention-item atomic contract.
|
|
708
|
+
createdException = createExceptionItem(workflowHumanDestination(this.exceptionDial?.humanFallbackSeat), "human-gate");
|
|
640
709
|
}
|
|
641
710
|
registerEvent(createdException.persistedEvent);
|
|
642
711
|
exceptionItemPostCommit = {
|
|
@@ -694,7 +763,7 @@ export class WorkflowProjector {
|
|
|
694
763
|
};
|
|
695
764
|
}
|
|
696
765
|
async projectDependencyGraph(args) {
|
|
697
|
-
const { input, instance, spec, currentStep, packetBinding } = args;
|
|
766
|
+
const { input, instance, spec, currentStep, packetBinding, currentOwnerSession } = args;
|
|
698
767
|
if (input.exit === "waiting" && instance.status === "waiting" && matchesStoredWaitingDecision(instance, input, currentStep.id, this.trailLog)) {
|
|
699
768
|
return {
|
|
700
769
|
instance,
|
|
@@ -783,7 +852,7 @@ export class WorkflowProjector {
|
|
|
783
852
|
if (!owner) {
|
|
784
853
|
throw new WorkflowProjectorError("next_owner_unresolved", `cannot resolve next owner for dependency step "${step.id}"`, { instanceId: instance.instanceId, stepId: step.id });
|
|
785
854
|
}
|
|
786
|
-
return { step, gate, owner };
|
|
855
|
+
return { step, gate, owner, packetId: newQitemId() };
|
|
787
856
|
});
|
|
788
857
|
const closureOwner = ownerPlans.length === 1 ? ownerPlans[0].owner : null;
|
|
789
858
|
const closure = effectiveExit === "handoff" && ownerPlans.length !== 1
|
|
@@ -804,6 +873,20 @@ export class WorkflowProjector {
|
|
|
804
873
|
handedOffTo: closure.handedOffTo,
|
|
805
874
|
blockedOn: closure.blockedOn,
|
|
806
875
|
transitionNote: closure.transitionNote,
|
|
876
|
+
wakeMaxSeconds: effectiveExit === "waiting" && ownerPlans.length === 0 ? currentStep.re_present_max_seconds : undefined,
|
|
877
|
+
wakeProgressEvidence: input.closureEvidence,
|
|
878
|
+
wakeAfterSeconds: effectiveExit === "waiting" && ownerPlans.length === 0
|
|
879
|
+
? currentStep.re_present_after_seconds
|
|
880
|
+
: undefined,
|
|
881
|
+
wakeMessage: effectiveExit === "waiting" && ownerPlans.length === 0 && currentStep.re_present_after_seconds !== undefined
|
|
882
|
+
? workflowWaitWakeMessage({
|
|
883
|
+
spec,
|
|
884
|
+
instance,
|
|
885
|
+
step: currentStep,
|
|
886
|
+
packetId: input.currentPacketId,
|
|
887
|
+
ownerSession: currentOwnerSession,
|
|
888
|
+
})
|
|
889
|
+
: undefined,
|
|
807
890
|
});
|
|
808
891
|
addEvent(updated.persistedEvent);
|
|
809
892
|
if (effectiveExit !== "waiting") {
|
|
@@ -814,9 +897,20 @@ export class WorkflowProjector {
|
|
|
814
897
|
}
|
|
815
898
|
for (const plan of ownerPlans) {
|
|
816
899
|
const created = this.queueRepo.createWithinTransaction({
|
|
900
|
+
qitemId: plan.packetId,
|
|
817
901
|
sourceSession: input.actorSession,
|
|
818
902
|
destinationSession: plan.owner,
|
|
819
|
-
body: workflowHandoffBody({
|
|
903
|
+
body: workflowHandoffBody({
|
|
904
|
+
spec,
|
|
905
|
+
instance,
|
|
906
|
+
currentStep,
|
|
907
|
+
nextStep: plan.step,
|
|
908
|
+
actorSession: input.actorSession,
|
|
909
|
+
resultNote: effectiveResultNote,
|
|
910
|
+
gate: plan.gate,
|
|
911
|
+
packetId: plan.packetId,
|
|
912
|
+
ownerSession: plan.owner,
|
|
913
|
+
}),
|
|
820
914
|
priority: "routine",
|
|
821
915
|
tier: plan.gate?.tier ?? "mode2",
|
|
822
916
|
tags: ["workflow", plan.gate ? "gate" : "handoff", `workflow:${spec.id}`, `instance:${instance.instanceId}`, `step:${plan.step.id}`],
|
|
@@ -1333,7 +1427,14 @@ function workflowHandoffBody(input) {
|
|
|
1333
1427
|
if (input.resultNote) {
|
|
1334
1428
|
lines.push("", `Prior step note: ${input.resultNote}`);
|
|
1335
1429
|
}
|
|
1336
|
-
return
|
|
1430
|
+
return withWorkflowContinuation({
|
|
1431
|
+
body: lines.join("\n"),
|
|
1432
|
+
contextRefs: input.spec.context_refs,
|
|
1433
|
+
instanceId: input.instance.instanceId,
|
|
1434
|
+
packetId: input.packetId,
|
|
1435
|
+
ownerSession: input.ownerSession,
|
|
1436
|
+
step: input.nextStep,
|
|
1437
|
+
});
|
|
1337
1438
|
}
|
|
1338
1439
|
function validateAcceptance(step, input, instance) {
|
|
1339
1440
|
if (!step.acceptance || input.exit === "waiting")
|