Minor Compatibility and Stability Release
This release carries compatibility-facing behavior changes and operational hardening. Read the summary below before upgrading or publishing.
- Rename transition updates across package detection, plugin/config compatibility, and install surfaces.
- Task and tool behavior updates, including delegate-task contract and runtime registration behavior.
- Task-system default behavior alignment so omitted configuration behaves consistently across runtime paths.
- Install and publish workflow hardening, including safer release sequencing and package/install fixes.
Commit Summary
- b9b627f test(codex): relax install integration timeouts
- 11b1d40 Merge pull request #5065 from MoerAI/fix/gpt-ultrawork-session-scoped-directives
- 3cabcae test(ultrawork): update GPT prompt baseline
- 94f200f fix(prompts): scope GPT ultrawork banner and intent declaration to first turn (fixes #4817)
- 02f37d0 Merge fix/codex-rules-static-body-injection into dev
- 96105b1 fix(omo-codex): inject static rule bodies instead of references
- 200f691 Merge pull request #5049 from MoerAI/fix/team-create-null-arg-validation
- cb49e21 Merge pull request #5041 from sjawhar/fix/json-error-recovery-exclude-subagents
- 5c08fe9 Merge pull request #4957 from Hungdoan565/fix/4853-formatter-sdk-response-shape
- ed52980 docs(codex): align light mcp release docs
- 68cda51 fix(shared): align minimum opencode version
- c352b51 fix: clear pre-publish blockers
- 837d06c fix(skill-loader): speed up git-master async resolution
- 60935a5 fix(team-mode): treat null-valued team_create optionals as absent (fixes #5047)
- 2f610b2 @gfnord has signed the CLA in #5044
- bf14e10 docs(agents): refresh hierarchical AGENTS.md to HEAD (init-deep update)
- 7328674 Merge pull request #5040 from code-yeongyu/fix/prepublish-blockers-20260608
- 24b6e3c fix(json-error-recovery): exclude subagent + session-content tools so delegated output that mentions JSON errors does not trigger a false reminder
- 2d4f31a fix(release): close prepublish review blockers
- 0757858 docs: restore inspiration credits
- e3f024b docs: remove stale Codex compatibility references
- cdb80e4 fix(codex): wire release safety checks
- 02c9d3a fix(omo-codex): document valid spawn agent schema
- cf0836d fix(rules-engine): reject absolute distance paths
- 8fc58f5 fix(omo-codex): persist auto-update check state
- 2dc4d64 fix(omo-codex): silence telemetry init failures
- 2d3b087 fix(omo-codex): validate cached plugin bin links
- 6c150a3 fix(codex): suppress context-pressure hook reinjection
- e39ad1b fix(team-mode): harden mailbox recipients and tmux auth
- fb1c275 fix(lsp): harden project config and workspace edits
- b4895dc Remove Codex compatibility references
- f3b8110 Merge pull request #5034 from code-yeongyu/fix/remove-pr4703-consensus
- c90204a refactor(consensus): remove consensus tool
- 0908f17 Merge pull request #5031 from code-yeongyu/feature/lazycodex-open-issues-omo-codex
- 0e82400 @Nigmat-future has signed the CLA in #5032
- f603e9d fix(omo-codex): gate packaged start-work completion
- 5638be3 fix(omo-codex): require review debug gate
- 50c876f docs(omo-codex): document omx coexistence
- 31e4338 fix(omo-codex): harden subagent guidance
- 661eef5 Merge pull request #5018 from code-yeongyu/fix/probs-test-gate-20260606
- 568b9e6 Merge remote-tracking branch 'origin/fix/probs-test-gate-20260606' into fix/pr5018-global-mock-cleanup
- 220d237 fix(mcp-oauth): harden callback server readiness
- ef50a1c fix(mcp-oauth): avoid polluted callback HTTP client
- 88e8e74 Merge remote-tracking branch 'origin/fix/probs-test-gate-20260606' into fix/pr5018-global-mock-cleanup
- b64545e fix(mcp-oauth): avoid mocked callback readiness probe
- c50e9d9 fix(mcp-oauth): isolate callback server timers
- 71e3fb7 test(mcp-oauth): isolate callback readiness probe
- e72f177 test(mcp-oauth): remove leaking callback request mock
- 2c29113 Merge remote-tracking branch 'origin/fix/probs-test-gate-20260606' into fix/probs-test-gate-20260606
- 686f79c test(git-bash): expect native process line endings
- 3a6af3a fix(mcp-oauth): wait for callback HTTP acceptance
- d74631c fix(mcp-oauth): wait for callback listener readiness
- 0bab539 fix(windows): honor command lookup and shell fixture contracts
- 5c5f94c fix(windows): resolve git worktree paths natively
- 11a6fd2 fix(mcp-oauth): preserve callback server request semantics
- 857b82e fix(mcp-oauth): stabilize callback readiness probe
- 3f21fa0 fix(mcp-oauth): probe HTTP callback readiness
- 5ff35ba fix(mcp-oauth): wait for TCP callback readiness
- e25cb8d Merge branch 'fix/probs-test-gate-20260606' of https://github.com/code-yeongyu/oh-my-openagent into fix/probs-test-gate-20260606
- 0570c2b fix(mcp-oauth): trust callback listen event
- 62e2789 Merge branch 'fix/probs-test-gate-20260606' of https://github.com/code-yeongyu/oh-my-openagent into fix/probs-test-gate-20260606
- ead7f3b test(paths): compare canonical fixture paths
- 79fa646 test(git-bash): normalize Windows fixture output
- 183e842 fix(comment-checker): normalize Windows diagnostics
- d23e802 fix(team-mode): mark stuck teams before cleanup
- ceff4eb fix(doctor): tolerate consumed stream errors
- e73f58d fix(windows): resolve executable suffixes in PATH lookup
- edd4c8d fix(mcp-oauth): rely on listen readiness
- 9973f68 fix(test): stabilize synthetic merge gate
- 89d9fe6 fix(mcp-oauth): wait for callback HTTP readiness
- 78f4217 fix(interactive-bash): use shimmed PATH lookup
- 013a0e1 fix(team-mode): extend state lock wait
- 0bb1aad test(windows): harden process path fixtures
- 3b57122 fix(paths): preserve target platform paths
- 5376ae6 fix(doctor): tolerate consumed spawn streams
- a7c8fb2 fix(mcp-oauth): trust callback listen readiness
- 92db8b8 fix(paths): compare native canonical paths
- b401c14 test(mock): stop replaying unpreserved module mocks
- 8e75a92 fix(doctor): read spawn output streams once
- 927df1c Merge remote-tracking branch 'origin/fix/probs-test-gate-20260606' into fix/pr5018-global-mock-cleanup
- c507cf9 fix(rules): preserve canonical scanner boundaries
- abd0984 test(background): scope abort timeout logs
- 36eddb0 fix(rules): canonicalize scanner boundaries
- 61d8c17 Merge branch 'dev' into fix/probs-test-gate-20260606
- 2a6de7c test(ci): stabilize root test gate
- 38012e3 fix(windows): respect native process contracts
- e827eaf fix(rules): compare normalized relative paths
- 79797a0 fix(skills): normalize config source paths
- 6cf3aeb fix(paths): canonicalize worktree plan paths
- 48af32b fix(ultrawork): finalize sqlite override statements
- b7c9129 fix(mcp-oauth): handle deferred callback close errors
- 8e127a7 test(mock): preserve file-scoped module mocks explicitly
- 87924ef test(mock): preserve peer module mocks on restore
- 185b8af fix(mcp-oauth): await callback server close
- 21696f0 test(ci): restore plain root test gate
- ab607f6 test(mock): stabilize module mock cleanup
- 3f2c414 Fix cross-platform test gate regressions
- 2e22f4f @madgegja has signed the CLA in #5026
- c64f928 Merge remote-tracking branch 'origin/dev' into fix/probs-test-gate-20260606
- b746d6c test(mcp-oauth): use fetch for callback requests
- deefd42 test(mcp-oauth): avoid callback fixed-port races
- 4a20824 fix(mcp-oauth): await callback server readiness
- ccc7c22 test(oauth): isolate callback server ports
- 683eb8a test(server): avoid flaky Bun loopback fetch
- aa62ab0 test(setup): restore fetch after each test
- 225f074 test(mock): avoid injector module leak
- 3332a48 test(mock): restore unresolved scoped mocks
- 0491f7e test(mock): ignore Windows lifecycle stack frames
- 5e2bf94 test(mock): restore unpreserved mocks on clean restore
- f376f37 test(codex): cover Windows cleanup fixture path
- 57fb277 test(codex): use portable installer and git-bash fixtures
- 876f542 test(tmux): inject session-created handler subprocess seams
- dfd5878 test(mock): replay active mocks after unowned restore
- 11dc754 fix(git-bash): capture runner output through files
- d9e4d83 test(mock): restore unpreserved module mocks
- a575754 test(mock): avoid global restore for scoped module mocks
- 3dae6f1 test(mock): scope preserved module mocks
- d6fe584 test(mock): preserve concurrent module mocks
- 114374d @inhyoe has signed the CLA in #4715
- f313546 test(windows): create safe zip fixture portably
- 58a6ac1 test(mock): scope module mock cleanup
- d4e0fa4 test(windows): create safe tar fixture portably
- 8cbb42a test(shared): reset agent sort state
- 1156f8f fix(shared): preserve WSL config paths
- c1852b5 test(windows): resolve fresh import paths
- 649cdbc test(mock): restore top-level module mocks
- 3044565 test(mock): handle Windows stack paths
- cbab166 test(ci): run serialized root test script in CI
- 63cae8c test(ci): serialize root test gate
- a89acc6 test(ci): harden cross-platform root tests
- fc63c71 test(windows): avoid platform-specific fixtures
- d6eb87c fix(shared): preserve platform path semantics
- 9655b61 test(prompts): normalize prompt line endings
- e578c60 test(mock): preserve active mocks during cleanup
- 1e3ec93 test(shared): avoid global mock restore in plugin loader tests
- 000b19c test(shared): avoid fs mock in plugin loader tests
- fc1cdc6 test(shared): isolate opencode plugin loader fixture
- cd19bc2 test(codex): isolate component bin fixture
- 0fad304 test(ralph-loop): pin message lookup prompt gate
- f80529b test(hooks): refresh model and skill fixtures
- 08e81b4 fix(atlas): normalize boulder session tracking
- 2be0332 test(cleanup): isolate logger-backed cleanup checks
- fc31da5 test(cli-run): isolate run command dependencies
- 684273b test(doctor): isolate system config parsing
- 8084447 test(codex): include marketplace cache script gate
- 0af7a9f test(codex): relax Windows cleanup timeout
- 6191adc test(todo): strengthen prompt gate cooldown checks
- 5dc9997 test(prometheus): refresh prompt byte baselines
- bf19197 fix(delegate): trust readable provider cache
- 6042e04 test(config): isolate config dirs in oauth checks
- 9c9c9f1 fix(hooks): preserve continuation prompt gate retries
- 43d0950 test(background-agent): update parent wake no-reply expectations
- e80a68e test(process-cleanup): prevent false-green runner exit
- 4471560 test(tmux): align placeholder command assertions
- 87ca96b test(mock): restore module mocks in cleanup tests
- 0ce78fc Merge pull request #5014 from code-yeongyu/fix/visual-qa-mirror-test-dedup
- 99cb77b Merge pull request #5013 from code-yeongyu/fix/package-test-slop-cleanup
- 3585770 Merge pull request #5012 from code-yeongyu/fix/rules-distance-cleanup
- 094160c test(omo-codex): skip generated visual qa mirror tests
- 2281d5e test(utils): tighten helper assertions
- 36f3143 test(prompts-core): narrow captured loader errors
- 6f4a31b test(git-bash-mcp): assert MCP payload shapes
- c848382 fix(rules-engine): remove defensive distance fallback
- 45cffc2 Merge pull request #5011 from code-yeongyu/test/model-core-resolver-no-non-null-fresh-20260606
- d755885 Merge pull request #5010 from code-yeongyu/cleanup/mock-module-lifecycle-allowlist
- 3df08fc test(model-core): reuse narrowed resolver results
- b53ad24 Merge pull request #5008 from code-yeongyu/cleanup/hashline-core-duplicate-tests
- b1cb4a8 Merge pull request #5007 from code-yeongyu/test/remove-stale-gpt-fixture-audits
- 92ebb80 Merge pull request #5006 from code-yeongyu/test/doctor-model-resolution-no-non-null
- bb5f5ac test(model-core): narrow resolver test results
- 16ab336 test(hashline): remove duplicate adapter tests
- 13a6a59 test(migration): remove stale GPT audit fixture
- 5fece28 test(runtime-fallback): remove stale GPT audit fixture
- 1afbdec test(momus): remove stale GPT audit fixture
- de24e17 test(doctor): remove model resolution non-null assertions
- f42018f Merge pull request #5005 from code-yeongyu/cleanup/model-core-parse-suggestion-no-excuse-20260606
- 91666e6 Merge pull request #5004 from code-yeongyu/cleanup/claude-code-hooks-catch-batch-20260606
- 9f71b01 fix(model-core): preserve stringify fallback semantics
- 4f6d70a Merge pull request #5003 from code-yeongyu/cleanup/rules-injector-catch-batch-20260606
- eb0f117 Merge pull request #5002 from code-yeongyu/cleanup/ralph-loop-catch-batch-20260606
- b409b82 model-core: tighten model suggestion parsing
- f65f34b fix(claude-hooks): remove catch cleanup slop
- 335c822 fix(claude-hooks): make http body fallback explicit
- a3691a0 fix(claude-hooks): simplify transcript catch logging
- 75b93f9 cleanup(ralph-loop): simplify best-effort catch shape
- 1fac370 fix(rules-injector): remove no-excuse cache slop
- 039715c cleanup(ralph-loop): clarify best-effort swallowing
- 82c96dc Merge pull request #5001 from code-yeongyu/fix/team-mode-test-catch-batch
- 62ca212 cleanup(ralph-loop): narrow best-effort catch handlers
- 4eeb391 Merge pull request #5000 from code-yeongyu/fix/config-schema-test-catches
- e72f767 test(team-mode): simplify paths chmod rejection assertion
- a32598e test(team-mode): simplify tasklist rejection assertions
- 877e9ae test(team-mode): simplify mailbox rejection assertions
- 4679420 Merge pull request #4999 from code-yeongyu/cleanup/no-excuse-next2-20260606
- 6d39b2a test(cli): remove unsafe run output assertions
- 5cae193 Merge pull request #4998 from code-yeongyu/cleanup/no-excuse-next-20260606
- a1bae0b Merge pull request #4997 from code-yeongyu/cleanup/ralph-loop-test-no-excuse-20260606
- 74e8041 test(ralph-loop): remove unsafe state assertions
- 7770ecb Merge pull request #4994 from code-yeongyu/test/delegate-task-tools-test-slop-20260606
- 788d94a test(delegate-task): stabilize focused tools suite
- b24c6d5 Merge pull request #4995 from code-yeongyu/cleanup/keyword-detector-index-test-non-null-20260606
- ed21ec1 Merge pull request #4991 from code-yeongyu/test/keyword-ralph-loop-test-cleanup
- 14ef04b test(keyword-detector): remove unsafe text part assertions
- 6abe666 test(delegate-task): remove tools test slop
- 0b524b7 test(keyword-detector): remove ralph loop non-null assertions
- ea4837a Merge pull request #4989 from code-yeongyu/test/keyword-detector-text-helper
- af75200 test(keyword-detector): narrow hyperplan text assertions
- a666603 Merge pull request #4988 from code-yeongyu/fix/production-catch-narrowing
- 27747b3 fix(hooks): narrow production catch fallbacks
- 793dd03 Merge pull request #4987 from code-yeongyu/fix/final-catch-fallbacks
- d53d9fa Merge remote-tracking branch 'origin/dev' into fix/final-catch-fallbacks
- 7e9b35a fix(catches): narrow final fallback paths
- d7bf754 Merge pull request #4986 from code-yeongyu/fix/claude-hooks-catch-fallbacks
- e86d8c8 fix(claude-hooks): simplify fallback catches
- 006e049 Merge pull request #4985 from code-yeongyu/cleanup/team-mode-catches-2
- 33889ba Merge pull request #4984 from code-yeongyu/cleanup-loader-catches
- 2a4a618 Merge pull request #4983 from code-yeongyu/fix/auto-update-checker-remaining-catches-20260606
- a9ad2ec fix(claude-hooks): narrow compact todo fallbacks
- 706dd6b fix(claude-hooks): narrow handler best-effort catches
- 209802c fix(claude-hooks): narrow config fallback catches
- f6fb86c fix(team-mode): preserve catch fallbacks
- 91c081b fix(loader): narrow config fallback catches
- b7a25b5 fix(auto-update): narrow catch fallbacks
- 609e045 Merge pull request #4982 from code-yeongyu/fix/hook-catch-narrowing
- 19094b4 test(hooks): avoid literal throws in fallback coverage
- a4ee827 fix(hooks): preserve catch fallback semantics
- d57d95d Merge pull request #4981 from code-yeongyu/fix/tools-catch-narrowing
- 2071ba8 Merge pull request #4980 from code-yeongyu/fix/shared-claude-catch-cleanup-20260606
- a4188db test(shared): preserve non-error kill fallback
- 7425631 fix(ralph-loop): narrow catch fallbacks
- 85aa34f fix(atlas): narrow hook catch fallbacks
- 8c55fb0 delegate-task: narrow fallback catch paths
- 19c0e81 skill: narrow native skill catch paths
- b2ad4d8 interactive-bash: narrow caught tmux errors
- 1be4295 fix(shared): narrow windows spawn kill fallback
- 72e9762 Merge pull request #4979 from code-yeongyu/test/ulw-loop-steering-created-table
- 42715c4 test(ulw-loop): table-drive steering-created goal cases
- c7e4b41 Merge pull request #4978 from code-yeongyu/test/rules-tool-paths-table
- a08da32 test(rules): table-drive single path extraction cases
- 0af74ad Merge pull request #4977 from code-yeongyu/test/rules-context-pressure-table
- 2c3e692 test(rules): table-drive context pressure recovery cases
- 7b46ced Merge pull request #4976 from code-yeongyu/test/ulw-loop-cli-steering-table
- 86202f3 test(ulw-loop): table-drive steering parser cases
- df963d5 Merge pull request #4975 from code-yeongyu/test/utils-parser-pure-loc
- 582f8af test(utils): reduce parser utility pure loc
- 31fe548 Merge pull request #4974 from code-yeongyu/test/utils-parser-frontmatter-trim
- 89e244d test(utils): table-drive parser utility coverage
- e5ee375 Merge pull request #4973 from code-yeongyu/test/utils-deep-merge-trim
- 91bfdf5 test(utils): table-drive deep merge coverage
- 2291be6 Merge pull request #4972 from code-yeongyu/fix/isolated-catch-fallbacks
- b864c31 fix(catches): preserve isolated fallbacks
- f4934aa Merge pull request #4971 from code-yeongyu/fix/claude-loader-catch-fallbacks
- e2d78b6 fix(claude-code): preserve loader fallbacks
- cbdae7c Merge pull request #4970 from code-yeongyu/fix/cli-background-catch-fallbacks
- 4cb7ee5 fix(catches): preserve cli background fallbacks
- 68f22b5 Merge pull request #4968 from code-yeongyu/fix/preserve-catch-fallback-semantics
- 3f2d23a fix(catches): preserve fallback semantics
- 46f7262 refactor(lsp-tools-mcp): vendor package source
- 45e802f Merge pull request #4965 from code-yeongyu/fix/shared-misc-catch-fallbacks
- d9e32cf Merge pull request #4967 from code-yeongyu/fix/auto-update-hooks-catch-fallbacks
- e3d843f Merge pull request #4966 from code-yeongyu/fix/team-mode-catch-fallbacks
- c888008 fix(hooks): narrow utility catch fallbacks
- 98de391 fix(team-mode): rethrow non-error catch fallbacks
- a1c7f04 fix(hooks): rethrow non-error fallback failures
- 40124e8 fix(openclaw): preserve non-error metadata parse failures
- 273fe25 fix(shared): rethrow non-error prompt fallback failures
- c96f526 Merge pull request #4964 from code-yeongyu/fix/cli-run-catch-fallbacks
- d8aea17 Merge pull request #4960 from code-yeongyu/fix/cli-doctor-config-catch-fallbacks
- 1f19201 fix(omo-codex): harden generated bug-fix PR workflow
- c1001aa fix(cli-run): narrow catch fallbacks
- 5dee02b Merge pull request #4959 from code-yeongyu/fix/hooks-recovery-catch-fallbacks
- 6e89f63 test(cli): avoid async rejection matcher hints
- 922f4fa Merge pull request #4958 from code-yeongyu/fix/mcp-oauth-catch-fallbacks
- 41c8f7f test(doctor): cover invalid config fallback
- a7d931f fix(doctor): narrow cli fallback catches
- dec66fa fix(anthropic-recovery): narrow truncation catch
- 8900f5f fix(anthropic-recovery): narrow message id catch
- c1df242 fix(atlas): narrow recovery catch fallbacks
- 413ec18 fix(atlas): narrow recent model fallback catch
- 113ddde fix(runtime-fallback): narrow catch fallbacks
- 1156d50 mcp-oauth: propagate non-error fallback failures
- 484bfea skill-mcp: narrow grep filter regex catch
- f56e1c3 mcp: narrow local command fallback catches
- 7f0e8ab feat(omo-codex): add generated bug-fix contribution skill
- ec9dfd7 docs: refresh AGENTS.md metadata and document install-codex subsystem
- ced8f48 fix(hashline-edit): unwrap formatter config responses
- 513fd20 test(hashline-edit): cover direct formatter config responses
- cfd270f Merge pull request #4955 from code-yeongyu/fix/session-recovery-tool-result-empty-catches
- eccec5d fix(session-recovery): narrow tool result fallbacks
- 9370c93 fix(ralph-loop): narrow continuation prompt fallbacks
- 22237a7 fix(auto-update): narrow cache invalidation fallbacks
- cfee52e Merge pull request #4954 from code-yeongyu/fix/execute-hook-command-empty-catches
- 2197421 fix(command-executor): narrow hook kill fallbacks
- 00fdb1d Merge pull request #4953 from code-yeongyu/fix/system-loaded-version-empty-catches
- 2bc98a5 fix(doctor): narrow loaded version fallbacks
- 68d56f8 Merge pull request #4952 from code-yeongyu/fix/ralph-loop-storage-empty-catches
- 4943052 fix(ralph-loop): narrow storage fallbacks
- bbe8dbb Merge pull request #4951 from code-yeongyu/fix/opencode-version-empty-catches-2
- 26c2232 fix(shared): narrow opencode version fallbacks
- 7fecfb1 Merge pull request #4950 from code-yeongyu/fix/interactive-bash-storage-empty-catch
- 312a73d fix(interactive-bash): narrow storage load catch
- b37a8a5 Merge pull request #4949 from code-yeongyu/fix/interactive-bash-tracker-empty-catch
- e2278d3 fix(interactive-bash): narrow tracker cleanup catch
- 3bd82c1 Merge pull request #4948 from code-yeongyu/fix/legacy-plugin-auto-migrate-empty-catch
- 1d8069c fix(legacy-plugin-toast): narrow auto migrate catch
- b0f6bd7 Merge pull request #4947 from code-yeongyu/fix/read-image-dimensions-empty-catch
- 602112d fix(read-image-resizer): narrow image dimension parser catch
- 2a4d3ae Merge pull request #4946 from code-yeongyu/fix/session-recovery-resume-empty-catch
- 7c00a7f fix(session-recovery): narrow resume catch
- 15d67bf Merge pull request #4945 from code-yeongyu/fix/rules-transcript-hydration-empty-catch
- 6285a32 fix(rules-injector): narrow transcript hydration catch
- 06335cb Merge pull request #4944 from code-yeongyu/fix/rules-injection-processor-empty-catch
- 0368b8c fix(rules-injector): narrow injection processor catch
- 2f4d5a4 Merge pull request #4943 from code-yeongyu/fix/rules-parsed-cache-empty-catch
- 11f9cb1 fix(rules-injector): narrow parsed cache catch
- 916480a Merge pull request #4942 from code-yeongyu/fix/rules-injector-storage-empty-catch
- 311178a fix(rules-injector): narrow storage fallback catch
- bed4049 Merge pull request #4941 from code-yeongyu/fix/session-recovery-error-recovery-empty-catches
- 0ab6f18 fix(session-recovery): log recovery fallback catches
- 0138ce0 Merge pull request #4940 from code-yeongyu/fix/session-recovery-text-part-injector-empty-catch
- b01b500 fix(session-recovery): narrow text part injection catches
- b6c8f44 Merge pull request #4939 from code-yeongyu/fix/session-recovery-thinking-strip-empty-catch
- b19c0e7 fix(session-recovery): make thinking strip fallback explicit
- 1b6e509 Merge pull request #4938 from code-yeongyu/fix/tool-output-truncator-empty-catch
- 9c5cd6c fix(hooks): make tool truncation fallback explicit
- b815c0f Merge pull request #4937 from code-yeongyu/fix/openclaw-gateway-url-empty-catch
- 0877409 fix(openclaw): make gateway url fallback explicit
- 6fadb51 Merge pull request #4936 from code-yeongyu/fix/single-config-loader-empty-catch
- f0b9c4d fix(plugin-config): make git master override fallback explicit
- cdbfd0d Merge pull request #4935 from code-yeongyu/fix/chat-headers-empty-catch
- cd8e82c fix(plugin): make chat header lookup fallback explicit
- 8ae37d0 Merge pull request #4934 from code-yeongyu/fix/event-error-utils-empty-catch
- 1e6f570 fix(plugin): make event error stringify fallback explicit
- 9fe99b7 Merge pull request #4933 from code-yeongyu/fix/bun-which-shim-empty-catch
- 6e1f40e fix(shared): make bun which fallback explicit
- 08bf91e Merge pull request #4932 from code-yeongyu/fix/data-path-empty-catch
- 6cbeb11 fix(shared): make data path fallback explicit
- 56e5756 Merge pull request #4931 from code-yeongyu/fix/legacy-plugin-warning-empty-catch
- ce9d381 fix(shared): make legacy plugin warning fallback explicit
- 13bd62c Merge pull request #4930 from code-yeongyu/fix/load-opencode-plugins-empty-catch
- 7449247 fix(shared): make opencode plugin config fallback explicit
- 7ba9f5d Merge pull request #4929 from code-yeongyu/fix/opencode-provider-auth-empty-catch
- 4391cb2 fix(shared): make provider auth stat fallback explicit
- 830d93c Merge pull request #4928 from code-yeongyu/fix/model-resolution-cache-empty-catches
- ca62660 fix(doctor): make model cache fallbacks explicit
- 94c7ae6 Merge pull request #4927 from code-yeongyu/fix/model-resolution-config-empty-catches
- 5205fdf fix(doctor): make model config fallbacks explicit
- 21b6fa2 Merge pull request #4926 from code-yeongyu/fix/system-binary-empty-catches
- 68c30b5 fix(doctor): make binary lookup fallbacks explicit
- 9e28bf5 Merge pull request #4925 from code-yeongyu/fix/background-compaction-resolver-empty-catches
- 6c8dff1 fix(background-agent): make compaction resolver fallbacks explicit
- 7757697 Merge pull request #4924 from code-yeongyu/fix/run-continuation-storage-empty-catches
- df555b1 fix(run-continuation): make marker storage fallbacks explicit
- 90fc878 Merge pull request #4923 from code-yeongyu/fix/skill-mcp-cleanup-empty-catches
- 82528b8 fix(skill-mcp): make cleanup close fallbacks explicit
- 56e13d2 Merge pull request #4922 from code-yeongyu/fix/execute-http-hook-empty-catches
- 5072d8b fix(claude-code-hooks): make http hook fallbacks explicit
- 269da98 Merge pull request #4921 from code-yeongyu/fix/compaction-marker-empty-catches
- b515b95 fix(shared): make compaction marker fallbacks explicit
- 00f8754 Merge pull request #4920 from code-yeongyu/fix/prompt-idle-dispatch-empty-catch
- a4f2565 fix(shared): make prompt gate status fallback explicit
- e3b9298 Merge pull request #4919 from code-yeongyu/fix/ripgrep-cli-empty-catch
- 226f6f3 fix(shared): make ripgrep probe fallback explicit
- b00e361 Merge pull request #4918 from code-yeongyu/fix/session-idle-settle-empty-catch
- a086fb3 fix(shared): make session status fallback explicit
- 2aca0ef Merge pull request #4917 from code-yeongyu/fix/session-injected-paths-empty-catch
- 9331791 fix(shared): make injected path storage fallback explicit
- bab702a Merge pull request #4916 from code-yeongyu/fix/module-mock-lifecycle-empty-catch
- 1a18666 fix(testing): make module mock fallback catches explicit
- c1b3e19 Merge pull request #4915 from code-yeongyu/fix/glob-mtime-empty-catch
- 7f9ee49 fix(glob): make mtime fallback explicit
- aca136b Merge pull request #4914 from code-yeongyu/fix/look-at-mime-empty-catch
- 825cc8f fix(look-at): make mime fallback explicit
- 99e915d Merge pull request #4913 from code-yeongyu/fix/slashcommand-discovery-empty-catch
- faa6f32 fix(slashcommand): make command discovery fallback explicit
- 1a771ef Merge pull request #4912 from code-yeongyu/fix/anthropic-message-builder-empty-catch
- f1aac6f fix(anthropic-recovery): make message fallbacks explicit
- df24bef Merge pull request #4911 from code-yeongyu/fix/cli-run-event-formatting-empty-catch
- 2bf1b9b fix(cli-run): make event formatting fallbacks explicit
- 307dbf1 Merge pull request #4910 from code-yeongyu/fix/doctor-gh-empty-catches
- 5a2c5dd fix(doctor): make gh check fallbacks explicit
- 9244237 Merge pull request #4909 from code-yeongyu/fix/agent-resolve-file-uri-empty-catches
- aa2b188 fix(agents): make file uri fallbacks explicit
- d5e392d Merge pull request #4908 from code-yeongyu/fix/opencode-skill-mcp-config-empty-catches
- bfe7976 fix(skills): make mcp config fallbacks explicit
- fb78d80 Merge pull request #4907 from code-yeongyu/fix/skill-mcp-connection-cleanup-fallbacks
- 80c0280 fix(skill-mcp): make connection cleanup fallbacks explicit
- b9fcbe6 Merge pull request #4906 from code-yeongyu/fix/skill-mcp-http-client-url-fallbacks
- 9001e06 fix(skill-mcp): make http url fallbacks explicit
- f56976e Merge pull request #4905 from code-yeongyu/fix/team-state-locks-empty-catches
- 18d2d4e fix(team-mode): make state lock fallbacks explicit
- 6ad4c88 Merge pull request #4903 from code-yeongyu/fix/team-worktree-cleanup-empty-catches
- b03cbaa fix(team-mode): make worktree cleanup fallbacks explicit
- c82799b Merge pull request #4901 from code-yeongyu/fix/empty-content-sdk-empty-catches
- edd9877 fix(context-recovery): make empty content sdk fallbacks explicit
- 4c955f6 Merge pull request #4900 from code-yeongyu/fix/pruning-dedup-empty-catches
- 261d36c fix(context-recovery): make pruning dedup fallbacks explicit
- 2051b16 Merge pull request #4899 from code-yeongyu/fix/pruning-tool-output-empty-catches
- 6027a13 fix(context-recovery): make tool output pruning fallbacks explicit
- 2f98811 Merge pull request #4898 from code-yeongyu/fix/tool-result-storage-empty-catches
- f7aedb1 fix(context-recovery): make tool result sdk fallbacks explicit
- bb8f3be Merge pull request #4897 from code-yeongyu/fix/local-dev-path-empty-catches
- 5318aca fix(auto-update): make local dev fallbacks explicit
- 9f03437 Merge pull request #4896 from code-yeongyu/fix/package-json-locator-empty-catches
- ff3b866 fix(auto-update): make package locator fallbacks explicit
- 6882275 Merge pull request #4895 from code-yeongyu/fix/ralph-completion-detector-empty-catches
- 7f36ab6 fix(ralph-loop): make completion detector fallbacks explicit
- d066779 Merge pull request #4893 from code-yeongyu/fix/post-tool-use-empty-catches
- 714b096 fix(claude-hooks): make post tool fallbacks explicit
- 1d7b9ed Merge pull request #4892 from code-yeongyu/fix/hashline-diff-enhancer-empty-catches
- 96aaf2b fix(hashline): make diff enhancer fallbacks explicit
- cb53232 Merge pull request #4891 from code-yeongyu/fix/session-notification-content-empty-catches
- 55476b9 fix(hooks): make session notification fallbacks explicit
- ed054ba Merge pull request #4890 from code-yeongyu/fix/session-recovery-thinking-order-empty-catches
- 1187bc6 fix(session-recovery): make thinking order fallbacks explicit
- caa5a48 Merge pull request #4889 from code-yeongyu/fix/session-recovery-unavailable-tool-empty-catches
- 42c0a3f fix(session-recovery): make unavailable tool fallbacks explicit
- b3ebad9 Merge pull request #4888 from code-yeongyu/fix/session-recovery-empty-text-empty-catches
- 992c855 fix(session-recovery): make empty text fallbacks explicit
- 3a38bc6 Merge pull request #4887 from code-yeongyu/fix/session-recovery-messages-reader-empty-catches
- 6b8da0f fix(session-recovery): make message reader fallbacks explicit
- b3e0925 Merge pull request #4885 from code-yeongyu/fix/session-recovery-parts-reader-empty-catches
- c1f8352 fix(session-recovery): make parts reader fallbacks explicit
- 1ab08a7 Merge pull request #4884 from code-yeongyu/fix/start-work-worktree-detector-empty-catches
- e0b6751 fix(start-work): make worktree detector fallbacks explicit
- 6e29784 Merge pull request #4883 from code-yeongyu/fix/git-diff-stats-empty-catches
- 09d71c9 fix(git-worktree): make diff stat fallbacks explicit
- fb8fd3b Merge pull request #4881 from code-yeongyu/fix/config-migration-empty-catches
- 39dbc7b fix(migration): make config migration catches explicit
- c53c07f Merge pull request #4880 from code-yeongyu/fix/posthog-empty-catches
- 21c13f9 fix(telemetry): make posthog fallbacks explicit
- e1f0432 Merge pull request #4878 from code-yeongyu/fix/project-discovery-empty-catches
- c4ff9c7 fix(shared): make project discovery fallbacks explicit
- 91e0599 Merge pull request #4877 from code-yeongyu/fix/grep-downloader-empty-catches
- c344420 fix(grep): make downloader fallbacks explicit
- 43e4cd6 Merge pull request #4876 from code-yeongyu/fix/doctor-team-mode-empty-catches
- 0145ad6 fix(doctor): make team mode fallbacks explicit
- 6011631 Merge pull request #4875 from code-yeongyu/fix/hook-message-json-lookup-empty-catches
- 4c9e066 fix(hook-message): make json lookup fallbacks explicit
- c20d095 Merge pull request #4873 from code-yeongyu/fix/skill-mcp-stdio-empty-catches
- b53bd48 fix(skill-mcp): make stdio cleanup fallbacks explicit
- 6212bf7 Merge pull request #4872 from code-yeongyu/fix/anthropic-tool-result-storage-empty-catches
- 65d328b fix(context-recovery): make tool result storage fallbacks explicit
- b24329e Merge pull request #4871 from code-yeongyu/fix/thinking-prepend-empty-catches
- a6acdc5 fix(visual-qa): catch awkward CJK line breaks
- db4d479 fix(session-recovery): make thinking prepend fallbacks explicit
- d7fcdf8 Merge remote-tracking branch 'origin/dev' into dev
- 862e4c9 fix(sparkshell): detect appserver env for guidance
- 2260e8b Merge pull request #4870 from code-yeongyu/fix/logger-empty-catches
- e9e45ff fix(shared): make logger fallbacks explicit
- ec0a10f Merge pull request #4868 from code-yeongyu/fix/doctor-dependencies-empty-catches
- e581d71 Merge branch 'dev' into fix/doctor-dependencies-empty-catches
- ed75f3d Merge pull request #4869 from code-yeongyu/fix/codex-install-local-wrapper-path-test
- a56511d test(codex): match escaped local wrapper paths
- d1c7283 fix(doctor): make dependency fallbacks explicit
- cab8ea4 Merge pull request #4866 from code-yeongyu/fix/mcp-oauth-storage-empty-catches
- ace9d1c Merge remote-tracking branch 'origin/dev' into dev
- 3de7fb3 fix(omo-codex): prefer sparkshell in guidance
- 3c49e69 fix(mcp-oauth): make storage fallbacks explicit
- 650b0a1 Merge pull request #4865 from code-yeongyu/fix/session-recovery-detect-error-empty-catches
- 939aa33 fix(omo-codex): install runtime omo wrapper
- d9d5aba fix(session-recovery): make error detection fallbacks explicit
- ba77c74 Merge pull request #4864 from code-yeongyu/fix/openclaw-tmux-empty-catches
- 7cb2987 fix(openclaw): make tmux fallbacks explicit
- 8f25af3 Merge pull request #4862 from code-yeongyu/fix/claude-tasks-storage-empty-catches
- 1b86cef fix(claude-tasks): make storage fallbacks explicit
- 968a621 Merge pull request #4861 from code-yeongyu/fix/skill-mcp-oauth-handler-empty-catches
- bfbb2b7 fix(skill-mcp): make oauth fallbacks explicit
- 5c1d265 fix(omo-codex): inline hephaestus static context
- ae58bf4 Merge pull request #4860 from code-yeongyu/fix/atlas-session-last-agent-empty-catches
- 73ccb15 fix(atlas): make last-agent fallbacks explicit
- 7c25265 Merge pull request #4859 from code-yeongyu/fix/skill-tools-empty-catches
- 6a75152 fix(skill): make native skill fallback catches explicit
- 047b820 Merge pull request #4858 from code-yeongyu/fix/delegate-task-empty-catches
- 835dfbc Merge remote-tracking branch 'origin/dev' into dev
- 09c492e fix(delegate-task): make fallback catches explicit
- a2abb27 chore(omo-codex): unset fast tier for planners
- cd74f03 Merge pull request #4857 from code-yeongyu/fix/interactive-bash-empty-catches
- f4c08d0 fix(interactive-bash): make fallback catches explicit
- 03022b6 Merge pull request #4855 from code-yeongyu/fix/openclaw-reply-listener-empty-catches
- b24027b fix(openclaw): make reply listener fallbacks explicit
- c2a5627 Merge pull request #4854 from code-yeongyu/fix/session-file-storage-empty-catches
- bced213 fix(session-manager): make file storage fallbacks explicit
- 1823c9b Merge pull request #4852 from code-yeongyu/fix/skill-mcp-cleanup-header-redaction
- 0e144a0 fix(skill-mcp): redact single-quoted cleanup headers
- 7535fe5 fix(skill-mcp): redact quoted cleanup header values
- 6193512 fix(skill-mcp): preserve quoted redacted header text
- e4be8e0 fix(skill-mcp): redact sensitive cleanup headers
- ca18885 Merge pull request #4849 from code-yeongyu/fix/anthropic-parser-json-shape-preserve
- 2caaddc Merge pull request #4848 from code-yeongyu/fix/skill-mcp-http-cleanup-log-redaction
- 9685c4c fix(skill-mcp): redact authorization equals values
- 1eb4f2a fix(skill-mcp): redact authorization cleanup values
- 5830b21 fix(skill-mcp): bound HTTP cleanup URL redaction
- 6bfd394 fix(skill-mcp): redact HTTP connect failure reasons
- 593ebd3 Merge pull request #4847 from code-yeongyu/cleanup/messages-transform-facade
- 8ddeff2 fix(parser): preserve nested anthropic error payloads
- ff5f7b7 fix: redact HTTP MCP cleanup log errors
- 5d596ec Merge PR #4842: refactor: remove orphan dead-code helpers
- b05f62d Merge PR #4841: refactor(skill-loader): remove dead worker discovery
- 3ce4a00 Merge PR #4840: chore(session-recovery): remove sdk dead code
- 8258935 Merge PR #4839: test(omo-codex): fold package migration checks
- e77c411 Merge PR #4838: test(src): remove duplicate cleanup tests
- d692454 Merge PR #4837: Remove dead background-agent route state modules
- 84ec553 Merge PR #4846: fix(skill-mcp): remove http-client empty catch
- 1421895 Merge PR #4845: fix(parser): remove anthropic token parser empty catch
- 7c5e570 Merge PR #4844: refactor(codex): split config TOML facade
- 27ee0e0 Merge PR #4843: refactor(team-mode): split live delivery facade
- 388c65e refactor(plugin): sequence messages transform hooks
- a89ba37 fix: make HTTP MCP cleanup ignores explicit
- d87e8bc fix(parser): remove anthropic token parser empty catch
- 09109fb refactor(codex): split config TOML facade
- 4736ec8 test(codex): pin config TOML edge behavior
- 61a2bd9 Merge PR #4827: refactor(codex-comment-checker): split core facade
- 4418c73 Merge PR #4825: test(rules-injector): pin injector facade exports
- fe038f4 Merge PR #4823: test(builtin-skills): pin playwright facade contract
- 5aeb642 refactor(team-mode): split live delivery facade
- 4ab2757 refactor(runtime): remove orphan small helpers
- 7177fdf refactor(ast-grep-mcp): remove core reexport shims
- 1392f2d refactor(prometheus): remove stale variant loaders
- 3ee418b refactor(features): remove orphan task oauth helpers
- d841c63 refactor(shared): remove orphan helper modules
- 436ae6e docs: update skill loader inventory
- 69fd42f refactor: remove worker skill loader path
- 02c63f2 chore(session-recovery): remove sdk empty-content dead code
- 2cef765 test(omo-codex): fold package migration checks into aggregate tests
- b8edae1 test(runtime-fallback): drop duplicate quota matrix cases
- 0e776e4 test(src): remove redundant tool registration tests
- 61e0286 Remove dead background-agent route state modules
- ce99b58 test(call-omo-agent): remove duplicate background executor coverage
- a7e500e Merge pull request #4824 from code-yeongyu/refactor/team-state-resume-facade-split
- c56bc41 fix(codex-comment-checker): preserve mutable core types
- 5a11764 Merge pull request #4828 from code-yeongyu/pr/hook-message-injector-facade-split2
- 7524fd6 Merge pull request #4822 from code-yeongyu/refactor/session-notification-sender-facade-v2
- 74dcf30 Merge remote-tracking branch 'origin/dev' into refactor/codex-comment-checker-core-split
- 298c5e8 Merge pull request #4826 from code-yeongyu/refactor/delegate-sync-task-split
- 4e37340 @romanalexander has signed the CLA in #4829
- f8384a3 Merge pull request #4821 from code-yeongyu/pr/tool-pair-validator-facade-split-v2
- ec6c69e refactor(rules-injector): extract match reason resolver
- 536b2bc refactor(codex-comment-checker): make core a facade
- 8debf73 refactor(codex-comment-checker): extract request parsing
- dff7450 refactor: split hook injector SDK context lookup
- 878785a refactor(delegate-task): split sync task runner
- b6d982c refactor(codex-comment-checker): extract core contracts
- 7ab432e refactor(session-notification): make sender a pure facade
- 14274a0 test(codex-comment-checker): pin core extraction behavior
- 501e6da test(rules-injector): pin injector facade exports
- fce8523 test(builtin-skills): pin playwright facade contract
- 040b882 refactor(team-mode): split resume facade orchestration
- ce02491 refactor(team-mode): extract resume lifecycle cleanup
- 7b9bf2b refactor(team-mode): extract worker resume status helpers
- 267bc41 test(team-mode): characterize resume recovery branches
- a800ec6 test(session-notification): pin Desktop execFile fallback
- 45e50a5 refactor(tool-pair-validator): split message transform facade
- e784e92 Merge pull request #4819 from code-yeongyu/refactor/background-spawner-split-audit
- c121d46 Merge pull request #4814 from code-yeongyu/refactor/subagent-resolver-split-prdelegate
- fe66a5c Merge pull request #4813 from code-yeongyu/code-yeongyu/fix-context-window-parser-empty-catch
- 53e68e1 Merge pull request #4816 from code-yeongyu/fix/directory-readme-injector-empty-catch
- d2ca8dd fix subagent junior preflight normalization
- 6fd7293 Merge pull request #4818 from code-yeongyu/fix/image-converter-cleanup-catch
- 5bc6309 Merge pull request #4815 from code-yeongyu/fix/openclaw-dispatcher-empty-catch
- 7b7ea1a fix directory readme injector test assertion
- 5baef54 Merge pull request #4812 from code-yeongyu/cleanup/packages-wave2-test-prune
- 7352441 refactor(background-agent): split spawner helper builders
- 69c812d test(background-agent): characterize spawner fallback helpers
- 22e6037 refine context parser JSON fallback
- 7824bec fix look-at image cleanup error handling
- 1ef6b0a fix: log skipped directory README injection failures
- 2112a50 fix: make openclaw command cleanup explicit
- 110025a refactor delegate subagent resolver split
- 91714c4 test characterize subagent object models
- 189dca2 fix context window parser stringify fallback
- 2b2df7d test(hashline-core): prune duplicate dedupe smoke assertion
- abff02e Merge pull request #4810 from code-yeongyu/refactor/modelcore-unused-test-imports
- 736a700 model-core: remove unused test type imports
- 3e6adab Merge pull request #4782 from code-yeongyu/refactor/runtime-fallback-auto-retry-facade
- 8b5e785 Merge branch 'dev' into refactor/runtime-fallback-auto-retry-facade
- 68b23d0 Merge pull request #4806 from code-yeongyu/pr/sisyphus-dynamic-prompt-split
- c1756b3 fix: address sisyphus prompt review nits
- 577ecae Merge pull request #4805 from code-yeongyu/pr/tool-pair-validator-facade-split
- 8ec92b3 refactor: split sisyphus dynamic prompt facade
- 1c47175 refactor: split tool pair validator facade
- fcc0cb0 Merge pull request #4804 from code-yeongyu/pr-session-notification-sender-split
- ba8080b Merge pull request #4803 from code-yeongyu/refactor/team-state-resume-split
- 79a9094 Merge pull request #4800 from code-yeongyu/feature/install-codex-cache-split
- 8cd6020 Merge remote-tracking branch 'origin/dev' into pr-session-notification-sender-split
- 85d5487 refactor: split session notification sender facade
- e7f170b Merge pull request #4797 from code-yeongyu/refactor/team-lifecycle-facade-split
- 8dfff41 refactor: split team resume facade
- 25ee6c8 fix: dedupe Codex cache prune reads
- 5da7ce1 Merge pull request #4796 from code-yeongyu/refactor/session-recovery-hook-split
- 7890f33 fix(team-mode): preserve lifecycle caller identity
- d1ba6c5 fix: harden Codex cache install boundaries
- 6d360fe Merge pull request #4793 from code-yeongyu/code-yeongyu/refactor-claude-plugin-discovery-split
- df38c58 fix(session-recovery): normalize recovery messages
- f9ab899 Merge pull request #4795 from code-yeongyu/feature/src-cli-run-event-handlers-split
- 0657d3c Merge pull request #4798 from code-yeongyu/refactor/read-image-resizer-facade-split
- ddc89dd fix: guard malformed Claude plugin settings
- 9ccf787 Merge pull request #4799 from code-yeongyu/feature/src-dynamic-truncator-split
- 7e26fed Merge pull request #4791 from code-yeongyu/refactor/openclaw-reply-listener-split
- bff3030 fix: reject unsupported PNG fallback metadata
- 66799d6 Merge pull request #4794 from code-yeongyu/code-yeongyu/refactor-plugin-chat-message-split
- 9081507 style: trim dynamic truncator whitespace
- e61c50a fix(openclaw): wait for reply listener pid exit
- dcda62b Refactor Codex cache facade
- 9d1c3f3 refactor: split dynamic truncator facade
- 04a1d86 refactor: split PNG fallback resizer facade
- 853c200 Refactor team lifecycle tool facade
- 125e9f6 refactor(session-recovery): split recovery hook facade
- 491d609 Merge pull request #4783 from code-yeongyu/feature/openclaw-session-registry-split
- 8feb6b4 Merge pull request #4792 from code-yeongyu/feature/rules-injector-split
- 7db6fb2 fix(openclaw): harden reply listener daemon lifecycle
- cf2f3b4 fix: persist hydrated rule cache skips
- 20a01ff fix: avoid evicting rule cache entries on update
- 05f3b8a Merge remote-tracking branch 'origin/dev' into feature/src-cli-run-event-handlers-split
- dcbe169 Merge remote-tracking branch 'origin/dev' into code-yeongyu/refactor-plugin-chat-message-split
- a1ee38c Merge pull request #4784 from code-yeongyu/refactor/playwright-skill-facade-split
- ce9d798 Merge remote-tracking branch 'origin/dev' into feature/src-cli-run-event-handlers-split
- e527422 refactor: keep Claude plugin discovery facade
- 80a74cd refactor: extract Claude plugin discovery helpers
- 0b8f348 Merge remote-tracking branch 'origin/dev' into code-yeongyu/refactor-plugin-chat-message-split
- 5b86856 fix(openclaw): cache session registry paths
- 9db838f Merge branch 'dev' into refactor/playwright-skill-facade-split
- c4d30ef Merge branch 'dev' into feature/openclaw-session-registry-split
- a14478d Merge pull request #4790 from code-yeongyu/code-yeongyu/fix-codex-ultraresearch-tool-compat
- 9ecf40a refactor(plugin): split chat message facade
- 2c57e62 test(plugin): characterize chat message ordering
- dc51611 test(cli-run): split event handler specs by concern
- 50b895c refactor: split rules injector processor facade
- af8c3f2 fix(codex): dedupe tool compatibility guidance
- 0e9d954 refactor(cli-run): split event handlers by concern
- 70aef5d refactor(openclaw): split reply listener facade
- 7464002 test(openclaw): avoid reply listener fixture assertions
- 9952352 test(cli-run): characterize event handler facade
- c5b2916 test(openclaw): characterize reply listener lifecycle
- 4b70f2c Merge pull request #4789 from code-yeongyu/code-yeongyu/fix-ulw-loop-continue-state
- a50c4ee fix(omo-codex): move ultraresearch codex guidance before examples
- 851d8b7 Merge remote-tracking branch 'origin/dev' into code-yeongyu/fix-ulw-loop-continue-state
- 8d35936 fix(ralph-loop): resume existing loop on continue
- abbeffc fix(builtin-skills): handle CRLF agent-browser frontmatter
- d571447 Merge pull request #4781 from code-yeongyu/code-yeongyu/refactor-hook-message-injector-split
- e6ac8eb Merge pull request #4788 from code-yeongyu/code-yeongyu/lazycodex-open-issues
- 6899d66 test(openclaw): avoid cached registry path coupling
- 2bf1e54 Merge pull request #4786 from code-yeongyu/code-yeongyu/refactor-atlas-tool-after-split
- 84cd060 fix: refresh runtime fallback abort marker ttl
- 0348331 feat(skills): add ultraresearch maximum-saturation research skill
- 94c1cc6 Merge pull request #4785 from code-yeongyu/refactor/split-git-master-commit-workflow
- c28664d refactor(atlas): narrow plan task read errors
- cd73cab fix(omo-codex): migrate reviewer defaults
- e614cef fix: clear stale runtime fallback abort markers
- 2691f96 test(builtin-skills): clarify agent-browser template contract
- 68233b4 style(builtin-skills): trim commit workflow section whitespace
- 3c2776c Merge pull request #4778 from code-yeongyu/refactor/plugin-config-split-v2
- 0044097 refactor(atlas): split post-tool subagent completion
- c9bb816 refactor(atlas): extract post-tool direct work handling
- dbc206a refactor(atlas): extract post-tool plan task parsing
- 65c013d refactor(builtin-skills): split playwright facade
- ade5eee fix(review-work): bound inconclusive review lanes
- 92ed517 refactor(builtin-skills): split git master commit workflow
- 0e2623e fix(ulw-loop): guide fresh runs after completed state
- 61743f3 fix(omo-codex): bound ultrawork reviewer silence
- 3950954 test(builtin-skills): pin git master commit workflow order
- a35a59e refactor(openclaw): keep session registry facade
- a7f0ba7 refactor(openclaw): extract session registry internals
- b22acf0 test(openclaw): cover session registry persistence
- 420329b refactor: split runtime fallback auto retry facade
- cc79aa8 fix: harden hook injector storage edges
- 4875935 Harden partial plugin config salvage
- e2bbe47 Merge pull request #4779 from code-yeongyu/refactor/delegate-sync-task-split-codex
- 1ac16b0 Merge pull request #4775 from code-yeongyu/refactor/tool-registry-split
- c96c585 Merge pull request #4780 from code-yeongyu/refactor/agent-config-handler-split
- 7c12a19 refactor(delegate-task): split sync task executor
- a597186 Fix plugin config split regressions
- 2d57246 refactor: split hook message injector facade
- 7871986 fix(plugin): harden agent config finalizer
- edb2397 Merge pull request #4777 from code-yeongyu/refactor/split-refactor-template
- edf5cfc Merge pull request #4776 from code-yeongyu/pr/background-parent-wake-notifier-split
- 796cd51 fix: preserve tool registry order
- b1627e6 Merge pull request #4774 from code-yeongyu/code-yeongyu/refactor-team-mode-messaging-split
- 12f49a1 style(builtin-commands): encode preserved template spaces
- 7bf13c3 refactor(plugin): split agent config handler facade
- 5ba0fa7 refactor(plugin): extract agent config assembly
- 25f9878 refactor(plugin): extract agent config finalizer
- 77d527c refactor(plugin): extract agent source loader
- f784203 refactor(plugin): extract agent skill discovery
- af70773 refactor(plugin): extract agent config types
- b4fa4f4 test(plugin): characterize agent source precedence
- 28a3e43 Split plugin config facade
- ce8f744 refactor(builtin-commands): split refactor template sections
- 915a311 test(builtin-commands): pin refactor template sections
- 384b2c5 Refactor parent wake notifier flush flow
- 73d88e6 refactor: wire tool registry facade
- 3127ddc refactor: extract tool registry builders
- 039af42 refactor(team-mode): split messaging live delivery
- 55adce9 test(team-mode): pin message metadata persistence
- fc482ea Merge pull request #4767 from code-yeongyu/code-yeongyu/start-work-context-builder-split
- 94930d5 Merge pull request #4771 from code-yeongyu/code-yeongyu/refactor-ralph-loop-handler-split
- 26aa58a Merge remote-tracking branch 'origin/code-yeongyu/start-work-context-builder-split' into code-yeongyu/start-work-context-builder-split
- 98f5ece fix(start-work): preserve active work selection
- 4b7686f Merge branch 'dev' into code-yeongyu/refactor-ralph-loop-handler-split
- d2d9f8a Merge pull request #4769 from code-yeongyu/refactor/plugin-event-facade-split
- 4c14d3b Merge pull request #4768 from code-yeongyu/refactor/atlas-idle-event-split
- 06777c8 Fix Ralph loop activity handling
- 697ddff fix(plugin): address event split review findings
- 298f5ad fix: prefer atlas session work on completion
- 9e7bf18 Merge remote-tracking branch 'origin/dev' into dev
- 8815402 Merge pull request #4770 from code-yeongyu/feature/sisyphus-agent-facade-split
- 2783870 fix(script): cover script typecheck
- 4876ebd fix: harden atlas idle retry handling
- 97a4800 Merge branch 'dev' into code-yeongyu/refactor-ralph-loop-handler-split
- 896c684 Merge branch 'dev' into feature/sisyphus-agent-facade-split
- aab3983 Merge branch 'dev' into code-yeongyu/start-work-context-builder-split
- 4a5f7db Merge pull request #4772 from code-yeongyu/fix/codex-lsp-bin-submodule
- 92b77cd Add Ralph loop event handler router
- 7a19f0a fix(codex): bump lsp mcp bin metadata
- e044342 Split Ralph loop event handler
- e1ca67b refactor: split sisyphus agent facade
- 3540f42 refactor: extract sisyphus agent config builder
- 5eae9f0 refactor(plugin): split event facade
- 653a4e3 style: format atlas idle imports
- 17c5963 Merge remote-tracking branch 'origin/dev' into dev
- 56ae031 fix(codex): resolve Windows installer shims
- 93cb6fd refactor(start-work): split context info builder
- 35ddf9f Merge pull request #4765 from code-yeongyu/code-yeongyu/codex-rules-parser-split
- cd20185 Merge pull request #4764 from code-yeongyu/codex/migrate-config-split
- 65715d1 chore(codex): bump lsp tools mcp
- dc92880 fix(codex-rules): preserve quoted comma globs
- 5a28619 fix(codex): preserve scoped config migration state
- dec35ec Merge pull request #4763 from code-yeongyu/code-yeongyu/fix-lazycodex-windows-cache
- d6ed380 fix(codex): restore cache on promotion failure
- c5616fb Merge pull request #4766 from code-yeongyu/codex/ulw-loop-split-types
- 6c48a98 fix(codex): invoke Windows npm shims through cmd
- 67d9756 refactor(ulw-loop): keep types facade stable
- 861d593 refactor(ulw-loop): extract plan and steering records
- 4814119 refactor(ulw-loop): extract core type constants
- 1fdaec8 refactor(codex-rules): split parser helpers
- c7cd602 refactor(codex): split config migration helpers
- 93282ea test(bin): isolate lazycodex wrapper env
- b5b4dd2 fix(codex): resolve Windows npm shims
- 7abf730 fix(codex): stage plugin cache installs
- 7dc9c17 Merge pull request #4762 from code-yeongyu/refactor/codex-auto-update-state-split
- b2c873b refactor(codex): split auto update state helpers
- 1ea3d4e chore(codex): move GPT presets to 5.5
- 6b45890 Merge pull request #4527 from Tinycute00/fix/windows-rg-crlf-resolver-4512
- 290c4fb Merge pull request #4430 from PeterPonyu/fix/team-subagent-tracking-overlap
- 4b0d4f6 Merge pull request #4761 from code-yeongyu/refactor/codex-comment-checker-core-split
- 9f18a01 refactor(codex-comment-checker): split apply patch extraction
- 9653632 Merge pull request #4760 from code-yeongyu/refactor/codex-rules-engine-split
- 1a6b87e refactor(codex-rules): split rules engine loader
- ce18db8 Merge branch 'dev' of https://github.com/code-yeongyu/oh-my-openagent into dev
- 4c0fabb Merge pull request #4759 from code-yeongyu/refactor/model-core-requirements-split
- 41ff478 Merge branch 'dev' of https://github.com/code-yeongyu/oh-my-openagent into dev
- 7f9bce6 feat(omo-codex): drive ultrawork/ulw-loop via update_plan, ultra-frequent notepads, and sparkshell-led discovery
- 528d528 refactor(model-core): split model requirement data
- 1d688ab Merge pull request #4758 from code-yeongyu/fix/background-agent-normalized-queue-cancel
- ad9a102 fix(background-agent): normalize concurrency waiter cancellation
- cd643d0 Merge pull request #4755 from code-yeongyu/fix/concurrency-manager-normalized-key
- bfecef1 fix(background-agent): clean normalized pending queues
- 9bbec37 Merge pull request #4750 from code-yeongyu/perf/boulder-read-state-single-pass
- 8dc6813 fix(background-agent): preserve raw launch concurrency limits
- 496e089 Merge pull request #4756 from code-yeongyu/refactor/web-docs-registry-source
- 04c617f test(boulder-state): cover invalid work timestamps
- f0d33aa Merge pull request #4751 from code-yeongyu/test/omo-codex-aggregate-test-split
- 421866d web: include mjs in web checks
- 2ebd8a3 fix(background-agent): preserve raw concurrency limits
- 71c1b98 Merge pull request #4753 from code-yeongyu/test/omo-codex-python-migration-consolidation
- 47bfb6c Merge pull request #4752 from code-yeongyu/perf/codex-rules-parser-glob-dedupe
- 060203c test(boulder-state): run read-state coverage in package script
- 9a4ddf8 Merge pull request #4754 from code-yeongyu/test/model-core-requirements-split
- 835ea43 Merge pull request #4757 from code-yeongyu/refactor/lsp-mcp-missing-dependency-helper
- 7c385b3 Merge pull request #4749 from code-yeongyu/refactor/hashline-remove-unused-locals
- cfc1e5c test(omo-codex): cover aggregate package scripts
- 46ac600 Merge pull request #4747 from code-yeongyu/test/web-remove-duplicate-hello-world-e2e
- 5c40805 Merge pull request #4748 from code-yeongyu/chore/agents-md-core-remove-unused-utils-dep
- a14efed test(codex): preserve aggregate test sentinel
- c597a83 Merge pull request #4746 from code-yeongyu/refactor/utils-jsonc-bom-cleanup
- c23d479 Update lsp tools missing dependency helper
- ff2c9ec web: consume shared docs section registry
- 4a16452 web: add shared docs section data
- a9bebb2 fix(background-agent): normalize concurrency slot keys
- 0bb176c test(omo-codex): consolidate Python migration coverage
- c30c075 Model core: remove monolithic requirement test
- 1e83292 Model core: isolate requirement invariant tests
- a6b958a Model core: split agent and category requirement tests
- a78da12 perf(codex-rules): dedupe parsed globs with set
- f13edc9 test(codex): remove aggregate monolith
- 33b3ca6 test(codex): split aggregate skill orchestration coverage
- 4226d64 test(codex): split aggregate runtime metadata coverage
- 66ddcca test(codex): split aggregate hook coverage
- 76e947c test(codex): split aggregate manifest coverage
- c004460 perf(boulder-state): scan session work once
- eee15c9 hashline-core: remove unused edit primitive import
- ace23b4 test(web): remove duplicate homepage e2e spec
- 9e87a05 refactor(utils): remove duplicate JSONC BOM stripping
- 6b352a0 Merge remote-tracking branch 'origin/dev' into dev
- a061fe2 fix(agents): inject Hephaestus AGENTS context
- c95d4e6 Merge pull request #4440 from PeterPonyu/fix/tmux-zombie-pane-after-max-retries
- af6e269 Merge pull request #4494 from Hungdoan565/fix/frozen-args-mutation-3816
- b70629b Merge pull request #4462 from PeterPonyu/fix/runtime-fallback-payload-normalize-surgical
- ce54d36 Merge pull request #4542 from SoShymKing/fix-subagent-tool-pair-validator
- 33c0043 Merge pull request #4488 from PeterPonyu/fix/4480-start-work-substitute-all-parts
- 7db28d3 Merge pull request #4743 from code-yeongyu/chore/prepublish-cleanup-ulw
- 8e67dd4 test(omo-codex): cover config symlink updates
- 58276e8 fix(sparkshell): preserve coalesced websocket frames
- 598a82e fix(model): preserve routed provider limits
- 43d1b88 fix(doctor): validate Codex marketplace config
- b2e69fe fix(release): include LazyCodex workflow payload
- f5c59cb fix(consensus): harden voter dispatch and parsing
- e0541cc Merge pull request #4742 from code-yeongyu/fix/background-parent-wake-active-history
- 6e3565e fix(background-agent): record active parent wakes without replies
- 36ebc5a docs(ultrawork): prefer sparkshell for exploration
- 0fce083 chore(codex): remove omx cleanup references
- 8aa8a95 fix(sparkshell): route commands through Codex appserver
- 8cec306 feat(omo-codex): add git-master skill
- d9e93e5 fix(opencode-qa): repair helper self-tests
- 0c6076c Merge remote-tracking branch 'origin/dev' into dev
- cd1676c fix(omo-codex): install durable codex agent roles
- f71b617 fix(background-agent): preserve internal wake deltas
- 4b2f7b5 Merge pull request #4729 from code-yeongyu/code-yeongyu/shared-core-foundation
- e08d87f Merge pull request #4730 from code-yeongyu/push-bg-wake-93541609b
- 898eb62 test(shared): preserve case-insensitive model scan
- 7853ae3 test(omo-codex): expect source hook versions
- e82830d Merge remote-tracking branch 'origin/dev' into push-bg-wake-93541609b
- e711f40 Merge remote-tracking branch 'origin/dev' into code-yeongyu/shared-core-foundation
- d64b503 test(shared): speed repo-wide scan guards
- c4eba02 fix(omo-codex): preserve source hook versions
- 466e10e test(core): add shared extraction guardrails
- 25cc72a fix(compaction): suppress duplicate autocontinue restores
- ed4cdf3 fix(background-agent): preserve parent wakes through late errors
- a1043de fix(lazycodex): route sparkshell through cli
- a2ddc70 fix(lazycodex): test current hook status version
- 32f4a91 fix(omo-codex): harden start-work planning contract
- 2a905c8 fix(lazycodex): sync hook status release versions
- c5f14bb fix(omo-codex): harden subagent liveness guidance
- d6eace7 Merge remote-tracking branch 'origin/dev' into push-bg-wake-93541609b
- 57e7bb2 Merge remote-tracking branch 'origin/dev' into push-bg-wake-93541609b
- b2347d4 Merge pull request #4466 from PeterPonyu/fix/team-tmux-attach-auth-surgical
- 9354160 fix(background-agent): deliver final parent wakes once
- 80ea4e1 docs: add sparkshell shoutout to README credits
- 909de5b test(team-mode): build auth fixtures at runtime to clear GitGuardian false-positive (#4466)
- 62ac23f Merge pull request #4728 from code-yeongyu/code-yeongyu/feat-sparkshell-runtime-awareness
- 8b63696 feat(omo-codex): enable context7 plugin mcp
- cdec30e Merge pull request #4646 from heunghingwan/fix/strip-range-boundary-echo-whitespace
- 4ee95eb Merge pull request #4463 from PeterPonyu/fix/disabled-providers-trim-surgical
- 1307893 feat(sparkshell): inject runtime awareness
- ce6ac62 feat(cli): add sparkshell runtime command
- 4a0f967 Merge pull request #4501 from YOMXXX/fix/plugin-hooks-cwd-alignment
- e7210d2 Merge pull request #4535 from YOMXXX/fix/4318-skip-update-for-opencode-managed-install
- 00ae4d0 Merge pull request #4664 from YOMXXX/fix/4662-desktop-bun-serve-guard-upstream
- 4bf1bd7 fix(omo-codex): stamp lazycodex component versions
- a339efd fix(omo-codex): harden subagent liveness guidance
- 3cb09d9 Merge remote-tracking branch 'origin/dev' into HEAD
- c0f7701 fix(omo-codex): prioritize hephaestus rule index
- b329438 Merge remote-tracking branch 'origin/dev' into HEAD
- 041b27a fix(omo-codex): compact static rule injection
- 52e6c8b Merge pull request #4616 from Hungdoan565/fix/opus-4-7-plus-adaptive-thinking-4614
- b439c05 Merge dev and preserve Opus adaptive thinking fix
- 9e47e72 Merge pull request #4727 from code-yeongyu/fix/background-empty-parent-wake
- a9ec3b9 Merge pull request #4716 from Ruifeng-Zhang/fix/kimi-for-coding-heuristic-family
- 01f774d Merge pull request #3295 from kilhyeonjun/fix/claude-code-agent-model-provider-override
- 8f333aa fix(background-agent): respect tool state activity
- b4bdc08 test(codex): relax project cleanup timeout on Windows
- 7a5bb07 Merge dev and refresh Claude provider routing
- a7ec6d1 fix(background-agent): preserve empty wake retry dedupe
- c1c20f6 Merge pull request #2268 from ilovingjny/feature/provider-matching-overhaul
- 91cf27a Merge remote-tracking branch 'origin/dev' into pr2268-bailian-refresh
- ceffee6 test(omo-codex): align packaged install version
- 87df108 fix(background-agent): requeue empty parent wakes
- a4e7898 Merge pull request #4726 from code-yeongyu/code-yeongyu/fix-kimi-tool-loop
- e0814ae test(codex): align compatibility expectations
- acd997e test(codex): expect stamped lazycodex cache version
- aa7415d Merge remote-tracking branch 'origin/dev' into code-yeongyu/fix-kimi-tool-loop
- 4ba6c35 ci(codex): build LSP submodule before compatibility tests
- ed8b82b fix(agents): bound Kimi repeated tool calls
- 3d254b5 feat(cli): add Bailian coding plan fallback
- 1ac1f79 Merge remote-tracking branch 'origin/dev' into dev
- 051edfc fix(release): stamp lazycodex payload version
- fdb5067 fix(omo-codex): stamp lazycodex install version
- 077215d Merge pull request #4370 from wufei-png/feat/minimax-coding-plan-m27
- d9ae579 feat(cli,model-core): refresh MiniMax Coding Plan fallback
- 853327b Merge pull request #4579 from Hungdoan565/fix/concurrency-cancel-affects-all-waiters-4505
- 46e7b0b Merge remote-tracking branch 'origin/dev' into dev
- 91c8cf9 fix(doctor): diagnose lazycodex codex installs
- 42d5f99 Merge pull request #4608 from Hungdoan565/fix/runtime-fallback-duplicate-user-messages-4595
- 6f7f4bc fix(background-agent): cancel specific concurrency waiter
- 0d96d06 fix(omo-codex): list all delegated commands in lazycodex-ai help
- 22d0e9b Merge pull request #4617 from ririnto/fix/sync-delegation-wait-child-background-tasks-4615
- 46b8674 Merge pull request #4627 from biggameking/fix/runtime-fallback-restore-primary
- ccaad6e fix(runtime-fallback): reuse retry message identity
- 2320c3f fix(delegate-task): wait for child tasks in sync polling
- f5e60e5 fix(runtime-fallback): restore primary after fallback reopen
- 0f66ef8 Merge pull request #4594 from troyliu0105/fix/file-uri-home-dir-rejection
- 3e65b84 fix: replace em dash in file URI test
- 88849a8 Merge pull request #4607 from Hungdoan565/fix/comment-checker-vendor-path-4601
- b5ccf68 Merge pull request #4725 from code-yeongyu/fix/deduplicate-internal-prompts
- 5bd7710 Merge remote-tracking branch 'origin/dev' into HEAD
- 0ed042c fix(doctor): resolve comment-checker binary from vendor/ path (fixes #4601)
- 8a268ca Merge pull request #4610 from Hungdoan565/fix/team-mode-guard-unresolved-members-4590
- 3599f6a ci(lazycodex): make label creation idempotent
- be77a87 fix(team-mode): guard team activation against unresolved members
- a5cc8be fix(background-agent): defer parent wakes during active assistant turns
- 9414a9d Merge pull request #4628 from heunghingwan/fix/omo-self-gitignore-4536
- ed61558 Merge pull request #4640 from popododo0720/fix/postinstall-opencode-cache-invalidation
- ab4e29b Merge remote-tracking branch 'origin/dev' into dev
- 43c3a49 Merge pull request #4703 from albertdbio/feat/consensus-tool
- 745ff86 fix(skill): advertise overridden skill entries
- f94bdc2 fix(omo-codex): reject invalid create_goal fields
- f55f41c test(codex): relax Windows cleanup installer timeout
- 2a90fcf fix(ulw-loop): align create_goal payload with Codex
- 3bf6946 fix(consensus): remove stale GPT voter fallback
- b8a7ca6 fix(consensus): route voter prompts through the shared prompt gate
- 5bb6db4 feat(consensus): add multi-lineage consensus tool
- 11fe861 fix(omo-codex): sync visual-qa aggregate skill
- 464a432 feat(ultrawork): wire visual-qa into manual-QA gate
- 46d3bf3 feat(skills): add visual-qa cross-harness QA skill
- 4986346 feat(omo-codex): add telemetry diagnostics logging
- 5e3897f feat(omo-codex): make ulw-plan a Codex-native, explore-first planner
- 4a24c0c Merge pull request #4118 from hanbinnoh/fix/antigravity-claude-support
- 1adea6a fix(model-core): support Antigravity Claude context limits
- 144607a Merge pull request #4446 from LYY/fix/momus-stale-reread
- 3af75e0 Merge remote-tracking branch 'origin/dev' into pr-4446-stale-fixture-fix
- 1416f7e Merge pull request #4626 from biggameking/fix/no-config-model-autoupgrade
- 7f41b72 Merge remote-tracking branch 'origin/dev' into pr-4446-stale-fixture-fix
- 823c598 test(momus): remove stale GPT fixture path
- 26ec2ce Merge remote-tracking branch 'origin/dev' into pr-4626-fix-base
- 657c43a Merge pull request #4605 from Hungdoan565/fix/4315-runtime-fallback-model-object
- 8a49e30 test(migration): use current GPT fixtures
- a0abcb3 Merge pull request #4724 from MoerAI/fix/session-list-skip-root-directory-filter
- 87ddea8 test(runtime-fallback): use current codex fixtures
- ad18663 Merge pull request #4723 from MoerAI/fix/plugin-path-resolve-all-occurrences
- 68d3891 docs(readme): position lazycodex as omo for codex
- 3eee780 Merge pull request #4672 from octo-patch/feature/upgrade-minimax-m3
- ccec743 ci(lazycodex): add routing automation
- 54d5d18 docs(release): require layered version analysis
- 09295b7 fix(lazycodex): sync release hook status version
- 5b5dc3a ci(lazycodex): stamp codex plugin metadata
- 9184b41 Merge pull request #4719 from Ruifeng-Zhang/fix/supports-thinking-metadata-precedence
- 0bd6c0f fix(session-manager): list all sessions when directory is server root (fixes #4704)
- 2e8c2b0 chore(models): upgrade legacy gpt refs to 5.5
- 163e183 fix(omo-codex): require git-master checkpoints in ulw-loop
- 4c0ea56 fix(claude-code-plugin-loader): replace all CLAUDE_PLUGIN_ROOT occurrences (fixes #4709)
- 9eed193 feat(lazycodex): route bug reports to owning repo
- d7ed2dc fix(omo-codex): avoid timeout-driven subagent respawns
- b1fc18b docs(readme): credit inspiration sources
- e0846eb @Chewji9875 has signed the CLA in #4720
- b4337b6 fix(model-core): prefer metadata over heuristic for supportsThinking
- 8f144ce fix(model-core): narrow kimi-thinking k2p heuristic
- a826a76 fix(model-core): extend kimi-thinking heuristic to match k2p* models
- 110b40f ci(lazycodex): release changed marketplace payloads
- 2339cd0 fix(lazycodex): make auto-update retry and track install version
- 627067c Merge pull request #4712 from code-yeongyu/fix/codex-config-symlink-reasoning
- 2a137ba test(omo-codex): drop stale lazycodex cleanup-command doc assertion
- 6001da0 chore(lazycodex): update ulw loop and model family
- b252157 fix(codex): preserve reasoning without clobbering bundled symlink target
- 2df3b2c fix: restore primary model for reopened fallback sessions
- d6b7787 Revert "fix: recognize reopened fallback sessions"
- 5923e97 Revert "fix: retry the preferred primary model after fallback"
- a39b392 Revert "test: cover runtime fallback primary-model restoration"
- a8e4740 Revert "fix: protect canonical model selections from migration rewrites"
- 6020b12 feat(lazycodex): add uninstall command
- 8d459a3 test(omo-codex): add symlink safety + reasoning-gate coverage
- 63a856f @tully-8888 has signed the CLA in #4711
- 74f610f feat(lazycodex): add update command
- 22331d3 fix(model-core): align MiniMax-M3 capabilities and add ordering test
- 1c047b0 feat: upgrade MiniMax default model to M3
- 8d8efb0 fix: invalidate opencode plugin cache on postinstall
- 2551d68 fix: replace em dash with hyphen in comment
- d8fd5a0 fix(runtime-skills): degrade when source server is unavailable
- 0e902a6 fix: sync bun lockfile for 4.6.0 packages
- 6ae4a6d fix(delegate-task): wait for child task quiescence
- 69f7009 fix(hashline-core): stripRangeBoundaryEcho false positive on indent change
- e45d871 fix(boulder-state): create .omo/.gitignore to self-ignore temp files
- a28c45b fix: protect canonical model selections from migration rewrites
- 4c481dd fix: recognize reopened fallback sessions
- 34fdba4 fix: retry the preferred primary model after fallback
- ae0bf80 fix: preserve explicit user model pins in migration
- 4219bd2 fix(agents): stop forcing thinking.type enabled on Opus 4.7+ models
- 3d83aae fix(runtime-fallback): reuse original user message id to prevent duplicate turns
- a10089c fix(runtime-fallback): normalize object-shaped session model to canonical string
- 5e6ec42 fix: allow file:// prompt URIs under allowed home subdirectories (#4593)
- fe4e342 fix(background-agent): cancel only the specific task's concurrency waiter
- 6128754 make new subagnet tool-pair-validation root
- c6e6229 fix(auto-update-checker): skip update install when running from OpenCode-managed sandbox (#4318)
- b49cd9f Keep Windows ripgrep discovery from selecting a non-existent executable
- 0240598 fix(hooks): key plugin hooks state by process.cwd() to match loader (#4001)
- a36dbad fix(hooks): avoid mutating frozen output.args on opencode >= 1.14
- 60a9f86 fix(start-work): substitute placeholders across all text parts + idempotent contextInfo append (#4480)
- 1308558 fix(team-mode): preserve OPENCODE_SERVER_PASSWORD on tmux attach (#4409)
- 20a1df1 fix(shared): trim disabled provider comparisons
- 8c897b4 fix(runtime-fallback): normalize runtime model payloads
- 2f0dc8f fix: remove .sisyphus/plans/ compat, only .omo/plans/
- 578d0b4 fix(momus): require fresh plan rereads with dual-path support
- e668713 test(momus): add fresh reread prompt coverage
- 1e6dac7 fix(tmux-subagent): break the zombie-pane wedge via close-retry cooldown
- 12d4d77 fix(tmux-subagent): stop tracking team-mode member sessions in the subagent panel
- 166e104 fix: validate anthropic_provider to reject '/' and empty strings
- f59fa18 feat: add claude_code.anthropic_provider config for custom model routing
Thank you to 2 community contributors:
- @sjawhar:
- fix(json-error-recovery): exclude subagent + session-content tools so delegated output that mentions JSON errors does not trigger a false reminder
- @MoerAI:
- fix(team-mode): treat null-valued team_create optionals as absent (fixes #5047)
- Merge pull request #4957 from Hungdoan565/fix/4853-formatter-sdk-response-shape
- Merge pull request #5041 from sjawhar/fix/json-error-recovery-exclude-subagents
- Merge pull request #5049 from MoerAI/fix/team-create-null-arg-validation
- fix(prompts): scope GPT ultrawork banner and intent declaration to first turn (fixes #4817)