oh-my-codex 0.12.0 → 0.12.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 +5 -5
- package/Cargo.toml +1 -1
- package/README.md +7 -0
- package/dist/cli/__tests__/cleanup.test.js +15 -0
- package/dist/cli/__tests__/cleanup.test.js.map +1 -1
- package/dist/cli/__tests__/index.test.js +147 -2
- package/dist/cli/__tests__/index.test.js.map +1 -1
- package/dist/cli/__tests__/launch-fallback.test.js +95 -1
- package/dist/cli/__tests__/launch-fallback.test.js.map +1 -1
- package/dist/cli/cleanup.d.ts.map +1 -1
- package/dist/cli/cleanup.js +6 -3
- package/dist/cli/cleanup.js.map +1 -1
- package/dist/cli/index.d.ts +18 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +178 -23
- package/dist/cli/index.js.map +1 -1
- package/dist/hooks/__tests__/agents-overlay.test.js +18 -0
- package/dist/hooks/__tests__/agents-overlay.test.js.map +1 -1
- package/dist/hooks/__tests__/keyword-detector.test.js +156 -1
- package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js +56 -2
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js.map +1 -1
- package/dist/hooks/agents-overlay.d.ts.map +1 -1
- package/dist/hooks/agents-overlay.js +25 -3
- package/dist/hooks/agents-overlay.js.map +1 -1
- package/dist/hooks/keyword-detector.d.ts +5 -1
- package/dist/hooks/keyword-detector.d.ts.map +1 -1
- package/dist/hooks/keyword-detector.js +104 -6
- package/dist/hooks/keyword-detector.js.map +1 -1
- package/dist/hud/__tests__/render.test.js +6 -0
- package/dist/hud/__tests__/render.test.js.map +1 -1
- package/dist/hud/__tests__/state.test.js +55 -1
- package/dist/hud/__tests__/state.test.js.map +1 -1
- package/dist/hud/render.d.ts.map +1 -1
- package/dist/hud/render.js +8 -3
- package/dist/hud/render.js.map +1 -1
- package/dist/hud/state.d.ts.map +1 -1
- package/dist/hud/state.js +71 -9
- package/dist/hud/state.js.map +1 -1
- package/dist/hud/types.d.ts +2 -2
- package/dist/hud/types.d.ts.map +1 -1
- package/dist/mcp/__tests__/state-server.test.js +82 -0
- package/dist/mcp/__tests__/state-server.test.js.map +1 -1
- package/dist/mcp/state-server.d.ts +4 -4
- package/dist/mcp/state-server.d.ts.map +1 -1
- package/dist/mcp/state-server.js +35 -0
- package/dist/mcp/state-server.js.map +1 -1
- package/dist/scripts/__tests__/codex-native-hook.test.js +336 -6
- 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 +221 -23
- package/dist/scripts/codex-native-hook.js.map +1 -1
- package/dist/scripts/notify-fallback-watcher.js +60 -3
- package/dist/scripts/notify-fallback-watcher.js.map +1 -1
- package/dist/state/__tests__/skill-active.test.d.ts +2 -0
- package/dist/state/__tests__/skill-active.test.d.ts.map +1 -0
- package/dist/state/__tests__/skill-active.test.js +84 -0
- package/dist/state/__tests__/skill-active.test.js.map +1 -0
- package/dist/state/skill-active.d.ts +55 -0
- package/dist/state/skill-active.d.ts.map +1 -0
- package/dist/state/skill-active.js +179 -0
- package/dist/state/skill-active.js.map +1 -0
- package/dist/team/__tests__/runtime-cli.test.js +85 -0
- package/dist/team/__tests__/runtime-cli.test.js.map +1 -1
- package/dist/team/__tests__/runtime.test.js +241 -7
- package/dist/team/__tests__/runtime.test.js.map +1 -1
- package/dist/team/__tests__/state.test.js +7 -0
- package/dist/team/__tests__/state.test.js.map +1 -1
- package/dist/team/__tests__/tmux-session.test.js +143 -0
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/runtime-cli.d.ts +15 -0
- package/dist/team/runtime-cli.d.ts.map +1 -1
- package/dist/team/runtime-cli.js +37 -20
- package/dist/team/runtime-cli.js.map +1 -1
- package/dist/team/runtime.d.ts +1 -0
- package/dist/team/runtime.d.ts.map +1 -1
- package/dist/team/runtime.js +16 -8
- package/dist/team/runtime.js.map +1 -1
- package/dist/team/state/mailbox.d.ts.map +1 -1
- package/dist/team/state/mailbox.js +6 -0
- package/dist/team/state/mailbox.js.map +1 -1
- package/dist/team/tmux-session.d.ts.map +1 -1
- package/dist/team/tmux-session.js +32 -4
- package/dist/team/tmux-session.js.map +1 -1
- package/package.json +1 -1
- package/prompts/information-architect.md +15 -102
- package/src/scripts/__tests__/codex-native-hook.test.ts +421 -6
- package/src/scripts/codex-native-hook.ts +287 -25
- package/src/scripts/notify-fallback-watcher.ts +62 -5
package/dist/mcp/state-server.js
CHANGED
|
@@ -10,6 +10,7 @@ import { existsSync } from "fs";
|
|
|
10
10
|
import { join } from "path";
|
|
11
11
|
import { getAllScopedStatePaths, getReadScopedStateDirs, getReadScopedStatePaths, resolveStateScope, getStateDir, getStatePath, resolveWorkingDirectoryForState, validateSessionId, } from "./state-paths.js";
|
|
12
12
|
import { withModeRuntimeContext } from "../state/mode-state-context.js";
|
|
13
|
+
import { SKILL_ACTIVE_STATE_MODE, readSkillActiveState, syncCanonicalSkillStateForMode, writeSkillActiveStateCopies, } from "../state/skill-active.js";
|
|
13
14
|
import { RALPH_PHASES, validateAndNormalizeRalphState, } from "../ralph/contract.js";
|
|
14
15
|
import { ensureCanonicalRalphArtifacts } from "../ralph/persistence.js";
|
|
15
16
|
import { autoStartStdioMcpServer } from "./bootstrap.js";
|
|
@@ -22,6 +23,7 @@ const SUPPORTED_MODES = [
|
|
|
22
23
|
"ultraqa",
|
|
23
24
|
"ralplan",
|
|
24
25
|
"deep-interview",
|
|
26
|
+
"skill-active",
|
|
25
27
|
];
|
|
26
28
|
const STATE_TOOL_NAMES = new Set([
|
|
27
29
|
"state_read",
|
|
@@ -314,6 +316,22 @@ export async function handleStateToolCall(request) {
|
|
|
314
316
|
isError: true,
|
|
315
317
|
};
|
|
316
318
|
}
|
|
319
|
+
if (mode === SKILL_ACTIVE_STATE_MODE) {
|
|
320
|
+
const state = await readSkillActiveState(path);
|
|
321
|
+
if (state) {
|
|
322
|
+
await writeSkillActiveStateCopies(cwd, state, effectiveSessionId);
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
else {
|
|
326
|
+
const data = JSON.parse(await readFile(path, "utf-8"));
|
|
327
|
+
await syncCanonicalSkillStateForMode({
|
|
328
|
+
cwd,
|
|
329
|
+
mode,
|
|
330
|
+
active: data.active === true,
|
|
331
|
+
currentPhase: typeof data.current_phase === "string" ? data.current_phase : undefined,
|
|
332
|
+
sessionId: effectiveSessionId,
|
|
333
|
+
});
|
|
334
|
+
}
|
|
317
335
|
return {
|
|
318
336
|
content: [
|
|
319
337
|
{
|
|
@@ -331,6 +349,14 @@ export async function handleStateToolCall(request) {
|
|
|
331
349
|
if (existsSync(path)) {
|
|
332
350
|
await unlink(path);
|
|
333
351
|
}
|
|
352
|
+
if (mode !== SKILL_ACTIVE_STATE_MODE) {
|
|
353
|
+
await syncCanonicalSkillStateForMode({
|
|
354
|
+
cwd,
|
|
355
|
+
mode,
|
|
356
|
+
active: false,
|
|
357
|
+
sessionId: effectiveSessionId,
|
|
358
|
+
});
|
|
359
|
+
}
|
|
334
360
|
return {
|
|
335
361
|
content: [
|
|
336
362
|
{
|
|
@@ -348,6 +374,13 @@ export async function handleStateToolCall(request) {
|
|
|
348
374
|
await unlink(path);
|
|
349
375
|
removedPaths.push(path);
|
|
350
376
|
}
|
|
377
|
+
if (mode !== SKILL_ACTIVE_STATE_MODE) {
|
|
378
|
+
await syncCanonicalSkillStateForMode({
|
|
379
|
+
cwd,
|
|
380
|
+
mode,
|
|
381
|
+
active: false,
|
|
382
|
+
});
|
|
383
|
+
}
|
|
351
384
|
return {
|
|
352
385
|
content: [
|
|
353
386
|
{
|
|
@@ -376,6 +409,8 @@ export async function handleStateToolCall(request) {
|
|
|
376
409
|
if (!f.endsWith("-state.json"))
|
|
377
410
|
continue;
|
|
378
411
|
const mode = f.replace("-state.json", "");
|
|
412
|
+
if (mode === SKILL_ACTIVE_STATE_MODE)
|
|
413
|
+
continue;
|
|
379
414
|
if (seenModes.has(mode))
|
|
380
415
|
continue;
|
|
381
416
|
seenModes.add(mode);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-server.js","sourceRoot":"","sources":["../../src/mcp/state-server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EACN,qBAAqB,EACrB,sBAAsB,GACtB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACN,QAAQ,EACR,SAAS,EACT,OAAO,EACP,KAAK,EACL,MAAM,EACN,MAAM,GACN,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EACN,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,+BAA+B,EAC/B,iBAAiB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EACN,YAAY,EACZ,8BAA8B,GAC9B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EACN,qBAAqB,EACrB,8BAA8B,GAC9B,MAAM,wBAAwB,CAAC;AAEhC,MAAM,eAAe,GAAG;IACvB,WAAW;IACX,MAAM;IACN,OAAO;IACP,WAAW;IACX,SAAS;IACT,SAAS;IACT,gBAAgB;CACP,CAAC;AAEX,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAChC,YAAY;IACZ,aAAa;IACb,aAAa;IACb,mBAAmB;IACnB,kBAAkB;CAClB,CAAC,CAAC;AACH,MAAM,oBAAoB,GAAgB,IAAI,GAAG,CAAC,CAAC,GAAG,qBAAqB,CAAC,CAAC,CAAC;AAE9E,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAyB,CAAC;AAE1D,KAAK,UAAU,kBAAkB,CAChC,IAAY,EACZ,EAAoB;IAEpB,MAAM,IAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7D,IAAI,OAAoB,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAC1C,OAAO,GAAG,OAAO,CAAC;IACnB,CAAC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACxC,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAEnC,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC3B,IAAI,CAAC;QACJ,OAAO,MAAM,EAAE,EAAE,CAAC;IACnB,CAAC;YAAS,CAAC;QACV,OAAO,EAAE,CAAC;QACV,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;YAC3C,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;IACF,CAAC;AACF,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,IAAY,EAAE,IAAY;IACxD,MAAM,OAAO,GAAG,GAAG,IAAI,QAAQ,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAClG,MAAM,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC;QACJ,MAAM,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACtC,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC;AAED,MAAM,MAAM,GAAG,IAAI,MAAM,CACxB,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,EACvC,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAC/B,CAAC;AAEF,MAAM,UAAU,qBAAqB;IACpC,OAAO;QACN;YACC,IAAI,EAAE,YAAY;YAClB,WAAW,EACV,uFAAuF;YACxF,WAAW,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACX,IAAI,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,GAAG,eAAe,CAAC;wBAC1B,WAAW,EAAE,4BAA4B;qBACzC;oBACD,gBAAgB,EAAE;wBACjB,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,4BAA4B;qBACzC;oBACD,UAAU,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,2BAA2B;qBACxC;iBACD;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aAClB;SACD;QACD;YACC,IAAI,EAAE,aAAa;YACnB,WAAW,EACV,wEAAwE;YACzE,WAAW,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACX,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,eAAe,CAAC,EAAE;oBACpD,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC3B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC7B,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAClC,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACjC,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACpC,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC9B,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAChC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;oBAClE,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACpC,UAAU,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,2BAA2B;qBACxC;iBACD;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aAClB;SACD;QACD;YACC,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,yCAAyC;YACtD,WAAW,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACX,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,eAAe,CAAC,EAAE;oBACpD,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACpC,UAAU,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,2BAA2B;qBACxC;oBACD,YAAY,EAAE;wBACb,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,sDAAsD;qBACnE;iBACD;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aAClB;SACD;QACD;YACC,IAAI,EAAE,mBAAmB;YACzB,WAAW,EAAE,kCAAkC;YAC/C,WAAW,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACX,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACpC,UAAU,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,2BAA2B;qBACxC;iBACD;aACD;SACD;QACD;YACC,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,uDAAuD;YACpE,WAAW,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACX,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,eAAe,CAAC,EAAE;oBACpD,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACpC,UAAU,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,2BAA2B;qBACxC;iBACD;aACD;SACD;KACD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7D,KAAK,EAAE,qBAAqB,EAAE;CAC9B,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAEzC;IACA,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,GAAI,IAAgC,EAAE,gBAElC,CAAC;IACb,IAAI,YAAoB,CAAC;IACzB,IAAI,CAAC;QACJ,YAAY,GAAG,+BAA+B,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO;YACN,OAAO,EAAE;gBACR;oBACC,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC;iBACzD;aACD;YACD,OAAO,EAAE,IAAI;SACb,CAAC;IACH,CAAC;IACD,IAAI,GAAG,GAAG,YAAY,CAAC;IACvB,IAAI,iBAAqC,CAAC;IAC1C,IAAI,CAAC;QACJ,iBAAiB,GAAG,iBAAiB,CACnC,IAAgC,EAAE,UAAU,CAC7C,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO;YACN,OAAO,EAAE;gBACR;oBACC,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC;iBACzD;aACD;YACD,OAAO,EAAE,IAAI;SACb,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC;YAC5C,CAAC,CAAC,MAAM,iBAAiB,CAAC,GAAG,EAAE,iBAAiB,CAAC;YACjD,CAAC,CAAC,SAAS,CAAC;QACb,MAAM,kBAAkB,GAAG,UAAU,EAAE,SAAS,CAAC;QAEjD,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,MAAM,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACnD,IAAI,kBAAkB,EAAE,CAAC;gBACxB,MAAM,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,kBAAkB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACxE,CAAC;YACD,MAAM,EAAE,yBAAyB,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;YAC1E,MAAM,yBAAyB,CAAC,GAAG,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,8BAA8B,CAC1C,IAA8C,EAC7C,IAAgC,IAAI,EAAE,CACvC,CAAC;YACF,OAAO;gBACN,OAAO,EAAE;oBACR;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACpB,KAAK,EAAE,aAAa,IAAI,+DAA+D;4BACvF,IAAI,EAAE,qBAAqB;4BAC3B,IAAI;yBACJ,CAAC;qBACF;iBACD;gBACD,OAAO,EAAE,IAAI;aACb,CAAC;QACH,CAAC;QAED,QAAQ,IAAI,EAAE,CAAC;YACd,KAAK,YAAY,CAAC,CAAC,CAAC;gBACnB,MAAM,IAAI,GAAI,IAAgC,CAAC,IAAc,CAAC;gBAC9D,IACC,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAwC,CAAC,EAClE,CAAC;oBACF,OAAO;wBACN,OAAO,EAAE;4BACR;gCACC,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCACpB,KAAK,EAAE,wBAAwB,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;iCAC3D,CAAC;6BACF;yBACD;wBACD,OAAO,EAAE,IAAI;qBACb,CAAC;gBACH,CAAC;gBACD,MAAM,KAAK,GAAG,MAAM,uBAAuB,CAC1C,IAAI,EACJ,GAAG,EACH,iBAAiB,CACjB,CAAC;gBACF,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;gBAC9D,IAAI,CAAC,IAAI,EAAE,CAAC;oBACX,OAAO;wBACN,OAAO,EAAE;4BACR,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE;yBAC/D;qBACD,CAAC;gBACH,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC3C,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YACpD,CAAC;YAED,KAAK,aAAa,CAAC,CAAC,CAAC;gBACpB,MAAM,IAAI,GAAI,IAAgC,CAAC,IAAc,CAAC;gBAC9D,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;gBACzD,MAAM,EACL,IAAI,EAAE,EAAE,EACR,gBAAgB,EAAE,EAAE,EACpB,UAAU,EAAE,IAAI,EAChB,KAAK,EAAE,WAAW,EAClB,GAAG,MAAM,EACT,GAAG,IAA+B,CAAC;gBACpC,IAAI,eAAe,GAAkB,IAAI,CAAC;gBAC1C,MAAM,kBAAkB,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;oBACzC,IAAI,QAAQ,GAA4B,EAAE,CAAC;oBAC3C,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;wBACtB,IAAI,CAAC;4BACJ,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;wBACtD,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACZ,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,6CAA6C,GAAG,CAAC,GAAG,IAAI,CACxD,CAAC;wBACH,CAAC;oBACF,CAAC;oBAED,MAAM,SAAS,GAAG;wBACjB,GAAG,QAAQ;wBACX,GAAG,MAAM;wBACT,GAAG,CAAE,WAAuC,IAAI,EAAE,CAAC;qBACxB,CAAC;oBAC7B,IACC,IAAI,KAAK,OAAO;wBAChB,kBAAkB;wBAClB,OAAO,SAAS,CAAC,oBAAoB,KAAK,QAAQ,EACjD,CAAC;wBACF,SAAS,CAAC,oBAAoB,GAAG,kBAAkB,CAAC;oBACrD,CAAC;oBAED,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;wBACtB,MAAM,aAAa,GAAG,SAAS,CAAC,aAAa,CAAC;wBAC9C,MAAM,UAAU,GAAG,8BAA8B,CAAC,SAAS,CAAC,CAAC;wBAC7D,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;4BACzC,eAAe;gCACd,UAAU,CAAC,KAAK;oCAChB,uCAAuC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;4BAClE,OAAO;wBACR,CAAC;wBACD,IACC,OAAO,aAAa,KAAK,QAAQ;4BACjC,OAAO,UAAU,CAAC,KAAK,CAAC,aAAa,KAAK,QAAQ;4BAClD,UAAU,CAAC,KAAK,CAAC,aAAa,KAAK,aAAa,EAC/C,CAAC;4BACF,UAAU,CAAC,KAAK,CAAC,2BAA2B,GAAG,aAAa,CAAC;wBAC9D,CAAC;wBACD,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;wBAC3C,MAAM,6BAA6B,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;oBAC9D,CAAC;oBAED,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;oBAC3D,MAAM,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC9D,CAAC,CAAC,CAAC;gBACH,IAAI,eAAe,EAAE,CAAC;oBACrB,OAAO;wBACN,OAAO,EAAE;4BACR;gCACC,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;6BAChD;yBACD;wBACD,OAAO,EAAE,IAAI;qBACb,CAAC;gBACH,CAAC;gBACD,OAAO;oBACN,OAAO,EAAE;wBACR;4BACC,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;yBACnD;qBACD;iBACD,CAAC;YACH,CAAC;YAED,KAAK,aAAa,CAAC,CAAC,CAAC;gBACpB,MAAM,IAAI,GAAI,IAAgC,CAAC,IAAc,CAAC;gBAC9D,MAAM,WAAW,GACf,IAAgC,CAAC,YAAY,KAAK,IAAI,CAAC;gBAEzD,IAAI,CAAC,WAAW,EAAE,CAAC;oBAClB,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;oBACzD,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;wBACtB,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;oBACpB,CAAC;oBACD,OAAO;wBACN,OAAO,EAAE;4BACR;gCACC,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;6BACnD;yBACD;qBACD,CAAC;gBACH,CAAC;gBAED,MAAM,YAAY,GAAa,EAAE,CAAC;gBAClC,MAAM,KAAK,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACtD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;wBAAE,SAAS;oBAChC,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;oBACnB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzB,CAAC;gBAED,OAAO;oBACN,OAAO,EAAE;wBACR;4BACC,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACpB,OAAO,EAAE,IAAI;gCACb,IAAI;gCACJ,YAAY,EAAE,IAAI;gCAClB,OAAO,EAAE,YAAY,CAAC,MAAM;gCAC5B,KAAK,EAAE,YAAY;gCACnB,OAAO,EACN,2DAA2D;6BAC5D,CAAC;yBACF;qBACD;iBACD,CAAC;YACH,CAAC;YAED,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBAC1B,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;gBACvE,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;gBACpC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oBAClC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;wBAAE,SAAS;oBACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;oBACtC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;wBACvB,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;4BAAE,SAAS;wBACzC,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;wBAC1C,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;4BAAE,SAAS;wBAClC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBACpB,IAAI,CAAC;4BACJ,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CACtB,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAC1C,CAAC;4BACF,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gCACjB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BACnB,CAAC;wBACF,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACZ,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,6CAA6C,GAAG,CAAC,GAAG,IAAI,CACxD,CAAC;wBACH,CAAC;oBACF,CAAC;gBACF,CAAC;gBACD,OAAO;oBACN,OAAO,EAAE;wBACR,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE;qBAChE;iBACD,CAAC;YACH,CAAC;YAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACzB,MAAM,IAAI,GAAI,IAAgC,EAAE,IAEpC,CAAC;gBACb,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;gBACvE,MAAM,QAAQ,GAA4B,EAAE,CAAC;gBAC7C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;gBAEpC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oBAClC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;wBAAE,SAAS;oBACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;oBACtC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;wBACvB,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;4BAAE,SAAS;wBACzC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;wBACvC,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI;4BAAE,SAAS;wBACjC,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;4BAAE,SAAS;wBAC/B,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;wBACjB,IAAI,CAAC;4BACJ,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CACtB,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAC1C,CAAC;4BACF,QAAQ,CAAC,CAAC,CAAC,GAAG;gCACb,MAAM,EAAE,IAAI,CAAC,MAAM;gCACnB,KAAK,EAAE,IAAI,CAAC,aAAa;gCACzB,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gCACvB,IAAI;6BACJ,CAAC;wBACH,CAAC;wBAAC,MAAM,CAAC;4BACR,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;wBACjD,CAAC;oBACF,CAAC;gBACF,CAAC;gBACD,OAAO;oBACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;iBAC/D,CAAC;YACH,CAAC;YAED;gBACC,OAAO;oBACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,IAAI,EAAE,EAAE,CAAC;oBAC1D,OAAO,EAAE,IAAI;iBACb,CAAC;QACJ,CAAC;IACF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO;YACN,OAAO,EAAE;gBACR;oBACC,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC;iBACzD;aACD;YACD,OAAO,EAAE,IAAI;SACb,CAAC;IACH,CAAC;AACF,CAAC;AACD,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;AAErE,eAAe;AACf,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"state-server.js","sourceRoot":"","sources":["../../src/mcp/state-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@ async function writeJson(path, value) {
|
|
|
12
12
|
await mkdir(dirname(path), { recursive: true }).catch(() => { });
|
|
13
13
|
await writeFile(path, JSON.stringify(value, null, 2));
|
|
14
14
|
}
|
|
15
|
+
const TEAM_STOP_COMMIT_GUIDANCE = " If system-generated worker auto-checkpoint commits exist, rewrite them into Lore-format final commits before merge/finalization.";
|
|
15
16
|
describe("codex native hook config", () => {
|
|
16
17
|
it("builds the expected managed hooks.json shape", () => {
|
|
17
18
|
const config = buildManagedCodexHooksConfig("/tmp/omx");
|
|
@@ -144,11 +145,14 @@ describe("codex native hook dispatch", () => {
|
|
|
144
145
|
assert.equal(result.omxEventName, "keyword-detector");
|
|
145
146
|
assert.equal(result.skillState?.skill, "ralplan");
|
|
146
147
|
assert.ok(result.outputJson, "UserPromptSubmit should emit developer context");
|
|
148
|
+
assert.match(JSON.stringify(result.outputJson), /skill: ralplan activated and initial state initialized at \.omx\/state\/sessions\/sess-1\/ralplan-state\.json; write subsequent updates via omx_state MCP\./);
|
|
147
149
|
const statePath = join(cwd, ".omx", "state", "skill-active-state.json");
|
|
148
150
|
assert.equal(existsSync(statePath), true);
|
|
149
151
|
const state = JSON.parse(await readFile(statePath, "utf-8"));
|
|
150
152
|
assert.equal(state.skill, "ralplan");
|
|
151
153
|
assert.equal(state.active, true);
|
|
154
|
+
assert.equal(state.initialized_mode, "ralplan");
|
|
155
|
+
assert.equal(existsSync(join(cwd, ".omx", "state", "sessions", "sess-1", "ralplan-state.json")), true);
|
|
152
156
|
}
|
|
153
157
|
finally {
|
|
154
158
|
await rm(cwd, { recursive: true, force: true });
|
|
@@ -379,7 +383,7 @@ describe("codex native hook dispatch", () => {
|
|
|
379
383
|
assert.equal(result.omxEventName, "stop");
|
|
380
384
|
assert.deepEqual(result.outputJson, {
|
|
381
385
|
decision: "block",
|
|
382
|
-
reason:
|
|
386
|
+
reason: `OMX team pipeline is still active (review-team) at phase team-verify; continue coordinating until the team reaches a terminal phase.${TEAM_STOP_COMMIT_GUIDANCE}`,
|
|
383
387
|
stopReason: "team_team-verify",
|
|
384
388
|
systemMessage: "OMX team pipeline is still active at phase team-verify.",
|
|
385
389
|
});
|
|
@@ -388,6 +392,99 @@ describe("codex native hook dispatch", () => {
|
|
|
388
392
|
await rm(cwd, { recursive: true, force: true });
|
|
389
393
|
}
|
|
390
394
|
});
|
|
395
|
+
it("blocks Stop for a team worker with a non-terminal assigned task via native worker context", async () => {
|
|
396
|
+
const cwd = await mkdtemp(join(tmpdir(), "omx-native-hook-stop-team-worker-"));
|
|
397
|
+
const prevTeamWorker = process.env.OMX_TEAM_WORKER;
|
|
398
|
+
const prevTeamStateRoot = process.env.OMX_TEAM_STATE_ROOT;
|
|
399
|
+
const prevLeaderCwd = process.env.OMX_TEAM_LEADER_CWD;
|
|
400
|
+
try {
|
|
401
|
+
await initTeamState("worker-stop-team", "worker stop fallback", "executor", 1, cwd, undefined, { ...process.env, OMX_SESSION_ID: "sess-stop-team-worker" });
|
|
402
|
+
const workerDir = join(cwd, ".omx", "state", "team", "worker-stop-team", "workers", "worker-1");
|
|
403
|
+
await writeJson(join(workerDir, "status.json"), {
|
|
404
|
+
state: "idle",
|
|
405
|
+
current_task_id: "1",
|
|
406
|
+
updated_at: new Date().toISOString(),
|
|
407
|
+
});
|
|
408
|
+
await writeJson(join(cwd, ".omx", "state", "team", "worker-stop-team", "tasks", "task-1.json"), {
|
|
409
|
+
id: "1",
|
|
410
|
+
subject: "hook task",
|
|
411
|
+
description: "finish hook task",
|
|
412
|
+
status: "in_progress",
|
|
413
|
+
owner: "worker-1",
|
|
414
|
+
created_at: new Date().toISOString(),
|
|
415
|
+
});
|
|
416
|
+
process.env.OMX_TEAM_WORKER = "worker-stop-team/worker-1";
|
|
417
|
+
process.env.OMX_TEAM_STATE_ROOT = join(cwd, ".omx", "state");
|
|
418
|
+
process.env.OMX_TEAM_LEADER_CWD = cwd;
|
|
419
|
+
const result = await dispatchCodexNativeHook({
|
|
420
|
+
hook_event_name: "Stop",
|
|
421
|
+
cwd: join(cwd, ".omx", "team", "worker-stop-team", "worktrees", "worker-1"),
|
|
422
|
+
session_id: "sess-stop-team-worker",
|
|
423
|
+
}, { cwd: join(cwd, ".omx", "team", "worker-stop-team", "worktrees", "worker-1") });
|
|
424
|
+
assert.deepEqual(result.outputJson, {
|
|
425
|
+
decision: "block",
|
|
426
|
+
reason: "OMX team worker worker-1 is still assigned non-terminal task 1 (in_progress); continue the current assigned task or report a concrete blocker before stopping.",
|
|
427
|
+
stopReason: "team_worker_worker-1_1_in_progress",
|
|
428
|
+
systemMessage: "OMX team worker worker-1 is still assigned task 1 (in_progress).",
|
|
429
|
+
});
|
|
430
|
+
}
|
|
431
|
+
finally {
|
|
432
|
+
if (typeof prevTeamWorker === "string")
|
|
433
|
+
process.env.OMX_TEAM_WORKER = prevTeamWorker;
|
|
434
|
+
else
|
|
435
|
+
delete process.env.OMX_TEAM_WORKER;
|
|
436
|
+
if (typeof prevTeamStateRoot === "string")
|
|
437
|
+
process.env.OMX_TEAM_STATE_ROOT = prevTeamStateRoot;
|
|
438
|
+
else
|
|
439
|
+
delete process.env.OMX_TEAM_STATE_ROOT;
|
|
440
|
+
if (typeof prevLeaderCwd === "string")
|
|
441
|
+
process.env.OMX_TEAM_LEADER_CWD = prevLeaderCwd;
|
|
442
|
+
else
|
|
443
|
+
delete process.env.OMX_TEAM_LEADER_CWD;
|
|
444
|
+
await rm(cwd, { recursive: true, force: true });
|
|
445
|
+
}
|
|
446
|
+
});
|
|
447
|
+
it("does not block Stop for a team worker when assigned task is terminal", async () => {
|
|
448
|
+
const cwd = await mkdtemp(join(tmpdir(), "omx-native-hook-stop-team-worker-terminal-"));
|
|
449
|
+
const prevTeamWorker = process.env.OMX_TEAM_WORKER;
|
|
450
|
+
const prevTeamStateRoot = process.env.OMX_TEAM_STATE_ROOT;
|
|
451
|
+
try {
|
|
452
|
+
await initTeamState("worker-stop-team-terminal", "worker stop terminal fallback", "executor", 1, cwd, undefined, { ...process.env, OMX_SESSION_ID: "sess-stop-team-worker-terminal" });
|
|
453
|
+
const workerDir = join(cwd, ".omx", "state", "team", "worker-stop-team-terminal", "workers", "worker-1");
|
|
454
|
+
await writeJson(join(workerDir, "status.json"), {
|
|
455
|
+
state: "done",
|
|
456
|
+
current_task_id: "1",
|
|
457
|
+
updated_at: new Date().toISOString(),
|
|
458
|
+
});
|
|
459
|
+
await writeJson(join(cwd, ".omx", "state", "team", "worker-stop-team-terminal", "tasks", "task-1.json"), {
|
|
460
|
+
id: "1",
|
|
461
|
+
subject: "hook task",
|
|
462
|
+
description: "finish hook task",
|
|
463
|
+
status: "completed",
|
|
464
|
+
owner: "worker-1",
|
|
465
|
+
created_at: new Date().toISOString(),
|
|
466
|
+
});
|
|
467
|
+
process.env.OMX_TEAM_WORKER = "worker-stop-team-terminal/worker-1";
|
|
468
|
+
process.env.OMX_TEAM_STATE_ROOT = join(cwd, ".omx", "state");
|
|
469
|
+
const result = await dispatchCodexNativeHook({
|
|
470
|
+
hook_event_name: "Stop",
|
|
471
|
+
cwd,
|
|
472
|
+
session_id: "sess-stop-team-worker-terminal",
|
|
473
|
+
}, { cwd });
|
|
474
|
+
assert.equal(result.outputJson, null);
|
|
475
|
+
}
|
|
476
|
+
finally {
|
|
477
|
+
if (typeof prevTeamWorker === "string")
|
|
478
|
+
process.env.OMX_TEAM_WORKER = prevTeamWorker;
|
|
479
|
+
else
|
|
480
|
+
delete process.env.OMX_TEAM_WORKER;
|
|
481
|
+
if (typeof prevTeamStateRoot === "string")
|
|
482
|
+
process.env.OMX_TEAM_STATE_ROOT = prevTeamStateRoot;
|
|
483
|
+
else
|
|
484
|
+
delete process.env.OMX_TEAM_STATE_ROOT;
|
|
485
|
+
await rm(cwd, { recursive: true, force: true });
|
|
486
|
+
}
|
|
487
|
+
});
|
|
391
488
|
it("returns Stop continuation output from canonical team state when coarse mode state is missing", async () => {
|
|
392
489
|
const cwd = await mkdtemp(join(tmpdir(), "omx-native-hook-stop-team-canonical-"));
|
|
393
490
|
try {
|
|
@@ -400,7 +497,38 @@ describe("codex native hook dispatch", () => {
|
|
|
400
497
|
assert.equal(result.omxEventName, "stop");
|
|
401
498
|
assert.deepEqual(result.outputJson, {
|
|
402
499
|
decision: "block",
|
|
403
|
-
reason:
|
|
500
|
+
reason: `OMX team pipeline is still active (canonical-team) at phase team-exec; continue coordinating until the team reaches a terminal phase.${TEAM_STOP_COMMIT_GUIDANCE}`,
|
|
501
|
+
stopReason: "team_team-exec",
|
|
502
|
+
systemMessage: "OMX team pipeline is still active at phase team-exec.",
|
|
503
|
+
});
|
|
504
|
+
}
|
|
505
|
+
finally {
|
|
506
|
+
await rm(cwd, { recursive: true, force: true });
|
|
507
|
+
}
|
|
508
|
+
});
|
|
509
|
+
it("re-fires canonical-team Stop output for a later fresh Stop reply when coarse mode state is missing", async () => {
|
|
510
|
+
const cwd = await mkdtemp(join(tmpdir(), "omx-native-hook-stop-team-canonical-refire-"));
|
|
511
|
+
try {
|
|
512
|
+
await initTeamState("canonical-team-refire", "canonical stop fallback refire", "executor", 1, cwd, undefined, { ...process.env, OMX_SESSION_ID: "sess-stop-team-canonical-refire" });
|
|
513
|
+
await dispatchCodexNativeHook({
|
|
514
|
+
hook_event_name: "Stop",
|
|
515
|
+
cwd,
|
|
516
|
+
session_id: "sess-stop-team-canonical-refire",
|
|
517
|
+
thread_id: "thread-stop-team-canonical-refire",
|
|
518
|
+
turn_id: "turn-stop-team-canonical-refire-1",
|
|
519
|
+
}, { cwd });
|
|
520
|
+
const result = await dispatchCodexNativeHook({
|
|
521
|
+
hook_event_name: "Stop",
|
|
522
|
+
cwd,
|
|
523
|
+
session_id: "sess-stop-team-canonical-refire",
|
|
524
|
+
thread_id: "thread-stop-team-canonical-refire",
|
|
525
|
+
turn_id: "turn-stop-team-canonical-refire-2",
|
|
526
|
+
stop_hook_active: true,
|
|
527
|
+
}, { cwd });
|
|
528
|
+
assert.equal(result.omxEventName, "stop");
|
|
529
|
+
assert.deepEqual(result.outputJson, {
|
|
530
|
+
decision: "block",
|
|
531
|
+
reason: `OMX team pipeline is still active (canonical-team-refire) at phase team-exec; continue coordinating until the team reaches a terminal phase.${TEAM_STOP_COMMIT_GUIDANCE}`,
|
|
404
532
|
stopReason: "team_team-exec",
|
|
405
533
|
systemMessage: "OMX team pipeline is still active at phase team-exec.",
|
|
406
534
|
});
|
|
@@ -453,7 +581,7 @@ describe("codex native hook dispatch", () => {
|
|
|
453
581
|
assert.equal(result.omxEventName, "stop");
|
|
454
582
|
assert.deepEqual(result.outputJson, {
|
|
455
583
|
decision: "block",
|
|
456
|
-
reason:
|
|
584
|
+
reason: `OMX team pipeline is still active (legacy-team) at phase team-exec; continue coordinating until the team reaches a terminal phase.${TEAM_STOP_COMMIT_GUIDANCE}`,
|
|
457
585
|
stopReason: "team_team-exec",
|
|
458
586
|
systemMessage: "OMX team pipeline is still active at phase team-exec.",
|
|
459
587
|
});
|
|
@@ -477,7 +605,7 @@ describe("codex native hook dispatch", () => {
|
|
|
477
605
|
assert.equal(result.omxEventName, "stop");
|
|
478
606
|
assert.deepEqual(result.outputJson, {
|
|
479
607
|
decision: "block",
|
|
480
|
-
reason:
|
|
608
|
+
reason: `OMX team pipeline is still active (canonical-root-team) at phase team-exec; continue coordinating until the team reaches a terminal phase.${TEAM_STOP_COMMIT_GUIDANCE}`,
|
|
481
609
|
stopReason: "team_team-exec",
|
|
482
610
|
systemMessage: "OMX team pipeline is still active at phase team-exec.",
|
|
483
611
|
});
|
|
@@ -509,7 +637,7 @@ describe("codex native hook dispatch", () => {
|
|
|
509
637
|
assert.equal(result.omxEventName, "stop");
|
|
510
638
|
assert.deepEqual(result.outputJson, {
|
|
511
639
|
decision: "block",
|
|
512
|
-
reason:
|
|
640
|
+
reason: `OMX team pipeline is still active (env-root-team) at phase team-exec; continue coordinating until the team reaches a terminal phase.${TEAM_STOP_COMMIT_GUIDANCE}`,
|
|
513
641
|
stopReason: "team_team-exec",
|
|
514
642
|
systemMessage: "OMX team pipeline is still active at phase team-exec.",
|
|
515
643
|
});
|
|
@@ -626,6 +754,30 @@ describe("codex native hook dispatch", () => {
|
|
|
626
754
|
await rm(cwd, { recursive: true, force: true });
|
|
627
755
|
}
|
|
628
756
|
});
|
|
757
|
+
it("ignores root skill-active fallback from a different thread when evaluating Stop", async () => {
|
|
758
|
+
const cwd = await mkdtemp(join(tmpdir(), "omx-native-hook-stop-foreign-thread-"));
|
|
759
|
+
try {
|
|
760
|
+
const stateDir = join(cwd, ".omx", "state");
|
|
761
|
+
await mkdir(stateDir, { recursive: true });
|
|
762
|
+
await writeJson(join(stateDir, "skill-active-state.json"), {
|
|
763
|
+
active: true,
|
|
764
|
+
skill: "deep-interview",
|
|
765
|
+
phase: "planning",
|
|
766
|
+
session_id: "",
|
|
767
|
+
thread_id: "other-thread",
|
|
768
|
+
});
|
|
769
|
+
const result = await dispatchCodexNativeHook({
|
|
770
|
+
hook_event_name: "Stop",
|
|
771
|
+
cwd,
|
|
772
|
+
session_id: "sess-stop-main",
|
|
773
|
+
thread_id: "main-thread",
|
|
774
|
+
}, { cwd });
|
|
775
|
+
assert.equal(result.outputJson, null);
|
|
776
|
+
}
|
|
777
|
+
finally {
|
|
778
|
+
await rm(cwd, { recursive: true, force: true });
|
|
779
|
+
}
|
|
780
|
+
});
|
|
629
781
|
it("returns Stop continuation output while Ralph is active", async () => {
|
|
630
782
|
const cwd = await mkdtemp(join(tmpdir(), "omx-native-hook-stop-"));
|
|
631
783
|
try {
|
|
@@ -697,15 +849,25 @@ describe("codex native hook dispatch", () => {
|
|
|
697
849
|
await rm(cwd, { recursive: true, force: true });
|
|
698
850
|
}
|
|
699
851
|
});
|
|
700
|
-
it("
|
|
852
|
+
it("suppresses duplicate native auto-nudge replays for the same Stop reply", async () => {
|
|
701
853
|
const cwd = await mkdtemp(join(tmpdir(), "omx-native-hook-auto-nudge-once-"));
|
|
702
854
|
try {
|
|
703
855
|
const stateDir = join(cwd, ".omx", "state");
|
|
704
856
|
await mkdir(stateDir, { recursive: true });
|
|
857
|
+
await dispatchCodexNativeHook({
|
|
858
|
+
hook_event_name: "Stop",
|
|
859
|
+
cwd,
|
|
860
|
+
session_id: "sess-stop-auto-once",
|
|
861
|
+
thread_id: "thread-stop-auto",
|
|
862
|
+
turn_id: "turn-stop-auto-1",
|
|
863
|
+
last_assistant_message: "Would you like me to continue?",
|
|
864
|
+
}, { cwd });
|
|
705
865
|
const result = await dispatchCodexNativeHook({
|
|
706
866
|
hook_event_name: "Stop",
|
|
707
867
|
cwd,
|
|
708
868
|
session_id: "sess-stop-auto-once",
|
|
869
|
+
thread_id: "thread-stop-auto",
|
|
870
|
+
turn_id: "turn-stop-auto-1",
|
|
709
871
|
stop_hook_active: true,
|
|
710
872
|
last_assistant_message: "Would you like me to continue?",
|
|
711
873
|
}, { cwd });
|
|
@@ -716,5 +878,173 @@ describe("codex native hook dispatch", () => {
|
|
|
716
878
|
await rm(cwd, { recursive: true, force: true });
|
|
717
879
|
}
|
|
718
880
|
});
|
|
881
|
+
it("re-fires native auto-nudge for a later fresh Stop reply even when stop_hook_active is true", async () => {
|
|
882
|
+
const cwd = await mkdtemp(join(tmpdir(), "omx-native-hook-auto-nudge-refire-"));
|
|
883
|
+
try {
|
|
884
|
+
const stateDir = join(cwd, ".omx", "state");
|
|
885
|
+
await mkdir(stateDir, { recursive: true });
|
|
886
|
+
await dispatchCodexNativeHook({
|
|
887
|
+
hook_event_name: "Stop",
|
|
888
|
+
cwd,
|
|
889
|
+
session_id: "sess-stop-auto-refire",
|
|
890
|
+
thread_id: "thread-stop-auto-refire",
|
|
891
|
+
turn_id: "turn-stop-auto-refire-1",
|
|
892
|
+
last_assistant_message: "Would you like me to continue?",
|
|
893
|
+
}, { cwd });
|
|
894
|
+
const result = await dispatchCodexNativeHook({
|
|
895
|
+
hook_event_name: "Stop",
|
|
896
|
+
cwd,
|
|
897
|
+
session_id: "sess-stop-auto-refire",
|
|
898
|
+
thread_id: "thread-stop-auto-refire",
|
|
899
|
+
turn_id: "turn-stop-auto-refire-2",
|
|
900
|
+
stop_hook_active: true,
|
|
901
|
+
last_assistant_message: "If you want, I can keep going and finish the cleanup.",
|
|
902
|
+
}, { cwd });
|
|
903
|
+
assert.equal(result.omxEventName, "stop");
|
|
904
|
+
assert.deepEqual(result.outputJson, {
|
|
905
|
+
decision: "block",
|
|
906
|
+
reason: "yes, proceed",
|
|
907
|
+
stopReason: "auto_nudge",
|
|
908
|
+
systemMessage: "OMX native Stop detected a stall/permission-style handoff and continued the turn automatically.",
|
|
909
|
+
});
|
|
910
|
+
}
|
|
911
|
+
finally {
|
|
912
|
+
await rm(cwd, { recursive: true, force: true });
|
|
913
|
+
}
|
|
914
|
+
});
|
|
915
|
+
it("suppresses native auto-nudge when only the deep-interview input lock is active", async () => {
|
|
916
|
+
const cwd = await mkdtemp(join(tmpdir(), "omx-native-hook-auto-nudge-deep-interview-lock-"));
|
|
917
|
+
try {
|
|
918
|
+
const stateDir = join(cwd, ".omx", "state");
|
|
919
|
+
await mkdir(join(stateDir, "sessions", "sess-stop-auto-lock"), { recursive: true });
|
|
920
|
+
await writeJson(join(stateDir, "session.json"), { session_id: "sess-stop-auto-lock" });
|
|
921
|
+
await writeJson(join(stateDir, "sessions", "sess-stop-auto-lock", "skill-active-state.json"), {
|
|
922
|
+
version: 1,
|
|
923
|
+
active: true,
|
|
924
|
+
skill: "deep-interview",
|
|
925
|
+
phase: "planning",
|
|
926
|
+
input_lock: {
|
|
927
|
+
active: true,
|
|
928
|
+
scope: "deep-interview-auto-approval",
|
|
929
|
+
blocked_inputs: ["yes", "proceed"],
|
|
930
|
+
message: "Deep interview is active; auto-approval shortcuts are blocked until the interview finishes.",
|
|
931
|
+
},
|
|
932
|
+
});
|
|
933
|
+
const result = await dispatchCodexNativeHook({
|
|
934
|
+
hook_event_name: "Stop",
|
|
935
|
+
cwd,
|
|
936
|
+
session_id: "sess-stop-auto-lock",
|
|
937
|
+
thread_id: "thread-stop-auto-lock",
|
|
938
|
+
turn_id: "turn-stop-auto-lock-1",
|
|
939
|
+
last_assistant_message: "Would you like me to continue with the next step?",
|
|
940
|
+
}, { cwd });
|
|
941
|
+
assert.equal(result.omxEventName, "stop");
|
|
942
|
+
assert.deepEqual(result.outputJson, {
|
|
943
|
+
decision: "block",
|
|
944
|
+
reason: "OMX skill deep-interview is still active (phase: planning); continue until the current deep-interview workflow reaches a terminal state.",
|
|
945
|
+
stopReason: "skill_deep-interview_planning",
|
|
946
|
+
systemMessage: "OMX skill deep-interview is still active (phase: planning).",
|
|
947
|
+
});
|
|
948
|
+
}
|
|
949
|
+
finally {
|
|
950
|
+
await rm(cwd, { recursive: true, force: true });
|
|
951
|
+
}
|
|
952
|
+
});
|
|
953
|
+
it("suppresses native auto-nudge re-fire while session-scoped deep-interview state is still active", async () => {
|
|
954
|
+
const cwd = await mkdtemp(join(tmpdir(), "omx-native-hook-auto-nudge-deep-interview-state-"));
|
|
955
|
+
try {
|
|
956
|
+
const stateDir = join(cwd, ".omx", "state");
|
|
957
|
+
await mkdir(join(stateDir, "sessions", "sess-stop-auto-interview"), { recursive: true });
|
|
958
|
+
await writeJson(join(stateDir, "session.json"), { session_id: "sess-stop-auto-interview" });
|
|
959
|
+
await writeJson(join(stateDir, "sessions", "sess-stop-auto-interview", "deep-interview-state.json"), {
|
|
960
|
+
active: true,
|
|
961
|
+
mode: "deep-interview",
|
|
962
|
+
current_phase: "intent-first",
|
|
963
|
+
});
|
|
964
|
+
const result = await dispatchCodexNativeHook({
|
|
965
|
+
hook_event_name: "Stop",
|
|
966
|
+
cwd,
|
|
967
|
+
session_id: "sess-stop-auto-interview",
|
|
968
|
+
thread_id: "thread-stop-auto-interview",
|
|
969
|
+
turn_id: "turn-stop-auto-interview-2",
|
|
970
|
+
stop_hook_active: true,
|
|
971
|
+
last_assistant_message: "If you want, I can keep going from here.",
|
|
972
|
+
}, { cwd });
|
|
973
|
+
assert.equal(result.omxEventName, "stop");
|
|
974
|
+
assert.equal(result.outputJson, null);
|
|
975
|
+
}
|
|
976
|
+
finally {
|
|
977
|
+
await rm(cwd, { recursive: true, force: true });
|
|
978
|
+
}
|
|
979
|
+
});
|
|
980
|
+
it("suppresses native auto-nudge when deep-interview mode state is active without a scoped skill state", async () => {
|
|
981
|
+
const cwd = await mkdtemp(join(tmpdir(), "omx-native-hook-auto-nudge-deep-interview-mode-"));
|
|
982
|
+
try {
|
|
983
|
+
const stateDir = join(cwd, ".omx", "state");
|
|
984
|
+
await mkdir(stateDir, { recursive: true });
|
|
985
|
+
await writeJson(join(stateDir, "deep-interview-state.json"), {
|
|
986
|
+
active: true,
|
|
987
|
+
mode: "deep-interview",
|
|
988
|
+
current_phase: "intent-first",
|
|
989
|
+
});
|
|
990
|
+
const result = await dispatchCodexNativeHook({
|
|
991
|
+
hook_event_name: "Stop",
|
|
992
|
+
cwd,
|
|
993
|
+
session_id: "sess-stop-auto-mode",
|
|
994
|
+
thread_id: "thread-stop-auto-mode",
|
|
995
|
+
turn_id: "turn-stop-auto-mode-1",
|
|
996
|
+
last_assistant_message: "Would you like me to continue with the next step?",
|
|
997
|
+
}, { cwd });
|
|
998
|
+
assert.equal(result.omxEventName, "stop");
|
|
999
|
+
assert.equal(result.outputJson, null);
|
|
1000
|
+
}
|
|
1001
|
+
finally {
|
|
1002
|
+
await rm(cwd, { recursive: true, force: true });
|
|
1003
|
+
}
|
|
1004
|
+
});
|
|
1005
|
+
it("re-fires team Stop output for a later fresh Stop reply while the team is still active", async () => {
|
|
1006
|
+
const cwd = await mkdtemp(join(tmpdir(), "omx-native-hook-stop-team-refire-"));
|
|
1007
|
+
try {
|
|
1008
|
+
const stateDir = join(cwd, ".omx", "state");
|
|
1009
|
+
await mkdir(stateDir, { recursive: true });
|
|
1010
|
+
await writeJson(join(stateDir, "team-state.json"), {
|
|
1011
|
+
active: true,
|
|
1012
|
+
current_phase: "team-exec",
|
|
1013
|
+
team_name: "review-team",
|
|
1014
|
+
});
|
|
1015
|
+
await writeJson(join(stateDir, "team", "review-team", "phase.json"), {
|
|
1016
|
+
current_phase: "team-verify",
|
|
1017
|
+
max_fix_attempts: 3,
|
|
1018
|
+
current_fix_attempt: 0,
|
|
1019
|
+
transitions: [],
|
|
1020
|
+
updated_at: new Date().toISOString(),
|
|
1021
|
+
});
|
|
1022
|
+
await dispatchCodexNativeHook({
|
|
1023
|
+
hook_event_name: "Stop",
|
|
1024
|
+
cwd,
|
|
1025
|
+
session_id: "sess-stop-team-refire",
|
|
1026
|
+
thread_id: "thread-stop-team-refire",
|
|
1027
|
+
turn_id: "turn-stop-team-refire-1",
|
|
1028
|
+
}, { cwd });
|
|
1029
|
+
const result = await dispatchCodexNativeHook({
|
|
1030
|
+
hook_event_name: "Stop",
|
|
1031
|
+
cwd,
|
|
1032
|
+
session_id: "sess-stop-team-refire",
|
|
1033
|
+
thread_id: "thread-stop-team-refire",
|
|
1034
|
+
turn_id: "turn-stop-team-refire-2",
|
|
1035
|
+
stop_hook_active: true,
|
|
1036
|
+
}, { cwd });
|
|
1037
|
+
assert.equal(result.omxEventName, "stop");
|
|
1038
|
+
assert.deepEqual(result.outputJson, {
|
|
1039
|
+
decision: "block",
|
|
1040
|
+
reason: `OMX team pipeline is still active (review-team) at phase team-verify; continue coordinating until the team reaches a terminal phase.${TEAM_STOP_COMMIT_GUIDANCE}`,
|
|
1041
|
+
stopReason: "team_team-verify",
|
|
1042
|
+
systemMessage: "OMX team pipeline is still active at phase team-verify.",
|
|
1043
|
+
});
|
|
1044
|
+
}
|
|
1045
|
+
finally {
|
|
1046
|
+
await rm(cwd, { recursive: true, force: true });
|
|
1047
|
+
}
|
|
1048
|
+
});
|
|
719
1049
|
});
|
|
720
1050
|
//# sourceMappingURL=codex-native-hook.test.js.map
|