oh-my-codex 0.4.0 → 0.4.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/README.es.md +36 -0
- package/README.ja.md +36 -0
- package/README.ko.md +36 -0
- package/README.md +13 -1
- package/README.pt.md +36 -0
- package/README.ru.md +36 -0
- package/README.vi.md +36 -0
- package/README.zh.md +39 -0
- package/bin/omx.js +2 -1
- package/dist/config/__tests__/generator-notify.test.js +3 -3
- package/dist/config/__tests__/generator-notify.test.js.map +1 -1
- package/dist/config/generator.d.ts +1 -1
- package/dist/config/generator.js +8 -8
- package/dist/config/generator.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.d.ts +2 -0
- package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js +427 -0
- package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js.map +1 -0
- package/dist/hooks/__tests__/notify-hook-auto-nudge.test.d.ts +2 -0
- package/dist/hooks/__tests__/notify-hook-auto-nudge.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js +432 -0
- package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js.map +1 -0
- package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js +3 -0
- package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js.map +1 -1
- package/dist/hooks/emulator.d.ts +1 -1
- package/dist/hooks/emulator.js +5 -5
- package/dist/hooks/emulator.js.map +1 -1
- package/dist/hooks/extensibility/__tests__/dispatcher.test.d.ts +2 -0
- package/dist/hooks/extensibility/__tests__/dispatcher.test.d.ts.map +1 -0
- package/dist/hooks/extensibility/__tests__/dispatcher.test.js +152 -0
- package/dist/hooks/extensibility/__tests__/dispatcher.test.js.map +1 -0
- package/dist/hooks/extensibility/__tests__/events.test.d.ts +2 -0
- package/dist/hooks/extensibility/__tests__/events.test.d.ts.map +1 -0
- package/dist/hooks/extensibility/__tests__/events.test.js +117 -0
- package/dist/hooks/extensibility/__tests__/events.test.js.map +1 -0
- package/dist/hooks/extensibility/__tests__/loader.test.d.ts +2 -0
- package/dist/hooks/extensibility/__tests__/loader.test.d.ts.map +1 -0
- package/dist/hooks/extensibility/__tests__/loader.test.js +229 -0
- package/dist/hooks/extensibility/__tests__/loader.test.js.map +1 -0
- package/dist/hooks/extensibility/__tests__/logging.test.d.ts +2 -0
- package/dist/hooks/extensibility/__tests__/logging.test.d.ts.map +1 -0
- package/dist/hooks/extensibility/__tests__/logging.test.js +74 -0
- package/dist/hooks/extensibility/__tests__/logging.test.js.map +1 -0
- package/dist/hooks/extensibility/__tests__/plugin-runner.test.d.ts +2 -0
- package/dist/hooks/extensibility/__tests__/plugin-runner.test.d.ts.map +1 -0
- package/dist/hooks/extensibility/__tests__/plugin-runner.test.js +202 -0
- package/dist/hooks/extensibility/__tests__/plugin-runner.test.js.map +1 -0
- package/dist/hooks/extensibility/__tests__/runtime.test.d.ts +2 -0
- package/dist/hooks/extensibility/__tests__/runtime.test.d.ts.map +1 -0
- package/dist/hooks/extensibility/__tests__/runtime.test.js +117 -0
- package/dist/hooks/extensibility/__tests__/runtime.test.js.map +1 -0
- package/dist/hooks/extensibility/__tests__/sdk.test.d.ts +2 -0
- package/dist/hooks/extensibility/__tests__/sdk.test.d.ts.map +1 -0
- package/dist/hooks/extensibility/__tests__/sdk.test.js +277 -0
- package/dist/hooks/extensibility/__tests__/sdk.test.js.map +1 -0
- package/dist/hooks/extensibility/sdk.d.ts.map +1 -1
- package/dist/hooks/extensibility/sdk.js +10 -2
- package/dist/hooks/extensibility/sdk.js.map +1 -1
- package/dist/hud/__tests__/colors.test.d.ts +2 -0
- package/dist/hud/__tests__/colors.test.d.ts.map +1 -0
- package/dist/hud/__tests__/colors.test.js +194 -0
- package/dist/hud/__tests__/colors.test.js.map +1 -0
- package/dist/hud/__tests__/render.test.d.ts +2 -0
- package/dist/hud/__tests__/render.test.d.ts.map +1 -0
- package/dist/hud/__tests__/render.test.js +449 -0
- package/dist/hud/__tests__/render.test.js.map +1 -0
- package/dist/hud/__tests__/types.test.d.ts +2 -0
- package/dist/hud/__tests__/types.test.d.ts.map +1 -0
- package/dist/hud/__tests__/types.test.js +17 -0
- package/dist/hud/__tests__/types.test.js.map +1 -0
- package/dist/team/__tests__/tmux-session.test.js +15 -1
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/orchestrator.d.ts +1 -1
- package/dist/team/orchestrator.js +1 -1
- package/dist/team/tmux-session.d.ts +8 -0
- package/dist/team/tmux-session.d.ts.map +1 -1
- package/dist/team/tmux-session.js +28 -7
- package/dist/team/tmux-session.js.map +1 -1
- package/dist/utils/__tests__/package.test.d.ts +2 -0
- package/dist/utils/__tests__/package.test.d.ts.map +1 -0
- package/dist/utils/__tests__/package.test.js +21 -0
- package/dist/utils/__tests__/package.test.js.map +1 -0
- package/dist/utils/__tests__/paths.test.d.ts +2 -0
- package/dist/utils/__tests__/paths.test.d.ts.map +1 -0
- package/dist/utils/__tests__/paths.test.js +117 -0
- package/dist/utils/__tests__/paths.test.js.map +1 -0
- package/dist/verification/__tests__/verifier.test.d.ts +2 -0
- package/dist/verification/__tests__/verifier.test.d.ts.map +1 -0
- package/dist/verification/__tests__/verifier.test.js +94 -0
- package/dist/verification/__tests__/verifier.test.js.map +1 -0
- package/package.json +1 -1
- package/scripts/notify-hook.js +346 -1
- package/templates/AGENTS.md +1 -1
|
@@ -0,0 +1,432 @@
|
|
|
1
|
+
import { describe, it } from 'node:test';
|
|
2
|
+
import assert from 'node:assert/strict';
|
|
3
|
+
import { spawnSync } from 'node:child_process';
|
|
4
|
+
import { chmod, mkdtemp, mkdir, readFile, rm, writeFile } from 'node:fs/promises';
|
|
5
|
+
import { existsSync } from 'node:fs';
|
|
6
|
+
import { tmpdir } from 'node:os';
|
|
7
|
+
import { join } from 'node:path';
|
|
8
|
+
const NOTIFY_HOOK_SCRIPT = new URL('../../../scripts/notify-hook.js', import.meta.url);
|
|
9
|
+
async function withTempWorkingDir(run) {
|
|
10
|
+
const cwd = await mkdtemp(join(tmpdir(), 'omx-auto-nudge-'));
|
|
11
|
+
try {
|
|
12
|
+
await run(cwd);
|
|
13
|
+
}
|
|
14
|
+
finally {
|
|
15
|
+
await rm(cwd, { recursive: true, force: true });
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
async function writeJson(path, value) {
|
|
19
|
+
await writeFile(path, JSON.stringify(value, null, 2));
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Build a fake tmux binary that logs all invocations and optionally returns
|
|
23
|
+
* capture-pane content from OMX_TEST_CAPTURE_FILE.
|
|
24
|
+
*/
|
|
25
|
+
function buildFakeTmux(tmuxLogPath) {
|
|
26
|
+
return `#!/usr/bin/env bash
|
|
27
|
+
set -eu
|
|
28
|
+
echo "$@" >> "${tmuxLogPath}"
|
|
29
|
+
cmd="\$1"
|
|
30
|
+
shift || true
|
|
31
|
+
if [[ "\$cmd" == "capture-pane" ]]; then
|
|
32
|
+
if [[ -n "\${OMX_TEST_CAPTURE_FILE:-}" && -f "\${OMX_TEST_CAPTURE_FILE}" ]]; then
|
|
33
|
+
cat "\${OMX_TEST_CAPTURE_FILE}"
|
|
34
|
+
fi
|
|
35
|
+
exit 0
|
|
36
|
+
fi
|
|
37
|
+
if [[ "\$cmd" == "send-keys" ]]; then
|
|
38
|
+
exit 0
|
|
39
|
+
fi
|
|
40
|
+
if [[ "\$cmd" == "display-message" ]]; then
|
|
41
|
+
exit 0
|
|
42
|
+
fi
|
|
43
|
+
if [[ "\$cmd" == "list-panes" ]]; then
|
|
44
|
+
echo "%1 12345"
|
|
45
|
+
exit 0
|
|
46
|
+
fi
|
|
47
|
+
exit 0
|
|
48
|
+
`;
|
|
49
|
+
}
|
|
50
|
+
function runNotifyHook(cwd, fakeBinDir, codexHome, payloadOverrides = {}, extraEnv = {}) {
|
|
51
|
+
const payload = {
|
|
52
|
+
cwd,
|
|
53
|
+
type: 'agent-turn-complete',
|
|
54
|
+
'thread-id': 'thread-test',
|
|
55
|
+
'turn-id': `turn-${Date.now()}-${Math.random().toString(16).slice(2, 8)}`,
|
|
56
|
+
'input-messages': ['test'],
|
|
57
|
+
'last-assistant-message': 'done',
|
|
58
|
+
...payloadOverrides,
|
|
59
|
+
};
|
|
60
|
+
return spawnSync(process.execPath, [NOTIFY_HOOK_SCRIPT.pathname, JSON.stringify(payload)], {
|
|
61
|
+
encoding: 'utf8',
|
|
62
|
+
timeout: 15_000,
|
|
63
|
+
env: {
|
|
64
|
+
...process.env,
|
|
65
|
+
PATH: `${fakeBinDir}:${process.env.PATH || ''}`,
|
|
66
|
+
CODEX_HOME: codexHome,
|
|
67
|
+
TMUX_PANE: '%99',
|
|
68
|
+
TMUX: '1',
|
|
69
|
+
OMX_TEAM_WORKER: '',
|
|
70
|
+
OMX_TEAM_LEADER_NUDGE_MS: '9999999',
|
|
71
|
+
OMX_TEAM_LEADER_STALE_MS: '9999999',
|
|
72
|
+
...extraEnv,
|
|
73
|
+
},
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
describe('notify-hook auto-nudge', () => {
|
|
77
|
+
it('sends nudge when stall pattern detected in last-assistant-message', async () => {
|
|
78
|
+
await withTempWorkingDir(async (cwd) => {
|
|
79
|
+
const omxDir = join(cwd, '.omx');
|
|
80
|
+
const stateDir = join(omxDir, 'state');
|
|
81
|
+
const logsDir = join(omxDir, 'logs');
|
|
82
|
+
const codexHome = join(cwd, 'codex-home');
|
|
83
|
+
const fakeBinDir = join(cwd, 'fake-bin');
|
|
84
|
+
const tmuxLogPath = join(cwd, 'tmux.log');
|
|
85
|
+
await mkdir(logsDir, { recursive: true });
|
|
86
|
+
await mkdir(stateDir, { recursive: true });
|
|
87
|
+
await mkdir(codexHome, { recursive: true });
|
|
88
|
+
await mkdir(fakeBinDir, { recursive: true });
|
|
89
|
+
// Config: enabled, delaySec=0 for fast tests
|
|
90
|
+
await writeJson(join(codexHome, '.omx-config.json'), {
|
|
91
|
+
autoNudge: { enabled: true, delaySec: 0 },
|
|
92
|
+
});
|
|
93
|
+
await writeFile(join(fakeBinDir, 'tmux'), buildFakeTmux(tmuxLogPath));
|
|
94
|
+
await chmod(join(fakeBinDir, 'tmux'), 0o755);
|
|
95
|
+
const result = runNotifyHook(cwd, fakeBinDir, codexHome, {
|
|
96
|
+
'last-assistant-message': 'I analyzed the code. If you want me to make these changes, let me know.',
|
|
97
|
+
});
|
|
98
|
+
assert.equal(result.status, 0, `hook failed: ${result.stderr || result.stdout}`);
|
|
99
|
+
assert.ok(existsSync(tmuxLogPath), 'tmux should have been called');
|
|
100
|
+
const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
|
|
101
|
+
assert.match(tmuxLog, /send-keys -t %99 -l yes, proceed \[OMX_TMUX_INJECT\]/, 'should send nudge response with injection marker');
|
|
102
|
+
// Codex CLI needs C-m sent twice with a delay for reliable submission
|
|
103
|
+
const cmMatches = tmuxLog.match(/send-keys -t %99 C-m/g);
|
|
104
|
+
assert.ok(cmMatches && cmMatches.length >= 2, `should send C-m twice, got ${cmMatches?.length ?? 0}`);
|
|
105
|
+
});
|
|
106
|
+
});
|
|
107
|
+
it('sends nudge via capture-pane fallback when payload has no stall pattern', async () => {
|
|
108
|
+
await withTempWorkingDir(async (cwd) => {
|
|
109
|
+
const omxDir = join(cwd, '.omx');
|
|
110
|
+
const stateDir = join(omxDir, 'state');
|
|
111
|
+
const logsDir = join(omxDir, 'logs');
|
|
112
|
+
const codexHome = join(cwd, 'codex-home');
|
|
113
|
+
const fakeBinDir = join(cwd, 'fake-bin');
|
|
114
|
+
const tmuxLogPath = join(cwd, 'tmux.log');
|
|
115
|
+
const captureFile = join(cwd, 'capture-output.txt');
|
|
116
|
+
await mkdir(logsDir, { recursive: true });
|
|
117
|
+
await mkdir(stateDir, { recursive: true });
|
|
118
|
+
await mkdir(codexHome, { recursive: true });
|
|
119
|
+
await mkdir(fakeBinDir, { recursive: true });
|
|
120
|
+
await writeJson(join(codexHome, '.omx-config.json'), {
|
|
121
|
+
autoNudge: { enabled: true, delaySec: 0 },
|
|
122
|
+
});
|
|
123
|
+
// capture-pane will return content with a stall pattern
|
|
124
|
+
await writeFile(captureFile, 'Here are the results.\nWould you like me to continue with the implementation?\n');
|
|
125
|
+
await writeFile(join(fakeBinDir, 'tmux'), buildFakeTmux(tmuxLogPath));
|
|
126
|
+
await chmod(join(fakeBinDir, 'tmux'), 0o755);
|
|
127
|
+
const result = runNotifyHook(cwd, fakeBinDir, codexHome, {
|
|
128
|
+
'last-assistant-message': 'clean output with no stall',
|
|
129
|
+
}, {
|
|
130
|
+
OMX_TEST_CAPTURE_FILE: captureFile,
|
|
131
|
+
});
|
|
132
|
+
assert.equal(result.status, 0, `hook failed: ${result.stderr || result.stdout}`);
|
|
133
|
+
const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
|
|
134
|
+
assert.match(tmuxLog, /capture-pane/, 'should have tried capture-pane');
|
|
135
|
+
assert.match(tmuxLog, /send-keys -t %99 -l yes, proceed \[OMX_TMUX_INJECT\]/, 'should send nudge via capture-pane fallback with marker');
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
it('does not nudge when no stall pattern is present', async () => {
|
|
139
|
+
await withTempWorkingDir(async (cwd) => {
|
|
140
|
+
const omxDir = join(cwd, '.omx');
|
|
141
|
+
const stateDir = join(omxDir, 'state');
|
|
142
|
+
const logsDir = join(omxDir, 'logs');
|
|
143
|
+
const codexHome = join(cwd, 'codex-home');
|
|
144
|
+
const fakeBinDir = join(cwd, 'fake-bin');
|
|
145
|
+
const tmuxLogPath = join(cwd, 'tmux.log');
|
|
146
|
+
await mkdir(logsDir, { recursive: true });
|
|
147
|
+
await mkdir(stateDir, { recursive: true });
|
|
148
|
+
await mkdir(codexHome, { recursive: true });
|
|
149
|
+
await mkdir(fakeBinDir, { recursive: true });
|
|
150
|
+
await writeJson(join(codexHome, '.omx-config.json'), {
|
|
151
|
+
autoNudge: { enabled: true, delaySec: 0 },
|
|
152
|
+
});
|
|
153
|
+
await writeFile(join(fakeBinDir, 'tmux'), buildFakeTmux(tmuxLogPath));
|
|
154
|
+
await chmod(join(fakeBinDir, 'tmux'), 0o755);
|
|
155
|
+
const result = runNotifyHook(cwd, fakeBinDir, codexHome, {
|
|
156
|
+
'last-assistant-message': 'I completed the refactoring. All tests pass.',
|
|
157
|
+
});
|
|
158
|
+
assert.equal(result.status, 0, `hook failed: ${result.stderr || result.stdout}`);
|
|
159
|
+
if (existsSync(tmuxLogPath)) {
|
|
160
|
+
const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
|
|
161
|
+
assert.doesNotMatch(tmuxLog, /send-keys -t %99 -l yes, proceed/, 'should NOT send nudge');
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
});
|
|
165
|
+
it('respects enabled=false configuration', async () => {
|
|
166
|
+
await withTempWorkingDir(async (cwd) => {
|
|
167
|
+
const omxDir = join(cwd, '.omx');
|
|
168
|
+
const stateDir = join(omxDir, 'state');
|
|
169
|
+
const logsDir = join(omxDir, 'logs');
|
|
170
|
+
const codexHome = join(cwd, 'codex-home');
|
|
171
|
+
const fakeBinDir = join(cwd, 'fake-bin');
|
|
172
|
+
const tmuxLogPath = join(cwd, 'tmux.log');
|
|
173
|
+
await mkdir(logsDir, { recursive: true });
|
|
174
|
+
await mkdir(stateDir, { recursive: true });
|
|
175
|
+
await mkdir(codexHome, { recursive: true });
|
|
176
|
+
await mkdir(fakeBinDir, { recursive: true });
|
|
177
|
+
// Explicitly disabled
|
|
178
|
+
await writeJson(join(codexHome, '.omx-config.json'), {
|
|
179
|
+
autoNudge: { enabled: false, delaySec: 0 },
|
|
180
|
+
});
|
|
181
|
+
await writeFile(join(fakeBinDir, 'tmux'), buildFakeTmux(tmuxLogPath));
|
|
182
|
+
await chmod(join(fakeBinDir, 'tmux'), 0o755);
|
|
183
|
+
const result = runNotifyHook(cwd, fakeBinDir, codexHome, {
|
|
184
|
+
'last-assistant-message': 'Would you like me to proceed?',
|
|
185
|
+
});
|
|
186
|
+
assert.equal(result.status, 0, `hook failed: ${result.stderr || result.stdout}`);
|
|
187
|
+
if (existsSync(tmuxLogPath)) {
|
|
188
|
+
const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
|
|
189
|
+
assert.doesNotMatch(tmuxLog, /send-keys -t %99 -l/, 'should NOT send nudge when disabled');
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
});
|
|
193
|
+
it('respects maxNudgesPerSession limit', async () => {
|
|
194
|
+
await withTempWorkingDir(async (cwd) => {
|
|
195
|
+
const omxDir = join(cwd, '.omx');
|
|
196
|
+
const stateDir = join(omxDir, 'state');
|
|
197
|
+
const logsDir = join(omxDir, 'logs');
|
|
198
|
+
const codexHome = join(cwd, 'codex-home');
|
|
199
|
+
const fakeBinDir = join(cwd, 'fake-bin');
|
|
200
|
+
const tmuxLogPath = join(cwd, 'tmux.log');
|
|
201
|
+
await mkdir(logsDir, { recursive: true });
|
|
202
|
+
await mkdir(stateDir, { recursive: true });
|
|
203
|
+
await mkdir(codexHome, { recursive: true });
|
|
204
|
+
await mkdir(fakeBinDir, { recursive: true });
|
|
205
|
+
await writeJson(join(codexHome, '.omx-config.json'), {
|
|
206
|
+
autoNudge: { enabled: true, delaySec: 0, maxNudgesPerSession: 2 },
|
|
207
|
+
});
|
|
208
|
+
// Pre-seed nudge state at the limit
|
|
209
|
+
await writeJson(join(stateDir, 'auto-nudge-state.json'), {
|
|
210
|
+
nudgeCount: 2,
|
|
211
|
+
lastNudgeAt: new Date().toISOString(),
|
|
212
|
+
});
|
|
213
|
+
await writeFile(join(fakeBinDir, 'tmux'), buildFakeTmux(tmuxLogPath));
|
|
214
|
+
await chmod(join(fakeBinDir, 'tmux'), 0o755);
|
|
215
|
+
const result = runNotifyHook(cwd, fakeBinDir, codexHome, {
|
|
216
|
+
'last-assistant-message': 'Shall I continue with the next step?',
|
|
217
|
+
});
|
|
218
|
+
assert.equal(result.status, 0, `hook failed: ${result.stderr || result.stdout}`);
|
|
219
|
+
if (existsSync(tmuxLogPath)) {
|
|
220
|
+
const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
|
|
221
|
+
assert.doesNotMatch(tmuxLog, /send-keys -t %99 -l/, 'should NOT nudge past max');
|
|
222
|
+
}
|
|
223
|
+
});
|
|
224
|
+
});
|
|
225
|
+
it('uses custom response from config', async () => {
|
|
226
|
+
await withTempWorkingDir(async (cwd) => {
|
|
227
|
+
const omxDir = join(cwd, '.omx');
|
|
228
|
+
const stateDir = join(omxDir, 'state');
|
|
229
|
+
const logsDir = join(omxDir, 'logs');
|
|
230
|
+
const codexHome = join(cwd, 'codex-home');
|
|
231
|
+
const fakeBinDir = join(cwd, 'fake-bin');
|
|
232
|
+
const tmuxLogPath = join(cwd, 'tmux.log');
|
|
233
|
+
await mkdir(logsDir, { recursive: true });
|
|
234
|
+
await mkdir(stateDir, { recursive: true });
|
|
235
|
+
await mkdir(codexHome, { recursive: true });
|
|
236
|
+
await mkdir(fakeBinDir, { recursive: true });
|
|
237
|
+
await writeJson(join(codexHome, '.omx-config.json'), {
|
|
238
|
+
autoNudge: { enabled: true, delaySec: 0, response: 'continue now' },
|
|
239
|
+
});
|
|
240
|
+
await writeFile(join(fakeBinDir, 'tmux'), buildFakeTmux(tmuxLogPath));
|
|
241
|
+
await chmod(join(fakeBinDir, 'tmux'), 0o755);
|
|
242
|
+
const result = runNotifyHook(cwd, fakeBinDir, codexHome, {
|
|
243
|
+
'last-assistant-message': 'Do you want me to implement this feature?',
|
|
244
|
+
});
|
|
245
|
+
assert.equal(result.status, 0, `hook failed: ${result.stderr || result.stdout}`);
|
|
246
|
+
const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
|
|
247
|
+
assert.match(tmuxLog, /send-keys -t %99 -l continue now \[OMX_TMUX_INJECT\]/, 'should use custom response with marker');
|
|
248
|
+
});
|
|
249
|
+
});
|
|
250
|
+
it('tracks nudge count in auto-nudge-state.json', async () => {
|
|
251
|
+
await withTempWorkingDir(async (cwd) => {
|
|
252
|
+
const omxDir = join(cwd, '.omx');
|
|
253
|
+
const stateDir = join(omxDir, 'state');
|
|
254
|
+
const logsDir = join(omxDir, 'logs');
|
|
255
|
+
const codexHome = join(cwd, 'codex-home');
|
|
256
|
+
const fakeBinDir = join(cwd, 'fake-bin');
|
|
257
|
+
const tmuxLogPath = join(cwd, 'tmux.log');
|
|
258
|
+
await mkdir(logsDir, { recursive: true });
|
|
259
|
+
await mkdir(stateDir, { recursive: true });
|
|
260
|
+
await mkdir(codexHome, { recursive: true });
|
|
261
|
+
await mkdir(fakeBinDir, { recursive: true });
|
|
262
|
+
await writeJson(join(codexHome, '.omx-config.json'), {
|
|
263
|
+
autoNudge: { enabled: true, delaySec: 0 },
|
|
264
|
+
});
|
|
265
|
+
await writeFile(join(fakeBinDir, 'tmux'), buildFakeTmux(tmuxLogPath));
|
|
266
|
+
await chmod(join(fakeBinDir, 'tmux'), 0o755);
|
|
267
|
+
const result = runNotifyHook(cwd, fakeBinDir, codexHome, {
|
|
268
|
+
'last-assistant-message': 'Ready to proceed when you are.',
|
|
269
|
+
});
|
|
270
|
+
assert.equal(result.status, 0, `hook failed: ${result.stderr || result.stdout}`);
|
|
271
|
+
const nudgeStatePath = join(stateDir, 'auto-nudge-state.json');
|
|
272
|
+
assert.ok(existsSync(nudgeStatePath), 'auto-nudge-state.json should be created');
|
|
273
|
+
const nudgeState = JSON.parse(await readFile(nudgeStatePath, 'utf-8'));
|
|
274
|
+
assert.equal(nudgeState.nudgeCount, 1, 'nudge count should be 1');
|
|
275
|
+
assert.ok(nudgeState.lastNudgeAt, 'should have lastNudgeAt timestamp');
|
|
276
|
+
});
|
|
277
|
+
});
|
|
278
|
+
it('detects all default stall patterns case-insensitively', async () => {
|
|
279
|
+
const patterns = [
|
|
280
|
+
'If You Want me to make changes',
|
|
281
|
+
'Would You Like me to continue?',
|
|
282
|
+
'Shall I proceed with the implementation?',
|
|
283
|
+
'Next I Can refactor the module for clarity.',
|
|
284
|
+
'Do You Want Me To apply this fix?',
|
|
285
|
+
'Let Me Know If you need anything else.',
|
|
286
|
+
'Want Me To make those changes?',
|
|
287
|
+
'Let Me Know what you think.',
|
|
288
|
+
'Just Let Me Know when ready.',
|
|
289
|
+
'I Can Also refactor the tests.',
|
|
290
|
+
'I Could Also add more tests if needed.',
|
|
291
|
+
'READY TO PROCEED with the next step.',
|
|
292
|
+
'Should I go ahead and deploy?',
|
|
293
|
+
'Whenever You are ready, I can start.',
|
|
294
|
+
'Say Go when you are ready.',
|
|
295
|
+
'Say Yes to confirm the changes.',
|
|
296
|
+
'Type Continue to proceed with the next step.',
|
|
297
|
+
"And I'll Continue once you confirm.",
|
|
298
|
+
"And I'll Proceed with the deployment.",
|
|
299
|
+
"I'll Keep Driving the implementation forward.",
|
|
300
|
+
"I'll Keep Pushing on the test coverage.",
|
|
301
|
+
"I'll Move Forward with the remaining items.",
|
|
302
|
+
"I'll Drive Forward from here.",
|
|
303
|
+
"I'll Proceed From Here with the next task.",
|
|
304
|
+
"I'll Continue From this point onward.",
|
|
305
|
+
];
|
|
306
|
+
for (const message of patterns) {
|
|
307
|
+
await withTempWorkingDir(async (cwd) => {
|
|
308
|
+
const omxDir = join(cwd, '.omx');
|
|
309
|
+
const stateDir = join(omxDir, 'state');
|
|
310
|
+
const logsDir = join(omxDir, 'logs');
|
|
311
|
+
const codexHome = join(cwd, 'codex-home');
|
|
312
|
+
const fakeBinDir = join(cwd, 'fake-bin');
|
|
313
|
+
const tmuxLogPath = join(cwd, 'tmux.log');
|
|
314
|
+
await mkdir(logsDir, { recursive: true });
|
|
315
|
+
await mkdir(stateDir, { recursive: true });
|
|
316
|
+
await mkdir(codexHome, { recursive: true });
|
|
317
|
+
await mkdir(fakeBinDir, { recursive: true });
|
|
318
|
+
await writeJson(join(codexHome, '.omx-config.json'), {
|
|
319
|
+
autoNudge: { enabled: true, delaySec: 0 },
|
|
320
|
+
});
|
|
321
|
+
await writeFile(join(fakeBinDir, 'tmux'), buildFakeTmux(tmuxLogPath));
|
|
322
|
+
await chmod(join(fakeBinDir, 'tmux'), 0o755);
|
|
323
|
+
const result = runNotifyHook(cwd, fakeBinDir, codexHome, {
|
|
324
|
+
'last-assistant-message': message,
|
|
325
|
+
});
|
|
326
|
+
assert.equal(result.status, 0, `hook failed for pattern "${message}": ${result.stderr || result.stdout}`);
|
|
327
|
+
assert.ok(existsSync(tmuxLogPath), `tmux should be called for pattern: "${message}"`);
|
|
328
|
+
const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
|
|
329
|
+
assert.match(tmuxLog, /send-keys -t %99 -l yes, proceed \[OMX_TMUX_INJECT\]/, `should nudge with marker for: "${message}"`);
|
|
330
|
+
});
|
|
331
|
+
}
|
|
332
|
+
});
|
|
333
|
+
it('uses custom patterns from config', async () => {
|
|
334
|
+
await withTempWorkingDir(async (cwd) => {
|
|
335
|
+
const omxDir = join(cwd, '.omx');
|
|
336
|
+
const stateDir = join(omxDir, 'state');
|
|
337
|
+
const logsDir = join(omxDir, 'logs');
|
|
338
|
+
const codexHome = join(cwd, 'codex-home');
|
|
339
|
+
const fakeBinDir = join(cwd, 'fake-bin');
|
|
340
|
+
const tmuxLogPath = join(cwd, 'tmux.log');
|
|
341
|
+
await mkdir(logsDir, { recursive: true });
|
|
342
|
+
await mkdir(stateDir, { recursive: true });
|
|
343
|
+
await mkdir(codexHome, { recursive: true });
|
|
344
|
+
await mkdir(fakeBinDir, { recursive: true });
|
|
345
|
+
// Custom patterns that replace defaults
|
|
346
|
+
await writeJson(join(codexHome, '.omx-config.json'), {
|
|
347
|
+
autoNudge: {
|
|
348
|
+
enabled: true,
|
|
349
|
+
delaySec: 0,
|
|
350
|
+
patterns: ['awaiting approval'],
|
|
351
|
+
},
|
|
352
|
+
});
|
|
353
|
+
await writeFile(join(fakeBinDir, 'tmux'), buildFakeTmux(tmuxLogPath));
|
|
354
|
+
await chmod(join(fakeBinDir, 'tmux'), 0o755);
|
|
355
|
+
// Default pattern should NOT trigger with custom config
|
|
356
|
+
const result1 = runNotifyHook(cwd, fakeBinDir, codexHome, {
|
|
357
|
+
'last-assistant-message': 'Would you like me to proceed?',
|
|
358
|
+
});
|
|
359
|
+
assert.equal(result1.status, 0);
|
|
360
|
+
if (existsSync(tmuxLogPath)) {
|
|
361
|
+
const log1 = await readFile(tmuxLogPath, 'utf-8');
|
|
362
|
+
assert.doesNotMatch(log1, /send-keys -t %99 -l/, 'default pattern should not match with custom config');
|
|
363
|
+
}
|
|
364
|
+
// Clean tmux log for second run
|
|
365
|
+
if (existsSync(tmuxLogPath)) {
|
|
366
|
+
await writeFile(tmuxLogPath, '');
|
|
367
|
+
}
|
|
368
|
+
// Custom pattern should trigger
|
|
369
|
+
const result2 = runNotifyHook(cwd, fakeBinDir, codexHome, {
|
|
370
|
+
'last-assistant-message': 'Changes ready. Awaiting approval before applying.',
|
|
371
|
+
});
|
|
372
|
+
assert.equal(result2.status, 0);
|
|
373
|
+
const log2 = await readFile(tmuxLogPath, 'utf-8');
|
|
374
|
+
assert.match(log2, /send-keys -t %99 -l yes, proceed \[OMX_TMUX_INJECT\]/, 'custom pattern should trigger nudge with marker');
|
|
375
|
+
});
|
|
376
|
+
});
|
|
377
|
+
it('defaults to enabled when no config file exists', async () => {
|
|
378
|
+
await withTempWorkingDir(async (cwd) => {
|
|
379
|
+
const omxDir = join(cwd, '.omx');
|
|
380
|
+
const stateDir = join(omxDir, 'state');
|
|
381
|
+
const logsDir = join(omxDir, 'logs');
|
|
382
|
+
const codexHome = join(cwd, 'codex-home');
|
|
383
|
+
const fakeBinDir = join(cwd, 'fake-bin');
|
|
384
|
+
const tmuxLogPath = join(cwd, 'tmux.log');
|
|
385
|
+
await mkdir(logsDir, { recursive: true });
|
|
386
|
+
await mkdir(stateDir, { recursive: true });
|
|
387
|
+
await mkdir(codexHome, { recursive: true });
|
|
388
|
+
await mkdir(fakeBinDir, { recursive: true });
|
|
389
|
+
// No .omx-config.json at all — should use defaults (enabled=true)
|
|
390
|
+
await writeFile(join(fakeBinDir, 'tmux'), buildFakeTmux(tmuxLogPath));
|
|
391
|
+
await chmod(join(fakeBinDir, 'tmux'), 0o755);
|
|
392
|
+
const result = runNotifyHook(cwd, fakeBinDir, codexHome, {
|
|
393
|
+
'last-assistant-message': 'If you want, I can fix the remaining issues.',
|
|
394
|
+
});
|
|
395
|
+
assert.equal(result.status, 0, `hook failed: ${result.stderr || result.stdout}`);
|
|
396
|
+
assert.ok(existsSync(tmuxLogPath), 'tmux should be called with defaults');
|
|
397
|
+
const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
|
|
398
|
+
assert.match(tmuxLog, /send-keys -t %99 -l yes, proceed \[OMX_TMUX_INJECT\]/, 'should nudge with default config and marker');
|
|
399
|
+
});
|
|
400
|
+
});
|
|
401
|
+
it('does not nudge when TMUX_PANE is not set', async () => {
|
|
402
|
+
await withTempWorkingDir(async (cwd) => {
|
|
403
|
+
const omxDir = join(cwd, '.omx');
|
|
404
|
+
const stateDir = join(omxDir, 'state');
|
|
405
|
+
const logsDir = join(omxDir, 'logs');
|
|
406
|
+
const codexHome = join(cwd, 'codex-home');
|
|
407
|
+
const fakeBinDir = join(cwd, 'fake-bin');
|
|
408
|
+
const tmuxLogPath = join(cwd, 'tmux.log');
|
|
409
|
+
await mkdir(logsDir, { recursive: true });
|
|
410
|
+
await mkdir(stateDir, { recursive: true });
|
|
411
|
+
await mkdir(codexHome, { recursive: true });
|
|
412
|
+
await mkdir(fakeBinDir, { recursive: true });
|
|
413
|
+
await writeJson(join(codexHome, '.omx-config.json'), {
|
|
414
|
+
autoNudge: { enabled: true, delaySec: 0 },
|
|
415
|
+
});
|
|
416
|
+
await writeFile(join(fakeBinDir, 'tmux'), buildFakeTmux(tmuxLogPath));
|
|
417
|
+
await chmod(join(fakeBinDir, 'tmux'), 0o755);
|
|
418
|
+
const result = runNotifyHook(cwd, fakeBinDir, codexHome, {
|
|
419
|
+
'last-assistant-message': 'Would you like me to continue?',
|
|
420
|
+
}, {
|
|
421
|
+
TMUX_PANE: '', // No pane available
|
|
422
|
+
TMUX: '',
|
|
423
|
+
});
|
|
424
|
+
assert.equal(result.status, 0, `hook failed: ${result.stderr || result.stdout}`);
|
|
425
|
+
if (existsSync(tmuxLogPath)) {
|
|
426
|
+
const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
|
|
427
|
+
assert.doesNotMatch(tmuxLog, /send-keys.*-l yes, proceed/, 'should not nudge without pane');
|
|
428
|
+
}
|
|
429
|
+
});
|
|
430
|
+
});
|
|
431
|
+
});
|
|
432
|
+
//# sourceMappingURL=notify-hook-auto-nudge.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notify-hook-auto-nudge.test.js","sourceRoot":"","sources":["../../../src/hooks/__tests__/notify-hook-auto-nudge.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -105,6 +105,7 @@ describe('notify-hook team leader nudge', () => {
|
|
|
105
105
|
assert.match(tmuxLog, /send-keys/);
|
|
106
106
|
assert.match(tmuxLog, /-t devsess:0/);
|
|
107
107
|
assert.match(tmuxLog, /Team alpha:/);
|
|
108
|
+
assert.match(tmuxLog, /\[OMX_TMUX_INJECT\]/, 'should include injection marker');
|
|
108
109
|
});
|
|
109
110
|
});
|
|
110
111
|
it('nudges when worker panes are alive and leader is stale (no recent HUD turn)', async () => {
|
|
@@ -144,6 +145,7 @@ describe('notify-hook team leader nudge', () => {
|
|
|
144
145
|
assert.match(tmuxLog, /Team beta:/);
|
|
145
146
|
assert.match(tmuxLog, /leader stale/);
|
|
146
147
|
assert.match(tmuxLog, /pane\(s\) still active/);
|
|
148
|
+
assert.match(tmuxLog, /\[OMX_TMUX_INJECT\]/, 'should include injection marker');
|
|
147
149
|
});
|
|
148
150
|
});
|
|
149
151
|
it('emits team_leader_nudge event to events.ndjson when nudge fires', async () => {
|
|
@@ -273,6 +275,7 @@ describe('notify-hook team leader nudge', () => {
|
|
|
273
275
|
const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
|
|
274
276
|
assert.match(tmuxLog, /leader stale/);
|
|
275
277
|
assert.match(tmuxLog, /msg\(s\) pending/);
|
|
278
|
+
assert.match(tmuxLog, /\[OMX_TMUX_INJECT\]/, 'should include injection marker');
|
|
276
279
|
// Verify event reason
|
|
277
280
|
const eventsPath = join(eventsDir, 'events.ndjson');
|
|
278
281
|
assert.ok(existsSync(eventsPath), 'events.ndjson should exist');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notify-hook-team-leader-nudge.test.js","sourceRoot":"","sources":["../../../src/hooks/__tests__/notify-hook-team-leader-nudge.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"notify-hook-team-leader-nudge.test.js","sourceRoot":"","sources":["../../../src/hooks/__tests__/notify-hook-team-leader-nudge.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,iCAAiC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEvF,KAAK,UAAU,kBAAkB,CAAC,GAAmC;IACnE,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,wBAAwB,CAAC,CAAC,CAAC;IACpE,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAY,EAAE,KAAc;IACnD,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,aAAa,CAAC,WAAmB;IACxC,OAAO;;gBAEO,WAAW;;;;;;;;;;;;;;;CAe1B,CAAC;AACF,CAAC;AAED,SAAS,aAAa,CACpB,GAAW,EACX,UAAkB,EAClB,WAAmC,EAAE;IAErC,MAAM,OAAO,GAAG;QACd,GAAG;QACH,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,aAAa;QAC1B,SAAS,EAAE,QAAQ,IAAI,CAAC,GAAG,EAAE,EAAE;QAC/B,gBAAgB,EAAE,CAAC,MAAM,CAAC;QAC1B,wBAAwB,EAAE,QAAQ;KACnC,CAAC;IAEF,OAAO,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE;QACzF,QAAQ,EAAE,MAAM;QAChB,GAAG,EAAE;YACH,GAAG,OAAO,CAAC,GAAG;YACd,IAAI,EAAE,GAAG,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE;YAC/C,wBAAwB,EAAE,OAAO;YACjC,wBAAwB,EAAE,OAAO;YACjC,eAAe,EAAE,EAAE;YACnB,IAAI,EAAE,EAAE;YACR,SAAS,EAAE,EAAE;YACb,GAAG,QAAQ;SACZ;KACF,CAAC,CAAC;AACL,CAAC;AAED,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;IAC7C,EAAE,CAAC,+EAA+E,EAAE,KAAK,IAAI,EAAE;QAC7F,MAAM,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACrC,MAAM,QAAQ,GAAG,OAAO,CAAC;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YACzC,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAE1C,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7C,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAE7C,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,EAAE;gBACjD,MAAM,EAAE,IAAI;gBACZ,SAAS,EAAE,QAAQ;gBACnB,aAAa,EAAE,WAAW;aAC3B,CAAC,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE;gBAC5C,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,WAAW;aAC1B,CAAC,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,EAAE;gBACrD,MAAM,EAAE,cAAc;gBACtB,QAAQ,EAAE;oBACR;wBACE,UAAU,EAAE,IAAI;wBAChB,WAAW,EAAE,UAAU;wBACvB,SAAS,EAAE,cAAc;wBACzB,IAAI,EAAE,KAAK;wBACX,UAAU,EAAE,0BAA0B;qBACvC;iBACF;aACF,CAAC,CAAC;YAEH,MAAM,SAAS,CAAC,YAAY,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC;YAC1D,MAAM,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YAEjC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAC9C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,uBAAuB,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAExF,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACrD,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YACnC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YACrC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,qBAAqB,EAAE,iCAAiC,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;QAC3F,MAAM,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACrC,MAAM,QAAQ,GAAG,MAAM,CAAC;YACxB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YACzC,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAE1C,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3D,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAE7C,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,EAAE;gBACjD,MAAM,EAAE,IAAI;gBACZ,SAAS,EAAE,QAAQ;gBACnB,aAAa,EAAE,WAAW;aAC3B,CAAC,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE;gBAC5C,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,eAAe;aAC9B,CAAC,CAAC;YAEH,sDAAsD;YACtD,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE;gBAChD,YAAY,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,WAAW,EAAE;gBAC1D,UAAU,EAAE,CAAC;aACd,CAAC,CAAC;YAEH,oEAAoE;YACpE,MAAM,SAAS,CAAC,YAAY,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC;YAC1D,MAAM,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YAEjC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAC9C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,uBAAuB,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAExF,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACrD,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YACnC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YACpC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;YAChD,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,qBAAqB,EAAE,iCAAiC,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACrC,MAAM,QAAQ,GAAG,OAAO,CAAC;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;YACjD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YACzC,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAE1C,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5C,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7C,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAE7C,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,EAAE;gBACjD,MAAM,EAAE,IAAI;gBACZ,SAAS,EAAE,QAAQ;gBACnB,aAAa,EAAE,WAAW;aAC3B,CAAC,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE;gBAC5C,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,gBAAgB;aAC/B,CAAC,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,EAAE;gBACrD,MAAM,EAAE,cAAc;gBACtB,QAAQ,EAAE;oBACR;wBACE,UAAU,EAAE,QAAQ;wBACpB,WAAW,EAAE,UAAU;wBACvB,SAAS,EAAE,cAAc;wBACzB,IAAI,EAAE,eAAe;wBACrB,UAAU,EAAE,0BAA0B;qBACvC;iBACF;aACF,CAAC,CAAC;YAEH,MAAM,SAAS,CAAC,YAAY,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC;YAC1D,MAAM,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YAEjC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAC9C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,uBAAuB,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAExF,2BAA2B;YAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;YACpD,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,wCAAwC,CAAC,CAAC;YAC5E,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9E,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAmB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAC;YACxF,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,uCAAuC,CAAC,CAAC;YAC/D,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACxC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YAChD,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACrC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YACzC,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAE1C,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3C,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAE7C,sCAAsC;YACtC,MAAM,SAAS,CAAC,YAAY,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC;YAC1D,MAAM,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YAEjC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAC9C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,uBAAuB,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAExF,iEAAiE;YACjE,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;YACvC,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBACrD,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;YACxD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACrC,MAAM,QAAQ,GAAG,OAAO,CAAC;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;YACjD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YACzC,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAE1C,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5C,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7C,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAE7C,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,EAAE;gBACjD,MAAM,EAAE,IAAI;gBACZ,SAAS,EAAE,QAAQ;gBACnB,aAAa,EAAE,WAAW;aAC3B,CAAC,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE;gBAC5C,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,gBAAgB;aAC/B,CAAC,CAAC;YAEH,eAAe;YACf,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE;gBAChD,YAAY,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,WAAW,EAAE;gBAC1D,UAAU,EAAE,CAAC;aACd,CAAC,CAAC;YAEH,uBAAuB;YACvB,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,EAAE;gBACrD,MAAM,EAAE,cAAc;gBACtB,QAAQ,EAAE;oBACR;wBACE,UAAU,EAAE,WAAW;wBACvB,WAAW,EAAE,UAAU;wBACvB,SAAS,EAAE,cAAc;wBACzB,IAAI,EAAE,MAAM;wBACZ,UAAU,EAAE,0BAA0B;qBACvC;iBACF;aACF,CAAC,CAAC;YAEH,MAAM,SAAS,CAAC,YAAY,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC;YAC1D,MAAM,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YAEjC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAC9C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,uBAAuB,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAExF,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACrD,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;YAC1C,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,qBAAqB,EAAE,iCAAiC,CAAC,CAAC;YAEhF,sBAAsB;YACtB,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;YACpD,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,4BAA4B,CAAC,CAAC;YAChE,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9E,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAmB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAC;YACxF,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;YACtB,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/dist/hooks/emulator.d.ts
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* 2. PreToolUse -> AGENTS.md instructions (inline guidance, no hook needed)
|
|
9
9
|
* 3. PostToolUse -> notify config (fire-and-forget, no context injection)
|
|
10
10
|
* 4. UserPromptSubmit -> AGENTS.md keyword detection instructions
|
|
11
|
-
* 5. SubagentStart/Stop -> Codex CLI
|
|
11
|
+
* 5. SubagentStart/Stop -> Codex CLI multi_agent system (native tracking)
|
|
12
12
|
* 6. PreCompact -> Not available (Codex manages compaction internally)
|
|
13
13
|
* 7. Stop -> notify config (can detect turn completion)
|
|
14
14
|
*
|
package/dist/hooks/emulator.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* 2. PreToolUse -> AGENTS.md instructions (inline guidance, no hook needed)
|
|
9
9
|
* 3. PostToolUse -> notify config (fire-and-forget, no context injection)
|
|
10
10
|
* 4. UserPromptSubmit -> AGENTS.md keyword detection instructions
|
|
11
|
-
* 5. SubagentStart/Stop -> Codex CLI
|
|
11
|
+
* 5. SubagentStart/Stop -> Codex CLI multi_agent system (native tracking)
|
|
12
12
|
* 6. PreCompact -> Not available (Codex manages compaction internally)
|
|
13
13
|
* 7. Stop -> notify config (can detect turn completion)
|
|
14
14
|
*
|
|
@@ -45,14 +45,14 @@ export const HOOK_MAPPING = {
|
|
|
45
45
|
notes: 'Model detects keywords via AGENTS.md instructions instead of external hook',
|
|
46
46
|
},
|
|
47
47
|
SubagentStart: {
|
|
48
|
-
mechanism: 'Codex CLI
|
|
48
|
+
mechanism: 'Codex CLI multi_agent system',
|
|
49
49
|
capability: 'full',
|
|
50
|
-
notes: 'Native sub-agent lifecycle tracking via
|
|
50
|
+
notes: 'Native sub-agent lifecycle tracking via multi_agent feature',
|
|
51
51
|
},
|
|
52
52
|
SubagentStop: {
|
|
53
|
-
mechanism: 'Codex CLI
|
|
53
|
+
mechanism: 'Codex CLI multi_agent system',
|
|
54
54
|
capability: 'full',
|
|
55
|
-
notes: 'Native sub-agent lifecycle tracking via
|
|
55
|
+
notes: 'Native sub-agent lifecycle tracking via multi_agent feature',
|
|
56
56
|
},
|
|
57
57
|
PreCompact: {
|
|
58
58
|
mechanism: 'AGENTS.md overlay compaction protocol',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emulator.js","sourceRoot":"","sources":["../../src/hooks/emulator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAgBH;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAIpB;IACH,YAAY,EAAE;QACZ,SAAS,EAAE,4CAA4C;QACvD,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,yHAAyH;KACjI;IACD,UAAU,EAAE;QACV,SAAS,EAAE,2BAA2B;QACtC,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,qFAAqF;KAC7F;IACD,WAAW,EAAE;QACX,SAAS,EAAE,iCAAiC;QAC5C,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,4EAA4E;KACpF;IACD,gBAAgB,EAAE;QAChB,SAAS,EAAE,uCAAuC;QAClD,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,4EAA4E;KACpF;IACD,aAAa,EAAE;QACb,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"emulator.js","sourceRoot":"","sources":["../../src/hooks/emulator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAgBH;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAIpB;IACH,YAAY,EAAE;QACZ,SAAS,EAAE,4CAA4C;QACvD,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,yHAAyH;KACjI;IACD,UAAU,EAAE;QACV,SAAS,EAAE,2BAA2B;QACtC,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,qFAAqF;KAC7F;IACD,WAAW,EAAE;QACX,SAAS,EAAE,iCAAiC;QAC5C,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,4EAA4E;KACpF;IACD,gBAAgB,EAAE;QAChB,SAAS,EAAE,uCAAuC;QAClD,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,4EAA4E;KACpF;IACD,aAAa,EAAE;QACb,SAAS,EAAE,8BAA8B;QACzC,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,6DAA6D;KACrE;IACD,YAAY,EAAE;QACZ,SAAS,EAAE,8BAA8B;QACzC,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,6DAA6D;KACrE;IACD,UAAU,EAAE;QACV,SAAS,EAAE,uCAAuC;QAClD,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,sHAAsH;KAC9H;IACD,IAAI,EAAE;QACJ,SAAS,EAAE,oCAAoC;QAC/C,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,6FAA6F;KACrG;IACD,UAAU,EAAE;QACV,SAAS,EAAE,gCAAgC;QAC3C,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,2FAA2F;KACnG;CACF,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA2B;IACtD,WAAW,EAAE,mDAAmD;IAChE,OAAO,EAAE,mDAAmD;IAC5D,WAAW,EAAE,4CAA4C;IACzD,KAAK,EAAE,4CAA4C;IACnD,SAAS,EAAE,gDAAgD;IAC3D,KAAK,EAAE,gDAAgD;IACvD,MAAM,EAAE,yBAAyB;IACjC,SAAS,EAAE,4DAA4D;IACvE,MAAM,EAAE,gCAAgC;IACxC,kBAAkB,EAAE,gCAAgC;IACpD,OAAO,EAAE,0EAA0E;IACnF,mBAAmB,EAAE,0EAA0E;IAC/F,UAAU,EAAE,mCAAmC;IAC/C,UAAU,EAAE,iCAAiC;IAC7C,QAAQ,EAAE,+BAA+B;CAC1C,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,+BAA+B;IAC7C,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;SAC3C,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,qBAAqB,OAAO,MAAM,MAAM,EAAE,CAAC;SACtE,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO;;;EAGP,KAAK;;;;;CAKN,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dispatcher.test.d.ts","sourceRoot":"","sources":["../../../../src/hooks/extensibility/__tests__/dispatcher.test.ts"],"names":[],"mappings":""}
|