oh-my-codex 0.18.1 → 0.18.2
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 +4 -2
- package/dist/agents/__tests__/definitions.test.js +14 -0
- package/dist/agents/__tests__/definitions.test.js.map +1 -1
- package/dist/agents/__tests__/native-config.test.js +19 -0
- package/dist/agents/__tests__/native-config.test.js.map +1 -1
- package/dist/agents/definitions.d.ts.map +1 -1
- package/dist/agents/definitions.js +30 -0
- package/dist/agents/definitions.js.map +1 -1
- package/dist/agents/native-config.d.ts +1 -0
- package/dist/agents/native-config.d.ts.map +1 -1
- package/dist/agents/native-config.js +4 -0
- package/dist/agents/native-config.js.map +1 -1
- package/dist/catalog/__tests__/generator.test.js +4 -0
- package/dist/catalog/__tests__/generator.test.js.map +1 -1
- package/dist/cli/__tests__/doctor-warning-copy.test.js +61 -5
- package/dist/cli/__tests__/doctor-warning-copy.test.js.map +1 -1
- package/dist/cli/__tests__/index.test.js +161 -21
- package/dist/cli/__tests__/index.test.js.map +1 -1
- package/dist/cli/__tests__/launch-fallback.test.js +51 -3
- package/dist/cli/__tests__/launch-fallback.test.js.map +1 -1
- package/dist/cli/__tests__/question.test.js +2 -2
- package/dist/cli/__tests__/question.test.js.map +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +178 -7
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/index.d.ts +7 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +143 -43
- package/dist/cli/index.js.map +1 -1
- package/dist/config/__tests__/codex-hooks.test.js +3 -3
- package/dist/config/__tests__/codex-hooks.test.js.map +1 -1
- package/dist/config/codex-hooks.d.ts +1 -0
- package/dist/config/codex-hooks.d.ts.map +1 -1
- package/dist/config/codex-hooks.js +2 -4
- package/dist/config/codex-hooks.js.map +1 -1
- package/dist/config/generator.d.ts +14 -0
- package/dist/config/generator.d.ts.map +1 -1
- package/dist/config/generator.js +100 -1
- package/dist/config/generator.js.map +1 -1
- package/dist/goal-workflows/__tests__/codex-goal-snapshot.test.js +21 -0
- package/dist/goal-workflows/__tests__/codex-goal-snapshot.test.js.map +1 -1
- package/dist/goal-workflows/codex-goal-snapshot.d.ts +3 -0
- package/dist/goal-workflows/codex-goal-snapshot.d.ts.map +1 -1
- package/dist/goal-workflows/codex-goal-snapshot.js +45 -2
- package/dist/goal-workflows/codex-goal-snapshot.js.map +1 -1
- package/dist/hooks/__tests__/autopilot-skill-contract.test.js +17 -0
- package/dist/hooks/__tests__/autopilot-skill-contract.test.js.map +1 -1
- package/dist/hooks/__tests__/keyword-detector.test.js +170 -15
- package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
- package/dist/hooks/__tests__/prometheus-strict-contract.test.d.ts +2 -0
- package/dist/hooks/__tests__/prometheus-strict-contract.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/prometheus-strict-contract.test.js +320 -0
- package/dist/hooks/__tests__/prometheus-strict-contract.test.js.map +1 -0
- package/dist/hooks/__tests__/prompt-guidance-wave-two.test.js +12 -0
- package/dist/hooks/__tests__/prompt-guidance-wave-two.test.js.map +1 -1
- package/dist/hooks/__tests__/research-workflow-boundaries.test.d.ts +2 -0
- package/dist/hooks/__tests__/research-workflow-boundaries.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/research-workflow-boundaries.test.js +35 -0
- package/dist/hooks/__tests__/research-workflow-boundaries.test.js.map +1 -0
- package/dist/hooks/keyword-detector.d.ts +1 -1
- package/dist/hooks/keyword-detector.d.ts.map +1 -1
- package/dist/hooks/keyword-detector.js +28 -6
- 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 +11 -0
- package/dist/hooks/prompt-guidance-contract.js.map +1 -1
- package/dist/hud/__tests__/hud-tmux-injection.test.js +22 -0
- package/dist/hud/__tests__/hud-tmux-injection.test.js.map +1 -1
- package/dist/hud/__tests__/reconcile.test.js +121 -10
- package/dist/hud/__tests__/reconcile.test.js.map +1 -1
- package/dist/hud/__tests__/render.test.js +84 -0
- package/dist/hud/__tests__/render.test.js.map +1 -1
- package/dist/hud/__tests__/state.test.js +51 -1
- package/dist/hud/__tests__/state.test.js.map +1 -1
- package/dist/hud/__tests__/tmux.test.js +69 -23
- package/dist/hud/__tests__/tmux.test.js.map +1 -1
- package/dist/hud/index.d.ts +1 -1
- package/dist/hud/index.d.ts.map +1 -1
- package/dist/hud/index.js +8 -3
- package/dist/hud/index.js.map +1 -1
- package/dist/hud/reconcile.d.ts.map +1 -1
- package/dist/hud/reconcile.js +6 -3
- package/dist/hud/reconcile.js.map +1 -1
- package/dist/hud/render.d.ts.map +1 -1
- package/dist/hud/render.js +26 -0
- package/dist/hud/render.js.map +1 -1
- package/dist/hud/state.d.ts +2 -1
- package/dist/hud/state.d.ts.map +1 -1
- package/dist/hud/state.js +62 -1
- package/dist/hud/state.js.map +1 -1
- package/dist/hud/tmux.d.ts +10 -3
- package/dist/hud/tmux.d.ts.map +1 -1
- package/dist/hud/tmux.js +59 -10
- package/dist/hud/tmux.js.map +1 -1
- package/dist/hud/types.d.ts +22 -0
- package/dist/hud/types.d.ts.map +1 -1
- package/dist/hud/types.js.map +1 -1
- package/dist/pipeline/__tests__/orchestrator.test.js +63 -1
- package/dist/pipeline/__tests__/orchestrator.test.js.map +1 -1
- package/dist/pipeline/__tests__/stages.test.js +410 -4
- package/dist/pipeline/__tests__/stages.test.js.map +1 -1
- package/dist/pipeline/orchestrator.d.ts.map +1 -1
- package/dist/pipeline/orchestrator.js +29 -2
- package/dist/pipeline/orchestrator.js.map +1 -1
- package/dist/pipeline/stages/ralplan.d.ts.map +1 -1
- package/dist/pipeline/stages/ralplan.js +41 -6
- package/dist/pipeline/stages/ralplan.js.map +1 -1
- package/dist/question/__tests__/ui.test.js +43 -10
- package/dist/question/__tests__/ui.test.js.map +1 -1
- package/dist/question/ui.d.ts +12 -0
- package/dist/question/ui.d.ts.map +1 -1
- package/dist/question/ui.js +83 -46
- package/dist/question/ui.js.map +1 -1
- package/dist/ralplan/__tests__/runtime.test.js +200 -10
- package/dist/ralplan/__tests__/runtime.test.js.map +1 -1
- package/dist/ralplan/consensus-gate.d.ts +23 -0
- package/dist/ralplan/consensus-gate.d.ts.map +1 -0
- package/dist/ralplan/consensus-gate.js +212 -0
- package/dist/ralplan/consensus-gate.js.map +1 -0
- package/dist/ralplan/runtime.d.ts +25 -0
- package/dist/ralplan/runtime.d.ts.map +1 -1
- package/dist/ralplan/runtime.js +144 -8
- package/dist/ralplan/runtime.js.map +1 -1
- package/dist/scripts/__tests__/codex-native-hook.test.js +626 -7
- package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
- package/dist/scripts/__tests__/docs-site-contract.test.d.ts +2 -0
- package/dist/scripts/__tests__/docs-site-contract.test.d.ts.map +1 -0
- package/dist/scripts/__tests__/docs-site-contract.test.js +42 -0
- package/dist/scripts/__tests__/docs-site-contract.test.js.map +1 -0
- package/dist/scripts/__tests__/notify-dispatcher.test.js +115 -2
- package/dist/scripts/__tests__/notify-dispatcher.test.js.map +1 -1
- package/dist/scripts/__tests__/run-test-files.test.js +57 -0
- package/dist/scripts/__tests__/run-test-files.test.js.map +1 -1
- package/dist/scripts/__tests__/verify-native-agents.test.js +2 -2
- 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 +214 -34
- package/dist/scripts/codex-native-hook.js.map +1 -1
- package/dist/scripts/notify-dispatcher.js +188 -4
- package/dist/scripts/notify-dispatcher.js.map +1 -1
- package/dist/scripts/run-test-files.js +13 -0
- package/dist/scripts/run-test-files.js.map +1 -1
- package/dist/state/__tests__/workflow-transition.test.js +6 -0
- package/dist/state/__tests__/workflow-transition.test.js.map +1 -1
- package/dist/state/workflow-transition.d.ts +1 -1
- package/dist/state/workflow-transition.d.ts.map +1 -1
- package/dist/state/workflow-transition.js +7 -0
- package/dist/state/workflow-transition.js.map +1 -1
- package/dist/subagents/tracker.d.ts.map +1 -1
- package/dist/subagents/tracker.js +4 -3
- package/dist/subagents/tracker.js.map +1 -1
- package/dist/team/__tests__/runtime.test.js +36 -44
- package/dist/team/__tests__/runtime.test.js.map +1 -1
- package/dist/team/__tests__/tmux-session.test.js +58 -18
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/runtime.d.ts.map +1 -1
- package/dist/team/runtime.js +10 -20
- package/dist/team/runtime.js.map +1 -1
- package/dist/team/tmux-session.d.ts.map +1 -1
- package/dist/team/tmux-session.js +15 -6
- package/dist/team/tmux-session.js.map +1 -1
- package/dist/ultragoal/__tests__/artifacts.test.js +50 -0
- package/dist/ultragoal/__tests__/artifacts.test.js.map +1 -1
- package/dist/ultragoal/artifacts.d.ts.map +1 -1
- package/dist/ultragoal/artifacts.js +28 -2
- package/dist/ultragoal/artifacts.js.map +1 -1
- package/package.json +1 -1
- package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/oh-my-codex/skills/autopilot/SKILL.md +16 -4
- package/plugins/oh-my-codex/skills/autoresearch/SKILL.md +4 -0
- package/plugins/oh-my-codex/skills/autoresearch-goal/SKILL.md +1 -1
- package/plugins/oh-my-codex/skills/best-practice-research/SKILL.md +1 -1
- package/plugins/oh-my-codex/skills/pipeline/SKILL.md +1 -1
- package/plugins/oh-my-codex/skills/plan/SKILL.md +1 -1
- package/plugins/oh-my-codex/skills/prometheus-strict/README.md +35 -0
- package/plugins/oh-my-codex/skills/prometheus-strict/SKILL.md +219 -0
- package/plugins/oh-my-codex/skills/ralplan/SKILL.md +18 -3
- package/prompts/prometheus-strict-metis.md +274 -0
- package/prompts/prometheus-strict-momus.md +82 -0
- package/prompts/prometheus-strict-oracle.md +107 -0
- package/prompts/researcher.md +22 -3
- package/skills/autopilot/SKILL.md +16 -4
- package/skills/autoresearch/SKILL.md +4 -0
- package/skills/autoresearch-goal/SKILL.md +1 -1
- package/skills/best-practice-research/SKILL.md +1 -1
- package/skills/pipeline/SKILL.md +1 -1
- package/skills/plan/SKILL.md +1 -1
- package/skills/prometheus-strict/README.md +35 -0
- package/skills/prometheus-strict/SKILL.md +219 -0
- package/skills/ralplan/SKILL.md +18 -3
- package/src/scripts/__tests__/codex-native-hook.test.ts +769 -8
- package/src/scripts/__tests__/docs-site-contract.test.ts +47 -0
- package/src/scripts/__tests__/notify-dispatcher.test.ts +132 -3
- package/src/scripts/__tests__/run-test-files.test.ts +67 -0
- package/src/scripts/__tests__/verify-native-agents.test.ts +2 -2
- package/src/scripts/codex-native-hook.ts +237 -30
- package/src/scripts/notify-dispatcher.ts +202 -4
- package/src/scripts/run-test-files.ts +13 -0
- package/templates/catalog-manifest.json +22 -0
|
@@ -133,19 +133,18 @@ describe('HUD resize hook command builders', () => {
|
|
|
133
133
|
assert.equal(buildHudPaneTarget('%41'), '%41');
|
|
134
134
|
assert.equal(buildHudPaneTarget('41'), '%41');
|
|
135
135
|
});
|
|
136
|
-
it('buildRegisterResizeHookArgs uses
|
|
136
|
+
it('buildRegisterResizeHookArgs uses target and numeric client-resized hook slot', () => {
|
|
137
137
|
const args = buildRegisterResizeHookArgs('my-session:0', 'omx_resize_team_session_0_1', '%1');
|
|
138
138
|
assert.equal(args[0], 'set-hook');
|
|
139
|
-
assert.equal(args[1], '-
|
|
140
|
-
assert.equal(args[2], '-
|
|
141
|
-
assert.
|
|
142
|
-
assert.
|
|
143
|
-
assert.equal(args[5], `run-shell -b 'tmux resize-pane -t %1 -y ${HUD_TMUX_TEAM_HEIGHT_LINES} >/dev/null 2>&1 || true; sleep ${HUD_RESIZE_RECONCILE_DELAY_SECONDS}; tmux resize-pane -t %1 -y ${HUD_TMUX_TEAM_HEIGHT_LINES} >/dev/null 2>&1 || true'`);
|
|
139
|
+
assert.equal(args[1], '-t');
|
|
140
|
+
assert.equal(args[2], 'my-session:0');
|
|
141
|
+
assert.match(args[3] ?? '', /^client-resized\[\d+\]$/);
|
|
142
|
+
assert.equal(args[4], `run-shell -b 'tmux resize-pane -t %1 -y ${HUD_TMUX_TEAM_HEIGHT_LINES} >/dev/null 2>&1 || true; sleep ${HUD_RESIZE_RECONCILE_DELAY_SECONDS}; tmux resize-pane -t %1 -y ${HUD_TMUX_TEAM_HEIGHT_LINES} >/dev/null 2>&1 || true'`);
|
|
144
143
|
});
|
|
145
144
|
it('buildUnregisterResizeHookArgs removes the exact numeric hook slot', () => {
|
|
146
145
|
const registered = buildRegisterResizeHookArgs('my-session:0', 'omx_resize_team_session_0_1', '%1');
|
|
147
146
|
const unregistered = buildUnregisterResizeHookArgs('my-session:0', 'omx_resize_team_session_0_1');
|
|
148
|
-
assert.deepEqual(unregistered, ['set-hook', '-u', '-
|
|
147
|
+
assert.deepEqual(unregistered, ['set-hook', '-u', '-t', 'my-session:0', registered[3]]);
|
|
149
148
|
});
|
|
150
149
|
it('buildClientAttachedReconcileHookName normalizes all segments into collision-safe tokens', () => {
|
|
151
150
|
const name = buildClientAttachedReconcileHookName('Team A', 'Session:Main', '0', '%12');
|
|
@@ -170,7 +169,7 @@ describe('HUD resize hook command builders', () => {
|
|
|
170
169
|
const longName = 'omx_resize_' + 'a'.repeat(200);
|
|
171
170
|
const resizeArgs = buildRegisterResizeHookArgs('sess:0', longName, '%1');
|
|
172
171
|
const attachedArgs = buildRegisterClientAttachedReconcileArgs('sess:0', longName, '%1');
|
|
173
|
-
const resizeSlot = resizeArgs[
|
|
172
|
+
const resizeSlot = resizeArgs[3] ?? '';
|
|
174
173
|
const attachedSlot = attachedArgs[3] ?? '';
|
|
175
174
|
const resizeIndex = Number((resizeSlot.match(/\[(\d+)\]/) ?? [])[1]);
|
|
176
175
|
const attachedIndex = Number((attachedSlot.match(/\[(\d+)\]/) ?? [])[1]);
|
|
@@ -183,7 +182,7 @@ describe('HUD resize hook command builders', () => {
|
|
|
183
182
|
const name = 'omx_resize_team_session_0_1';
|
|
184
183
|
const a = buildRegisterResizeHookArgs('s:0', name, '%1');
|
|
185
184
|
const b = buildRegisterResizeHookArgs('s:0', name, '%1');
|
|
186
|
-
assert.equal(a[
|
|
185
|
+
assert.equal(a[3], b[3]);
|
|
187
186
|
const c = buildRegisterClientAttachedReconcileArgs('s:0', name, '%1');
|
|
188
187
|
const d = buildRegisterClientAttachedReconcileArgs('s:0', name, '%1');
|
|
189
188
|
assert.equal(c[3], d[3]);
|
|
@@ -210,8 +209,8 @@ describe('HUD resize hook command builders', () => {
|
|
|
210
209
|
const resizeArgs = buildRegisterResizeHookArgs('my-session:0', 'omx_resize_team_session_0_1', '%1');
|
|
211
210
|
const delayedArgs = buildScheduleDelayedHudResizeArgs('%1');
|
|
212
211
|
const reconcileArgs = buildReconcileHudResizeArgs('%1');
|
|
213
|
-
assert.match(resizeArgs[
|
|
214
|
-
assert.doesNotMatch(resizeArgs[
|
|
212
|
+
assert.match(resizeArgs[4] ?? '', new RegExp(escapeRegExp(tmuxPath)));
|
|
213
|
+
assert.doesNotMatch(resizeArgs[4] ?? '', /^run-shell -b 'tmux resize-pane/);
|
|
215
214
|
assert.match(delayedArgs[2] ?? '', new RegExp(escapeRegExp(tmuxPath)));
|
|
216
215
|
assert.doesNotMatch(delayedArgs[2] ?? '', /sleep \d+; tmux resize-pane/);
|
|
217
216
|
assert.match(reconcileArgs[1] ?? '', new RegExp(escapeRegExp(tmuxPath)));
|
|
@@ -2967,7 +2966,7 @@ esac
|
|
|
2967
2966
|
await rm(cwd, { recursive: true, force: true });
|
|
2968
2967
|
}
|
|
2969
2968
|
});
|
|
2970
|
-
it('
|
|
2969
|
+
it('uses tmux 3.2a-compatible client-resized hook registration for team HUD resize', async () => {
|
|
2971
2970
|
const cwd = await mkdtemp(join(tmpdir(), 'omx-team-resize-hook-fallback-'));
|
|
2972
2971
|
const prevTmux = process.env.TMUX;
|
|
2973
2972
|
const prevTmuxPane = process.env.TMUX_PANE;
|
|
@@ -3022,6 +3021,10 @@ case "\${1:-}" in
|
|
|
3022
3021
|
echo "invalid option: window-resized[]" >&2
|
|
3023
3022
|
exit 1
|
|
3024
3023
|
;;
|
|
3024
|
+
*" -w "*)
|
|
3025
|
+
echo "invalid option: -w" >&2
|
|
3026
|
+
exit 1
|
|
3027
|
+
;;
|
|
3025
3028
|
*)
|
|
3026
3029
|
exit 0
|
|
3027
3030
|
;;
|
|
@@ -3045,12 +3048,13 @@ esac
|
|
|
3045
3048
|
console.warn = (...args) => { warnings.push(args.map(String).join(' ')); };
|
|
3046
3049
|
const session = createTeamSession('Resize Hook Fallback', 1, cwd);
|
|
3047
3050
|
assert.equal(session.hudPaneId, '%3');
|
|
3048
|
-
assert.
|
|
3049
|
-
assert.equal(session.resizeHookTarget,
|
|
3050
|
-
assert.
|
|
3051
|
-
assert.match(warnings.join('\n'), /invalid option: window-resized\[\]/);
|
|
3051
|
+
assert.ok(session.resizeHookName);
|
|
3052
|
+
assert.equal(session.resizeHookTarget, 'leader:0');
|
|
3053
|
+
assert.equal(warnings.join('\n'), '');
|
|
3052
3054
|
const tmuxLog = await readFile(logPath, 'utf-8');
|
|
3053
|
-
assert.match(tmuxLog, /set-hook -
|
|
3055
|
+
assert.match(tmuxLog, /set-hook -t leader:0 client-resized\[\d+\]/);
|
|
3056
|
+
assert.doesNotMatch(tmuxLog, /window-resized\[/);
|
|
3057
|
+
assert.doesNotMatch(tmuxLog, /set-hook -w /);
|
|
3054
3058
|
assert.match(tmuxLog, /set-hook -t leader:0 client-attached\[\d+\]/);
|
|
3055
3059
|
assert.match(tmuxLog, new RegExp(`run-shell -b sleep ${HUD_RESIZE_RECONCILE_DELAY_SECONDS}; .*resize-pane -t %3 -y ${HUD_TMUX_TEAM_HEIGHT_LINES}`));
|
|
3056
3060
|
assert.match(tmuxLog, new RegExp(`run-shell .*resize-pane -t %3 -y ${HUD_TMUX_TEAM_HEIGHT_LINES}`));
|
|
@@ -3275,7 +3279,8 @@ esac
|
|
|
3275
3279
|
assert.equal(session.resizeHookTarget, null);
|
|
3276
3280
|
const tmuxLog = await readFile(logPath, 'utf-8');
|
|
3277
3281
|
assert.match(tmuxLog, new RegExp(`resize-pane -t %3 -y ${HUD_TMUX_TEAM_HEIGHT_LINES}`));
|
|
3278
|
-
assert.doesNotMatch(tmuxLog, /set-hook -w
|
|
3282
|
+
assert.doesNotMatch(tmuxLog, /set-hook -w /);
|
|
3283
|
+
assert.doesNotMatch(tmuxLog, /window-resized\[/);
|
|
3279
3284
|
assert.doesNotMatch(tmuxLog, /set-hook -t leader:0 client-attached\[\d+\]/);
|
|
3280
3285
|
assert.doesNotMatch(tmuxLog, /run-shell -b sleep \d+; tmux resize-pane -t %3 -y \d+ >/);
|
|
3281
3286
|
assert.doesNotMatch(tmuxLog, /run-shell tmux resize-pane -t %3 -y \d+ >/);
|
|
@@ -3587,6 +3592,41 @@ esac
|
|
|
3587
3592
|
await rm(cwd, { recursive: true, force: true });
|
|
3588
3593
|
}
|
|
3589
3594
|
});
|
|
3595
|
+
it('restores standalone HUD panes with OMX_ROOT forwarded and shell-escaped', async () => {
|
|
3596
|
+
const cwd = await mkdtemp(join(tmpdir(), 'omx-standalone-root-hud-'));
|
|
3597
|
+
const previousOmxRoot = process.env.OMX_ROOT;
|
|
3598
|
+
try {
|
|
3599
|
+
await withMockTmuxFixture('omx-tmux-root-standalone-hud-', (logPath) => `#!/bin/sh
|
|
3600
|
+
set -eu
|
|
3601
|
+
printf '%s\\n' "$*" >> "${logPath}"
|
|
3602
|
+
case "\${1:-}" in
|
|
3603
|
+
split-window)
|
|
3604
|
+
echo "%44"
|
|
3605
|
+
exit 0
|
|
3606
|
+
;;
|
|
3607
|
+
run-shell|select-pane|resize-pane|set-hook)
|
|
3608
|
+
exit 0
|
|
3609
|
+
;;
|
|
3610
|
+
*)
|
|
3611
|
+
exit 0
|
|
3612
|
+
;;
|
|
3613
|
+
esac
|
|
3614
|
+
`, async ({ logPath }) => {
|
|
3615
|
+
process.env.OMX_ROOT = "/tmp/boxed root/it's/$(literal)";
|
|
3616
|
+
const paneId = restoreStandaloneHudPane('%11', cwd);
|
|
3617
|
+
assert.equal(paneId, '%44');
|
|
3618
|
+
const tmuxLog = await readFile(logPath, 'utf-8');
|
|
3619
|
+
assert.match(tmuxLog, /exec env OMX_TMUX_HUD_OWNER=1 OMX_ROOT='\/tmp\/boxed root\/it'\\''s\/\$\(literal\)' .*hud --watch/);
|
|
3620
|
+
});
|
|
3621
|
+
}
|
|
3622
|
+
finally {
|
|
3623
|
+
if (typeof previousOmxRoot === 'string')
|
|
3624
|
+
process.env.OMX_ROOT = previousOmxRoot;
|
|
3625
|
+
else
|
|
3626
|
+
delete process.env.OMX_ROOT;
|
|
3627
|
+
await rm(cwd, { recursive: true, force: true });
|
|
3628
|
+
}
|
|
3629
|
+
});
|
|
3590
3630
|
});
|
|
3591
3631
|
describe('dismissTrustPromptIfPresent capture shape', () => {
|
|
3592
3632
|
it('uses visible capture-pane argv without tail flags', async () => {
|