oh-my-opencode 5.0.0-beta.63 → 5.0.0-beta.65

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.
Files changed (115) hide show
  1. package/dist/cli/index.js +28 -23
  2. package/dist/cli-node/index.js +28 -23
  3. package/dist/hooks/plan-format-validator/hook.d.ts +19 -0
  4. package/dist/index.js +149 -86
  5. package/dist/oh-my-opencode.schema.json +4 -4
  6. package/dist/skills/ulw-plan/references/full-workflow.md +1 -0
  7. package/dist/skills/ulw-plan/scripts/scaffold-plan.mjs +1 -0
  8. package/dist/tui.js +13 -8
  9. package/package.json +14 -14
  10. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  11. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +8 -3
  12. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  13. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  14. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  15. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  16. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  17. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  18. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  19. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  20. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +2 -2
  21. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  22. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  23. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  24. package/packages/omo-codex/plugin/components/rules/package.json +1 -1
  25. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  26. package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
  27. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  28. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  29. package/packages/omo-codex/plugin/components/ultrawork/agents/plan.toml +1 -1
  30. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  31. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  32. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/scripts/scaffold-plan.mjs +1 -0
  33. package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
  34. package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
  35. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-codex-validation.d.ts +7 -5
  36. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-codex-validation.js +7 -2
  37. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint.js +2 -0
  38. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli.js +364 -135
  39. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-snapshot.d.ts +6 -0
  40. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-snapshot.js +20 -12
  41. package/packages/omo-codex/plugin/components/ulw-loop/dist/domain-types.d.ts +3 -0
  42. package/packages/omo-codex/plugin/components/ulw-loop/dist/driver-objective-ack.d.ts +4 -0
  43. package/packages/omo-codex/plugin/components/ulw-loop/dist/driver-objective-ack.js +18 -0
  44. package/packages/omo-codex/plugin/components/ulw-loop/dist/evidence-artifacts.d.ts +1 -0
  45. package/packages/omo-codex/plugin/components/ulw-loop/dist/evidence-artifacts.js +37 -0
  46. package/packages/omo-codex/plugin/components/ulw-loop/dist/evidence.d.ts +1 -0
  47. package/packages/omo-codex/plugin/components/ulw-loop/dist/evidence.js +8 -0
  48. package/packages/omo-codex/plugin/components/ulw-loop/dist/paths.d.ts +1 -0
  49. package/packages/omo-codex/plugin/components/ulw-loop/dist/paths.js +6 -0
  50. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-crud.d.ts +4 -1
  51. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-crud.js +6 -3
  52. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-goal-factory.d.ts +10 -3
  53. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-goal-factory.js +38 -31
  54. package/packages/omo-codex/plugin/components/ulw-loop/dist/review-blockers.js +8 -4
  55. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/factory.js +17 -8
  56. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/manifest.d.ts +335 -0
  57. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/manifest.js +109 -10
  58. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/types.d.ts +3 -0
  59. package/packages/omo-codex/plugin/components/ulw-loop/dist/steering-mutations.d.ts +3 -2
  60. package/packages/omo-codex/plugin/components/ulw-loop/dist/steering-mutations.js +4 -4
  61. package/packages/omo-codex/plugin/components/ulw-loop/dist/steering-types.d.ts +9 -1
  62. package/packages/omo-codex/plugin/components/ulw-loop/dist/steering.d.ts +3 -2
  63. package/packages/omo-codex/plugin/components/ulw-loop/dist/steering.js +6 -6
  64. package/packages/omo-codex/plugin/components/ulw-loop/dist/success-criteria-input.d.ts +9 -0
  65. package/packages/omo-codex/plugin/components/ulw-loop/dist/success-criteria-input.js +41 -0
  66. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
  67. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  68. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-codex-validation.ts +15 -3
  69. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint.ts +2 -0
  70. package/packages/omo-codex/plugin/components/ulw-loop/src/codex-goal-snapshot.ts +26 -14
  71. package/packages/omo-codex/plugin/components/ulw-loop/src/domain-types.ts +3 -0
  72. package/packages/omo-codex/plugin/components/ulw-loop/src/driver-objective-ack.ts +20 -0
  73. package/packages/omo-codex/plugin/components/ulw-loop/src/evidence-artifacts.ts +45 -0
  74. package/packages/omo-codex/plugin/components/ulw-loop/src/evidence.ts +7 -0
  75. package/packages/omo-codex/plugin/components/ulw-loop/src/paths.ts +7 -0
  76. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-crud.ts +9 -3
  77. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-goal-factory.ts +63 -31
  78. package/packages/omo-codex/plugin/components/ulw-loop/src/review-blockers.ts +8 -4
  79. package/packages/omo-codex/plugin/components/ulw-loop/src/sdk/factory.ts +17 -7
  80. package/packages/omo-codex/plugin/components/ulw-loop/src/sdk/manifest.ts +124 -10
  81. package/packages/omo-codex/plugin/components/ulw-loop/src/sdk/types.ts +3 -0
  82. package/packages/omo-codex/plugin/components/ulw-loop/src/steering-mutations.ts +5 -4
  83. package/packages/omo-codex/plugin/components/ulw-loop/src/steering-types.ts +13 -1
  84. package/packages/omo-codex/plugin/components/ulw-loop/src/steering.ts +7 -6
  85. package/packages/omo-codex/plugin/components/ulw-loop/src/success-criteria-input.ts +56 -0
  86. package/packages/omo-codex/plugin/components/ulw-loop/test/codex-goal-snapshot.test.ts +37 -1
  87. package/packages/omo-codex/plugin/components/ulw-loop/test/sdk-driver-states.test.ts +33 -4
  88. package/packages/omo-codex/plugin/components/ulw-loop/test/sdk-dx.test.ts +219 -0
  89. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  90. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  91. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  92. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  93. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  94. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  95. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  96. package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +1 -1
  97. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  98. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  99. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  100. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  101. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  102. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  103. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  104. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
  105. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  106. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  107. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  108. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  109. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  110. package/packages/omo-codex/plugin/package-lock.json +12 -12
  111. package/packages/omo-codex/plugin/package.json +1 -1
  112. package/packages/omo-codex/plugin/skills/ulw-plan/scripts/scaffold-plan.mjs +1 -0
  113. package/packages/omo-codex/scripts/install-dist/install-local.mjs +10 -5
  114. package/packages/shared-skills/skills/ulw-plan/references/full-workflow.md +1 -0
  115. package/packages/shared-skills/skills/ulw-plan/scripts/scaffold-plan.mjs +1 -0
@@ -5839,8 +5839,8 @@ var OmoGitMasterSettingsShape = {
5839
5839
  };
5840
5840
  var OmoGitMasterSettingsLayerSchema = object(OmoGitMasterSettingsShape).partial().strict();
5841
5841
  var OmoGitMasterSettingsSchema = OmoGitMasterSettingsLayerSchema.extend({
5842
- commit_footer: union([boolean2(), string2()]).default(true),
5843
- include_co_authored_by: boolean2().default(true)
5842
+ commit_footer: union([boolean2(), string2()]).default(false),
5843
+ include_co_authored_by: boolean2().default(false)
5844
5844
  }).strict();
5845
5845
 
5846
5846
  // ../../omo-config-core/src/schema/harness.ts
@@ -6243,6 +6243,7 @@ var OmoFormatOnMutationSchema = OmoFormatOnMutationLayerSchema.extend({
6243
6243
 
6244
6244
  // ../../omo-config-core/src/schema/config.ts
6245
6245
  var OmoOpenCodeHarnessConfigSchema = record(string2(), unknown());
6246
+ var OmoDisabledSkillsSchema = array(string2());
6246
6247
  var OmoTypedHarnessConfigSchema = object({
6247
6248
  formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
6248
6249
  categories: OmoCategoriesConfigSchema.optional(),
@@ -6254,7 +6255,8 @@ var OmoTypedHarnessConfigSchema = object({
6254
6255
  model_profiles: OmoModelProfilesLayerSchema.optional(),
6255
6256
  model_profile: string2().optional(),
6256
6257
  memory: OmoMemorySettingsLayerSchema.optional(),
6257
- telemetry: OmoTelemetrySettingsLayerSchema.optional()
6258
+ telemetry: OmoTelemetrySettingsLayerSchema.optional(),
6259
+ disabled_skills: OmoDisabledSkillsSchema.optional()
6258
6260
  }).strict();
6259
6261
  var OmoConfigProfileSchema = object({
6260
6262
  formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
@@ -6268,6 +6270,7 @@ var OmoConfigProfileSchema = object({
6268
6270
  model_profile: string2().optional(),
6269
6271
  memory: OmoMemorySettingsLayerSchema.optional(),
6270
6272
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
6273
+ disabled_skills: OmoDisabledSkillsSchema.optional(),
6271
6274
  "[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
6272
6275
  "[senpi]": OmoTypedHarnessConfigSchema.optional(),
6273
6276
  "[codex]": OmoTypedHarnessConfigSchema.optional()
@@ -6285,6 +6288,7 @@ var OmoConfigSchema = object({
6285
6288
  model_profile: string2().optional(),
6286
6289
  memory: OmoMemorySettingsSchema.optional(),
6287
6290
  telemetry: OmoTelemetrySettingsSchema.optional(),
6291
+ disabled_skills: OmoDisabledSkillsSchema.optional(),
6288
6292
  "[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
6289
6293
  "[senpi]": OmoTypedHarnessConfigSchema.optional(),
6290
6294
  "[codex]": OmoTypedHarnessConfigSchema.optional(),
@@ -6305,6 +6309,7 @@ var OmoConfigLayerSchema = object({
6305
6309
  model_profile: string2().optional(),
6306
6310
  memory: OmoMemorySettingsLayerSchema.optional(),
6307
6311
  telemetry: OmoTelemetrySettingsLayerSchema.optional(),
6312
+ disabled_skills: OmoDisabledSkillsSchema.optional(),
6308
6313
  "[opencode]": OmoOpenCodeHarnessConfigSchema.optional(),
6309
6314
  "[senpi]": OmoTypedHarnessConfigSchema.optional(),
6310
6315
  "[codex]": OmoTypedHarnessConfigSchema.optional(),
@@ -8,7 +8,7 @@
8
8
  "command": "node \"${PLUGIN_ROOT}/components/bootstrap/dist/cli.js\" hook session-start",
9
9
  "commandWindows": "powershell -NoProfile -ExecutionPolicy Bypass -File \"${PLUGIN_ROOT}\\components\\bootstrap\\scripts\\bootstrap.ps1\"",
10
10
  "timeout": 30,
11
- "statusMessage": "(OmO 5.0.0-beta.63) Checking Bootstrap Provisioning"
11
+ "statusMessage": "(OmO 5.0.0-beta.65) Checking Bootstrap Provisioning"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/codex-bootstrap",
3
- "version": "5.0.0-beta.63",
3
+ "version": "5.0.0-beta.65",
4
4
  "description": "Codex SessionStart bootstrap component that provisions LazyCodex runtime dependencies from a detached worker.",
5
5
  "type": "module",
6
6
  "private": true,
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
10
10
  "timeout": 30,
11
- "statusMessage": "(OmO 5.0.0-beta.63) Checking Comments"
11
+ "statusMessage": "(OmO 5.0.0-beta.65) Checking Comments"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-comment-checker",
3
- "version": "5.0.0-beta.63",
3
+ "version": "5.0.0-beta.65",
4
4
  "description": "Codex plugin that runs comment-checker after edit-like PostToolUse hooks.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook pre-tool-use",
10
10
  "timeout": 5,
11
- "statusMessage": "(OmO 5.0.0-beta.63) Recommending Git Bash MCP"
11
+ "statusMessage": "(OmO 5.0.0-beta.65) Recommending Git Bash MCP"
12
12
  }
13
13
  ]
14
14
  }
@@ -20,7 +20,7 @@
20
20
  "type": "command",
21
21
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
22
22
  "timeout": 5,
23
- "statusMessage": "(OmO 5.0.0-beta.63) Resetting Git Bash MCP Reminder"
23
+ "statusMessage": "(OmO 5.0.0-beta.65) Resetting Git Bash MCP Reminder"
24
24
  }
25
25
  ]
26
26
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/codex-git-bash-hook",
3
- "version": "5.0.0-beta.63",
3
+ "version": "5.0.0-beta.65",
4
4
  "description": "Codex hook component that reminds Windows sessions to prefer the OMO git_bash MCP.",
5
5
  "type": "module",
6
6
  "private": true,
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/components/lazycodex-executor-verify/dist/cli.js\" hook subagent-stop",
10
10
  "timeout": 10,
11
- "statusMessage": "(OmO 5.0.0-beta.63) Verifying LazyCodex Executor Evidence"
11
+ "statusMessage": "(OmO 5.0.0-beta.65) Verifying LazyCodex Executor Evidence"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-lazycodex-executor-verify",
3
- "version": "5.0.0-beta.63",
3
+ "version": "5.0.0-beta.65",
4
4
  "description": "Codex SubagentStop evidence verifier for LazyCodex executor completions.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "version": "5.0.0-beta.63",
4
- "inputDigest": "sha256:3a61242cf504041a49eedabaef45c33f1b57d48589074efffeccfa0820dcfdef",
3
+ "version": "5.0.0-beta.65",
4
+ "inputDigest": "sha256:e9d94bd9d259aa942411bac2133216cfa63a487b99dae691c5657cb69fc712f7",
5
5
  "outputs": [
6
6
  {
7
7
  "path": "cli.d.ts",
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
10
10
  "timeout": 60,
11
- "statusMessage": "(OmO 5.0.0-beta.63) Checking LSP Diagnostics"
11
+ "statusMessage": "(OmO 5.0.0-beta.65) Checking LSP Diagnostics"
12
12
  }
13
13
  ]
14
14
  }
@@ -21,7 +21,7 @@
21
21
  "type": "command",
22
22
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
23
23
  "timeout": 5,
24
- "statusMessage": "(OmO 5.0.0-beta.63) Resetting LSP Diagnostics Cache"
24
+ "statusMessage": "(OmO 5.0.0-beta.65) Resetting LSP Diagnostics Cache"
25
25
  }
26
26
  ]
27
27
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-lsp",
3
- "version": "5.0.0-beta.63",
3
+ "version": "5.0.0-beta.65",
4
4
  "description": "Codex plugin that exposes Language Server Protocol tools and post-edit diagnostics.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook session-start",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.0.0-beta.63) Loading Project Rules"
10
+ "statusMessage": "(OmO 5.0.0-beta.65) Loading Project Rules"
11
11
  }
12
12
  ]
13
13
  }
@@ -19,7 +19,7 @@
19
19
  "type": "command",
20
20
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook user-prompt-submit",
21
21
  "timeout": 10,
22
- "statusMessage": "(OmO 5.0.0-beta.63) Loading Project Rules"
22
+ "statusMessage": "(OmO 5.0.0-beta.65) Loading Project Rules"
23
23
  }
24
24
  ]
25
25
  }
@@ -32,7 +32,7 @@
32
32
  "type": "command",
33
33
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
34
34
  "timeout": 10,
35
- "statusMessage": "(OmO 5.0.0-beta.63) Matching Project Rules"
35
+ "statusMessage": "(OmO 5.0.0-beta.65) Matching Project Rules"
36
36
  }
37
37
  ]
38
38
  }
@@ -45,7 +45,7 @@
45
45
  "type": "command",
46
46
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
47
47
  "timeout": 10,
48
- "statusMessage": "(OmO 5.0.0-beta.63) Resetting Project Rule Cache"
48
+ "statusMessage": "(OmO 5.0.0-beta.65) Resetting Project Rule Cache"
49
49
  }
50
50
  ]
51
51
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-rules",
3
- "version": "5.0.0-beta.63",
3
+ "version": "5.0.0-beta.65",
4
4
  "description": "Codex plugin that injects project rule files into model context through lifecycle hooks.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
10
10
  "timeout": 10,
11
- "statusMessage": "(OmO 5.0.0-beta.63) Checking Thread Title Hygiene"
11
+ "statusMessage": "(OmO 5.0.0-beta.65) Checking Thread Title Hygiene"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/codex-teammode",
3
- "version": "5.0.0-beta.63",
3
+ "version": "5.0.0-beta.65",
4
4
  "description": "Codex team-mode hook component that keeps background thread titles descriptive after create_thread.",
5
5
  "type": "module",
6
6
  "private": true,
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook session-start",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.0.0-beta.63) Recording Session Telemetry"
10
+ "statusMessage": "(OmO 5.0.0-beta.65) Recording Session Telemetry"
11
11
  }
12
12
  ]
13
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-telemetry",
3
- "version": "5.0.0-beta.63",
3
+ "version": "5.0.0-beta.65",
4
4
  "description": "Codex plugin component that emits omo-codex anonymous daily-active telemetry on SessionStart.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -32,7 +32,7 @@ Write ONE plan to `.omo/plans/<slug>.md` (create the directory if absent). No "P
32
32
  ## TL;DR
33
33
  > Summary: <1-2 sentences>
34
34
  > Deliverables: <bullet list>
35
- > Effort: <Quick | Short | Medium | Large | XL>
35
+ > Effort: <Quick | Short | Medium | Large | XL> (one band, never hours/days: Quick = single edit, minutes of agent work; Short = one focused change, a few files; Medium = multi-file feature in one session; Large = several waves, one long session; XL = multi-session or architectural work)
36
36
  > Risk: <Low | Medium | High> - <one-line driver>
37
37
 
38
38
  ## Scope
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook user-prompt-submit",
9
9
  "timeout": 5,
10
- "statusMessage": "(OmO 5.0.0-beta.63) Checking Ultrawork Trigger"
10
+ "statusMessage": "(OmO 5.0.0-beta.65) Checking Ultrawork Trigger"
11
11
  }
12
12
  ]
13
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-ultrawork",
3
- "version": "5.0.0-beta.63",
3
+ "version": "5.0.0-beta.65",
4
4
  "description": "Codex plugin that injects the ultrawork orchestration directive and ships LazyCodex planning, review, QA, and gate agent roles.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -238,6 +238,7 @@ export function buildPlanSkeleton(slug, intent) {
238
238
  **What it will NOT do:** <fill last - 1-3 plain lines mirroring Must NOT have>
239
239
 
240
240
  **Effort:** <Quick | Short | Medium | Large | XL>
241
+ <!-- Effort is exactly ONE band, never hours/days. Quick = single edit, minutes of agent work; Short = one focused change, a few files; Medium = multi-file feature in one session; Large = several waves, one long session; XL = multi-session or architectural work. A written duration is rewritten to a band. -->
241
242
  **Risk:** <Low | Medium | High> - <one-line driver>
242
243
  ${decisionsLine}
243
244
 
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/components/ulw-execute-continuation/dist/cli.js\" hook stop",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.0.0-beta.63) Checking Ulw-Execute Continuation"
10
+ "statusMessage": "(OmO 5.0.0-beta.65) Checking Ulw-Execute Continuation"
11
11
  }
12
12
  ]
13
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-ulw-execute-continuation",
3
- "version": "5.0.0-beta.63",
3
+ "version": "5.0.0-beta.65",
4
4
  "description": "Codex Stop hook continuation injector for omo-codex ulw-execute plans.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -1,6 +1,12 @@
1
1
  import type { UlwLoopScope } from "./paths.js";
2
2
  import type { UlwLoopItem, UlwLoopPlan } from "./types.js";
3
3
  import { UlwLoopError } from "./types.js";
4
+ export interface CheckpointCodexGoalValidation {
5
+ readonly raw: unknown;
6
+ readonly nextActions: readonly string[];
7
+ readonly warnings: readonly string[];
8
+ readonly unacknowledgedObjective?: string;
9
+ }
4
10
  export declare function validateCheckpointCodexGoal(input: {
5
11
  readonly repoRoot: string;
6
12
  readonly plan: UlwLoopPlan;
@@ -8,9 +14,5 @@ export declare function validateCheckpointCodexGoal(input: {
8
14
  readonly raw: string | undefined;
9
15
  readonly evidence: string;
10
16
  readonly scope?: UlwLoopScope;
11
- }): Promise<{
12
- readonly raw: unknown;
13
- readonly nextActions: readonly string[];
14
- readonly warnings: readonly string[];
15
- }>;
17
+ }): Promise<CheckpointCodexGoalValidation>;
16
18
  export declare function combineCheckpointValidationErrors(codexError: UlwLoopError, gateError: UlwLoopError): UlwLoopError;
@@ -1,4 +1,5 @@
1
1
  import { CodexGoalSnapshotError, formatCodexGoalReconciliation, readCodexGoalSnapshotInput, reconcileCodexGoalSnapshot, } from "./codex-goal-snapshot.js";
2
+ import { acknowledgedDriverObjectives } from "./driver-objective-ack.js";
2
3
  import { codexGoalMode, compatibleCodexObjectives, expectedCodexObjective } from "./goal-status.js";
3
4
  import { UlwLoopError } from "./types.js";
4
5
  export async function validateCheckpointCodexGoal(input) {
@@ -6,6 +7,7 @@ export async function validateCheckpointCodexGoal(input) {
6
7
  const expected = expectedCodexObjective(input.plan, input.goal);
7
8
  const reconciliation = reconcileCodexGoalSnapshot(snapshot, {
8
9
  expectedObjective: expected,
10
+ acknowledgedObjectives: acknowledgedDriverObjectives(input.plan),
9
11
  ...(codexGoalMode(input.plan) === "aggregate"
10
12
  ? { acceptedObjectives: compatibleCodexObjectives(input.plan) }
11
13
  : {}),
@@ -14,8 +16,11 @@ export async function validateCheckpointCodexGoal(input) {
14
16
  throw new CodexGoalSnapshotError(formatCodexGoalReconciliation(reconciliation));
15
17
  return {
16
18
  raw: snapshot?.raw,
17
- nextActions: reconciliation.warnings,
18
- warnings: reconciliation.warnings.filter((warning) => warning.startsWith("driver_objective_differs")),
19
+ nextActions: reconciliation.nextActions,
20
+ warnings: reconciliation.warnings,
21
+ ...(reconciliation.unacknowledgedObjective === undefined
22
+ ? {}
23
+ : { unacknowledgedObjective: reconciliation.unacknowledgedObjective }),
19
24
  };
20
25
  }
21
26
  export function combineCheckpointValidationErrors(codexError, gateError) {
@@ -3,6 +3,7 @@ import { existsSync, statSync } from "node:fs";
3
3
  import { readFile } from "node:fs/promises";
4
4
  import { resolve } from "node:path";
5
5
  import { combineCheckpointValidationErrors, validateCheckpointCodexGoal, } from "./checkpoint-codex-validation.js";
6
+ import { acknowledgeDriverObjective } from "./driver-objective-ack.js";
6
7
  import { requireAllCriteriaPass, requireAllPlanCriteriaPass, requireEssentialCriteriaPass } from "./evidence.js";
7
8
  import { codexGoalMode, isFinalRunCompletionCandidate } from "./goal-status.js";
8
9
  import { ulwLoopAttemptEvidenceDir } from "./paths.js";
@@ -139,6 +140,7 @@ export async function checkpointUlwLoop(repoRoot, args, scope, dependencies) {
139
140
  codexGoal = validation.raw;
140
141
  nextActions = validation.nextActions;
141
142
  warnings = validation.warnings;
143
+ acknowledgeDriverObjective(plan, validation.unacknowledgedObjective);
142
144
  }
143
145
  catch (error) {
144
146
  if (!(error instanceof UlwLoopError))