acamq
9cdd2a11ec
Merge remote-tracking branch 'origin/dev' into fix/sync-package-json-to-opencode-intent
2026-03-11 08:04:16 -06:00
acamq
1fb636dbbc
fix(auto-update): sync cache package.json to opencode.json intent
...
When users switch from pinned version to tag in opencode.json (e.g.,
3.10.0 -> @latest), the cache package.json still contains the resolved
version. This causes bun install to reinstall the old version instead
of resolving the new tag.
This adds syncCachePackageJsonToIntent() which updates the cache
package.json to match user intent before running bun install. Uses
atomic writes (temp file + rename) with UUID-based temp names for
concurrent safety.
Critical changes:
- Treat all sync errors as abort conditions (file_not_found,
plugin_not_in_deps, parse_error, write_error) to prevent corrupting
a bad cache state further
- Remove dead code (unreachable revert branch for pinned versions)
- Add tests for all error paths and atomic write cleanup
2026-03-11 07:42:08 -06:00
YeonGyu-Kim
c5c31873a2
Merge pull request #2472 from code-yeongyu/fix/stagnation-detection-accuracy
...
fix(todo-continuation): improve stagnation detection accuracy
2026-03-11 22:05:58 +09:00
YeonGyu-Kim
e6b5b0102f
Merge pull request #2471 from code-yeongyu/fix/compaction-model-filter
...
fix(compaction): guard model update during compaction
2026-03-11 22:01:53 +09:00
YeonGyu-Kim
25ed1e658e
fix(todo-continuation): improve stagnation detection accuracy
2026-03-11 21:59:59 +09:00
YeonGyu-Kim
4f361b117d
Merge pull request #2469 from code-yeongyu/fix/multimodal-variant-metadata
...
fix(look-at): preserve variant metadata and block non-vision models
2026-03-11 21:58:51 +09:00
YeonGyu-Kim
9496d09126
Merge pull request #2470 from code-yeongyu/fix/terminal-task-retention-ttl
...
fix(background-agent): add TTL for terminal task retention
2026-03-11 21:57:33 +09:00
YeonGyu-Kim
e5009efce5
Merge pull request #2468 from code-yeongyu/fix/shared-context-limit-resolver
...
fix(shared): extract shared context limit resolver to eliminate drift
2026-03-11 21:57:32 +09:00
YeonGyu-Kim
2e358d6b4c
Merge pull request #2467 from code-yeongyu/fix/spawn-sdk-error-fail-closed
...
fix(background-agent): handle SDK error response in spawn lineage lookup
2026-03-11 21:57:30 +09:00
YeonGyu-Kim
7fb62f1904
Merge pull request #2466 from code-yeongyu/fix/anti-dup-prometheus-metis
...
fix(agents): add anti-duplication rules to Prometheus and Metis
2026-03-11 21:57:28 +09:00
YeonGyu-Kim
f95e64ab45
Merge pull request #2465 from code-yeongyu/fix/tmux-strict-parse
...
fix(tmux): strict integer parsing and isActive validation
2026-03-11 21:57:27 +09:00
YeonGyu-Kim
b635cdd31d
fix(compaction): guard model update during compaction and validate checkpoint model
2026-03-11 21:57:06 +09:00
YeonGyu-Kim
ac0e14059d
fix: adjust vision capability check to not block when no model resolved
...
- Only block when a resolved model is explicitly not vision-capable
- Set up vision cache in model passthrough test for proper isolation
2026-03-11 21:56:19 +09:00
YeonGyu-Kim
04aea6941c
fix(background-agent): add TTL for terminal task retention to prevent unbounded growth
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 21:52:48 +09:00
YeonGyu-Kim
44be3b9935
fix: correct import path for buildAntiDuplicationSection in metis.ts
2026-03-11 21:48:08 +09:00
YeonGyu-Kim
fee414fd61
fix(look-at): preserve variant metadata in fallback chain and block non-vision models
...
- fallback-chain.ts: cache-derived entries inherit variant from matching hardcoded entries
- agent-metadata.ts: new isVisionCapableAgentModel() guard blocks non-vision registered models
- tools.ts: early vision-capability check before session creation
- Added regression tests for variant preservation and non-vision model rejection
2026-03-11 21:45:49 +09:00
YeonGyu-Kim
7003000c33
fix(shared): extract shared context limit resolver to eliminate monitor/truncator drift
...
- New context-limit-resolver.ts with resolveActualContextLimit() shared helper
- Anthropic provider detection now uses .includes('anthropic') instead of hard-coded IDs
- Both context-window-monitor and dynamic-truncator use the shared resolver
- Added missing test cases: Anthropic+1M disabled+cached limit, non-Anthropic without cache
2026-03-11 21:45:45 +09:00
YeonGyu-Kim
e5a273afa9
fix(background-agent): handle SDK error response in spawn limit lineage lookup
...
- Check response.error and !response.data after session.get() to fail closed
- Prevents unlimited spawning when SDK returns non-throwing error responses
- Added regression tests for SDK error and missing data scenarios
2026-03-11 21:45:40 +09:00
YeonGyu-Kim
114841173c
fix(agents): add anti-duplication rules to Prometheus and Metis agents
...
- Import and inject buildAntiDuplicationSection() in all 3 Prometheus variants (interview-mode, gpt, gemini) and Metis
- Added tests verifying anti-dup section presence in all prompt variants
- Completes anti-duplication coverage for all delegating agents
2026-03-11 21:45:35 +09:00
YeonGyu-Kim
d1f41d6cc9
fix(tmux): strict integer parsing and isActive validation in pane-state-parser
...
- parseInteger() now rejects malformed input like '120oops' using /^\d+$/ regex
- New parseActiveValue() validates active flag is exactly '0' or '1'
- Added regression tests for malformed integers, negative values, empty fields, non-binary active flags
2026-03-11 21:45:30 +09:00
YeonGyu-Kim
b40de091b4
Merge pull request #2464 from code-yeongyu/feat/gpt-last-message-continuation
...
Auto-continue GPT permission-seeking replies
2026-03-11 21:37:31 +09:00
YeonGyu-Kim
285fe90589
docs: document GPT permission continuation hook
...
Document the new continuation hook in the feature and configuration references so users can discover it and disable it through disabled_hooks.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 21:29:11 +09:00
YeonGyu-Kim
a5cf04b325
fix(continuation): auto-continue GPT permission-seeking replies
...
Resume GPT sessions when the last assistant reply ends in a permission-seeking tail, while honoring stop-continuation and avoiding duplicate continuation across todo and atlas flows.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 21:20:59 +09:00
YeonGyu-Kim
fb013f5c16
Merge pull request #2451 from code-yeongyu/fix/issue-2238-v2
...
fix: prevent terminal corruption during background bun install
2026-03-11 21:04:43 +09:00
YeonGyu-Kim
4d6253f8f6
test(auto-update-checker): type background update bun install mock
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 21:01:16 +09:00
YeonGyu-Kim
68f0446301
Merge pull request #2449 from code-yeongyu/fix/issue-2330-v2
...
fix(background-agent): cap recursive subagent spawning
2026-03-11 21:00:34 +09:00
YeonGyu-Kim
398c950085
fix(background-agent): fail closed on spawn lineage lookup errors
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 20:57:09 +09:00
YeonGyu-Kim
7d06aea7c8
Merge pull request #2456 from code-yeongyu/fix/issue-2292-v2
...
fix(background-agent): preserve terminal tasks until notification cleanup
2026-03-11 20:56:32 +09:00
YeonGyu-Kim
ae4efd295d
test(config-manager): add bun types reference for bun install test
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 20:56:22 +09:00
YeonGyu-Kim
1973ef1cdf
fix(auto-update-checker): suppress background bun install output
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 20:56:22 +09:00
YeonGyu-Kim
966a764a99
fix(background-agent): preserve terminal tasks until notification cleanup
...
Route terminal task cleanup through parent notifications so cancelled and errored tasks stay visible until delayed cleanup finishes.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 20:50:49 +09:00
YeonGyu-Kim
a3ea0e7ad4
fix(background-agent): skip terminal tasks during stale pruning
...
Prevent TTL pruning from deleting terminal tasks before delayed notification cleanup runs.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 20:50:49 +09:00
YeonGyu-Kim
c74d653fdf
fix(config-manager): support silent bun install execution
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 20:50:25 +09:00
YeonGyu-Kim
d2526878b6
Count sync subagent spawns against descendant limits
2026-03-11 20:50:11 +09:00
YeonGyu-Kim
c4d8dedb94
Limit recursive subagent spawning
2026-03-11 20:50:10 +09:00
YeonGyu-Kim
41ab0ad4c5
Merge pull request #2370 from code-yeongyu/fix/issue-2322
...
fix: stop stagnant todo continuation loops
2026-03-11 20:49:02 +09:00
YeonGyu-Kim
f8fc085e35
Merge pull request #2461 from code-yeongyu/fix/2448-regression
...
fix(agents): add anti-duplication rules to Atlas agent prompts
2026-03-11 20:44:46 +09:00
YeonGyu-Kim
c5675b9a49
Merge pull request #2460 from code-yeongyu/fix/2366-regression
...
fix: prioritize Anthropic 1M limits over cached context limits
2026-03-11 20:44:34 +09:00
YeonGyu-Kim
7e4f363ff7
Merge pull request #2459 from code-yeongyu/fix/2453-regression
...
fix(tmux): add barrel export for pane-state-parser and log parse failures
2026-03-11 20:44:33 +09:00
YeonGyu-Kim
3a0eccdf66
fix(agents): add anti-duplication rules to Atlas agent prompts
2026-03-11 20:38:46 +09:00
YeonGyu-Kim
87ff1effdf
fix: prioritize Anthropic 1M limits over cached context limits
2026-03-11 20:38:44 +09:00
YeonGyu-Kim
75fd75dab9
fix(tmux): add barrel export for pane-state-parser and log parse failures
2026-03-11 20:36:57 +09:00
YeonGyu-Kim
bed1118636
Merge pull request #2378 from code-yeongyu/fix/issue-2232
...
fix(compaction): recover agent config after session compaction
2026-03-11 20:23:26 +09:00
YeonGyu-Kim
2f4687d9b6
Merge pull request #2371 from code-yeongyu/fix/issue-2323
...
fix: respect multimodal provider vision capabilities
2026-03-11 20:22:35 +09:00
YeonGyu-Kim
6fbe637a2d
Merge branch 'dev' into fix/issue-2232
2026-03-11 20:20:04 +09:00
YeonGyu-Kim
29ff2e1ff1
Merge pull request #2448 from code-yeongyu/fix/subagent-self-execute-v2
...
fix: prevent agents from duplicating delegated subagent work
2026-03-11 20:19:47 +09:00
YeonGyu-Kim
bb899dfa97
fix: rename test file to .ts extension
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 20:16:16 +09:00
YeonGyu-Kim
bb9261fcf4
refactor: split oversized hook.ts to respect 200 LOC limit
...
- Extract types to types.ts
- Extract constants to constants.ts
- Extract session ID helpers to session-id.ts
- Extract recovery logic to recovery.ts
hook.ts reduced from 331 to 164 LOC
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 20:16:08 +09:00
YeonGyu-Kim
af22268b51
fix: add anti-duplication rules to junior default prompt
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 20:10:25 +09:00
YeonGyu-Kim
600ad92dff
Merge pull request #2366 from code-yeongyu/fix/issue-2338
...
fix: honor model-specific context limits for non-Anthropic models
2026-03-11 20:06:44 +09:00