oh-my-opencode 5.0.0-beta.23 → 5.0.0-beta.25

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 (142) hide show
  1. package/dist/cli/index.js +141 -184
  2. package/dist/cli-node/index.js +141 -184
  3. package/dist/index.js +1508 -1567
  4. package/dist/skills/debugging/SKILL.md +0 -2
  5. package/dist/skills/debugging/references/methodology/00-setup.md +0 -12
  6. package/dist/skills/debugging/references/methodology/02-investigate.md +0 -21
  7. package/dist/skills/debugging/references/runtimes/go.md +1 -15
  8. package/dist/skills/debugging/references/runtimes/native-binary.md +0 -38
  9. package/dist/skills/debugging/references/runtimes/node.md +0 -25
  10. package/dist/skills/debugging/references/runtimes/python.md +0 -13
  11. package/dist/skills/debugging/references/runtimes/rust.md +0 -41
  12. package/dist/tools/delegate-task/types.d.ts +0 -3
  13. package/dist/tui.js +0 -25
  14. package/package.json +15 -18
  15. package/packages/lsp-core/src/index.ts +0 -1
  16. package/packages/lsp-core/src/lsp/client-wrapper.ts +5 -25
  17. package/packages/lsp-core/src/lsp/client.ts +0 -26
  18. package/packages/lsp-core/src/lsp/connection.ts +0 -16
  19. package/packages/lsp-core/src/lsp/constants.ts +0 -1
  20. package/packages/lsp-core/src/lsp/manager.ts +1 -34
  21. package/packages/lsp-core/src/lsp/server-definitions.ts +0 -29
  22. package/packages/lsp-core/src/lsp/server-installation.ts +27 -200
  23. package/packages/lsp-core/src/lsp/server-resolution.ts +5 -18
  24. package/packages/lsp-core/src/lsp/transport.ts +0 -9
  25. package/packages/lsp-core/src/lsp/types.ts +0 -8
  26. package/packages/lsp-core/src/tool-surface.test.ts +1 -13
  27. package/packages/lsp-core/src/tools/definitions.ts +0 -14
  28. package/packages/lsp-core/src/tools/index.ts +0 -1
  29. package/packages/lsp-core/src/tools/types.ts +0 -10
  30. package/packages/lsp-daemon/dist/cli.js +144 -432
  31. package/packages/lsp-daemon/dist/client.d.ts +0 -10
  32. package/packages/lsp-daemon/dist/client.js +107 -401
  33. package/packages/lsp-daemon/dist/daemon-client.d.ts +0 -1
  34. package/packages/lsp-daemon/dist/daemon-client.js +0 -3
  35. package/packages/lsp-daemon/dist/index.js +107 -395
  36. package/packages/lsp-tools-mcp/dist/cli.js +99 -384
  37. package/packages/lsp-tools-mcp/dist/lsp/manager.js +0 -53
  38. package/packages/lsp-tools-mcp/dist/mcp.js +99 -384
  39. package/packages/lsp-tools-mcp/dist/tools.js +99 -385
  40. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  41. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +2 -2
  42. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  43. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  44. package/packages/omo-codex/plugin/components/codegraph/dist/cli.js +35 -69
  45. package/packages/omo-codex/plugin/components/codegraph/dist/serve.js +2 -21
  46. package/packages/omo-codex/plugin/components/codegraph/package.json +1 -1
  47. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  48. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  49. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  50. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  51. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  52. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  53. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +3 -3
  54. package/packages/omo-codex/plugin/components/lsp/dist/cli.js +121 -404
  55. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  56. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  57. package/packages/omo-codex/plugin/components/rules/dist/cli.js +3 -3
  58. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  59. package/packages/omo-codex/plugin/components/rules/package.json +1 -1
  60. package/packages/omo-codex/plugin/components/rules/src/post-compact-budget.ts +3 -3
  61. package/packages/omo-codex/plugin/components/rules/test/post-compact-budget.test.ts +4 -4
  62. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  63. package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
  64. package/packages/omo-codex/plugin/components/telemetry/dist/cli.js +15 -30
  65. package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +15 -30
  66. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  67. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  68. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  69. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  70. package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +2 -2
  71. package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
  72. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +4 -4
  73. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  74. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  75. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  76. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  77. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-codegraph-init-guidance.json +1 -1
  78. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  79. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  80. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  81. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  82. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  83. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  84. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  85. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  86. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  87. package/packages/omo-codex/plugin/hooks/session-start-checking-codegraph-bootstrap.json +1 -1
  88. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  89. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  90. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
  91. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  92. package/packages/omo-codex/plugin/hooks/subagent-stop-checking-ulw-execute-continuation.json +1 -1
  93. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  94. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  95. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  96. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  97. package/packages/omo-codex/plugin/model-catalog.json +3 -3
  98. package/packages/omo-codex/plugin/package-lock.json +13 -13
  99. package/packages/omo-codex/plugin/package.json +1 -1
  100. package/packages/omo-codex/plugin/scripts/migrate-codex-config/catalog.mjs +3 -3
  101. package/packages/omo-codex/plugin/skills/debugging/SKILL.md +0 -2
  102. package/packages/omo-codex/plugin/skills/debugging/references/methodology/00-setup.md +0 -12
  103. package/packages/omo-codex/plugin/skills/debugging/references/methodology/02-investigate.md +0 -21
  104. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/go.md +1 -15
  105. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/native-binary.md +0 -38
  106. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/node.md +0 -25
  107. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/python.md +0 -13
  108. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/rust.md +0 -41
  109. package/packages/omo-codex/plugin/test/aggregate-model-catalog.test.mjs +1 -1
  110. package/packages/omo-codex/plugin/test/auto-update.test.mjs +2 -2
  111. package/packages/omo-codex/plugin/test/migrate-codex-config.test.mjs +8 -8
  112. package/packages/omo-codex/scripts/install-config-reasoning.test.mjs +2 -2
  113. package/packages/omo-codex/scripts/install-dist/install-local.mjs +23 -38
  114. package/packages/shared-skills/skills/debugging/SKILL.md +0 -2
  115. package/packages/shared-skills/skills/debugging/references/methodology/00-setup.md +0 -12
  116. package/packages/shared-skills/skills/debugging/references/methodology/02-investigate.md +0 -21
  117. package/packages/shared-skills/skills/debugging/references/runtimes/go.md +1 -15
  118. package/packages/shared-skills/skills/debugging/references/runtimes/native-binary.md +0 -38
  119. package/packages/shared-skills/skills/debugging/references/runtimes/node.md +0 -25
  120. package/packages/shared-skills/skills/debugging/references/runtimes/python.md +0 -13
  121. package/packages/shared-skills/skills/debugging/references/runtimes/rust.md +0 -41
  122. package/dist/skills/debugging/references/scripts/dap.mjs +0 -267
  123. package/dist/skills/debugging/references/scripts/dap.test.ts +0 -86
  124. package/dist/skills/debugging/references/scripts/fixture-adapter.mjs +0 -59
  125. package/dist/skills/debugging/references/tools/dap.md +0 -103
  126. package/dist/skills/debugging/references/tools/frida.md +0 -193
  127. package/packages/lsp-core/src/lsp/format-document.test.ts +0 -143
  128. package/packages/lsp-core/src/lsp/format-document.ts +0 -90
  129. package/packages/lsp-core/src/lsp/manager-max-clients.test.ts +0 -151
  130. package/packages/lsp-core/src/lsp/server-installation.test.ts +0 -376
  131. package/packages/lsp-core/src/lsp/server-resolution-local-binary.test.ts +0 -170
  132. package/packages/lsp-core/src/tools/format.test.ts +0 -56
  133. package/packages/lsp-core/src/tools/format.ts +0 -56
  134. package/packages/omo-codex/plugin/skills/debugging/references/scripts/dap.mjs +0 -267
  135. package/packages/omo-codex/plugin/skills/debugging/references/scripts/fixture-adapter.mjs +0 -59
  136. package/packages/omo-codex/plugin/skills/debugging/references/tools/dap.md +0 -103
  137. package/packages/omo-codex/plugin/skills/debugging/references/tools/frida.md +0 -193
  138. package/packages/shared-skills/skills/debugging/references/scripts/dap.mjs +0 -267
  139. package/packages/shared-skills/skills/debugging/references/scripts/dap.test.ts +0 -86
  140. package/packages/shared-skills/skills/debugging/references/scripts/fixture-adapter.mjs +0 -59
  141. package/packages/shared-skills/skills/debugging/references/tools/dap.md +0 -103
  142. package/packages/shared-skills/skills/debugging/references/tools/frida.md +0 -193
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omo",
3
- "version": "5.0.0-beta.23",
3
+ "version": "5.0.0-beta.25",
4
4
  "description": "One Codex plugin namespace for Yeongyu's local Codex components.",
5
5
  "author": {
6
6
  "name": "Yeongyu Kim",
@@ -3088,14 +3088,14 @@ import { join as join16 } from "node:path";
3088
3088
  var FALLBACK_CODEX_MODEL_CATALOG = {
3089
3089
  current: {
3090
3090
  model: "gpt-5.6-sol",
3091
- modelContextWindow: 650000,
3091
+ modelContextWindow: 372000,
3092
3092
  modelReasoningEffort: "high",
3093
3093
  planModeReasoningEffort: "xhigh"
3094
3094
  },
3095
3095
  managedProfiles: [
3096
3096
  {
3097
3097
  model: "gpt-5.5",
3098
- modelContextWindow: 650000,
3098
+ modelContextWindow: 400000,
3099
3099
  modelReasoningEffort: "high",
3100
3100
  planModeReasoningEffort: "xhigh"
3101
3101
  },
@@ -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.23) Checking Bootstrap Provisioning"
11
+ "statusMessage": "(OmO 5.0.0-beta.25) 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.23",
3
+ "version": "5.0.0-beta.25",
4
4
  "description": "Codex SessionStart bootstrap component that provisions LazyCodex runtime dependencies from a detached worker.",
5
5
  "type": "module",
6
6
  "private": true,
@@ -5882,25 +5882,9 @@ var OmoTelemetrySettingsSchema = OmoTelemetrySettingsLayerSchema.extend({
5882
5882
  enabled: boolean2().default(true)
5883
5883
  }).strict();
5884
5884
 
5885
- // ../../omo-config-core/src/schema/format-on-mutation.ts
5886
- var mode = _enum(["off", "best-effort", "required"]);
5887
- var languages = record(string2(), boolean2()).optional();
5888
- var OmoFormatOnMutationLayerSchema = object({
5889
- mode: mode.optional(),
5890
- languages,
5891
- maxFileBytes: number2().int().positive().optional(),
5892
- timeoutMs: number2().int().positive().optional()
5893
- }).strict();
5894
- var OmoFormatOnMutationSchema = OmoFormatOnMutationLayerSchema.extend({
5895
- mode: mode.default("best-effort"),
5896
- maxFileBytes: number2().int().positive().default(1048576),
5897
- timeoutMs: number2().int().positive().default(3000)
5898
- }).strict();
5899
-
5900
5885
  // ../../omo-config-core/src/schema/config.ts
5901
5886
  var OmoOpenCodeHarnessConfigSchema = record(string2(), unknown());
5902
5887
  var OmoTypedHarnessConfigSchema = object({
5903
- formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
5904
5888
  categories: OmoCategoriesConfigSchema.optional(),
5905
5889
  agents: OmoAgentsConfigSchema.optional(),
5906
5890
  codegraph: OmoCodegraphSettingsLayerSchema.optional(),
@@ -5912,7 +5896,6 @@ var OmoTypedHarnessConfigSchema = object({
5912
5896
  telemetry: OmoTelemetrySettingsLayerSchema.optional()
5913
5897
  }).strict();
5914
5898
  var OmoConfigProfileSchema = object({
5915
- formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
5916
5899
  categories: OmoCategoriesConfigSchema.optional(),
5917
5900
  agents: OmoAgentsConfigSchema.optional(),
5918
5901
  codegraph: OmoCodegraphSettingsLayerSchema.optional(),
@@ -5927,7 +5910,6 @@ var OmoConfigProfileSchema = object({
5927
5910
  "[codex]": OmoTypedHarnessConfigSchema.optional()
5928
5911
  }).strict();
5929
5912
  var OmoConfigSchema = object({
5930
- formatOnMutation: OmoFormatOnMutationSchema.optional(),
5931
5913
  $schema: string2().optional(),
5932
5914
  categories: OmoCategoriesConfigSchema.optional(),
5933
5915
  agents: OmoAgentsConfigSchema.optional(),
@@ -5946,7 +5928,6 @@ var OmoConfigSchema = object({
5946
5928
  legacy_migrations: record(string2(), unknown()).optional()
5947
5929
  }).strict();
5948
5930
  var OmoConfigLayerSchema = object({
5949
- formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
5950
5931
  $schema: string2().optional(),
5951
5932
  categories: OmoCategoriesConfigSchema.optional(),
5952
5933
  agents: OmoAgentsConfigSchema.optional(),
@@ -9607,7 +9588,7 @@ function defaultPluginRoot() {
9607
9588
  }
9608
9589
 
9609
9590
  // components/codegraph/src/session-start-cooldown.ts
9610
- import { mkdirSync as mkdirSync4, readFileSync as readFileSync6, rmSync as rmSync3 } from "node:fs";
9591
+ import { mkdirSync as mkdirSync4, readFileSync as readFileSync6, rmSync as rmSync2 } from "node:fs";
9611
9592
 
9612
9593
  // ../../utils/src/atomic-write.ts
9613
9594
  import {
@@ -9615,12 +9596,9 @@ import {
9615
9596
  fsyncSync,
9616
9597
  openSync,
9617
9598
  renameSync as renameSync2,
9618
- rmSync as rmSync2,
9619
9599
  unlinkSync as unlinkSync2,
9620
9600
  writeFileSync as writeFileSync4
9621
9601
  } from "node:fs";
9622
- import { randomUUID as randomUUID2 } from "node:crypto";
9623
- import { dirname as dirname8 } from "node:path";
9624
9602
  var TOLERATED_FSYNC_CODES = new Set([
9625
9603
  "EPERM",
9626
9604
  "EACCES",
@@ -9642,41 +9620,29 @@ function tolerantFsyncSync(fileDescriptor, fsyncImpl) {
9642
9620
  }
9643
9621
  }
9644
9622
  function writeFileAtomically(filePath, content, options = {}) {
9645
- const platform = options.platform ?? process.platform;
9646
- const fsyncImpl = options.fsyncSync ?? fsyncSync;
9647
- const tempPath = `${filePath}.${process.pid}.${randomUUID2()}.tmp`;
9623
+ const tempPath = `${filePath}.tmp`;
9624
+ writeFileSync4(tempPath, content, "utf-8");
9625
+ const tempFileDescriptor = openSync(tempPath, "r+");
9648
9626
  try {
9649
- writeFileSync4(tempPath, content, "utf-8");
9650
- const tempFileDescriptor = openSync(tempPath, "r+");
9651
- try {
9652
- tolerantFsyncSync(tempFileDescriptor, fsyncImpl);
9653
- } finally {
9654
- closeSync(tempFileDescriptor);
9655
- }
9656
- try {
9657
- renameSync2(tempPath, filePath);
9658
- } catch (error) {
9659
- const isPermissionError = error instanceof Error && (error.message.includes("EPERM") || error.message.includes("EACCES"));
9660
- if (platform !== "win32" || !isPermissionError)
9661
- throw error;
9627
+ tolerantFsyncSync(tempFileDescriptor, options.fsyncSync ?? fsyncSync);
9628
+ } finally {
9629
+ closeSync(tempFileDescriptor);
9630
+ }
9631
+ try {
9632
+ renameSync2(tempPath, filePath);
9633
+ } catch (error) {
9634
+ const isPermissionError = error instanceof Error && (error.message.includes("EPERM") || error.message.includes("EACCES"));
9635
+ if ((options.platform ?? process.platform) === "win32" && isPermissionError) {
9662
9636
  unlinkSync2(filePath);
9663
9637
  renameSync2(tempPath, filePath);
9664
- }
9665
- if (platform === "win32")
9666
9638
  return;
9667
- const directoryFileDescriptor = openSync(dirname8(filePath), "r");
9668
- try {
9669
- tolerantFsyncSync(directoryFileDescriptor, fsyncImpl);
9670
- } finally {
9671
- closeSync(directoryFileDescriptor);
9672
9639
  }
9673
- } finally {
9674
- rmSync2(tempPath, { force: true });
9640
+ throw error;
9675
9641
  }
9676
9642
  }
9677
9643
 
9678
9644
  // components/codegraph/src/session-start-paths.ts
9679
- import { basename as basename3, dirname as dirname9, join as join14 } from "node:path";
9645
+ import { basename as basename3, dirname as dirname8, join as join14 } from "node:path";
9680
9646
  function resolveSessionStartStatePaths(homeDir, projectRoot) {
9681
9647
  const canonicalProjectRoot = canonicalizeCodegraphPath(projectRoot);
9682
9648
  const workspacePaths = resolveCodegraphWorkspacePaths(canonicalProjectRoot, { homeDir });
@@ -9691,7 +9657,7 @@ function resolveSessionStartStatePaths(homeDir, projectRoot) {
9691
9657
  };
9692
9658
  }
9693
9659
  function stateParent(path) {
9694
- return dirname9(path);
9660
+ return dirname8(path);
9695
9661
  }
9696
9662
 
9697
9663
  // components/codegraph/src/session-start-cooldown.ts
@@ -9727,7 +9693,7 @@ function recordSessionStartFailure(options) {
9727
9693
  }
9728
9694
  function clearSessionStartCooldown(options) {
9729
9695
  const path = resolveSessionStartStatePaths(options.homeDir, options.projectRoot).cooldownPath;
9730
- rmSync3(path, { force: true });
9696
+ rmSync2(path, { force: true });
9731
9697
  }
9732
9698
  function cooldownDuration(baseCooldownMs, failureCount, maxCooldownMs) {
9733
9699
  let duration3 = Math.min(baseCooldownMs, maxCooldownMs);
@@ -9811,8 +9777,8 @@ function writeSessionStartNotice(stdout, notice) {
9811
9777
  }
9812
9778
 
9813
9779
  // components/codegraph/src/session-start-lock.ts
9814
- import { randomUUID as randomUUID3 } from "node:crypto";
9815
- import { mkdirSync as mkdirSync5, readFileSync as readFileSync7, rmSync as rmSync4, statSync as statSync3, writeFileSync as writeFileSync5 } from "node:fs";
9780
+ import { randomUUID as randomUUID2 } from "node:crypto";
9781
+ import { mkdirSync as mkdirSync5, readFileSync as readFileSync7, rmSync as rmSync3, statSync as statSync3, writeFileSync as writeFileSync5 } from "node:fs";
9816
9782
  function acquireSessionStartLock(options) {
9817
9783
  const paths = resolveSessionStartStatePaths(options.homeDir, options.projectRoot);
9818
9784
  const lockPath = paths.lockPath;
@@ -9841,7 +9807,7 @@ function releaseSessionStartLock(lock) {
9841
9807
  if (snapshot.kind !== "present" || snapshot.token !== lock.token)
9842
9808
  return false;
9843
9809
  try {
9844
- rmSync4(lock.path, { force: true });
9810
+ rmSync3(lock.path, { force: true });
9845
9811
  return true;
9846
9812
  } catch (error) {
9847
9813
  if (error instanceof Error)
@@ -9866,7 +9832,7 @@ function reclaimStaleLock(lockPath, staleSnapshot, options) {
9866
9832
  const changed = current.raw !== staleSnapshot.raw || current.mtimeMs !== staleSnapshot.mtimeMs;
9867
9833
  if (changed || options.nowMs - current.mtimeMs < options.staleMs)
9868
9834
  return { kind: "locked" };
9869
- rmSync4(lockPath, { force: true });
9835
+ rmSync3(lockPath, { force: true });
9870
9836
  }
9871
9837
  const acquired = tryCreateLock(lockPath, options.projectRoot);
9872
9838
  return acquired.kind === "acquired" ? { ...acquired, recoveredStale: true } : acquired;
@@ -9875,11 +9841,11 @@ function reclaimStaleLock(lockPath, staleSnapshot, options) {
9875
9841
  return { kind: "inconclusive", reason: error.message };
9876
9842
  throw error;
9877
9843
  } finally {
9878
- rmSync4(reclaimPath, { force: true });
9844
+ rmSync3(reclaimPath, { force: true });
9879
9845
  }
9880
9846
  }
9881
9847
  function tryCreateLock(lockPath, projectRoot) {
9882
- const token = randomUUID3();
9848
+ const token = randomUUID2();
9883
9849
  try {
9884
9850
  writeFileSync5(lockPath, `${JSON.stringify({ projectRoot, token })}
9885
9851
  `, {
@@ -9898,7 +9864,7 @@ function tryCreateLock(lockPath, projectRoot) {
9898
9864
  }
9899
9865
  function tryCreateMarker(path) {
9900
9866
  try {
9901
- writeFileSync5(path, `${randomUUID3()}
9867
+ writeFileSync5(path, `${randomUUID2()}
9902
9868
  `, { encoding: "utf8", flag: "wx", mode: 384 });
9903
9869
  return { kind: "acquired" };
9904
9870
  } catch (error) {
@@ -9936,17 +9902,17 @@ function errorCode2(error) {
9936
9902
 
9937
9903
  // components/codegraph/src/session-start-outcome.ts
9938
9904
  import { appendFileSync as appendFileSync2, mkdirSync as mkdirSync6 } from "node:fs";
9939
- import { dirname as dirname10, join as join15 } from "node:path";
9905
+ import { dirname as dirname9, join as join15 } from "node:path";
9940
9906
  function appendSessionStartOutcome(homeDir, outcome, nowMs = Date.now()) {
9941
9907
  const path = join15(codegraphDataRoot(homeDir), "session-start.jsonl");
9942
- mkdirSync6(dirname10(path), { recursive: true });
9908
+ mkdirSync6(dirname9(path), { recursive: true });
9943
9909
  appendFileSync2(path, `${JSON.stringify({ ...outcome, timestamp: new Date(nowMs).toISOString() })}
9944
9910
  `);
9945
9911
  }
9946
9912
 
9947
9913
  // components/codegraph/src/session-start-project.ts
9948
9914
  import { realpathSync as realpathSync7, statSync as statSync4 } from "node:fs";
9949
- import { dirname as dirname11, join as join16 } from "node:path";
9915
+ import { dirname as dirname10, join as join16 } from "node:path";
9950
9916
  function probeCodegraphProject(projectRoot, options = {}) {
9951
9917
  const resolved = resolveProjectRoot(projectRoot);
9952
9918
  if (resolved.kind === "inconclusive")
@@ -9978,14 +9944,14 @@ function probeResolvedExactProject(projectRoot, probeDatabase) {
9978
9944
  return { kind: "uninitialized" };
9979
9945
  }
9980
9946
  function probeResolvedAncestors(projectRoot, probeDatabase) {
9981
- let ancestorRoot = dirname11(projectRoot);
9947
+ let ancestorRoot = dirname10(projectRoot);
9982
9948
  while (ancestorRoot !== projectRoot) {
9983
9949
  const database = probeDatabase(ancestorRoot);
9984
9950
  if (database.kind === "present")
9985
9951
  return { ancestorRoot, kind: "nested-root" };
9986
9952
  if (database.kind === "inconclusive")
9987
9953
  return database;
9988
- const parent = dirname11(ancestorRoot);
9954
+ const parent = dirname10(ancestorRoot);
9989
9955
  if (parent === ancestorRoot)
9990
9956
  break;
9991
9957
  ancestorRoot = parent;
@@ -10147,7 +10113,7 @@ function parseNodeMajor(version2) {
10147
10113
  }
10148
10114
 
10149
10115
  // ../../utils/src/codegraph/provision.ts
10150
- import { createHash as createHash2, randomUUID as randomUUID4 } from "node:crypto";
10116
+ import { createHash as createHash2, randomUUID as randomUUID3 } from "node:crypto";
10151
10117
  import { execFile as execFile2 } from "node:child_process";
10152
10118
  import { chmod, mkdir, readdir, readFile, rename, rm, rmdir, stat, writeFile } from "node:fs/promises";
10153
10119
  import { existsSync as existsSync9 } from "node:fs";
@@ -10267,7 +10233,7 @@ async function installExtractedBundle(extractDir, installDir, executableName) {
10267
10233
  }
10268
10234
  async function installAsset(layout) {
10269
10235
  const { asset, downloader, installDir, version: version2 } = layout;
10270
- const stagingDir = join18(installDir, ".staging", randomUUID4());
10236
+ const stagingDir = join18(installDir, ".staging", randomUUID3());
10271
10237
  const archivePath = join18(stagingDir, basename4(asset.url));
10272
10238
  const extractDir = join18(stagingDir, "extract");
10273
10239
  try {
@@ -10330,7 +10296,7 @@ async function ensureCodegraphProvisioned(options) {
10330
10296
  import { existsSync as existsSync10 } from "node:fs";
10331
10297
  import { homedir as homedir10 } from "node:os";
10332
10298
  import { spawnSync } from "node:child_process";
10333
- import { basename as basename5, dirname as dirname12, join as join20 } from "node:path";
10299
+ import { basename as basename5, dirname as dirname11, join as join20 } from "node:path";
10334
10300
  import { createRequire } from "node:module";
10335
10301
 
10336
10302
  // ../../utils/src/runtime/which.ts
@@ -10483,7 +10449,7 @@ function defaultProvisionedBin(homeDir, fileExists) {
10483
10449
  function resolveBundledShim(requireResolve, fileExists) {
10484
10450
  try {
10485
10451
  const packageJson = requireResolve(`${CODEGRAPH_PACKAGE}/package.json`);
10486
- const packageRoot = dirname12(packageJson);
10452
+ const packageRoot = dirname11(packageJson);
10487
10453
  const candidates = [join20(packageRoot, "bin", "codegraph.js"), join20(packageRoot, "npm-shim.js")];
10488
10454
  return candidates.find((candidate) => fileExists(candidate)) ?? null;
10489
10455
  } catch (error) {
@@ -11793,8 +11759,8 @@ async function runBridgedCodegraphProcess(command, args, options) {
11793
11759
  destroyChildPipes();
11794
11760
  terminateCodegraphChild(child);
11795
11761
  });
11796
- const clientForwardingDone = forwardClientToCodegraph(options.input, childInput, pendingResponses, (mode2) => {
11797
- defaultResponseMode = mode2;
11762
+ const clientForwardingDone = forwardClientToCodegraph(options.input, childInput, pendingResponses, (mode) => {
11763
+ defaultResponseMode = mode;
11798
11764
  }, () => parentWatchdogFired);
11799
11765
  const responseForwardingDone = forwardCodegraphToClient(childOutput, options.output, pendingResponses, () => defaultResponseMode, () => parentWatchdogFired);
11800
11766
  const bridgeDone = Promise.all([clientForwardingDone, responseForwardingDone]);
@@ -6148,25 +6148,9 @@ var OmoTelemetrySettingsSchema = OmoTelemetrySettingsLayerSchema.extend({
6148
6148
  enabled: boolean2().default(true)
6149
6149
  }).strict();
6150
6150
 
6151
- // ../../../../omo-config-core/src/schema/format-on-mutation.ts
6152
- var mode = _enum(["off", "best-effort", "required"]);
6153
- var languages = record(string2(), boolean2()).optional();
6154
- var OmoFormatOnMutationLayerSchema = object({
6155
- mode: mode.optional(),
6156
- languages,
6157
- maxFileBytes: number2().int().positive().optional(),
6158
- timeoutMs: number2().int().positive().optional()
6159
- }).strict();
6160
- var OmoFormatOnMutationSchema = OmoFormatOnMutationLayerSchema.extend({
6161
- mode: mode.default("best-effort"),
6162
- maxFileBytes: number2().int().positive().default(1048576),
6163
- timeoutMs: number2().int().positive().default(3000)
6164
- }).strict();
6165
-
6166
6151
  // ../../../../omo-config-core/src/schema/config.ts
6167
6152
  var OmoOpenCodeHarnessConfigSchema = record(string2(), unknown());
6168
6153
  var OmoTypedHarnessConfigSchema = object({
6169
- formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
6170
6154
  categories: OmoCategoriesConfigSchema.optional(),
6171
6155
  agents: OmoAgentsConfigSchema.optional(),
6172
6156
  codegraph: OmoCodegraphSettingsLayerSchema.optional(),
@@ -6178,7 +6162,6 @@ var OmoTypedHarnessConfigSchema = object({
6178
6162
  telemetry: OmoTelemetrySettingsLayerSchema.optional()
6179
6163
  }).strict();
6180
6164
  var OmoConfigProfileSchema = object({
6181
- formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
6182
6165
  categories: OmoCategoriesConfigSchema.optional(),
6183
6166
  agents: OmoAgentsConfigSchema.optional(),
6184
6167
  codegraph: OmoCodegraphSettingsLayerSchema.optional(),
@@ -6193,7 +6176,6 @@ var OmoConfigProfileSchema = object({
6193
6176
  "[codex]": OmoTypedHarnessConfigSchema.optional()
6194
6177
  }).strict();
6195
6178
  var OmoConfigSchema = object({
6196
- formatOnMutation: OmoFormatOnMutationSchema.optional(),
6197
6179
  $schema: string2().optional(),
6198
6180
  categories: OmoCategoriesConfigSchema.optional(),
6199
6181
  agents: OmoAgentsConfigSchema.optional(),
@@ -6212,7 +6194,6 @@ var OmoConfigSchema = object({
6212
6194
  legacy_migrations: record(string2(), unknown()).optional()
6213
6195
  }).strict();
6214
6196
  var OmoConfigLayerSchema = object({
6215
- formatOnMutation: OmoFormatOnMutationLayerSchema.optional(),
6216
6197
  $schema: string2().optional(),
6217
6198
  categories: OmoCategoriesConfigSchema.optional(),
6218
6199
  agents: OmoAgentsConfigSchema.optional(),
@@ -9477,8 +9458,8 @@ async function runBridgedCodegraphProcess(command, args, options) {
9477
9458
  destroyChildPipes();
9478
9459
  terminateCodegraphChild(child);
9479
9460
  });
9480
- const clientForwardingDone = forwardClientToCodegraph(options.input, childInput, pendingResponses, (mode2) => {
9481
- defaultResponseMode = mode2;
9461
+ const clientForwardingDone = forwardClientToCodegraph(options.input, childInput, pendingResponses, (mode) => {
9462
+ defaultResponseMode = mode;
9482
9463
  }, () => parentWatchdogFired);
9483
9464
  const responseForwardingDone = forwardCodegraphToClient(childOutput, options.output, pendingResponses, () => defaultResponseMode, () => parentWatchdogFired);
9484
9465
  const bridgeDone = Promise.all([clientForwardingDone, responseForwardingDone]);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/codex-codegraph",
3
- "version": "5.0.0-beta.23",
3
+ "version": "5.0.0-beta.25",
4
4
  "description": "Codex plugin MCP wrapper for CodeGraph.",
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.23) Checking Comments"
11
+ "statusMessage": "(OmO 5.0.0-beta.25) 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.23",
3
+ "version": "5.0.0-beta.25",
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.23) Recommending Git Bash MCP"
11
+ "statusMessage": "(OmO 5.0.0-beta.25) 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.23) Resetting Git Bash MCP Reminder"
23
+ "statusMessage": "(OmO 5.0.0-beta.25) 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.23",
3
+ "version": "5.0.0-beta.25",
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.23) Verifying LazyCodex Executor Evidence"
11
+ "statusMessage": "(OmO 5.0.0-beta.25) 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.23",
3
+ "version": "5.0.0-beta.25",
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.23",
4
- "inputDigest": "sha256:6ca6ad100ccdd3adbac2d93a8fe3fe5e774cd0cf0d51bef5b12fe2b311c3909d",
3
+ "version": "5.0.0-beta.25",
4
+ "inputDigest": "sha256:33c0b09ebddd94dbf6c798105117ffb2e799f62c9334dc3067962e9cdae80348",
5
5
  "outputs": [
6
6
  {
7
7
  "path": "cli.d.ts",
@@ -9,7 +9,7 @@
9
9
  },
10
10
  {
11
11
  "path": "cli.js",
12
- "sha256": "5e3645a0299f523876c758e645e70f7a122a46da6ec7d3994473ec19f9048430"
12
+ "sha256": "3f675ea851c53c89962d593cd1c5f91779ef0e6583e56699e00d24c03994dac2"
13
13
  },
14
14
  {
15
15
  "path": "codex-hook-cli.d.ts",