YeonGyu-Kim
0cc263bcd1
fix(test): isolate auto-update-checker hook.test.ts to prevent checker mock leak
...
hook.test.ts mocks ./checker at module load time, which contaminates
checker.test.ts and invalidate-package.test.ts running in parallel in
the same CI batch. Move to hook-integration/ subdirectory for CI batch
isolation.
2026-04-04 17:24:15 +09:00
YeonGyu-Kim
c91c3e6164
fix(test): move auto-slash-command-leak test to isolated subdirectory
...
mock.module('./executor') leaks across all files in the same batch because
Bun runs test files in a directory in parallel. The afterAll restore trick
doesn't work when other files load the module concurrently at startup.
Moving the leak test to its own subdirectory (leak/) ensures CI's batch
runner isolates it in a separate bun test invocation, preventing executor
mock contamination in executor-resolution.test.ts and index.test.ts.
2026-04-04 17:08:53 +09:00
YeonGyu-Kim
8fb22b89cf
fix(test): restore real executor module in auto-slash-command-leak afterAll
...
mock.module('./executor') in auto-slash-command-leak.test.ts was leaking
into executor-resolution.test.ts in the same CI batch run, causing
executeSlashCommand to return the mock's raw replacement instead of the
real resolution result.
Fix: re-register the real executor exports via mock.module() in afterAll
so subsequent test files in the batch get the real implementation.
2026-04-04 17:04:26 +09:00
YeonGyu-Kim
eb4060d739
fix(test): narrow mock.module() targets in background-agent tests to prevent barrel corruption
...
Three test files were mocking the entire '../../shared' barrel, which
corrupted exports for subsequent test files in the same batch run.
Narrow mocks to specific submodules (logger, connected-providers-cache).
Also reverts Bun version pin since the root cause was mock scope, not Bun.
2026-04-04 16:56:39 +09:00
YeonGyu-Kim
a6e783adc4
fix(test): improve execute-http-hook-security test isolation
...
Reset mocks and process.env copy in afterEach to prevent cross-test
contamination from mock.module() isolation.
2026-04-04 16:48:12 +09:00
YeonGyu-Kim
733b54865f
fix(config): handle tuple-format plugin entries in opencode.json ( fixes #3122 )
...
OpenCode supports plugin entries as [string, object] tuples for passing
options, but loadOpencodePlugins assumed all entries were strings.
When a tuple entry hit matchesKnownPlugin, it called .toLowerCase()
on an array, crashing the plugin on startup.
Extract the string name from tuple entries and skip non-string values.
Add regression test covering the tuple plugin format.
2026-04-04 16:44:40 +09:00
YeonGyu-Kim
e40d3fb37a
fix(session-manager): fall back to file storage on SDK outages
2026-04-04 16:42:51 +09:00
YeonGyu-Kim
322a360b2e
Merge pull request #3119 from code-yeongyu/fix/prepublish-delegate-sync
...
fix(sync): forward delegated model tuning params
2026-04-04 16:11:07 +09:00
YeonGyu-Kim
5000b18909
Merge pull request #3118 from code-yeongyu/fix/prepublish-skill-schema
...
fix(config): allow disabling new built-in skills
2026-04-04 16:11:04 +09:00
YeonGyu-Kim
dbec902e9c
Merge pull request #3117 from code-yeongyu/fix/prepublish-ralph-loop
...
fix(ralph-loop): remove dead semantic completion fallback
2026-04-04 16:11:01 +09:00
YeonGyu-Kim
6edf705e95
Merge pull request #3116 from code-yeongyu/fix/prepublish-hook-recovery
...
fix(anthropic-recovery): add dispose path and fix test isolation
2026-04-04 16:10:59 +09:00
YeonGyu-Kim
69c9ad4449
test(ralph-loop): add transcript detector coverage
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 15:41:50 +09:00
YeonGyu-Kim
2da5f12c1f
test(ralph-loop): split session completion detector coverage
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 15:41:42 +09:00
YeonGyu-Kim
617abbe864
fix(ralph-loop): remove dead semantic completion fallback
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 15:41:36 +09:00
YeonGyu-Kim
1fae073009
fix(sync): forward delegated model tuning params
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 15:40:37 +09:00
YeonGyu-Kim
5d735372a4
fix(tmux): unify isolated cleanup across close paths
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 15:40:26 +09:00
YeonGyu-Kim
b31dfa6928
fix(background-agent): clean tmux cancel bookkeeping
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 15:40:21 +09:00
YeonGyu-Kim
42ac82a94a
test(anthropic-recovery): isolate summarize retry timer assertion
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 15:39:44 +09:00
YeonGyu-Kim
5e8a0ccf84
test(anthropic-recovery): cover recovery hook timer disposal
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 15:39:28 +09:00
YeonGyu-Kim
2b55f65c36
fix(hooks): dispose anthropic recovery hook on shutdown
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 15:39:12 +09:00
YeonGyu-Kim
268946d117
fix(anthropic-recovery): dispose recovery hook timers
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 15:39:00 +09:00
YeonGyu-Kim
0a7daa5d10
fix(anthropic-recovery): add session timeout cleanup helpers
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 15:38:46 +09:00
YeonGyu-Kim
8199adcb15
fix(config): allow disabling new built-in skills
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 15:37:43 +09:00
YeonGyu-Kim
fd476fe9a1
Merge pull request #3112 from code-yeongyu/fix/prepublish-code-quality
...
refactor: replace em dashes with hyphens in test files and docs
2026-04-04 14:56:54 +09:00
YeonGyu-Kim
cba9c25543
Merge pull request #3111 from code-yeongyu/fix/prepublish-config-regression
...
fix(config): use canonical path after legacy migration and make writes atomic
2026-04-04 14:56:52 +09:00
YeonGyu-Kim
c4a5ba10cc
Merge pull request #3110 from code-yeongyu/fix/prepublish-bg-race
...
fix(background-agent): prevent cancelled task from being revived after tmux callback
2026-04-04 14:56:49 +09:00
YeonGyu-Kim
ba98be9375
Merge pull request #3109 from code-yeongyu/fix/prepublish-mcp-env
...
fix(security): block cloud credential env vars in MCP env cleaner
2026-04-04 14:56:47 +09:00
YeonGyu-Kim
4301e5e724
Merge pull request #3108 from code-yeongyu/fix/prepublish-tar-failopen
...
fix(security): make tar archive preflight fail-closed on unparsed entries
2026-04-04 14:56:44 +09:00
YeonGyu-Kim
726d19c3cc
fix(security): make tar parser strictly fail-closed on any unparsed line
2026-04-04 14:48:44 +09:00
YeonGyu-Kim
0c6907adc3
fix(config): use canonical path after legacy migration and make writes atomic
2026-04-04 14:46:29 +09:00
YeonGyu-Kim
e860108b60
refactor: replace em dashes with hyphens in test files and docs
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 14:35:49 +09:00
YeonGyu-Kim
d368f77fcd
fix(security): make tar archive preflight fail-closed on unparsed entries
2026-04-04 14:27:46 +09:00
YeonGyu-Kim
7f1497fc43
fix(background-agent): prevent cancelled task from being revived after tmux callback
2026-04-04 14:19:18 +09:00
YeonGyu-Kim
4fa3d0331a
fix(security): block cloud credential env vars in MCP env cleaner
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 14:16:39 +09:00
YeonGyu-Kim
32ec80b347
plugin: skip tmux startup checks when integration is disabled
2026-04-04 14:14:32 +09:00
YeonGyu-Kim
731c3f1109
plugin: honor tmux disablement for interactive tmux features
2026-04-04 14:14:19 +09:00
YeonGyu-Kim
141881aa2d
fix(tmux): re-attempt isolated container on deferred session retry
2026-04-04 02:38:15 +09:00
YeonGyu-Kim
cab84518de
fix(hooks): replace empty catch blocks with debug logging in transcript
2026-04-04 02:37:53 +09:00
YeonGyu-Kim
6acca09bd0
fix(ci): resolve mock.module() cross-file leakage in test suite
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 02:35:23 +09:00
YeonGyu-Kim
673b107f53
test: isolate auto-update checker modules
2026-04-04 02:35:20 +09:00
YeonGyu-Kim
f547cd013d
refactor(shared): consolidate plugin entry migration and detection utilities
2026-04-04 02:10:27 +09:00
YeonGyu-Kim
fd252ea82e
refactor: remove AI-generated code smells from prepublish changes
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 02:02:12 +09:00
YeonGyu-Kim
e4d7fdb7e9
Merge pull request #3092 from code-yeongyu/fix/prepublish-legacy-config
...
fix(shared): close legacy config migration gaps
2026-04-04 01:46:52 +09:00
YeonGyu-Kim
bda0f55196
Merge pull request #3091 from code-yeongyu/fix/prepublish-quality-checks
...
fix: address pre-publish quality checks
2026-04-04 01:46:49 +09:00
YeonGyu-Kim
1f2b69ed56
Merge pull request #3090 from code-yeongyu/fix/prepublish-tmux-regressions
...
fix(tmux): recover isolated session regressions
2026-04-04 01:46:46 +09:00
YeonGyu-Kim
565cf42c10
Merge pull request #3089 from code-yeongyu/fix/prepublish-background-regressions
...
fix(background-agent): bound abort waits and remove dead worktree sync
2026-04-04 01:46:43 +09:00
YeonGyu-Kim
551d906116
Merge pull request #3088 from code-yeongyu/fix/prepublish-security-hardening
...
fix(shared): harden archive preflight for zip and tar links
2026-04-04 01:46:39 +09:00
YeonGyu-Kim
f03c6700d4
fix(hooks): reuse shared legacy plugin migration helper
...
Replace the legacy toast regex writer with the shared atomic helper and route legacy plugin call sites through small wrappers so existing mock.module tests stop leaking across the suite.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 01:32:59 +09:00
YeonGyu-Kim
290f7f9543
fix(shared): merge project and user opencode plugin detection
...
Stop dropping user-level plugin conflicts when an empty project config exists by collecting plugin entries from every supported OpenCode config path.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 01:32:42 +09:00
YeonGyu-Kim
fedb73c736
fix(shared): migrate legacy config files atomically
...
Write the canonical config through a temp file and remove the legacy dual-file trap by archiving or deleting the old basename after migration.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-04-04 01:32:31 +09:00