oh-my-codex 0.18.6 → 0.18.8
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/Cargo.lock +6 -6
- package/Cargo.toml +1 -1
- package/README.md +59 -10
- package/crates/omx-sparkshell/tests/execution.rs +1 -1
- package/dist/agents/__tests__/definitions.test.js +11 -0
- package/dist/agents/__tests__/definitions.test.js.map +1 -1
- package/dist/agents/__tests__/native-config.test.js +56 -6
- package/dist/agents/__tests__/native-config.test.js.map +1 -1
- package/dist/agents/definitions.d.ts +10 -0
- package/dist/agents/definitions.d.ts.map +1 -1
- package/dist/agents/definitions.js +5 -1
- package/dist/agents/definitions.js.map +1 -1
- package/dist/agents/native-config.d.ts +5 -1
- package/dist/agents/native-config.d.ts.map +1 -1
- package/dist/agents/native-config.js +19 -4
- package/dist/agents/native-config.js.map +1 -1
- package/dist/autopilot/__tests__/fsm.test.d.ts +2 -0
- package/dist/autopilot/__tests__/fsm.test.d.ts.map +1 -0
- package/dist/autopilot/__tests__/fsm.test.js +75 -0
- package/dist/autopilot/__tests__/fsm.test.js.map +1 -0
- package/dist/autopilot/__tests__/ralplan-gate.test.d.ts +2 -0
- package/dist/autopilot/__tests__/ralplan-gate.test.d.ts.map +1 -0
- package/dist/autopilot/__tests__/ralplan-gate.test.js +79 -0
- package/dist/autopilot/__tests__/ralplan-gate.test.js.map +1 -0
- package/dist/autopilot/deep-interview-gate.d.ts +18 -0
- package/dist/autopilot/deep-interview-gate.d.ts.map +1 -0
- package/dist/autopilot/deep-interview-gate.js +256 -0
- package/dist/autopilot/deep-interview-gate.js.map +1 -0
- package/dist/autopilot/fsm.d.ts +13 -0
- package/dist/autopilot/fsm.d.ts.map +1 -0
- package/dist/autopilot/fsm.js +70 -0
- package/dist/autopilot/fsm.js.map +1 -0
- package/dist/autopilot/ralplan-gate.d.ts +17 -0
- package/dist/autopilot/ralplan-gate.d.ts.map +1 -0
- package/dist/autopilot/ralplan-gate.js +61 -0
- package/dist/autopilot/ralplan-gate.js.map +1 -0
- package/dist/cli/__tests__/codex-plugin-layout.test.js +512 -1
- package/dist/cli/__tests__/codex-plugin-layout.test.js.map +1 -1
- package/dist/cli/__tests__/doctor-warning-copy.test.js +39 -0
- package/dist/cli/__tests__/doctor-warning-copy.test.js.map +1 -1
- package/dist/cli/__tests__/index.test.js +83 -7
- package/dist/cli/__tests__/index.test.js.map +1 -1
- package/dist/cli/__tests__/launch-fallback.test.js +175 -6
- package/dist/cli/__tests__/launch-fallback.test.js.map +1 -1
- package/dist/cli/__tests__/package-bin-contract.test.js +8 -4
- package/dist/cli/__tests__/package-bin-contract.test.js.map +1 -1
- package/dist/cli/__tests__/question.test.js +100 -0
- package/dist/cli/__tests__/question.test.js.map +1 -1
- package/dist/cli/__tests__/ralph-goal-mode-contract.test.js +13 -0
- package/dist/cli/__tests__/ralph-goal-mode-contract.test.js.map +1 -1
- package/dist/cli/__tests__/ralph.test.js +14 -0
- package/dist/cli/__tests__/ralph.test.js.map +1 -1
- package/dist/cli/__tests__/setup-install-mode.test.js +89 -0
- package/dist/cli/__tests__/setup-install-mode.test.js.map +1 -1
- package/dist/cli/__tests__/setup-refresh.test.js +83 -0
- package/dist/cli/__tests__/setup-refresh.test.js.map +1 -1
- package/dist/cli/__tests__/state.test.js +21 -0
- package/dist/cli/__tests__/state.test.js.map +1 -1
- package/dist/cli/__tests__/team.test.js +2 -2
- package/dist/cli/__tests__/team.test.js.map +1 -1
- package/dist/cli/__tests__/update.test.js +110 -2
- package/dist/cli/__tests__/update.test.js.map +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +8 -1
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/index.d.ts +14 -3
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +298 -50
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/plugin-marketplace.d.ts +14 -2
- package/dist/cli/plugin-marketplace.d.ts.map +1 -1
- package/dist/cli/plugin-marketplace.js +62 -15
- package/dist/cli/plugin-marketplace.js.map +1 -1
- package/dist/cli/question.d.ts.map +1 -1
- package/dist/cli/question.js +36 -5
- package/dist/cli/question.js.map +1 -1
- package/dist/cli/ralph.d.ts.map +1 -1
- package/dist/cli/ralph.js +3 -1
- package/dist/cli/ralph.js.map +1 -1
- package/dist/cli/setup-preferences.d.ts +2 -0
- package/dist/cli/setup-preferences.d.ts.map +1 -1
- package/dist/cli/setup-preferences.js +4 -0
- package/dist/cli/setup-preferences.js.map +1 -1
- package/dist/cli/setup.d.ts +3 -0
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +166 -27
- package/dist/cli/setup.js.map +1 -1
- package/dist/cli/state.d.ts.map +1 -1
- package/dist/cli/state.js +8 -1
- package/dist/cli/state.js.map +1 -1
- package/dist/cli/tmux-hook.d.ts.map +1 -1
- package/dist/cli/tmux-hook.js +16 -0
- package/dist/cli/tmux-hook.js.map +1 -1
- package/dist/cli/update.d.ts +2 -0
- package/dist/cli/update.d.ts.map +1 -1
- package/dist/cli/update.js +47 -3
- package/dist/cli/update.js.map +1 -1
- package/dist/config/__tests__/deep-interview.test.js +7 -6
- package/dist/config/__tests__/deep-interview.test.js.map +1 -1
- package/dist/config/__tests__/generator-notify.test.js +1 -0
- package/dist/config/__tests__/generator-notify.test.js.map +1 -1
- package/dist/config/deep-interview.d.ts.map +1 -1
- package/dist/config/deep-interview.js +14 -4
- package/dist/config/deep-interview.js.map +1 -1
- package/dist/config/generator.d.ts +2 -2
- package/dist/config/generator.d.ts.map +1 -1
- package/dist/config/generator.js +2 -2
- package/dist/config/generator.js.map +1 -1
- package/dist/config/team-mode.d.ts +12 -0
- package/dist/config/team-mode.d.ts.map +1 -0
- package/dist/config/team-mode.js +91 -0
- package/dist/config/team-mode.js.map +1 -0
- package/dist/hooks/__tests__/agents-overlay.test.js +88 -0
- package/dist/hooks/__tests__/agents-overlay.test.js.map +1 -1
- package/dist/hooks/__tests__/autopilot-skill-contract.test.js +8 -0
- package/dist/hooks/__tests__/autopilot-skill-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/code-review-skill-contract.test.js +8 -0
- package/dist/hooks/__tests__/code-review-skill-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/deep-interview-contract.test.js +10 -0
- package/dist/hooks/__tests__/deep-interview-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/keyword-detector.test.js +1072 -14
- package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js +64 -1
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js +189 -0
- package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js +35 -2
- package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-tmux-heal.test.js +3 -3
- package/dist/hooks/__tests__/notify-hook-tmux-heal.test.js.map +1 -1
- package/dist/hooks/__tests__/session.test.js +25 -0
- package/dist/hooks/__tests__/session.test.js.map +1 -1
- package/dist/hooks/__tests__/skill-guidance-contract.test.js +21 -0
- package/dist/hooks/__tests__/skill-guidance-contract.test.js.map +1 -1
- package/dist/hooks/agents-overlay.d.ts.map +1 -1
- package/dist/hooks/agents-overlay.js +36 -50
- package/dist/hooks/agents-overlay.js.map +1 -1
- package/dist/hooks/deep-interview-config-instruction.js +1 -1
- package/dist/hooks/deep-interview-config-instruction.js.map +1 -1
- package/dist/hooks/extensibility/__tests__/plugin-runner.test.js +31 -0
- package/dist/hooks/extensibility/__tests__/plugin-runner.test.js.map +1 -1
- package/dist/hooks/extensibility/plugin-runner.js +17 -21
- package/dist/hooks/extensibility/plugin-runner.js.map +1 -1
- package/dist/hooks/keyword-detector.d.ts +1 -0
- package/dist/hooks/keyword-detector.d.ts.map +1 -1
- package/dist/hooks/keyword-detector.js +428 -32
- package/dist/hooks/keyword-detector.js.map +1 -1
- package/dist/hooks/keyword-registry.d.ts.map +1 -1
- package/dist/hooks/keyword-registry.js +1 -0
- package/dist/hooks/keyword-registry.js.map +1 -1
- package/dist/hooks/prompt-guidance-contract.d.ts.map +1 -1
- package/dist/hooks/prompt-guidance-contract.js +6 -0
- package/dist/hooks/prompt-guidance-contract.js.map +1 -1
- package/dist/hooks/session.d.ts +3 -0
- package/dist/hooks/session.d.ts.map +1 -1
- package/dist/hooks/session.js +13 -5
- package/dist/hooks/session.js.map +1 -1
- package/dist/hud/__tests__/authority.test.js +469 -31
- package/dist/hud/__tests__/authority.test.js.map +1 -1
- package/dist/hud/__tests__/hud-tmux-injection.test.js +2 -1
- package/dist/hud/__tests__/hud-tmux-injection.test.js.map +1 -1
- package/dist/hud/__tests__/index.test.js +210 -2
- package/dist/hud/__tests__/index.test.js.map +1 -1
- package/dist/hud/__tests__/reconcile.test.js +588 -28
- package/dist/hud/__tests__/reconcile.test.js.map +1 -1
- package/dist/hud/__tests__/render.test.js +61 -0
- package/dist/hud/__tests__/render.test.js.map +1 -1
- package/dist/hud/__tests__/state.test.js +208 -0
- package/dist/hud/__tests__/state.test.js.map +1 -1
- package/dist/hud/__tests__/tmux.test.js +314 -22
- package/dist/hud/__tests__/tmux.test.js.map +1 -1
- package/dist/hud/authority.d.ts +5 -0
- package/dist/hud/authority.d.ts.map +1 -1
- package/dist/hud/authority.js +337 -30
- package/dist/hud/authority.js.map +1 -1
- package/dist/hud/index.d.ts +20 -2
- package/dist/hud/index.d.ts.map +1 -1
- package/dist/hud/index.js +103 -26
- package/dist/hud/index.js.map +1 -1
- package/dist/hud/reconcile.d.ts +3 -3
- package/dist/hud/reconcile.d.ts.map +1 -1
- package/dist/hud/reconcile.js +129 -20
- package/dist/hud/reconcile.js.map +1 -1
- package/dist/hud/render.d.ts.map +1 -1
- package/dist/hud/render.js +35 -0
- package/dist/hud/render.js.map +1 -1
- package/dist/hud/state.d.ts.map +1 -1
- package/dist/hud/state.js +64 -50
- package/dist/hud/state.js.map +1 -1
- package/dist/hud/tmux.d.ts +26 -6
- package/dist/hud/tmux.d.ts.map +1 -1
- package/dist/hud/tmux.js +173 -38
- package/dist/hud/tmux.js.map +1 -1
- package/dist/hud/types.d.ts +11 -0
- package/dist/hud/types.d.ts.map +1 -1
- package/dist/hud/types.js.map +1 -1
- package/dist/mcp/__tests__/hermes-bridge.test.js +203 -7
- package/dist/mcp/__tests__/hermes-bridge.test.js.map +1 -1
- package/dist/mcp/__tests__/state-paths.test.js +71 -1
- package/dist/mcp/__tests__/state-paths.test.js.map +1 -1
- package/dist/mcp/__tests__/state-server.test.js +13 -1
- package/dist/mcp/__tests__/state-server.test.js.map +1 -1
- package/dist/mcp/hermes-bridge.d.ts +12 -2
- package/dist/mcp/hermes-bridge.d.ts.map +1 -1
- package/dist/mcp/hermes-bridge.js +83 -9
- package/dist/mcp/hermes-bridge.js.map +1 -1
- package/dist/mcp/state-paths.d.ts +32 -0
- package/dist/mcp/state-paths.d.ts.map +1 -1
- package/dist/mcp/state-paths.js +113 -17
- package/dist/mcp/state-paths.js.map +1 -1
- package/dist/mcp/state-server.d.ts +4 -4
- package/dist/modes/__tests__/base-autoresearch-contract.test.js +7 -1
- package/dist/modes/__tests__/base-autoresearch-contract.test.js.map +1 -1
- package/dist/pipeline/__tests__/stages.test.js +130 -0
- package/dist/pipeline/__tests__/stages.test.js.map +1 -1
- package/dist/pipeline/orchestrator.js +1 -1
- package/dist/pipeline/orchestrator.js.map +1 -1
- package/dist/pipeline/stages/ralplan.d.ts +1 -0
- package/dist/pipeline/stages/ralplan.d.ts.map +1 -1
- package/dist/pipeline/stages/ralplan.js +14 -5
- package/dist/pipeline/stages/ralplan.js.map +1 -1
- package/dist/question/__tests__/deep-interview.test.js +160 -2
- package/dist/question/__tests__/deep-interview.test.js.map +1 -1
- package/dist/question/__tests__/policy.test.js +63 -3
- package/dist/question/__tests__/policy.test.js.map +1 -1
- package/dist/question/__tests__/renderer.test.js +191 -2
- package/dist/question/__tests__/renderer.test.js.map +1 -1
- package/dist/question/__tests__/state.test.js +94 -3
- package/dist/question/__tests__/state.test.js.map +1 -1
- package/dist/question/__tests__/ui.test.js +4 -0
- package/dist/question/__tests__/ui.test.js.map +1 -1
- package/dist/question/autopilot-wait.d.ts +12 -2
- package/dist/question/autopilot-wait.d.ts.map +1 -1
- package/dist/question/autopilot-wait.js +158 -47
- package/dist/question/autopilot-wait.js.map +1 -1
- package/dist/question/deep-interview.d.ts.map +1 -1
- package/dist/question/deep-interview.js +22 -6
- package/dist/question/deep-interview.js.map +1 -1
- package/dist/question/policy.d.ts.map +1 -1
- package/dist/question/policy.js +2 -5
- package/dist/question/policy.js.map +1 -1
- package/dist/question/renderer.d.ts +12 -0
- package/dist/question/renderer.d.ts.map +1 -1
- package/dist/question/renderer.js +87 -3
- package/dist/question/renderer.js.map +1 -1
- package/dist/question/state.d.ts +8 -1
- package/dist/question/state.d.ts.map +1 -1
- package/dist/question/state.js +54 -14
- package/dist/question/state.js.map +1 -1
- package/dist/question/types.d.ts +1 -1
- package/dist/question/types.d.ts.map +1 -1
- package/dist/question/ui.d.ts +1 -0
- package/dist/question/ui.d.ts.map +1 -1
- package/dist/question/ui.js +1 -0
- package/dist/question/ui.js.map +1 -1
- package/dist/ralplan/__tests__/runtime.test.js +191 -0
- package/dist/ralplan/__tests__/runtime.test.js.map +1 -1
- package/dist/ralplan/consensus-gate.d.ts +9 -1
- package/dist/ralplan/consensus-gate.d.ts.map +1 -1
- package/dist/ralplan/consensus-gate.js +84 -2
- package/dist/ralplan/consensus-gate.js.map +1 -1
- package/dist/ralplan/runtime.d.ts +9 -0
- package/dist/ralplan/runtime.d.ts.map +1 -1
- package/dist/ralplan/runtime.js +32 -11
- package/dist/ralplan/runtime.js.map +1 -1
- package/dist/scripts/__tests__/codex-native-hook.test.js +2315 -280
- package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
- package/dist/scripts/__tests__/notify-state-io.test.js +72 -1
- package/dist/scripts/__tests__/notify-state-io.test.js.map +1 -1
- package/dist/scripts/__tests__/notify-tmux-injection.test.d.ts +2 -0
- package/dist/scripts/__tests__/notify-tmux-injection.test.d.ts.map +1 -0
- package/dist/scripts/__tests__/notify-tmux-injection.test.js +57 -0
- package/dist/scripts/__tests__/notify-tmux-injection.test.js.map +1 -0
- package/dist/scripts/__tests__/run-test-files.test.js +74 -0
- package/dist/scripts/__tests__/run-test-files.test.js.map +1 -1
- package/dist/scripts/__tests__/verify-native-agents.test.js +65 -0
- package/dist/scripts/__tests__/verify-native-agents.test.js.map +1 -1
- package/dist/scripts/codex-native-hook.d.ts.map +1 -1
- package/dist/scripts/codex-native-hook.js +431 -56
- package/dist/scripts/codex-native-hook.js.map +1 -1
- package/dist/scripts/codex-native-pre-post.d.ts.map +1 -1
- package/dist/scripts/codex-native-pre-post.js +79 -1
- package/dist/scripts/codex-native-pre-post.js.map +1 -1
- package/dist/scripts/eval/eval-parity-smoke.js +1 -1
- package/dist/scripts/eval/eval-parity-smoke.js.map +1 -1
- package/dist/scripts/hook-payload-guard.d.ts +9 -0
- package/dist/scripts/hook-payload-guard.d.ts.map +1 -0
- package/dist/scripts/hook-payload-guard.js +111 -0
- package/dist/scripts/hook-payload-guard.js.map +1 -0
- package/dist/scripts/notify-fallback-watcher.js +8 -1
- package/dist/scripts/notify-fallback-watcher.js.map +1 -1
- package/dist/scripts/notify-hook/__tests__/payload-guard.test.d.ts +2 -0
- package/dist/scripts/notify-hook/__tests__/payload-guard.test.d.ts.map +1 -0
- package/dist/scripts/notify-hook/__tests__/payload-guard.test.js +39 -0
- package/dist/scripts/notify-hook/__tests__/payload-guard.test.js.map +1 -0
- package/dist/scripts/notify-hook/auto-nudge.d.ts.map +1 -1
- package/dist/scripts/notify-hook/auto-nudge.js +3 -1
- package/dist/scripts/notify-hook/auto-nudge.js.map +1 -1
- package/dist/scripts/notify-hook/ralph-session-resume.d.ts.map +1 -1
- package/dist/scripts/notify-hook/ralph-session-resume.js +3 -10
- package/dist/scripts/notify-hook/ralph-session-resume.js.map +1 -1
- package/dist/scripts/notify-hook/state-io.d.ts.map +1 -1
- package/dist/scripts/notify-hook/state-io.js +62 -38
- package/dist/scripts/notify-hook/state-io.js.map +1 -1
- package/dist/scripts/notify-hook/team-leader-nudge.d.ts.map +1 -1
- package/dist/scripts/notify-hook/team-leader-nudge.js +7 -0
- package/dist/scripts/notify-hook/team-leader-nudge.js.map +1 -1
- package/dist/scripts/notify-hook/team-worker-stop.d.ts.map +1 -1
- package/dist/scripts/notify-hook/team-worker-stop.js +234 -86
- package/dist/scripts/notify-hook/team-worker-stop.js.map +1 -1
- package/dist/scripts/notify-hook/tmux-injection.d.ts +7 -0
- package/dist/scripts/notify-hook/tmux-injection.d.ts.map +1 -1
- package/dist/scripts/notify-hook/tmux-injection.js +24 -18
- package/dist/scripts/notify-hook/tmux-injection.js.map +1 -1
- package/dist/scripts/notify-hook.js +86 -13
- package/dist/scripts/notify-hook.js.map +1 -1
- package/dist/scripts/run-test-files.js +193 -22
- package/dist/scripts/run-test-files.js.map +1 -1
- package/dist/scripts/sync-plugin-mirror.d.ts.map +1 -1
- package/dist/scripts/sync-plugin-mirror.js +61 -3
- package/dist/scripts/sync-plugin-mirror.js.map +1 -1
- package/dist/scripts/verify-native-agents.d.ts.map +1 -1
- package/dist/scripts/verify-native-agents.js +58 -1
- package/dist/scripts/verify-native-agents.js.map +1 -1
- package/dist/state/__tests__/operations.test.js +1125 -1
- package/dist/state/__tests__/operations.test.js.map +1 -1
- package/dist/state/__tests__/skill-active.test.js +46 -1
- package/dist/state/__tests__/skill-active.test.js.map +1 -1
- package/dist/state/__tests__/workflow-transition.test.js +98 -7
- package/dist/state/__tests__/workflow-transition.test.js.map +1 -1
- package/dist/state/operations.d.ts.map +1 -1
- package/dist/state/operations.js +159 -2
- package/dist/state/operations.js.map +1 -1
- package/dist/state/skill-active.js +6 -8
- package/dist/state/skill-active.js.map +1 -1
- package/dist/state/workflow-transition-reconcile.d.ts +6 -0
- package/dist/state/workflow-transition-reconcile.d.ts.map +1 -1
- package/dist/state/workflow-transition-reconcile.js +38 -15
- package/dist/state/workflow-transition-reconcile.js.map +1 -1
- package/dist/state/workflow-transition.d.ts.map +1 -1
- package/dist/state/workflow-transition.js +10 -3
- package/dist/state/workflow-transition.js.map +1 -1
- package/dist/subagents/__tests__/tracker.test.js +139 -0
- package/dist/subagents/__tests__/tracker.test.js.map +1 -1
- package/dist/subagents/tracker.d.ts +3 -0
- package/dist/subagents/tracker.d.ts.map +1 -1
- package/dist/subagents/tracker.js +41 -4
- package/dist/subagents/tracker.js.map +1 -1
- package/dist/team/__tests__/coordination-protocol.test.d.ts +2 -0
- package/dist/team/__tests__/coordination-protocol.test.d.ts.map +1 -0
- package/dist/team/__tests__/coordination-protocol.test.js +173 -0
- package/dist/team/__tests__/coordination-protocol.test.js.map +1 -0
- package/dist/team/__tests__/runtime.test.js +52 -3
- package/dist/team/__tests__/runtime.test.js.map +1 -1
- package/dist/team/__tests__/scaling.test.js +9 -4
- package/dist/team/__tests__/scaling.test.js.map +1 -1
- package/dist/team/__tests__/state.test.js +83 -0
- package/dist/team/__tests__/state.test.js.map +1 -1
- package/dist/team/__tests__/tmux-session.test.js +240 -2
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/__tests__/worker-bootstrap.test.js +84 -0
- package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
- package/dist/team/__tests__/worker-runtime-identity.test.js +4 -2
- package/dist/team/__tests__/worker-runtime-identity.test.js.map +1 -1
- package/dist/team/coordination-protocol.d.ts +14 -0
- package/dist/team/coordination-protocol.d.ts.map +1 -0
- package/dist/team/coordination-protocol.js +244 -0
- package/dist/team/coordination-protocol.js.map +1 -0
- package/dist/team/runtime.d.ts +1 -0
- package/dist/team/runtime.d.ts.map +1 -1
- package/dist/team/runtime.js +19 -3
- package/dist/team/runtime.js.map +1 -1
- package/dist/team/scaling.d.ts.map +1 -1
- package/dist/team/scaling.js +3 -2
- package/dist/team/scaling.js.map +1 -1
- package/dist/team/state/tasks.d.ts.map +1 -1
- package/dist/team/state/tasks.js +24 -0
- package/dist/team/state/tasks.js.map +1 -1
- package/dist/team/state/types.d.ts +21 -1
- package/dist/team/state/types.d.ts.map +1 -1
- package/dist/team/state/types.js.map +1 -1
- package/dist/team/state.d.ts +17 -1
- package/dist/team/state.d.ts.map +1 -1
- package/dist/team/state.js +12 -5
- package/dist/team/state.js.map +1 -1
- package/dist/team/team-ops.d.ts +1 -1
- package/dist/team/team-ops.d.ts.map +1 -1
- package/dist/team/team-ops.js.map +1 -1
- package/dist/team/tmux-session.d.ts +2 -0
- package/dist/team/tmux-session.d.ts.map +1 -1
- package/dist/team/tmux-session.js +161 -13
- package/dist/team/tmux-session.js.map +1 -1
- package/dist/team/worker-bootstrap.d.ts.map +1 -1
- package/dist/team/worker-bootstrap.js +63 -0
- package/dist/team/worker-bootstrap.js.map +1 -1
- package/dist/utils/__tests__/agents-model-table.test.js +4 -2
- package/dist/utils/__tests__/agents-model-table.test.js.map +1 -1
- package/dist/utils/agents-model-table.d.ts.map +1 -1
- package/dist/utils/agents-model-table.js +3 -0
- package/dist/utils/agents-model-table.js.map +1 -1
- package/dist/verification/__tests__/ci-rust-gates.test.js +81 -1
- package/dist/verification/__tests__/ci-rust-gates.test.js.map +1 -1
- package/package.json +8 -8
- package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/oh-my-codex/hooks/codex-native-hook.mjs +334 -21
- package/plugins/oh-my-codex/hooks/hooks.json +1 -2
- package/plugins/oh-my-codex/skills/autopilot/SKILL.md +13 -6
- package/plugins/oh-my-codex/skills/code-review/SKILL.md +7 -7
- package/plugins/oh-my-codex/skills/deep-interview/SKILL.md +9 -4
- package/plugins/oh-my-codex/skills/ralph/SKILL.md +22 -22
- package/plugins/oh-my-codex/skills/ralplan/SKILL.md +12 -0
- package/plugins/oh-my-codex/skills/team/SKILL.md +16 -0
- package/plugins/oh-my-codex/skills/ultraqa/SKILL.md +9 -0
- package/plugins/oh-my-codex/skills/worker/SKILL.md +14 -0
- package/skills/autopilot/SKILL.md +13 -6
- package/skills/code-review/SKILL.md +7 -7
- package/skills/deep-interview/SKILL.md +9 -4
- package/skills/ralph/SKILL.md +22 -22
- package/skills/ralplan/SKILL.md +12 -0
- package/skills/team/SKILL.md +16 -0
- package/skills/ultraqa/SKILL.md +9 -0
- package/skills/worker/SKILL.md +14 -0
- package/src/scripts/__tests__/codex-native-hook.test.ts +4435 -2083
- package/src/scripts/__tests__/notify-state-io.test.ts +95 -0
- package/src/scripts/__tests__/notify-tmux-injection.test.ts +82 -0
- package/src/scripts/__tests__/run-test-files.test.ts +102 -0
- package/src/scripts/__tests__/verify-native-agents.test.ts +75 -0
- package/src/scripts/codex-native-hook.ts +536 -51
- package/src/scripts/codex-native-pre-post.ts +80 -0
- package/src/scripts/demo-team-e2e.sh +10 -7
- package/src/scripts/eval/eval-parity-smoke.ts +1 -1
- package/src/scripts/hook-payload-guard.ts +113 -0
- package/src/scripts/notify-fallback-watcher.ts +8 -1
- package/src/scripts/notify-hook/__tests__/payload-guard.test.ts +41 -0
- package/src/scripts/notify-hook/auto-nudge.ts +3 -1
- package/src/scripts/notify-hook/ralph-session-resume.ts +2 -8
- package/src/scripts/notify-hook/state-io.ts +75 -37
- package/src/scripts/notify-hook/team-leader-nudge.ts +7 -0
- package/src/scripts/notify-hook/team-worker-stop.ts +193 -52
- package/src/scripts/notify-hook/tmux-injection.ts +35 -19
- package/src/scripts/notify-hook.ts +105 -6
- package/src/scripts/run-test-files.ts +192 -22
- package/src/scripts/sync-plugin-mirror.ts +98 -9
- package/src/scripts/verify-native-agents.ts +65 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-transition.js","sourceRoot":"","sources":["../../src/state/workflow-transition.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"workflow-transition.js","sourceRoot":"","sources":["../../src/state/workflow-transition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,gCAAgC,EAAE,MAAM,uBAAuB,CAAC;AAqBzE,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;AAExE,MAAM,oBAAoB,GAAa;IACrC,gBAAgB;IAChB,sBAAsB;IACtB,qBAAqB;CACtB,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE1D,MAAM,CAAC,MAAM,2BAA2B,GAAG,sBAAsB,CAAC;AAElE,MAAM,UAAU,wBAAwB,CAAC,KAA0B;IACjE,IAAI,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3D,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QACvE,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,UAAW,CAAC,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,KAAwB,EACxB,MAAY,IAAI,IAAI,EAAE;IAEtB,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,0BAA0B,KAAK,QAAQ;QAC9D,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,IAAI,EAAE;QACzC,CAAC,CAAC,EAAE,CAAC;IACP,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7C,OAAO,GAAG,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,SAA8B,EAC9B,SAA+C,EAC/C,gBAAyB,EACzB,MAAY,IAAI,IAAI,EAAE;IAEtB,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,oBAAoB,KAAK,mBAAmB,EAAE,CAAC;QACzE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,0BAA0B,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;QAC/C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,6BAA6B,EAAE,CAAC;IAClE,CAAC;IAED,OAAO;QACL,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,sGAAsG,SAAS,CAAC,SAAS,SAAS;KAC3I,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,MAAY,IAAI,IAAI,EAAE,EACtB,QAAgB,2BAA2B;IAE3C,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,IAAY;IAC3D,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,QAAgC,EAChC,SAA8B,EAC9B,SAA+C;IAE/C,OAAO;QACL,KAAK,EAAE,qBAAqB;QAC5B,SAAS,EAAE,SAAS,CAAC,SAAS;QAC9B,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,oBAAoB,EAAE,SAAS,EAAE,oBAAoB;QACrD,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK;QACxE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,WAAW;IACX,cAAc;IACd,MAAM;IACN,WAAW;IACX,OAAO;IACP,WAAW;IACX,SAAS;IACT,SAAS;IACT,gBAAgB;CACR,CAAC;AAMX,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC;IACpC,YAAY;CACb,CAAC,CAAC;AAEH,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC;IACxC,2BAA2B;IAC3B,8BAA8B;IAC9B,uBAAuB;IACvB,sBAAsB;IACtB,2BAA2B;IAC3B,2BAA2B;IAC3B,eAAe;IACf,oBAAoB;IACpB,gBAAgB;IAChB,oBAAoB;IACpB,uBAAuB;IACvB,oBAAoB;CACrB,CAAC,CAAC;AAEH,MAAM,wCAAwC,GAAG,IAAI,GAAG,CAAC;IACvD,yBAAyB;CAC1B,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAsB;IACvD,gBAAgB;IAChB,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAsB;IACxD,WAAW;IACX,cAAc;IACd,MAAM;IACN,WAAW;IACX,OAAO;IACP,WAAW;IACX,SAAS;CACV,CAAC,CAAC;AAEH,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAuB;IACpD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC/C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,YAAY,CAAC,CAAS,EAAE,CAAS;IACxC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAsB,EAAE,CAAsB;IACtE,IAAI,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IACxD,OAAO,qBAAqB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,oBAAoB,CAAC,CAAsB,EAAE,CAAsB;IAC1E,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,wBAAwB,CAAC,CAAsB,EAAE,CAAsB;IAC9E,OAAO,yBAAyB,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,qCAAqC,CAAC,CAAsB,EAAE,CAAsB;IAC3F,OAAO,wCAAwC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,oBAAoB,CAC3B,YAA4C,EAC5C,aAAkC;IAElC,OAAO,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC;WACxC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,UAA+B,EAC/B,aAAkC;IAElC,OAAO,oBAAoB,UAAU,OAAO,aAAa,EAAE,CAAC;AAC9D,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAwB;IACjD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,sBAAsB,CAAC;IACtD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC;IAC/D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC;IAChF,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,qBAAqB,CAAC;AAC/F,CAAC;AAaD,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,OAAQ,sBAA4C,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,kBAAoC,EACpC,aAAkC;IAElC,MAAM,YAAY,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;IAE/D,IAAI,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACzC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,OAAO;YACb,YAAY;YACZ,aAAa;YACb,cAAc,EAAE,YAAY;YAC5B,iBAAiB,EAAE,EAAE;SACtB,CAAC;IACJ,CAAC;IAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO;YACL,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,OAAO;YACb,YAAY;YACZ,aAAa;YACb,cAAc,EAAE,CAAC,aAAa,CAAC;YAC/B,iBAAiB,EAAE,EAAE;SACtB,CAAC;IACJ,CAAC;IAED,MAAM,iBAAiB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACtD,wBAAwB,CAAC,IAAI,EAAE,aAAa,CAAC;WAC1C,qCAAqC,CAAC,IAAI,EAAE,aAAa,CAAC,CAC9D,CAAC,CAAC;IACH,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAEzF,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;QAC3G,OAAO;YACL,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,eAAe;YACrB,YAAY;YACZ,aAAa;YACb,cAAc,EAAE,qBAAqB,CAAC,CAAC,GAAG,eAAe,EAAE,aAAa,CAAC,CAAC;YAC1E,iBAAiB;YACjB,iBAAiB,EAAE,8BAA8B,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC;SACvF,CAAC;IACJ,CAAC;IAED,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;QACxE,OAAO;YACL,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,SAAS;YACf,YAAY;YACZ,aAAa;YACb,cAAc,EAAE,qBAAqB,CAAC,CAAC,GAAG,YAAY,EAAE,aAAa,CAAC,CAAC;YACvE,iBAAiB,EAAE,EAAE;SACtB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,MAAM;QACZ,YAAY;QACZ,aAAa;QACb,cAAc,EAAE,YAAY;QAC5B,iBAAiB,EAAE,EAAE;QACrB,GAAG,CAAC,oBAAoB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpG,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,kBAAoC,EACpC,aAAkC,EAClC,SAAmC,UAAU;IAE7C,MAAM,QAAQ,GAAG,0BAA0B,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;IAC/E,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,CAAC,GAAG,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtE,IAAI,QAAQ,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;QACzC,OAAO;YACL,UAAU,MAAM,IAAI,aAAa,KAAK,kBAAkB,GAAG;YAC3D,8DAA8D;YAC9D,uEAAuE;YACvE,6LAA6L;SAC9L,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACd,CAAC;IACD,OAAO;QACL,UAAU,MAAM,IAAI,aAAa,KAAK,kBAAkB,GAAG;QAC3D,iCAAiC,OAAO,GAAG;QAC3C,6BAA6B;QAC7B,6LAA6L;KAC9L,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,kBAAoC,EACpC,aAAkC,EAClC,SAAmC,UAAU;IAE7C,MAAM,QAAQ,GAAG,0BAA0B,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;IAC/E,IAAI,QAAQ,CAAC,OAAO;QAAE,OAAO;IAC7B,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,kBAAkB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;AAC3F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,GAAW,EACX,SAAkB;IAElB,MAAM,WAAW,GAA0B,EAAE,CAAC;IAE9C,KAAK,MAAM,IAAI,IAAI,sBAAsB,EAAE,CAAC;QAC1C,MAAM,cAAc,GAAG,MAAM,gCAAgC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QACpF,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;YAC3C,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;gBAAE,SAAS;YACzC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAyB,CAAC;gBAC1F,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;oBAC3B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzB,CAAC;gBACD,MAAM;YACR,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,KAAK,CACb,eAAe,IAAI,sBAAsB,aAAa,0FAA0F,IAAI,oGAAoG,CACzP,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,cAAuB,EACvB,cAAiC,EACjC,YAAoB;IAEpB,MAAM,iBAAiB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5D,IAAI,iBAAiB,IAAI,cAAc,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACpE,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IACD,OAAO,cAAc,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC;AAC3C,CAAC"}
|
|
@@ -43,6 +43,145 @@ describe('subagents/tracker', () => {
|
|
|
43
43
|
});
|
|
44
44
|
assert.deepEqual(drained?.activeSubagentThreadIds, []);
|
|
45
45
|
});
|
|
46
|
+
it('can record an explicitly spawned subagent as subagent even when it is the first seen thread', () => {
|
|
47
|
+
let state = createSubagentTrackingState();
|
|
48
|
+
state = recordSubagentTurn(state, {
|
|
49
|
+
sessionId: 'sess-ralplan',
|
|
50
|
+
threadId: 'thread-architect',
|
|
51
|
+
timestamp: '2026-05-28T17:59:43.270Z',
|
|
52
|
+
mode: 'architect',
|
|
53
|
+
kind: 'subagent',
|
|
54
|
+
});
|
|
55
|
+
state = recordSubagentTurn(state, {
|
|
56
|
+
sessionId: 'sess-ralplan',
|
|
57
|
+
threadId: 'thread-critic',
|
|
58
|
+
timestamp: '2026-05-28T18:01:49.547Z',
|
|
59
|
+
mode: 'critic',
|
|
60
|
+
kind: 'subagent',
|
|
61
|
+
});
|
|
62
|
+
const summary = summarizeSubagentSession(state, 'sess-ralplan', {
|
|
63
|
+
now: '2026-05-28T18:02:00.000Z',
|
|
64
|
+
activeWindowMs: 120_000,
|
|
65
|
+
});
|
|
66
|
+
assert.equal(state.sessions['sess-ralplan']?.leader_thread_id, undefined);
|
|
67
|
+
assert.equal(state.sessions['sess-ralplan']?.threads['thread-architect']?.kind, 'subagent');
|
|
68
|
+
assert.equal(state.sessions['sess-ralplan']?.threads['thread-critic']?.kind, 'subagent');
|
|
69
|
+
assert.deepEqual(summary?.allSubagentThreadIds, ['thread-architect', 'thread-critic']);
|
|
70
|
+
});
|
|
71
|
+
it('keeps an explicitly spawned first-seen subagent as subagent after a generic follow-up turn', () => {
|
|
72
|
+
let state = createSubagentTrackingState();
|
|
73
|
+
state = recordSubagentTurn(state, {
|
|
74
|
+
sessionId: 'sess-ralplan',
|
|
75
|
+
threadId: 'thread-architect',
|
|
76
|
+
timestamp: '2026-05-28T17:59:43.270Z',
|
|
77
|
+
mode: 'architect',
|
|
78
|
+
kind: 'subagent',
|
|
79
|
+
});
|
|
80
|
+
state = recordSubagentTurn(state, {
|
|
81
|
+
sessionId: 'sess-ralplan',
|
|
82
|
+
threadId: 'thread-architect',
|
|
83
|
+
turnId: 'turn-after-session-start',
|
|
84
|
+
timestamp: '2026-05-28T18:00:05.000Z',
|
|
85
|
+
mode: 'architect',
|
|
86
|
+
});
|
|
87
|
+
assert.equal(state.sessions['sess-ralplan']?.leader_thread_id, undefined);
|
|
88
|
+
assert.equal(state.sessions['sess-ralplan']?.threads['thread-architect']?.kind, 'subagent');
|
|
89
|
+
assert.equal(state.sessions['sess-ralplan']?.threads['thread-architect']?.turn_count, 2);
|
|
90
|
+
assert.equal(state.sessions['sess-ralplan']?.threads['thread-architect']?.last_turn_id, 'turn-after-session-start');
|
|
91
|
+
});
|
|
92
|
+
it('does not promote existing subagent evidence when the same thread later acts as a parent', () => {
|
|
93
|
+
let state = createSubagentTrackingState();
|
|
94
|
+
state = recordSubagentTurn(state, {
|
|
95
|
+
sessionId: 'sess-ralplan',
|
|
96
|
+
threadId: 'thread-architect',
|
|
97
|
+
timestamp: '2026-05-28T17:59:43.270Z',
|
|
98
|
+
mode: 'architect',
|
|
99
|
+
kind: 'subagent',
|
|
100
|
+
});
|
|
101
|
+
state = recordSubagentTurn(state, {
|
|
102
|
+
sessionId: 'sess-ralplan',
|
|
103
|
+
threadId: 'thread-architect',
|
|
104
|
+
timestamp: '2026-05-28T18:00:10.000Z',
|
|
105
|
+
mode: 'architect',
|
|
106
|
+
kind: 'leader',
|
|
107
|
+
});
|
|
108
|
+
assert.equal(state.sessions['sess-ralplan']?.leader_thread_id, undefined);
|
|
109
|
+
assert.equal(state.sessions['sess-ralplan']?.threads['thread-architect']?.kind, 'subagent');
|
|
110
|
+
});
|
|
111
|
+
it('does not promote a known subagent when it becomes an immediate parent', () => {
|
|
112
|
+
let state = createSubagentTrackingState();
|
|
113
|
+
state = recordSubagentTurn(state, {
|
|
114
|
+
sessionId: 'sess-ralplan',
|
|
115
|
+
threadId: 'thread-architect',
|
|
116
|
+
timestamp: '2026-05-28T17:59:43.270Z',
|
|
117
|
+
mode: 'architect',
|
|
118
|
+
kind: 'subagent',
|
|
119
|
+
});
|
|
120
|
+
state = recordSubagentTurn(state, {
|
|
121
|
+
sessionId: 'sess-ralplan',
|
|
122
|
+
threadId: 'thread-researcher',
|
|
123
|
+
timestamp: '2026-05-28T18:00:10.000Z',
|
|
124
|
+
mode: 'researcher',
|
|
125
|
+
kind: 'subagent',
|
|
126
|
+
leaderThreadId: 'thread-architect',
|
|
127
|
+
});
|
|
128
|
+
const summary = summarizeSubagentSession(state, 'sess-ralplan', {
|
|
129
|
+
now: '2026-05-28T18:00:11.000Z',
|
|
130
|
+
activeWindowMs: 120_000,
|
|
131
|
+
});
|
|
132
|
+
assert.equal(state.sessions['sess-ralplan']?.leader_thread_id, undefined);
|
|
133
|
+
assert.equal(state.sessions['sess-ralplan']?.threads['thread-architect']?.kind, 'subagent');
|
|
134
|
+
assert.equal(state.sessions['sess-ralplan']?.threads['thread-researcher']?.kind, 'subagent');
|
|
135
|
+
assert.deepEqual(summary?.allSubagentThreadIds, ['thread-architect', 'thread-researcher']);
|
|
136
|
+
});
|
|
137
|
+
it('does not downgrade a known leader when later native metadata claims the same thread as subagent', () => {
|
|
138
|
+
let state = createSubagentTrackingState();
|
|
139
|
+
state = recordSubagentTurn(state, {
|
|
140
|
+
sessionId: 'sess-ralplan',
|
|
141
|
+
threadId: 'thread-leader',
|
|
142
|
+
timestamp: '2026-05-28T17:59:40.000Z',
|
|
143
|
+
mode: 'ralplan',
|
|
144
|
+
});
|
|
145
|
+
state = recordSubagentTurn(state, {
|
|
146
|
+
sessionId: 'sess-ralplan',
|
|
147
|
+
threadId: 'thread-leader',
|
|
148
|
+
timestamp: '2026-05-28T17:59:43.270Z',
|
|
149
|
+
mode: 'architect',
|
|
150
|
+
kind: 'subagent',
|
|
151
|
+
});
|
|
152
|
+
assert.equal(state.sessions['sess-ralplan']?.leader_thread_id, 'thread-leader');
|
|
153
|
+
assert.equal(state.sessions['sess-ralplan']?.threads['thread-leader']?.kind, 'leader');
|
|
154
|
+
});
|
|
155
|
+
it('excludes a corrupt leader thread from trusted subagent summaries even when kind is subagent', () => {
|
|
156
|
+
const state = createSubagentTrackingState();
|
|
157
|
+
state.sessions['sess-corrupt'] = {
|
|
158
|
+
session_id: 'sess-corrupt',
|
|
159
|
+
leader_thread_id: 'thread-leader',
|
|
160
|
+
updated_at: '2026-05-28T19:04:17.000Z',
|
|
161
|
+
threads: {
|
|
162
|
+
'thread-leader': {
|
|
163
|
+
thread_id: 'thread-leader',
|
|
164
|
+
kind: 'subagent',
|
|
165
|
+
first_seen_at: '2026-05-28T19:04:17.000Z',
|
|
166
|
+
last_seen_at: '2026-05-28T19:04:17.000Z',
|
|
167
|
+
turn_count: 2,
|
|
168
|
+
},
|
|
169
|
+
'thread-child': {
|
|
170
|
+
thread_id: 'thread-child',
|
|
171
|
+
kind: 'subagent',
|
|
172
|
+
first_seen_at: '2026-05-28T19:04:18.000Z',
|
|
173
|
+
last_seen_at: '2026-05-28T19:04:18.000Z',
|
|
174
|
+
turn_count: 1,
|
|
175
|
+
},
|
|
176
|
+
},
|
|
177
|
+
};
|
|
178
|
+
const summary = summarizeSubagentSession(state, 'sess-corrupt', {
|
|
179
|
+
now: '2026-05-28T19:04:19.000Z',
|
|
180
|
+
activeWindowMs: 120_000,
|
|
181
|
+
});
|
|
182
|
+
assert.deepEqual(summary?.allSubagentThreadIds, ['thread-child']);
|
|
183
|
+
assert.deepEqual(summary?.activeSubagentThreadIds, ['thread-child']);
|
|
184
|
+
});
|
|
46
185
|
it('reconciles completed subagent threads before reporting active wait state', () => {
|
|
47
186
|
let state = createSubagentTrackingState();
|
|
48
187
|
state = recordSubagentTurn(state, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracker.test.js","sourceRoot":"","sources":["../../../src/subagents/__tests__/tracker.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tracker.test.js","sourceRoot":"","sources":["../../../src/subagents/__tests__/tracker.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,6 +28,8 @@ export interface RecordSubagentTurnInput {
|
|
|
28
28
|
turnId?: string;
|
|
29
29
|
timestamp?: string;
|
|
30
30
|
mode?: string;
|
|
31
|
+
kind?: 'leader' | 'subagent';
|
|
32
|
+
leaderThreadId?: string;
|
|
31
33
|
completed?: boolean;
|
|
32
34
|
completionSource?: string;
|
|
33
35
|
}
|
|
@@ -41,6 +43,7 @@ export interface SubagentSessionSummary {
|
|
|
41
43
|
}
|
|
42
44
|
export declare function subagentTrackingPath(cwd: string): string;
|
|
43
45
|
export declare function createSubagentTrackingState(): SubagentTrackingState;
|
|
46
|
+
export declare function isTrustedSubagentThread(session: TrackedSubagentSession | null | undefined, threadId: string): boolean;
|
|
44
47
|
export declare function normalizeSubagentTrackingState(input: unknown): SubagentTrackingState;
|
|
45
48
|
export declare function readSubagentTrackingState(cwd: string): Promise<SubagentTrackingState>;
|
|
46
49
|
export declare function writeSubagentTrackingState(cwd: string, state: SubagentTrackingState): Promise<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../../src/subagents/tracker.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAClD,eAAO,MAAM,iCAAiC,SAAU,CAAC;AAEzD,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,CAAC,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,uBAAuB,EAAE,MAAM,EAAE,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,wBAAgB,2BAA2B,IAAI,qBAAqB,CAKnE;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,GAAG,qBAAqB,CAmEpF;AAED,wBAAsB,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAQ3F;AAED,wBAAsB,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAM3G;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,qBAAqB,EAC5B,KAAK,EAAE,uBAAuB,GAC7B,qBAAqB,
|
|
1
|
+
{"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../../src/subagents/tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,15 @@ export function createSubagentTrackingState() {
|
|
|
13
13
|
sessions: {},
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
|
+
export function isTrustedSubagentThread(session, threadId) {
|
|
17
|
+
const normalizedThreadId = threadId.trim();
|
|
18
|
+
if (!session || !normalizedThreadId)
|
|
19
|
+
return false;
|
|
20
|
+
const leaderThreadId = session.leader_thread_id?.trim();
|
|
21
|
+
if (leaderThreadId && leaderThreadId === normalizedThreadId)
|
|
22
|
+
return false;
|
|
23
|
+
return session.threads[normalizedThreadId]?.kind === 'subagent';
|
|
24
|
+
}
|
|
16
25
|
export function normalizeSubagentTrackingState(input) {
|
|
17
26
|
const base = createSubagentTrackingState();
|
|
18
27
|
if (!input || typeof input !== 'object')
|
|
@@ -111,11 +120,39 @@ export function recordSubagentTurn(state, input) {
|
|
|
111
120
|
updated_at: timestamp,
|
|
112
121
|
threads: {},
|
|
113
122
|
};
|
|
114
|
-
const
|
|
123
|
+
const requestedKind = input.kind === 'leader' || input.kind === 'subagent' ? input.kind : undefined;
|
|
124
|
+
const requestedLeaderThreadId = input.leaderThreadId?.trim();
|
|
115
125
|
const existingThread = existingSession.threads[threadId];
|
|
126
|
+
const existingKind = existingThread?.kind === 'leader' || existingThread?.kind === 'subagent'
|
|
127
|
+
? existingThread.kind
|
|
128
|
+
: undefined;
|
|
129
|
+
const existingLeaderThreadId = existingSession.leader_thread_id?.trim();
|
|
130
|
+
// `leader_thread_id` is the session's top-level leader boundary. A native
|
|
131
|
+
// subagent can itself be the immediate parent of a nested native role, but
|
|
132
|
+
// that must not reclassify known subagent evidence as the session leader.
|
|
133
|
+
const requestedLeaderThread = requestedLeaderThreadId
|
|
134
|
+
? existingSession.threads[requestedLeaderThreadId]
|
|
135
|
+
: undefined;
|
|
136
|
+
const requestedLeaderWouldReclassifySubagent = requestedLeaderThread?.kind === 'subagent';
|
|
137
|
+
const requestedSessionLeaderThreadId = requestedLeaderWouldReclassifySubagent
|
|
138
|
+
? undefined
|
|
139
|
+
: requestedLeaderThreadId;
|
|
140
|
+
const preserveExistingSubagent = existingKind === 'subagent' && requestedKind !== 'subagent';
|
|
141
|
+
const preserveKnownLeader = requestedKind === 'subagent'
|
|
142
|
+
&& (existingKind === 'leader' || existingLeaderThreadId === threadId);
|
|
143
|
+
const leaderThreadId = preserveKnownLeader
|
|
144
|
+
? existingLeaderThreadId || threadId
|
|
145
|
+
: existingLeaderThreadId
|
|
146
|
+
|| requestedSessionLeaderThreadId
|
|
147
|
+
|| (requestedKind === 'subagent' || preserveExistingSubagent ? undefined : threadId);
|
|
148
|
+
const kind = preserveKnownLeader
|
|
149
|
+
? 'leader'
|
|
150
|
+
: requestedKind === 'leader' && existingKind === 'subagent'
|
|
151
|
+
? 'subagent'
|
|
152
|
+
: requestedKind ?? (threadId === leaderThreadId ? 'leader' : existingKind ?? 'subagent');
|
|
116
153
|
const nextThread = {
|
|
117
154
|
thread_id: threadId,
|
|
118
|
-
kind
|
|
155
|
+
kind,
|
|
119
156
|
first_seen_at: existingThread?.first_seen_at ?? timestamp,
|
|
120
157
|
last_seen_at: timestamp,
|
|
121
158
|
turn_count: (existingThread?.turn_count ?? 0) + 1,
|
|
@@ -141,7 +178,7 @@ export function recordSubagentTurn(state, input) {
|
|
|
141
178
|
}
|
|
142
179
|
normalized.sessions[sessionId] = {
|
|
143
180
|
session_id: sessionId,
|
|
144
|
-
leader_thread_id: leaderThreadId,
|
|
181
|
+
...(leaderThreadId ? { leader_thread_id: leaderThreadId } : {}),
|
|
145
182
|
updated_at: timestamp,
|
|
146
183
|
threads,
|
|
147
184
|
};
|
|
@@ -165,7 +202,7 @@ export function summarizeSubagentSession(state, sessionId, options = {}) {
|
|
|
165
202
|
? options.now.getTime()
|
|
166
203
|
: Date.now();
|
|
167
204
|
const allThreadIds = Object.keys(session.threads).sort();
|
|
168
|
-
const allSubagentThreadIds = allThreadIds.filter((threadId) => session
|
|
205
|
+
const allSubagentThreadIds = allThreadIds.filter((threadId) => isTrustedSubagentThread(session, threadId));
|
|
169
206
|
const activeSubagentThreadIds = allSubagentThreadIds.filter((threadId) => {
|
|
170
207
|
const thread = session.threads[threadId];
|
|
171
208
|
if (!thread)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracker.js","sourceRoot":"","sources":["../../src/subagents/tracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAClD,MAAM,CAAC,MAAM,iCAAiC,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"tracker.js","sourceRoot":"","sources":["../../src/subagents/tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coordination-protocol.test.d.ts","sourceRoot":"","sources":["../../../src/team/__tests__/coordination-protocol.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import assert from "node:assert/strict";
|
|
2
|
+
import { describe, it } from "node:test";
|
|
3
|
+
import { normalizeTeamTaskCoordinationPlanForStorage, synthesizeCoordinationPlan, synthesizeCoordinationPlans, } from "../coordination-protocol.js";
|
|
4
|
+
function task(overrides) {
|
|
5
|
+
return {
|
|
6
|
+
id: "1",
|
|
7
|
+
subject: "subject",
|
|
8
|
+
description: "description",
|
|
9
|
+
status: "pending",
|
|
10
|
+
created_at: new Date(0).toISOString(),
|
|
11
|
+
...overrides,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
describe("team coordination protocol gating", () => {
|
|
15
|
+
it("keeps explicit independent fan-out lightweight", () => {
|
|
16
|
+
const plan = synthesizeCoordinationPlan(task({
|
|
17
|
+
subject: "Independent docs sweep",
|
|
18
|
+
description: "Fan-out read-only sweep: each worker checks one separate doc, no shared files and no dependencies.",
|
|
19
|
+
}));
|
|
20
|
+
assert.equal(plan.mode, "lightweight");
|
|
21
|
+
assert.ok(plan.activation_reasons.includes("explicit_independent_fanout"));
|
|
22
|
+
assert.equal(plan.required_mechanisms, undefined);
|
|
23
|
+
});
|
|
24
|
+
it("lets singular no-shared-file/no-dependency wording stay lightweight", () => {
|
|
25
|
+
const plan = synthesizeCoordinationPlan(task({
|
|
26
|
+
subject: "Fixture lane",
|
|
27
|
+
description: "No shared file/no dependency lane.",
|
|
28
|
+
}));
|
|
29
|
+
assert.equal(plan.mode, "lightweight");
|
|
30
|
+
assert.ok(plan.activation_reasons.includes("explicit_independent_fanout"));
|
|
31
|
+
});
|
|
32
|
+
it("lets hyphenated no-shared-file/no-dependency wording stay lightweight", () => {
|
|
33
|
+
const plan = synthesizeCoordinationPlan(task({
|
|
34
|
+
subject: "Fixture lane",
|
|
35
|
+
description: "No-shared-file/no-dependency lane.",
|
|
36
|
+
}));
|
|
37
|
+
assert.equal(plan.mode, "lightweight");
|
|
38
|
+
assert.ok(plan.activation_reasons.includes("explicit_independent_fanout"));
|
|
39
|
+
});
|
|
40
|
+
it("keeps simple narrow tasks lightweight", () => {
|
|
41
|
+
const plan = synthesizeCoordinationPlan(task({
|
|
42
|
+
subject: "Fix typo",
|
|
43
|
+
description: "Fix one typo in README.md",
|
|
44
|
+
}));
|
|
45
|
+
assert.equal(plan.mode, "lightweight");
|
|
46
|
+
assert.ok(plan.activation_reasons.includes("simple_narrow_scope"));
|
|
47
|
+
});
|
|
48
|
+
it("activates coordinated protocol for dependency and handoff work", () => {
|
|
49
|
+
const plan = synthesizeCoordinationPlan(task({
|
|
50
|
+
subject: "Integrate parser and verification lanes",
|
|
51
|
+
description: "Coordinate handoff across shared parser contract and e2e verification.",
|
|
52
|
+
depends_on: ["1"],
|
|
53
|
+
}));
|
|
54
|
+
assert.equal(plan.mode, "coordinated");
|
|
55
|
+
assert.ok(plan.activation_reasons.includes("task_dependencies"));
|
|
56
|
+
assert.ok(plan.activation_reasons.includes("cross_boundary_or_handoff_language"));
|
|
57
|
+
assert.deepEqual(plan.required_mechanisms, [
|
|
58
|
+
"shared_mental_model",
|
|
59
|
+
"closed_loop_communication",
|
|
60
|
+
"mutual_performance_monitoring",
|
|
61
|
+
"backup_behavior",
|
|
62
|
+
"adaptability_checkpoint",
|
|
63
|
+
"team_orientation",
|
|
64
|
+
]);
|
|
65
|
+
});
|
|
66
|
+
it("activates coordinated protocol for overlapping file paths across sibling tasks", () => {
|
|
67
|
+
const plans = synthesizeCoordinationPlans([
|
|
68
|
+
task({
|
|
69
|
+
subject: "Update parser",
|
|
70
|
+
description: "Implement parser change",
|
|
71
|
+
filePaths: ["src/parser.ts"],
|
|
72
|
+
}),
|
|
73
|
+
task({
|
|
74
|
+
subject: "Update parser tests",
|
|
75
|
+
description: "Add tests",
|
|
76
|
+
filePaths: ["src/parser.ts"],
|
|
77
|
+
}),
|
|
78
|
+
task({
|
|
79
|
+
subject: "Independent docs",
|
|
80
|
+
description: "Fan-out read-only doc check",
|
|
81
|
+
filePaths: ["docs/usage.md"],
|
|
82
|
+
}),
|
|
83
|
+
]);
|
|
84
|
+
assert.equal(plans[0]?.mode, "coordinated");
|
|
85
|
+
assert.equal(plans[1]?.mode, "coordinated");
|
|
86
|
+
assert.ok(plans[0]?.activation_reasons.includes("shared_file_scope"));
|
|
87
|
+
assert.ok(plans[1]?.activation_reasons.includes("shared_file_scope"));
|
|
88
|
+
assert.equal(plans[2]?.mode, "lightweight");
|
|
89
|
+
});
|
|
90
|
+
it("canonicalizes equivalent file paths before detecting sibling overlap", () => {
|
|
91
|
+
const plans = synthesizeCoordinationPlans([
|
|
92
|
+
task({
|
|
93
|
+
subject: "Update parser",
|
|
94
|
+
description: "Implement parser change",
|
|
95
|
+
filePaths: ["./src/parser.ts"],
|
|
96
|
+
}),
|
|
97
|
+
task({
|
|
98
|
+
subject: "Update parser tests",
|
|
99
|
+
description: "Add tests",
|
|
100
|
+
filePaths: ["src/./parser.ts"],
|
|
101
|
+
}),
|
|
102
|
+
]);
|
|
103
|
+
assert.equal(plans[0]?.mode, "coordinated");
|
|
104
|
+
assert.equal(plans[1]?.mode, "coordinated");
|
|
105
|
+
assert.ok(plans[0]?.activation_reasons.includes("shared_file_scope"));
|
|
106
|
+
assert.ok(plans[1]?.activation_reasons.includes("shared_file_scope"));
|
|
107
|
+
});
|
|
108
|
+
it("activates coordinated protocol for overlapping domains across sibling tasks", () => {
|
|
109
|
+
const plans = synthesizeCoordinationPlans([
|
|
110
|
+
task({
|
|
111
|
+
subject: "Runtime lane A",
|
|
112
|
+
description: "Implement update",
|
|
113
|
+
domains: ["team-runtime"],
|
|
114
|
+
}),
|
|
115
|
+
task({
|
|
116
|
+
subject: "Runtime lane B",
|
|
117
|
+
description: "Verify update",
|
|
118
|
+
domains: ["team-runtime"],
|
|
119
|
+
}),
|
|
120
|
+
]);
|
|
121
|
+
assert.equal(plans[0]?.mode, "coordinated");
|
|
122
|
+
assert.equal(plans[1]?.mode, "coordinated");
|
|
123
|
+
assert.ok(plans[0]?.activation_reasons.includes("shared_domain_scope"));
|
|
124
|
+
assert.ok(plans[1]?.activation_reasons.includes("shared_domain_scope"));
|
|
125
|
+
});
|
|
126
|
+
it("activates coordinated protocol for symbolic dependencies before DAG remapping", () => {
|
|
127
|
+
const plan = synthesizeCoordinationPlan(task({
|
|
128
|
+
subject: "Dependent verification",
|
|
129
|
+
description: "Run verification after implementation",
|
|
130
|
+
symbolic_depends_on: ["impl"],
|
|
131
|
+
}));
|
|
132
|
+
assert.equal(plan.mode, "coordinated");
|
|
133
|
+
assert.ok(plan.activation_reasons.includes("task_dependencies"));
|
|
134
|
+
});
|
|
135
|
+
it("treats mixed invalid coordination mechanisms as an untrusted override", () => {
|
|
136
|
+
const plan = normalizeTeamTaskCoordinationPlanForStorage({
|
|
137
|
+
mode: "coordinated",
|
|
138
|
+
activation_reasons: [
|
|
139
|
+
" cross_boundary_or_handoff_language ",
|
|
140
|
+
"cross_boundary_or_handoff_language",
|
|
141
|
+
],
|
|
142
|
+
required_mechanisms: ["closed_loop_communication", "bogus-mechanism"],
|
|
143
|
+
});
|
|
144
|
+
assert.deepEqual(plan, {
|
|
145
|
+
mode: "coordinated",
|
|
146
|
+
activation_reasons: ["cross_boundary_or_handoff_language"],
|
|
147
|
+
required_mechanisms: [
|
|
148
|
+
"shared_mental_model",
|
|
149
|
+
"closed_loop_communication",
|
|
150
|
+
"mutual_performance_monitoring",
|
|
151
|
+
"backup_behavior",
|
|
152
|
+
"adaptability_checkpoint",
|
|
153
|
+
"team_orientation",
|
|
154
|
+
],
|
|
155
|
+
});
|
|
156
|
+
});
|
|
157
|
+
it("falls back to the full mechanism checklist when metadata has no valid mechanisms", () => {
|
|
158
|
+
const plan = normalizeTeamTaskCoordinationPlanForStorage({
|
|
159
|
+
mode: "coordinated",
|
|
160
|
+
activation_reasons: ["cross_boundary_or_handoff_language"],
|
|
161
|
+
required_mechanisms: ["bogus-mechanism"],
|
|
162
|
+
});
|
|
163
|
+
assert.deepEqual(plan?.required_mechanisms, [
|
|
164
|
+
"shared_mental_model",
|
|
165
|
+
"closed_loop_communication",
|
|
166
|
+
"mutual_performance_monitoring",
|
|
167
|
+
"backup_behavior",
|
|
168
|
+
"adaptability_checkpoint",
|
|
169
|
+
"team_orientation",
|
|
170
|
+
]);
|
|
171
|
+
});
|
|
172
|
+
});
|
|
173
|
+
//# sourceMappingURL=coordination-protocol.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coordination-protocol.test.js","sourceRoot":"","sources":["../../../src/team/__tests__/coordination-protocol.test.ts"],"names":[],"mappings":"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"}
|