oh-my-codex 0.19.0 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Cargo.lock +6 -6
- package/Cargo.toml +1 -1
- package/README.md +8 -1
- package/crates/omx-api/src/lib.rs +3 -3
- package/crates/omx-api/tests/cli.rs +4 -4
- package/crates/omx-explore/src/main.rs +4 -4
- package/crates/omx-sparkshell/src/codex_bridge.rs +2 -2
- package/dist/agents/__tests__/definitions.test.js +3 -3
- package/dist/agents/__tests__/definitions.test.js.map +1 -1
- package/dist/agents/__tests__/native-config.test.js +71 -42
- package/dist/agents/__tests__/native-config.test.js.map +1 -1
- package/dist/agents/definitions.d.ts +1 -1
- package/dist/agents/definitions.d.ts.map +1 -1
- package/dist/agents/definitions.js +3 -3
- package/dist/agents/definitions.js.map +1 -1
- package/dist/agents/native-config.d.ts +2 -2
- package/dist/agents/native-config.d.ts.map +1 -1
- package/dist/agents/native-config.js +7 -5
- package/dist/agents/native-config.js.map +1 -1
- package/dist/autopilot/__tests__/planner-routing.test.js +19 -12
- package/dist/autopilot/__tests__/planner-routing.test.js.map +1 -1
- package/dist/autopilot/__tests__/ralplan-gate.test.js +151 -0
- package/dist/autopilot/__tests__/ralplan-gate.test.js.map +1 -1
- package/dist/autopilot/planner-routing.d.ts.map +1 -1
- package/dist/autopilot/planner-routing.js +4 -2
- package/dist/autopilot/planner-routing.js.map +1 -1
- package/dist/autopilot/ralplan-gate.d.ts +1 -0
- package/dist/autopilot/ralplan-gate.d.ts.map +1 -1
- package/dist/autopilot/ralplan-gate.js +38 -2
- package/dist/autopilot/ralplan-gate.js.map +1 -1
- package/dist/autoresearch/runtime.d.ts +2 -0
- package/dist/autoresearch/runtime.d.ts.map +1 -1
- package/dist/autoresearch/runtime.js +8 -0
- package/dist/autoresearch/runtime.js.map +1 -1
- package/dist/capabilities/__tests__/lockfile.test.d.ts +2 -0
- package/dist/capabilities/__tests__/lockfile.test.d.ts.map +1 -0
- package/dist/capabilities/__tests__/lockfile.test.js +115 -0
- package/dist/capabilities/__tests__/lockfile.test.js.map +1 -0
- package/dist/capabilities/lockfile.d.ts +102 -0
- package/dist/capabilities/lockfile.d.ts.map +1 -0
- package/dist/capabilities/lockfile.js +334 -0
- package/dist/capabilities/lockfile.js.map +1 -0
- package/dist/cli/__tests__/agents.test.js +5 -5
- package/dist/cli/__tests__/agents.test.js.map +1 -1
- package/dist/cli/__tests__/capabilities.test.d.ts +2 -0
- package/dist/cli/__tests__/capabilities.test.d.ts.map +1 -0
- package/dist/cli/__tests__/capabilities.test.js +135 -0
- package/dist/cli/__tests__/capabilities.test.js.map +1 -0
- package/dist/cli/__tests__/codex-plugin-layout.test.js +237 -6
- package/dist/cli/__tests__/codex-plugin-layout.test.js.map +1 -1
- package/dist/cli/__tests__/doctor-context-window-warning.test.js +9 -9
- package/dist/cli/__tests__/doctor-context-window-warning.test.js.map +1 -1
- package/dist/cli/__tests__/doctor-invalid-config.test.js +1 -1
- package/dist/cli/__tests__/doctor-spark-routing.test.js +22 -6
- package/dist/cli/__tests__/doctor-spark-routing.test.js.map +1 -1
- package/dist/cli/__tests__/index.test.js +53 -18
- package/dist/cli/__tests__/index.test.js.map +1 -1
- package/dist/cli/__tests__/mission.test.d.ts +2 -0
- package/dist/cli/__tests__/mission.test.d.ts.map +1 -0
- package/dist/cli/__tests__/mission.test.js +239 -0
- package/dist/cli/__tests__/mission.test.js.map +1 -0
- package/dist/cli/__tests__/plugin-marketplace-idempotent.test.js +3 -3
- package/dist/cli/__tests__/plugin-marketplace-idempotent.test.js.map +1 -1
- package/dist/cli/__tests__/resume.test.js +95 -6
- package/dist/cli/__tests__/resume.test.js.map +1 -1
- package/dist/cli/__tests__/session-scoped-runtime.test.js +67 -0
- package/dist/cli/__tests__/session-scoped-runtime.test.js.map +1 -1
- package/dist/cli/__tests__/setup-install-mode.test.js +46 -18
- package/dist/cli/__tests__/setup-install-mode.test.js.map +1 -1
- package/dist/cli/__tests__/setup-prompts-overwrite.test.js +3 -3
- package/dist/cli/__tests__/setup-refresh.test.js +29 -7
- package/dist/cli/__tests__/setup-refresh.test.js.map +1 -1
- package/dist/cli/__tests__/ultragoal.test.js +1 -1
- package/dist/cli/__tests__/uninstall.test.js +4 -4
- package/dist/cli/__tests__/uninstall.test.js.map +1 -1
- package/dist/cli/agents.js +1 -1
- package/dist/cli/agents.js.map +1 -1
- package/dist/cli/capabilities.d.ts +3 -0
- package/dist/cli/capabilities.d.ts.map +1 -0
- package/dist/cli/capabilities.js +118 -0
- package/dist/cli/capabilities.js.map +1 -0
- package/dist/cli/doctor.d.ts +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +9 -4
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/index.d.ts +7 -4
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +107 -23
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/mission.d.ts +36 -0
- package/dist/cli/mission.d.ts.map +1 -0
- package/dist/cli/mission.js +443 -0
- package/dist/cli/mission.js.map +1 -0
- package/dist/cli/plugin-marketplace.d.ts +1 -0
- package/dist/cli/plugin-marketplace.d.ts.map +1 -1
- package/dist/cli/plugin-marketplace.js +31 -0
- package/dist/cli/plugin-marketplace.js.map +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +7 -4
- package/dist/cli/setup.js.map +1 -1
- package/dist/config/__tests__/generator-idempotent.test.js +23 -23
- package/dist/config/__tests__/generator-idempotent.test.js.map +1 -1
- package/dist/config/__tests__/generator-notify.test.js +9 -9
- package/dist/config/__tests__/generator-notify.test.js.map +1 -1
- package/dist/config/__tests__/models.test.js +51 -26
- package/dist/config/__tests__/models.test.js.map +1 -1
- package/dist/config/generator.d.ts +1 -1
- package/dist/config/generator.d.ts.map +1 -1
- package/dist/config/models.d.ts +16 -6
- package/dist/config/models.d.ts.map +1 -1
- package/dist/config/models.js +19 -8
- package/dist/config/models.js.map +1 -1
- package/dist/hooks/__tests__/keyword-detector.test.js +12 -4
- package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js +1 -1
- package/dist/hooks/__tests__/prometheus-strict-contract.test.js +2 -2
- package/dist/hooks/__tests__/prometheus-strict-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/tmux-hook-engine.test.js +2 -2
- package/dist/hud/__tests__/state.test.js +31 -6
- package/dist/hud/__tests__/state.test.js.map +1 -1
- package/dist/hud/state.d.ts.map +1 -1
- package/dist/hud/state.js +7 -3
- package/dist/hud/state.js.map +1 -1
- package/dist/leader/__tests__/contract.test.js +108 -1
- package/dist/leader/__tests__/contract.test.js.map +1 -1
- package/dist/leader/contract.d.ts +26 -0
- package/dist/leader/contract.d.ts.map +1 -1
- package/dist/leader/contract.js +170 -0
- package/dist/leader/contract.js.map +1 -1
- package/dist/mcp/__tests__/state-paths.test.js +32 -1
- package/dist/mcp/__tests__/state-paths.test.js.map +1 -1
- package/dist/mcp/state-paths.d.ts +4 -0
- package/dist/mcp/state-paths.d.ts.map +1 -1
- package/dist/mcp/state-paths.js +6 -15
- package/dist/mcp/state-paths.js.map +1 -1
- package/dist/modes/base.d.ts +1 -1
- package/dist/modes/base.d.ts.map +1 -1
- package/dist/pipeline/__tests__/stages.test.js +27 -1
- package/dist/pipeline/__tests__/stages.test.js.map +1 -1
- package/dist/pipeline/stages/ralplan.d.ts +2 -1
- package/dist/pipeline/stages/ralplan.d.ts.map +1 -1
- package/dist/pipeline/stages/ralplan.js +1 -0
- package/dist/pipeline/stages/ralplan.js.map +1 -1
- package/dist/pipeline/stages/ultragoal.d.ts +5 -1
- package/dist/pipeline/stages/ultragoal.d.ts.map +1 -1
- package/dist/pipeline/stages/ultragoal.js +14 -4
- package/dist/pipeline/stages/ultragoal.js.map +1 -1
- package/dist/ralplan/__tests__/consensus-gate.test.js +193 -0
- package/dist/ralplan/__tests__/consensus-gate.test.js.map +1 -1
- package/dist/ralplan/__tests__/runtime.test.js +132 -0
- package/dist/ralplan/__tests__/runtime.test.js.map +1 -1
- package/dist/ralplan/consensus-gate.js +24 -3
- package/dist/ralplan/consensus-gate.js.map +1 -1
- package/dist/ralplan/runtime.d.ts +17 -0
- package/dist/ralplan/runtime.d.ts.map +1 -1
- package/dist/ralplan/runtime.js +97 -1
- package/dist/ralplan/runtime.js.map +1 -1
- package/dist/scripts/__tests__/codex-native-hook.test.js +762 -20
- package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
- package/dist/scripts/codex-native-hook.d.ts.map +1 -1
- package/dist/scripts/codex-native-hook.js +306 -22
- package/dist/scripts/codex-native-hook.js.map +1 -1
- package/dist/scripts/generate-catalog-docs.js +1 -0
- package/dist/scripts/generate-catalog-docs.js.map +1 -1
- package/dist/state/__tests__/operations.test.js +737 -0
- package/dist/state/__tests__/operations.test.js.map +1 -1
- package/dist/state/__tests__/skill-active.test.js +59 -0
- package/dist/state/__tests__/skill-active.test.js.map +1 -1
- package/dist/state/__tests__/workflow-transition.test.js +14 -0
- 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 +80 -17
- package/dist/state/operations.js.map +1 -1
- package/dist/state/skill-active.js +3 -3
- package/dist/state/skill-active.js.map +1 -1
- package/dist/state/terminal-normalization.d.ts +8 -0
- package/dist/state/terminal-normalization.d.ts.map +1 -0
- package/dist/state/terminal-normalization.js +127 -0
- package/dist/state/terminal-normalization.js.map +1 -0
- package/dist/state/workflow-transition-reconcile.d.ts.map +1 -1
- package/dist/state/workflow-transition-reconcile.js +3 -1
- package/dist/state/workflow-transition-reconcile.js.map +1 -1
- package/dist/team/__tests__/delegation-policy.test.js +2 -2
- package/dist/team/__tests__/delegation-policy.test.js.map +1 -1
- package/dist/team/__tests__/model-contract.test.js +25 -25
- package/dist/team/__tests__/model-contract.test.js.map +1 -1
- package/dist/team/__tests__/runtime.test.js +28 -28
- package/dist/team/__tests__/runtime.test.js.map +1 -1
- package/dist/team/__tests__/scaling.test.js +7 -7
- package/dist/team/__tests__/scaling.test.js.map +1 -1
- package/dist/team/__tests__/tmux-claude-workers-demo.test.js +5 -5
- package/dist/team/__tests__/tmux-claude-workers-demo.test.js.map +1 -1
- package/dist/team/__tests__/tmux-session.test.js +12 -12
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/__tests__/worker-bootstrap.test.js +57 -9
- package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
- package/dist/team/__tests__/worker-runtime-identity.test.js +3 -3
- package/dist/team/__tests__/worker-runtime-identity.test.js.map +1 -1
- package/dist/team/model-contract.d.ts +1 -1
- package/dist/team/model-contract.d.ts.map +1 -1
- package/dist/team/runtime.d.ts.map +1 -1
- package/dist/team/runtime.js +11 -0
- package/dist/team/runtime.js.map +1 -1
- package/dist/team/worker-bootstrap.d.ts +2 -0
- package/dist/team/worker-bootstrap.d.ts.map +1 -1
- package/dist/team/worker-bootstrap.js +6 -1
- package/dist/team/worker-bootstrap.js.map +1 -1
- package/dist/ultragoal/__tests__/artifacts.test.js +82 -5
- package/dist/ultragoal/__tests__/artifacts.test.js.map +1 -1
- package/dist/ultragoal/artifacts.d.ts +5 -1
- package/dist/ultragoal/artifacts.d.ts.map +1 -1
- package/dist/ultragoal/artifacts.js +111 -14
- package/dist/ultragoal/artifacts.js.map +1 -1
- package/dist/utils/__tests__/agents-model-table.test.js +7 -7
- package/dist/utils/__tests__/agents-model-table.test.js.map +1 -1
- package/dist/utils/__tests__/worktree-tool-context.test.d.ts +2 -0
- package/dist/utils/__tests__/worktree-tool-context.test.d.ts.map +1 -0
- package/dist/utils/__tests__/worktree-tool-context.test.js +118 -0
- package/dist/utils/__tests__/worktree-tool-context.test.js.map +1 -0
- package/dist/utils/worktree-tool-context.d.ts +25 -0
- package/dist/utils/worktree-tool-context.d.ts.map +1 -0
- package/dist/utils/worktree-tool-context.js +116 -0
- package/dist/utils/worktree-tool-context.js.map +1 -0
- package/package.json +1 -1
- package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/oh-my-codex/hooks/codex-native-hook.mjs +96 -10
- package/plugins/oh-my-codex/skills/ai-slop-cleaner/SKILL.md +1 -1
- package/plugins/oh-my-codex/skills/code-review/SKILL.md +1 -1
- package/plugins/oh-my-codex/skills/omx-setup/SKILL.md +5 -5
- package/plugins/oh-my-codex/skills/prometheus-strict/SKILL.md +3 -3
- package/plugins/oh-my-codex/skills/ralplan/SKILL.md +1 -1
- package/plugins/oh-my-codex/skills/team/SKILL.md +1 -1
- package/plugins/oh-my-codex/skills/ultrawork/references/agent-tiers.md +2 -2
- package/prompts/prometheus-strict-metis.md +1 -1
- package/skills/ai-slop-cleaner/SKILL.md +1 -1
- package/skills/code-review/SKILL.md +1 -1
- package/skills/ecomode/references/agent-tiers.md +1 -1
- package/skills/omx-setup/SKILL.md +5 -5
- package/skills/prometheus-strict/SKILL.md +3 -3
- package/skills/ralplan/SKILL.md +1 -1
- package/skills/team/SKILL.md +1 -1
- package/skills/ultrawork/references/agent-tiers.md +2 -2
- package/src/scripts/__tests__/codex-native-hook.test.ts +824 -7
- package/src/scripts/codex-native-hook.ts +347 -20
- package/src/scripts/generate-catalog-docs.ts +1 -0
|
@@ -471,27 +471,27 @@ describe('runtime', () => {
|
|
|
471
471
|
it('resolveWorkerLaunchArgsFromEnv injects the frontier default model for executor workers', () => {
|
|
472
472
|
withIsolatedDefaultModelEnv(() => {
|
|
473
473
|
const args = resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--no-alt-screen' }, 'executor');
|
|
474
|
-
assert.deepEqual(args, ['--no-alt-screen', '--model', 'gpt-5.
|
|
474
|
+
assert.deepEqual(args, ['--no-alt-screen', '--model', 'gpt-5.6-sol']);
|
|
475
475
|
});
|
|
476
476
|
});
|
|
477
477
|
it('resolveWorkerLaunchArgsFromEnv uses medium reasoning for executor launch defaults', () => {
|
|
478
478
|
withIsolatedDefaultModelEnv(() => {
|
|
479
479
|
const args = resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--no-alt-screen' }, 'executor', undefined, resolveAgentReasoningEffort('executor'), 'codex');
|
|
480
|
-
assert.deepEqual(args, ['--no-alt-screen', '-c', 'model_reasoning_effort="medium"', '--model', 'gpt-5.
|
|
480
|
+
assert.deepEqual(args, ['--no-alt-screen', '-c', 'model_reasoning_effort="medium"', '--model', 'gpt-5.6-sol']);
|
|
481
481
|
});
|
|
482
482
|
});
|
|
483
|
-
it('resolveWorkerLaunchArgsFromEnv keeps planner on exact gpt-5.
|
|
483
|
+
it('resolveWorkerLaunchArgsFromEnv keeps planner on exact gpt-5.6-sol medium when inherited leader is mini', () => {
|
|
484
484
|
withIsolatedDefaultModelEnv(() => {
|
|
485
485
|
const args = resolveWorkerLaunchArgsFromEnv({
|
|
486
|
-
OMX_TEAM_WORKER_LAUNCH_ARGS: '--dangerously-bypass-approvals-and-sandbox --model gpt-5.
|
|
487
|
-
[TEAM_WORKER_INHERITED_MODEL_ENV]: 'gpt-5.
|
|
486
|
+
OMX_TEAM_WORKER_LAUNCH_ARGS: '--dangerously-bypass-approvals-and-sandbox --model gpt-5.6-terra',
|
|
487
|
+
[TEAM_WORKER_INHERITED_MODEL_ENV]: 'gpt-5.6-terra',
|
|
488
488
|
}, 'planner', undefined, resolveAgentReasoningEffort('planner'), 'codex');
|
|
489
489
|
assert.deepEqual(args, [
|
|
490
490
|
'--dangerously-bypass-approvals-and-sandbox',
|
|
491
491
|
'-c',
|
|
492
492
|
'model_reasoning_effort="medium"',
|
|
493
493
|
'--model',
|
|
494
|
-
'gpt-5.
|
|
494
|
+
'gpt-5.6-sol',
|
|
495
495
|
]);
|
|
496
496
|
});
|
|
497
497
|
});
|
|
@@ -507,15 +507,15 @@ describe('runtime', () => {
|
|
|
507
507
|
it('resolveWorkerLaunchArgsFromEnv honors inherited leader model from the dedicated env path', () => {
|
|
508
508
|
withIsolatedDefaultModelEnv(() => {
|
|
509
509
|
const args = resolveWorkerLaunchArgsFromEnv({
|
|
510
|
-
OMX_TEAM_WORKER_LAUNCH_ARGS: '--dangerously-bypass-approvals-and-sandbox --model gpt-5.
|
|
511
|
-
[TEAM_WORKER_INHERITED_MODEL_ENV]: 'gpt-5.
|
|
510
|
+
OMX_TEAM_WORKER_LAUNCH_ARGS: '--dangerously-bypass-approvals-and-sandbox --model gpt-5.6-terra',
|
|
511
|
+
[TEAM_WORKER_INHERITED_MODEL_ENV]: 'gpt-5.6-terra',
|
|
512
512
|
}, 'planner', undefined, resolveAgentReasoningEffort('planner'), 'codex');
|
|
513
513
|
assert.deepEqual(args, [
|
|
514
514
|
'--dangerously-bypass-approvals-and-sandbox',
|
|
515
515
|
'-c',
|
|
516
516
|
'model_reasoning_effort="medium"',
|
|
517
517
|
'--model',
|
|
518
|
-
'gpt-5.
|
|
518
|
+
'gpt-5.6-sol',
|
|
519
519
|
]);
|
|
520
520
|
});
|
|
521
521
|
});
|
|
@@ -525,10 +525,10 @@ describe('runtime', () => {
|
|
|
525
525
|
});
|
|
526
526
|
it('resolveWorkerLaunchArgsFromEnv preserves explicit model in either syntax', () => {
|
|
527
527
|
assert.deepEqual(resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--model gpt-5' }, 'explore'), ['--model', 'gpt-5']);
|
|
528
|
-
assert.deepEqual(resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--model=gpt-5.
|
|
528
|
+
assert.deepEqual(resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--model=gpt-5.5' }, 'explore'), ['--model', 'gpt-5.5']);
|
|
529
529
|
});
|
|
530
530
|
it('resolveWorkerLaunchArgsFromEnv preserves explicit env model before planner exact model', () => {
|
|
531
|
-
assert.deepEqual(resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--model explicit-worker-model' }, 'planner', 'gpt-5.
|
|
531
|
+
assert.deepEqual(resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--model explicit-worker-model' }, 'planner', 'gpt-5.6-terra', 'high', 'codex'), ['-c', 'model_reasoning_effort="high"', '--model', 'explicit-worker-model']);
|
|
532
532
|
});
|
|
533
533
|
it('resolveWorkerLaunchArgsFromEnv uses inherited leader model for all agent types', () => {
|
|
534
534
|
const args = resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--no-alt-screen' }, 'executor', 'gpt-4.1');
|
|
@@ -549,8 +549,8 @@ describe('runtime', () => {
|
|
|
549
549
|
withIsolatedDefaultModelEnv(() => {
|
|
550
550
|
const lowArgs = resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--no-alt-screen' }, 'executor', undefined, 'low', 'codex');
|
|
551
551
|
const highArgs = resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--no-alt-screen' }, 'executor', undefined, 'high', 'codex');
|
|
552
|
-
assert.deepEqual(lowArgs, ['--no-alt-screen', '-c', 'model_reasoning_effort="low"', '--model', 'gpt-5.
|
|
553
|
-
assert.deepEqual(highArgs, ['--no-alt-screen', '-c', 'model_reasoning_effort="high"', '--model', 'gpt-5.
|
|
552
|
+
assert.deepEqual(lowArgs, ['--no-alt-screen', '-c', 'model_reasoning_effort="low"', '--model', 'gpt-5.6-sol']);
|
|
553
|
+
assert.deepEqual(highArgs, ['--no-alt-screen', '-c', 'model_reasoning_effort="high"', '--model', 'gpt-5.6-sol']);
|
|
554
554
|
});
|
|
555
555
|
}
|
|
556
556
|
finally {
|
|
@@ -639,7 +639,7 @@ describe('runtime', () => {
|
|
|
639
639
|
});
|
|
640
640
|
const claudeArgs = resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--no-alt-screen --model claude-3-7-sonnet' }, 'executor', undefined, 'low', 'claude');
|
|
641
641
|
const geminiArgs = resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--model gemini-2.0-pro' }, 'executor', undefined, 'low', 'gemini');
|
|
642
|
-
assert.deepEqual(codexArgs, ['--no-alt-screen', '-c', 'model_reasoning_effort="high"', '--model', 'gpt-5.
|
|
642
|
+
assert.deepEqual(codexArgs, ['--no-alt-screen', '-c', 'model_reasoning_effort="high"', '--model', 'gpt-5.6-sol']);
|
|
643
643
|
assert.deepEqual(claudeArgs, ['--no-alt-screen', '-c', 'model_reasoning_effort="low"', '--model', 'claude-3-7-sonnet']);
|
|
644
644
|
assert.deepEqual(geminiArgs, ['-c', 'model_reasoning_effort="low"', '--model', 'gemini-2.0-pro']);
|
|
645
645
|
}
|
|
@@ -3235,7 +3235,7 @@ sleep 5
|
|
|
3235
3235
|
delete process.env.TMUX;
|
|
3236
3236
|
process.env.OMX_TEAM_WORKER_LAUNCH_MODE = 'prompt';
|
|
3237
3237
|
process.env.OMX_TEAM_WORKER_CLI = 'gemini';
|
|
3238
|
-
process.env.OMX_TEAM_WORKER_LAUNCH_ARGS = '--model gpt-5.
|
|
3238
|
+
process.env.OMX_TEAM_WORKER_LAUNCH_ARGS = '--model gpt-5.6-luna';
|
|
3239
3239
|
process.env.OMX_GEMINI_ARGV_CAPTURE_PATH = capturePath;
|
|
3240
3240
|
let runtime = null;
|
|
3241
3241
|
try {
|
|
@@ -3314,7 +3314,7 @@ process.exit(0);
|
|
|
3314
3314
|
delete process.env.TMUX;
|
|
3315
3315
|
process.env.OMX_TEAM_WORKER_LAUNCH_MODE = 'prompt';
|
|
3316
3316
|
process.env.OMX_TEAM_WORKER_CLI = 'codex';
|
|
3317
|
-
process.env.OMX_TEAM_WORKER_LAUNCH_ARGS = '--model gpt-5.
|
|
3317
|
+
process.env.OMX_TEAM_WORKER_LAUNCH_ARGS = '--model gpt-5.6-luna -c model_reasoning_effort="low"';
|
|
3318
3318
|
try {
|
|
3319
3319
|
await assert.rejects(() => withoutTeamWorkerEnv(() => startTeam('team-codex-explicit-launch', 'codex prompt-mode team bootstrap', 'explore', 1, [{ subject: 's', description: 'd', owner: 'worker-1' }], cwd)), /prompt_mode_codex_requires_tty/);
|
|
3320
3320
|
assert.equal(existsSync(join(cwd, '.omx', 'state', 'team', 'team-codex-explicit-launch')), false);
|
|
@@ -3409,11 +3409,11 @@ process.on('SIGTERM', () => process.exit(0));
|
|
|
3409
3409
|
const worker2Instructions = await readFile(join(cwd, '.omx', 'state', 'team', runtime.teamName, 'workers', 'worker-2', 'AGENTS.md'), 'utf-8');
|
|
3410
3410
|
assert.match(worker1Instructions, /You are operating as the \*\*test-engineer\*\* role/);
|
|
3411
3411
|
assert.match(worker1Instructions, /Test Engineer/);
|
|
3412
|
-
assert.doesNotMatch(worker1Instructions, /exact gpt-5\.
|
|
3412
|
+
assert.doesNotMatch(worker1Instructions, /exact gpt-5\.6-terra model/);
|
|
3413
3413
|
assert.match(worker2Instructions, /You are operating as the \*\*writer\*\* role/);
|
|
3414
3414
|
assert.match(worker2Instructions, /You are Writer\./);
|
|
3415
|
-
assert.doesNotMatch(worker2Instructions, /exact gpt-5\.
|
|
3416
|
-
assert.match(worker2Instructions, /resolved_model: gpt-5\.
|
|
3415
|
+
assert.doesNotMatch(worker2Instructions, /exact gpt-5\.6-terra model/);
|
|
3416
|
+
assert.match(worker2Instructions, /resolved_model: gpt-5\.6-sol/);
|
|
3417
3417
|
let worker1Args = null;
|
|
3418
3418
|
let worker2Args = null;
|
|
3419
3419
|
for (let attempt = 0; attempt < 50; attempt += 1) {
|
|
@@ -3432,10 +3432,10 @@ process.on('SIGTERM', () => process.exit(0));
|
|
|
3432
3432
|
const worker2Joined = worker2Args.join(' ');
|
|
3433
3433
|
assert.match(worker1Joined, /model_reasoning_effort="medium"/);
|
|
3434
3434
|
assert.match(worker1Joined, /model_instructions_file=.*worker-1\/AGENTS\.md/);
|
|
3435
|
-
assert.match(worker1Joined, /--model gpt-5\.
|
|
3435
|
+
assert.match(worker1Joined, /--model gpt-5\.6-sol/);
|
|
3436
3436
|
assert.match(worker2Joined, /model_reasoning_effort="xhigh"/);
|
|
3437
3437
|
assert.match(worker2Joined, /model_instructions_file=.*worker-2\/AGENTS\.md/);
|
|
3438
|
-
assert.match(worker2Joined, /--model gpt-5\.
|
|
3438
|
+
assert.match(worker2Joined, /--model gpt-5\.6-sol/);
|
|
3439
3439
|
await shutdownTeam(runtime.teamName, cwd, { force: true });
|
|
3440
3440
|
runtime = null;
|
|
3441
3441
|
}
|
|
@@ -3470,7 +3470,7 @@ process.on('SIGTERM', () => process.exit(0));
|
|
|
3470
3470
|
await rm(cwd, { recursive: true, force: true });
|
|
3471
3471
|
}
|
|
3472
3472
|
});
|
|
3473
|
-
it('startTeam does not apply mini guidance for exact-match negatives like gpt-5.
|
|
3473
|
+
it('startTeam does not apply mini guidance for exact-match negatives like gpt-5.6-terra-tuned', async () => {
|
|
3474
3474
|
const cwd = await mkdtemp(join(tmpdir(), 'omx-runtime-mini-tuned-'));
|
|
3475
3475
|
const binDir = join(cwd, 'bin');
|
|
3476
3476
|
const fakeCodexPath = join(binDir, 'codex');
|
|
@@ -3507,7 +3507,7 @@ process.on('SIGTERM', () => process.exit(0));
|
|
|
3507
3507
|
process.env.OMX_TEAM_WORKER_CLI = 'codex';
|
|
3508
3508
|
process.env.OMX_ARGV_CAPTURE_DIR = captureDir;
|
|
3509
3509
|
delete process.env.OMX_DEFAULT_STANDARD_MODEL;
|
|
3510
|
-
process.env.OMX_TEAM_WORKER_LAUNCH_ARGS = '--model gpt-5.
|
|
3510
|
+
process.env.OMX_TEAM_WORKER_LAUNCH_ARGS = '--model gpt-5.6-terra-tuned';
|
|
3511
3511
|
let runtime = null;
|
|
3512
3512
|
try {
|
|
3513
3513
|
runtime = await withMockPromptModeCodexAllowed(() => withoutTeamWorkerEnv(() => startTeam('team-mini-tuned-routing', 'mini tuned routing handoff', 'executor', 1, [
|
|
@@ -3516,9 +3516,9 @@ process.on('SIGTERM', () => process.exit(0));
|
|
|
3516
3516
|
const workerInstructions = await readFile(join(cwd, '.omx', 'state', 'team', runtime.teamName, 'workers', 'worker-1', 'AGENTS.md'), 'utf-8');
|
|
3517
3517
|
assert.match(workerInstructions, /You are operating as the \*\*writer\*\* role/);
|
|
3518
3518
|
assert.match(workerInstructions, /You are Writer\./);
|
|
3519
|
-
assert.doesNotMatch(workerInstructions, /exact gpt-5\.
|
|
3519
|
+
assert.doesNotMatch(workerInstructions, /exact gpt-5\.6-terra model/);
|
|
3520
3520
|
assert.doesNotMatch(workerInstructions, /strict execution order: inspect -> plan -> act -> verify/);
|
|
3521
|
-
assert.match(workerInstructions, /resolved_model: gpt-5\.
|
|
3521
|
+
assert.match(workerInstructions, /resolved_model: gpt-5\.6-terra-tuned/);
|
|
3522
3522
|
let workerArgs = null;
|
|
3523
3523
|
for (let attempt = 0; attempt < 50; attempt += 1) {
|
|
3524
3524
|
const workerPath = join(captureDir, 'team-mini-tuned-routing__worker-1.json');
|
|
@@ -3530,7 +3530,7 @@ process.on('SIGTERM', () => process.exit(0));
|
|
|
3530
3530
|
}
|
|
3531
3531
|
assert.ok(workerArgs, 'worker argv capture file should be written');
|
|
3532
3532
|
const workerJoined = workerArgs.join(' ');
|
|
3533
|
-
assert.match(workerJoined, /--model gpt-5\.
|
|
3533
|
+
assert.match(workerJoined, /--model gpt-5\.6-terra-tuned/);
|
|
3534
3534
|
await shutdownTeam(runtime.teamName, cwd, { force: true });
|
|
3535
3535
|
runtime = null;
|
|
3536
3536
|
}
|
|
@@ -6971,7 +6971,7 @@ esac
|
|
|
6971
6971
|
runtime = await withPromptModeCodexEnv(binDir, {}, () => withoutTeamWorkerEnv(() => startTeam('team-delegation-persist', 'delegation persistence test', 'executor', 1, [{ subject: 'Investigate runtime assignment', description: 'Search runtime, debug assignTask behavior, and coordinate shared handoff boundaries' }], cwd)));
|
|
6972
6972
|
const task = await readTask(runtime.teamName, '1', cwd);
|
|
6973
6973
|
assert.equal(task?.delegation?.mode, 'auto');
|
|
6974
|
-
assert.equal(task?.delegation?.child_model, 'gpt-5.
|
|
6974
|
+
assert.equal(task?.delegation?.child_model, 'gpt-5.6-terra');
|
|
6975
6975
|
assert.equal(task?.delegation?.required_parallel_probe, true);
|
|
6976
6976
|
assert.equal(task?.coordination?.mode, 'coordinated');
|
|
6977
6977
|
assert.ok(task?.coordination?.activation_reasons.includes('cross_boundary_or_handoff_language'));
|
|
@@ -7372,7 +7372,7 @@ esac
|
|
|
7372
7372
|
await assert.rejects(() => assignTask('team-assign-delegation', 'worker-1', task.id, cwd), /worker_notify_failed/);
|
|
7373
7373
|
const reread = await readTask('team-assign-delegation', task.id, cwd);
|
|
7374
7374
|
assert.equal(reread?.delegation?.mode, 'auto');
|
|
7375
|
-
assert.equal(reread?.delegation?.child_model, 'gpt-5.
|
|
7375
|
+
assert.equal(reread?.delegation?.child_model, 'gpt-5.6-terra');
|
|
7376
7376
|
assert.equal(reread?.coordination?.mode, 'coordinated');
|
|
7377
7377
|
assert.ok(reread?.coordination?.activation_reasons.includes('shared_file_scope'));
|
|
7378
7378
|
assert.equal(reread?.coordination?.activation_reasons.includes('stale_snapshot_before_assignment'), false);
|