oh-my-codex 0.19.1 → 0.20.1
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 +3 -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 +264 -6
- package/dist/cli/__tests__/codex-plugin-layout.test.js.map +1 -1
- package/dist/cli/__tests__/doctor-context-window-warning.test.js +83 -78
- package/dist/cli/__tests__/doctor-context-window-warning.test.js.map +1 -1
- package/dist/cli/__tests__/doctor-invalid-config.test.js +10 -1
- package/dist/cli/__tests__/doctor-invalid-config.test.js.map +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__/doctor-warning-copy.test.js +87 -1
- package/dist/cli/__tests__/doctor-warning-copy.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__/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__/setup-hooks-shared-ownership.test.js +54 -2
- package/dist/cli/__tests__/setup-hooks-shared-ownership.test.js.map +1 -1
- package/dist/cli/__tests__/setup-install-mode.test.js +49 -21
- 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 +166 -12
- package/dist/cli/__tests__/setup-refresh.test.js.map +1 -1
- package/dist/cli/__tests__/setup-scope.test.js +27 -3
- package/dist/cli/__tests__/setup-scope.test.js.map +1 -1
- package/dist/cli/__tests__/uninstall.test.js +301 -7
- 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 +3 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +50 -34
- 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 +77 -19
- package/dist/cli/index.js.map +1 -1
- 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 +9 -6
- package/dist/cli/setup.js.map +1 -1
- package/dist/cli/uninstall.d.ts.map +1 -1
- package/dist/cli/uninstall.js +3 -4
- package/dist/cli/uninstall.js.map +1 -1
- package/dist/config/__tests__/generator-idempotent.test.js +210 -114
- package/dist/config/__tests__/generator-idempotent.test.js.map +1 -1
- package/dist/config/__tests__/generator-notify.test.js +26 -52
- 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 +20 -11
- package/dist/config/generator.d.ts.map +1 -1
- package/dist/config/generator.js +169 -152
- package/dist/config/generator.js.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/leader/__tests__/contract.test.js +150 -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 +188 -0
- package/dist/leader/contract.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__/runtime.test.js +132 -0
- package/dist/ralplan/__tests__/runtime.test.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 +1528 -32
- 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 +377 -31
- package/dist/scripts/codex-native-hook.js.map +1 -1
- package/dist/state/__tests__/operations.test.js +450 -0
- package/dist/state/__tests__/operations.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 +72 -11
- package/dist/state/operations.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 +68 -1
- 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 +41 -9
- package/dist/ultragoal/artifacts.js.map +1 -1
- package/dist/utils/__tests__/agents-md.test.js +16 -0
- package/dist/utils/__tests__/agents-md.test.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/agents-md.d.ts.map +1 -1
- package/dist/utils/agents-md.js +4 -3
- package/dist/utils/agents-md.js.map +1 -1
- 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 +1818 -113
- package/src/scripts/codex-native-hook.ts +414 -27
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../src/cli/uninstall.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../src/cli/uninstall.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ import { mkdtemp, readFile, rm, writeFile } from "node:fs/promises";
|
|
|
8
8
|
import { tmpdir } from "node:os";
|
|
9
9
|
import { isAbsolute, join } from "node:path";
|
|
10
10
|
import TOML from "@iarna/toml";
|
|
11
|
-
import { buildMergedConfig, cleanCodexModelAvailabilityNuxIfNeeded, mergeConfig, repairConfigIfNeeded, stripManagedCodexHookTrustState, upsertManagedCodexHookTrustState, } from "../generator.js";
|
|
11
|
+
import { analyzeLegacyMultiAgentConfig, buildMergedConfig, cleanCodexModelAvailabilityNuxIfNeeded, hasExactOmxSeededBehavioralDefaultsPair, mergeConfig, repairConfigIfNeeded, stripManagedCodexHookTrustState, stripOmxFeatureFlags, upsertManagedCodexHookTrustState, stripOmxSeededBehavioralDefaults, } from "../generator.js";
|
|
12
12
|
import { buildManagedCodexHookTrustState } from "../codex-hooks.js";
|
|
13
13
|
import { OMX_FIRST_PARTY_MCP_SERVER_NAMES } from "../omx-first-party-mcp.js";
|
|
14
14
|
/** Count occurrences of a pattern in text */
|
|
@@ -72,7 +72,7 @@ describe("Codex transient TUI NUX cleanup", () => {
|
|
|
72
72
|
try {
|
|
73
73
|
const configPath = join(wd, "config.toml");
|
|
74
74
|
await writeFile(configPath, [
|
|
75
|
-
'model = "gpt-5.
|
|
75
|
+
'model = "gpt-5.6-sol"',
|
|
76
76
|
'status_line = ["model-with-reasoning", "git-branch"]',
|
|
77
77
|
"",
|
|
78
78
|
"[tui]",
|
|
@@ -80,8 +80,8 @@ describe("Codex transient TUI NUX cleanup", () => {
|
|
|
80
80
|
"notifications = true",
|
|
81
81
|
"",
|
|
82
82
|
"[tui.model_availability_nux]",
|
|
83
|
-
'"gpt-5.
|
|
84
|
-
'"gpt-5.
|
|
83
|
+
'"gpt-5.6-sol" = 4',
|
|
84
|
+
'"gpt-5.5" = 1',
|
|
85
85
|
"",
|
|
86
86
|
"[mcp_servers.user]",
|
|
87
87
|
'command = "node"',
|
|
@@ -92,7 +92,7 @@ describe("Codex transient TUI NUX cleanup", () => {
|
|
|
92
92
|
const toml = await readFile(configPath, "utf-8");
|
|
93
93
|
assert.equal(cleaned, true);
|
|
94
94
|
assert.doesNotMatch(toml, /^\[tui\.model_availability_nux\]$/m);
|
|
95
|
-
assert.doesNotMatch(toml, /gpt-5\.
|
|
95
|
+
assert.doesNotMatch(toml, /gpt-5\.6-sol" = 4/);
|
|
96
96
|
assert.match(toml, /^status_line = \["model-with-reasoning", "git-branch"\]$/m);
|
|
97
97
|
assert.match(toml, /^\[tui\]$/m);
|
|
98
98
|
assert.match(toml, /^theme = "dark"$/m);
|
|
@@ -109,7 +109,7 @@ describe("Codex transient TUI NUX cleanup", () => {
|
|
|
109
109
|
try {
|
|
110
110
|
const configPath = join(wd, "config.toml");
|
|
111
111
|
const original = [
|
|
112
|
-
'model = "gpt-5.
|
|
112
|
+
'model = "gpt-5.6-sol"',
|
|
113
113
|
"",
|
|
114
114
|
"[tui]",
|
|
115
115
|
'theme = "dark"',
|
|
@@ -133,15 +133,75 @@ describe("config generator idempotency (#384)", () => {
|
|
|
133
133
|
await mergeConfig(configPath, wd);
|
|
134
134
|
const toml = await readFile(configPath, "utf-8");
|
|
135
135
|
assertSingleOmxBlock(toml);
|
|
136
|
-
assert.
|
|
136
|
+
assert.doesNotMatch(toml, /^multi_agent\s*=/m);
|
|
137
137
|
assert.match(toml, /^child_agents_md = true$/m);
|
|
138
138
|
assert.match(toml, /^hooks = true$/m);
|
|
139
139
|
assert.match(toml, /^goals = true$/m);
|
|
140
|
+
assert.doesNotMatch(toml, /^\[agents\]$/m);
|
|
141
|
+
assert.doesNotMatch(toml, /^max_threads\s*=/m);
|
|
142
|
+
assert.doesNotMatch(toml, /^max_depth\s*=/m);
|
|
140
143
|
}
|
|
141
144
|
finally {
|
|
142
145
|
await rm(wd, { recursive: true, force: true });
|
|
143
146
|
}
|
|
144
147
|
});
|
|
148
|
+
it("classifies legacy multi-agent keys without mutating config", () => {
|
|
149
|
+
const absent = analyzeLegacyMultiAgentConfig("");
|
|
150
|
+
assert.equal(absent.assessments["features.multi_agent"].state, "absent");
|
|
151
|
+
const legacy = analyzeLegacyMultiAgentConfig([
|
|
152
|
+
"[features]",
|
|
153
|
+
"multi_agent = true",
|
|
154
|
+
"",
|
|
155
|
+
"[agents]",
|
|
156
|
+
"max_threads = 6",
|
|
157
|
+
"max_depth = 2",
|
|
158
|
+
].join("\n"));
|
|
159
|
+
assert.equal(legacy.assessments["features.multi_agent"].state, "retained-legacy");
|
|
160
|
+
assert.equal(legacy.assessments["agents.max_threads"].state, "retained-legacy");
|
|
161
|
+
assert.equal(legacy.assessments["agents.max_depth"].state, "retained-legacy");
|
|
162
|
+
const custom = analyzeLegacyMultiAgentConfig("[features]\nmulti_agent = false\n\n[agents]\nmax_threads = 8\nmax_depth = 3\n");
|
|
163
|
+
assert.equal(custom.assessments["features.multi_agent"].state, "custom");
|
|
164
|
+
assert.equal(custom.assessments["agents.max_threads"].state, "custom");
|
|
165
|
+
assert.equal(custom.assessments["agents.max_depth"].state, "custom");
|
|
166
|
+
const invalid = analyzeLegacyMultiAgentConfig("[features\nmulti_agent = true");
|
|
167
|
+
assert.equal(invalid.assessments["features.multi_agent"].state, "invalid/duplicate");
|
|
168
|
+
const duplicate = analyzeLegacyMultiAgentConfig("[features]\nmulti_agent = true\nmulti_agent = false\n");
|
|
169
|
+
assert.equal(duplicate.assessments["features.multi_agent"].state, "invalid/duplicate");
|
|
170
|
+
assert.equal(duplicate.assessments["features.multi_agent"].reasonCode, "toml-duplicate-key");
|
|
171
|
+
});
|
|
172
|
+
it("preserves legacy multi-agent values and all role tables across fixed-point merges", () => {
|
|
173
|
+
const existing = [
|
|
174
|
+
"[features]",
|
|
175
|
+
"multi_agent = false",
|
|
176
|
+
"",
|
|
177
|
+
"[agents]",
|
|
178
|
+
"max_threads = 8",
|
|
179
|
+
"max_depth = 3",
|
|
180
|
+
"",
|
|
181
|
+
"[agents.executor]",
|
|
182
|
+
'config_file = "/custom/executor.toml"',
|
|
183
|
+
"",
|
|
184
|
+
'[agents."review bot"]',
|
|
185
|
+
'config_file = "/custom/review.toml"',
|
|
186
|
+
"",
|
|
187
|
+
].join("\n");
|
|
188
|
+
const merged = buildMergedConfig(existing, "/tmp/omx");
|
|
189
|
+
assert.match(merged, /^multi_agent = false$/m);
|
|
190
|
+
assert.match(merged, /^max_threads = 8$/m);
|
|
191
|
+
assert.match(merged, /^max_depth = 3$/m);
|
|
192
|
+
assert.match(merged, /^\[agents\.executor\]$/m);
|
|
193
|
+
assert.match(merged, /^\[agents\."review bot"\]$/m);
|
|
194
|
+
assert.match(merged, /^config_file = "\/custom\/executor\.toml"$/m);
|
|
195
|
+
assert.match(merged, /^config_file = "\/custom\/review\.toml"$/m);
|
|
196
|
+
const parsed = TOML.parse(merged);
|
|
197
|
+
assert.equal(parsed.agents?.executor?.config_file, "/custom/executor.toml");
|
|
198
|
+
assert.equal(parsed.agents?.["review bot"]?.config_file, "/custom/review.toml");
|
|
199
|
+
assert.equal(buildMergedConfig(merged, "/tmp/omx"), merged);
|
|
200
|
+
});
|
|
201
|
+
it("can preserve multi_agent while stripping other OMX feature flags", () => {
|
|
202
|
+
const stripped = stripOmxFeatureFlags("[features]\nmulti_agent = false\nchild_agents_md = true\nhooks = true\ngoals = true\n", { preserveMultiAgent: true });
|
|
203
|
+
assert.equal(stripped, "[features]\nmulti_agent = false\n");
|
|
204
|
+
});
|
|
145
205
|
it("emits first-party MCP blocks only when explicitly enabled", () => {
|
|
146
206
|
const toml = buildMergedConfig("", "/tmp/omx", {
|
|
147
207
|
includeFirstPartyMcp: true,
|
|
@@ -354,11 +414,10 @@ describe("config generator idempotency (#384)", () => {
|
|
|
354
414
|
assertSingleOmxBlock(toml);
|
|
355
415
|
assert.match(toml, /^\[user\.custom\]$/m, "user section preserved");
|
|
356
416
|
assert.match(toml, /^name = "kept"$/m, "user key preserved");
|
|
357
|
-
assert.match(toml, /^\[agents\]$/m, "
|
|
358
|
-
assert.match(toml,
|
|
359
|
-
assert.match(toml, /^
|
|
360
|
-
assert.
|
|
361
|
-
assert.doesNotMatch(toml, /^\[agents\.explore\]$/m, "legacy OMX agent entry removed");
|
|
417
|
+
assert.match(toml, /^\[agents\.executor\]$/m, "known agent table preserved");
|
|
418
|
+
assert.match(toml, /^\[agents\.explore\]$/m, "known agent table preserved");
|
|
419
|
+
assert.match(toml, /^config_file = "\/old\/path\/executor\.toml"$/m);
|
|
420
|
+
assert.match(toml, /^config_file = "\/old\/path\/explore\.toml"$/m);
|
|
362
421
|
}
|
|
363
422
|
finally {
|
|
364
423
|
await rm(wd, { recursive: true, force: true });
|
|
@@ -518,128 +577,165 @@ describe("config generator idempotency (#384)", () => {
|
|
|
518
577
|
await rm(wd, { recursive: true, force: true });
|
|
519
578
|
}
|
|
520
579
|
});
|
|
521
|
-
it("
|
|
580
|
+
it("does not seed context defaults and preserves explicit context settings", async () => {
|
|
522
581
|
const wd = await mkdtemp(join(tmpdir(), "omx-idem-"));
|
|
523
582
|
try {
|
|
524
583
|
const configPath = join(wd, "config.toml");
|
|
525
|
-
await writeFile(configPath, '
|
|
584
|
+
await writeFile(configPath, ['model = "gpt-5.6-sol"', "model_context_window = 640000", ""].join("\n"));
|
|
526
585
|
await mergeConfig(configPath, wd);
|
|
527
586
|
const toml = await readFile(configPath, "utf-8");
|
|
528
|
-
assert.match(toml, /^
|
|
529
|
-
assert.
|
|
530
|
-
assert.
|
|
531
|
-
|
|
532
|
-
|
|
587
|
+
assert.match(toml, /^model_context_window = 640000$/m);
|
|
588
|
+
assert.doesNotMatch(toml, /^model_auto_compact_token_limit\s*=/m);
|
|
589
|
+
assert.doesNotMatch(toml, /seeded behavioral defaults/);
|
|
590
|
+
await mergeConfig(configPath, wd);
|
|
591
|
+
const repeated = await readFile(configPath, "utf-8");
|
|
592
|
+
assert.equal(repeated, toml);
|
|
593
|
+
assert.doesNotMatch(repeated, /^model_auto_compact_token_limit\s*=/m);
|
|
594
|
+
assert.doesNotMatch(repeated, /seeded behavioral defaults/);
|
|
533
595
|
}
|
|
534
596
|
finally {
|
|
535
597
|
await rm(wd, { recursive: true, force: true });
|
|
536
598
|
}
|
|
537
599
|
});
|
|
538
|
-
it("
|
|
539
|
-
const
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
600
|
+
it("removes exact legacy source spans with LF, CRLF, and EOF variants", () => {
|
|
601
|
+
const start = "# oh-my-codex seeded behavioral defaults (uninstall removes unchanged defaults)";
|
|
602
|
+
const end = "# End oh-my-codex seeded behavioral defaults";
|
|
603
|
+
const fixtures = [
|
|
604
|
+
{
|
|
605
|
+
input: `before\n${start}\nmodel_context_window = 250000\nmodel_auto_compact_token_limit = 200000\n${end}\nafter`,
|
|
606
|
+
expected: "before\nafter",
|
|
607
|
+
},
|
|
608
|
+
{
|
|
609
|
+
input: `model_auto_compact_token_limit=123\r\n${start}\r\nmodel_context_window = 250000\r\n${end}\r\n[features]\r\nweb_search = true`,
|
|
610
|
+
expected: "model_auto_compact_token_limit=123\r\n[features]\r\nweb_search = true",
|
|
611
|
+
},
|
|
612
|
+
{
|
|
613
|
+
input: `model_context_window = [\n 1,\n]\n${start}\nmodel_auto_compact_token_limit = 200000\n${end}`,
|
|
614
|
+
expected: "model_context_window = [\n 1,\n]\n",
|
|
615
|
+
},
|
|
616
|
+
];
|
|
617
|
+
for (const { input, expected } of fixtures) {
|
|
618
|
+
const stripped = stripOmxSeededBehavioralDefaults(input);
|
|
619
|
+
assert.equal(stripped, expected);
|
|
620
|
+
assert.equal(stripOmxSeededBehavioralDefaults(stripped), stripped);
|
|
553
621
|
}
|
|
554
622
|
});
|
|
555
|
-
it("
|
|
556
|
-
const
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
}
|
|
623
|
+
it("strips bounded customized or siblingless singleton markers and preserves ambiguity", () => {
|
|
624
|
+
const start = "# oh-my-codex seeded behavioral defaults (uninstall removes unchanged defaults)";
|
|
625
|
+
const end = "# End oh-my-codex seeded behavioral defaults";
|
|
626
|
+
const customized = `before\r\n${start}\r\nmodel_context_window = 123\r\n${end}\r\nafter`;
|
|
627
|
+
assert.equal(stripOmxSeededBehavioralDefaults(customized), "before\r\nmodel_context_window = 123\r\nafter");
|
|
628
|
+
const siblingless = `${start}\nmodel_context_window = 250000\n${end}\n[features]\nmodel_auto_compact_token_limit = 999`;
|
|
629
|
+
assert.equal(stripOmxSeededBehavioralDefaults(siblingless), "model_context_window = 250000\n[features]\nmodel_auto_compact_token_limit = 999");
|
|
630
|
+
const ambiguous = `${start}\nmodel_context_window = 250000\n${end}\nmodel_auto_compact_token_limit = 1\nmodel_auto_compact_token_limit = 2`;
|
|
631
|
+
assert.equal(stripOmxSeededBehavioralDefaults(ambiguous), ambiguous);
|
|
632
|
+
const sameKeyOutside = `model_context_window = 1\n${start}\nmodel_context_window = 250000\n${end}\nmodel_auto_compact_token_limit = 2`;
|
|
633
|
+
assert.equal(stripOmxSeededBehavioralDefaults(sameKeyOutside), sameKeyOutside);
|
|
634
|
+
const malformed = `${start}\nmodel_context_window = 250000`;
|
|
635
|
+
assert.equal(stripOmxSeededBehavioralDefaults(malformed), malformed);
|
|
569
636
|
});
|
|
570
|
-
it("
|
|
571
|
-
const
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
637
|
+
it("preserves every byte inside noncanonical bounded blocks", () => {
|
|
638
|
+
const start = "# oh-my-codex seeded behavioral defaults (uninstall removes unchanged defaults)";
|
|
639
|
+
const end = "# End oh-my-codex seeded behavioral defaults";
|
|
640
|
+
const bodies = [
|
|
641
|
+
["model_context_window = 250000", "# user comment", "model_auto_compact_token_limit = 200000"],
|
|
642
|
+
["model_context_window = 250000", "", "model_auto_compact_token_limit = 200000"],
|
|
643
|
+
[" model_context_window = 250000", "model_auto_compact_token_limit = 200000"],
|
|
644
|
+
["model_context_window = 250000", "model_auto_compact_token_limit = 200000 "],
|
|
645
|
+
["model_auto_compact_token_limit = 200000", "model_context_window = 250000"],
|
|
646
|
+
["model_context_window = 250000", "model_context_window = 250000", "model_auto_compact_token_limit = 200000"],
|
|
647
|
+
["model_context_window = 250000", "unexpected = true", "model_auto_compact_token_limit = 200000"],
|
|
648
|
+
["model_context_window = 250_000", "model_auto_compact_token_limit = 200000"],
|
|
649
|
+
["", "model_context_window = 250000", "model_auto_compact_token_limit = 200000", ""],
|
|
650
|
+
];
|
|
651
|
+
for (const body of bodies) {
|
|
652
|
+
const input = ["before", start, ...body, end, "after"].join("\n");
|
|
653
|
+
const expected = ["before", ...body, "after"].join("\n");
|
|
654
|
+
const stripped = stripOmxSeededBehavioralDefaults(input);
|
|
655
|
+
assert.equal(stripped, expected);
|
|
656
|
+
assert.equal(stripOmxSeededBehavioralDefaults(stripped), stripped);
|
|
583
657
|
}
|
|
584
658
|
});
|
|
585
|
-
it("
|
|
586
|
-
const
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
659
|
+
it("fails closed for duplicate assignments and malformed marker topologies", () => {
|
|
660
|
+
const start = "# oh-my-codex seeded behavioral defaults (uninstall removes unchanged defaults)";
|
|
661
|
+
const end = "# End oh-my-codex seeded behavioral defaults";
|
|
662
|
+
const pair = [start, "model_context_window = 250000", "model_auto_compact_token_limit = 200000", end];
|
|
663
|
+
const unchanged = [
|
|
664
|
+
["model_context_window = 999", ...pair, "after"].join("\n"),
|
|
665
|
+
[...pair, "model_auto_compact_token_limit = 999", "after"].join("\n"),
|
|
666
|
+
[start, start, "model_context_window = 250000", "model_auto_compact_token_limit = 200000", end, end].join("\n"),
|
|
667
|
+
[...pair, ...pair].join("\n"),
|
|
668
|
+
];
|
|
669
|
+
for (const input of unchanged) {
|
|
670
|
+
assert.equal(stripOmxSeededBehavioralDefaults(input), input);
|
|
671
|
+
assert.equal(hasExactOmxSeededBehavioralDefaultsPair(input), false);
|
|
598
672
|
}
|
|
673
|
+
const invalidSuffix = ["before", ...pair, "invalid = [", ""].join("\n");
|
|
674
|
+
const expected = "before\ninvalid = [\n";
|
|
675
|
+
assert.equal(stripOmxSeededBehavioralDefaults(invalidSuffix), expected);
|
|
676
|
+
assert.equal(stripOmxSeededBehavioralDefaults(expected), expected);
|
|
599
677
|
});
|
|
600
|
-
it("
|
|
601
|
-
const
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
678
|
+
it("ignores marker-shaped text inside TOML values and fails closed on stray markers", () => {
|
|
679
|
+
const start = "# oh-my-codex seeded behavioral defaults (uninstall removes unchanged defaults)";
|
|
680
|
+
const end = "# End oh-my-codex seeded behavioral defaults";
|
|
681
|
+
const stringContent = [
|
|
682
|
+
'developer_instructions = """',
|
|
683
|
+
start,
|
|
684
|
+
"model_context_window = 250000",
|
|
685
|
+
"model_auto_compact_token_limit = 200000",
|
|
686
|
+
end,
|
|
687
|
+
'"""',
|
|
688
|
+
"",
|
|
689
|
+
].join("\n");
|
|
690
|
+
assert.equal(stripOmxSeededBehavioralDefaults(stringContent), stringContent);
|
|
691
|
+
assert.equal(hasExactOmxSeededBehavioralDefaultsPair(stringContent), false);
|
|
692
|
+
const duplicateAfterTable = [
|
|
693
|
+
start,
|
|
694
|
+
"model_context_window = 250000",
|
|
695
|
+
"model_auto_compact_token_limit = 200000",
|
|
696
|
+
end,
|
|
697
|
+
"[tui]",
|
|
698
|
+
start,
|
|
699
|
+
"",
|
|
700
|
+
].join("\n");
|
|
701
|
+
assert.equal(stripOmxSeededBehavioralDefaults(duplicateAfterTable), duplicateAfterTable);
|
|
702
|
+
assert.equal(hasExactOmxSeededBehavioralDefaultsPair(duplicateAfterTable), false);
|
|
615
703
|
});
|
|
616
|
-
it("
|
|
617
|
-
const
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
704
|
+
it("migrates before reconstruction without incremental normalization", () => {
|
|
705
|
+
const start = "# oh-my-codex seeded behavioral defaults (uninstall removes unchanged defaults)";
|
|
706
|
+
const end = "# End oh-my-codex seeded behavioral defaults";
|
|
707
|
+
const fixtures = [
|
|
708
|
+
{
|
|
709
|
+
baseline: 'approval_policy = "on-failure"\n[features]\nweb_search = true\n',
|
|
710
|
+
migrated: `approval_policy = "on-failure"\n${start}\nmodel_context_window = 250000\nmodel_auto_compact_token_limit = 200000\n${end}\n[features]\nweb_search = true\n`,
|
|
711
|
+
},
|
|
712
|
+
{
|
|
713
|
+
baseline: "model_auto_compact_token_limit = [\n 999,\n]\n[features]\nweb_search = true\n",
|
|
714
|
+
migrated: `model_auto_compact_token_limit = [\n 999,\n]\n${start}\nmodel_context_window = 250000\n${end}\n[features]\nweb_search = true\n`,
|
|
715
|
+
},
|
|
716
|
+
{
|
|
717
|
+
baseline: "# explicit sibling\nmodel_context_window = 640000\n[features]\nweb_search = true\n",
|
|
718
|
+
migrated: `# explicit sibling\nmodel_context_window = 640000\n${start}\nmodel_auto_compact_token_limit = 200000\n${end}\n[features]\nweb_search = true\n`,
|
|
719
|
+
},
|
|
720
|
+
];
|
|
721
|
+
for (const fixture of fixtures) {
|
|
722
|
+
const baseline = buildMergedConfig(fixture.baseline, "/tmp/omx");
|
|
723
|
+
const migrated = buildMergedConfig(fixture.migrated, "/tmp/omx");
|
|
724
|
+
assert.equal(migrated, baseline);
|
|
725
|
+
assert.equal(buildMergedConfig(migrated, "/tmp/omx"), migrated);
|
|
726
|
+
assert.doesNotMatch(migrated, /seeded behavioral defaults/);
|
|
727
|
+
assert.doesNotThrow(() => TOML.parse(migrated));
|
|
631
728
|
}
|
|
632
729
|
});
|
|
633
|
-
it("
|
|
730
|
+
it("does not write retired global [agents] defaults", async () => {
|
|
634
731
|
const wd = await mkdtemp(join(tmpdir(), "omx-idem-"));
|
|
635
732
|
try {
|
|
636
733
|
const configPath = join(wd, "config.toml");
|
|
637
734
|
await mergeConfig(configPath, wd);
|
|
638
735
|
const toml = await readFile(configPath, "utf-8");
|
|
639
|
-
assert.
|
|
640
|
-
assert.
|
|
641
|
-
assert.
|
|
642
|
-
assert.doesNotMatch(toml, /^\[agents\.[^\]]+\]$/m, "legacy per-agent config_file entries omitted");
|
|
736
|
+
assert.doesNotMatch(toml, /^\[agents\]$/m);
|
|
737
|
+
assert.doesNotMatch(toml, /^max_threads\s*=/m);
|
|
738
|
+
assert.doesNotMatch(toml, /^max_depth\s*=/m);
|
|
643
739
|
}
|
|
644
740
|
finally {
|
|
645
741
|
await rm(wd, { recursive: true, force: true });
|
|
@@ -793,7 +889,7 @@ describe("config generator idempotency (#384)", () => {
|
|
|
793
889
|
});
|
|
794
890
|
it("preserves trailing user config after an unmatched managed hook trust-state start marker", () => {
|
|
795
891
|
const malformed = [
|
|
796
|
-
'model = "gpt-5.
|
|
892
|
+
'model = "gpt-5.6-sol"',
|
|
797
893
|
"",
|
|
798
894
|
"# OMX-owned Codex hook trust state",
|
|
799
895
|
"# Missing the end fence must not cause trailing user config deletion.",
|
|
@@ -823,7 +919,7 @@ describe("config generator idempotency (#384)", () => {
|
|
|
823
919
|
assert.ok(managedPostCompactHash);
|
|
824
920
|
assert.ok(managedStopHash);
|
|
825
921
|
const orphaned = [
|
|
826
|
-
'model = "gpt-5.
|
|
922
|
+
'model = "gpt-5.6-sol"',
|
|
827
923
|
"",
|
|
828
924
|
"[hooks.state]",
|
|
829
925
|
"",
|
|
@@ -859,7 +955,7 @@ describe("config generator idempotency (#384)", () => {
|
|
|
859
955
|
it("preserves same-key user hook trust state and suppresses generated duplicates", () => {
|
|
860
956
|
const hooksPath = "/tmp/codex/hooks.json";
|
|
861
957
|
const config = [
|
|
862
|
-
'model = "gpt-5.
|
|
958
|
+
'model = "gpt-5.6-sol"',
|
|
863
959
|
"",
|
|
864
960
|
'[hooks.state."/tmp/codex/hooks.json:post_compact:0:0"]',
|
|
865
961
|
'trusted_hash = "sha256:user"',
|
|
@@ -939,7 +1035,7 @@ describe("config generator idempotency (#384)", () => {
|
|
|
939
1035
|
});
|
|
940
1036
|
it("dedupes prior fenced managed hook trust-state blocks before writing a replacement", () => {
|
|
941
1037
|
const first = upsertManagedCodexHookTrustState([
|
|
942
|
-
'model = "gpt-5.
|
|
1038
|
+
'model = "gpt-5.6-sol"',
|
|
943
1039
|
"",
|
|
944
1040
|
'[hooks.state."custom:/hooks.json:stop:0:0"]',
|
|
945
1041
|
'trusted_hash = "sha256:user"',
|
|
@@ -1086,7 +1182,7 @@ describe("config generator idempotency (#384)", () => {
|
|
|
1086
1182
|
});
|
|
1087
1183
|
it("removes an existing multiline developer_instructions assignment as one root entry", () => {
|
|
1088
1184
|
const existing = [
|
|
1089
|
-
'model = "gpt-5.
|
|
1185
|
+
'model = "gpt-5.6-sol"',
|
|
1090
1186
|
'developer_instructions = """Custom instructions survive as valid TOML.',
|
|
1091
1187
|
'This line used to be orphaned by setup.',
|
|
1092
1188
|
'This closing line used to break parsing."""',
|