YeonGyu-Kim
1f9a581e70
fix(rules-core): fall back to workspace directory when no project root marker is found
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-20 13:20:47 +09:00
YeonGyu-Kim
f8f4b572dc
fix(runtime-fallback,prompt-gate): recognize all OpenCode progress event shapes and boolean/completed finish markers
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-20 13:12:06 +09:00
YeonGyu-Kim
20efb79fbf
test(runtime-fallback,prompt-gate): add red tests for event-shape and finish-marker blind spots (BUG-C+D)
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-20 13:12:06 +09:00
YeonGyu-Kim
847a8db2dc
fix(runtime-fallback): preserve accepted pending retries
2026-05-20 11:42:46 +09:00
YeonGyu-Kim
6df148f0f6
fix(team-mode): close peer message delivery races
2026-05-20 11:42:38 +09:00
YeonGyu-Kim
d3e218f912
fix(prompt): treat post-dispatch failures as accepted
2026-05-20 11:42:32 +09:00
YeonGyu-Kim
b2918fd4db
fix(team-mode): close peer message delivery races
2026-05-19 19:18:13 +09:00
YeonGyu-Kim
bcea4a9d28
fix(prompt-gate): harden sync and team prompt dispatch
2026-05-19 19:18:13 +09:00
YeonGyu-Kim
1492bffd20
fix(prompt-gate): harden internal prompt dispatch
2026-05-19 19:18:13 +09:00
YeonGyu-Kim
3dd414226b
fix(rules): drop legacy sisyphus rule sources
2026-05-19 14:27:48 +09:00
YeonGyu-Kim
44ef5dec1d
fix(runtime-events): honor OpenCode progress shapes
2026-05-19 13:48:45 +09:00
YeonGyu-Kim
38462aa9d2
fix(recovery): avoid duplicate continuation prompts
2026-05-19 13:48:39 +09:00
YeonGyu-Kim
67bd324987
fix(runtime-fallback): keep pending retry state on gate skip
2026-05-19 13:16:39 +09:00
YeonGyu-Kim
98c3fee181
fix(prompt-gate): detect finish-only tool waits
2026-05-19 13:16:39 +09:00
YeonGyu-Kim
f5f358ab9d
fix(prompt-gate): ignore internal user tails in tool waits
2026-05-19 13:16:39 +09:00
YeonGyu-Kim
6915f15299
fix(todo-continuation): cancel stale ULW countdown
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-19 09:18:00 +09:00
YeonGyu-Kim
4ea29e2c94
refactor(rules): delegate injectors to rules-core
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 21:27:36 +09:00
YeonGyu-Kim
450c1f9e50
fix(runtime-fallback): ignore stale assistant errors during fallback wait
...
When OpenCode reports the original assistant error after a fallback retry has already been accepted, keep waiting for the pending fallback model instead of clearing the awaiting flag.
This prevents a duplicate stale session.error from advancing the fallback chain and dispatching a second assistant retry prompt.
2026-05-18 17:48:04 +09:00
YeonGyu-Kim
b9707b8469
Fix paused boulder session resolution
2026-05-18 17:18:46 +09:00
YeonGyu-Kim
881e990c42
fix(test/session-recovery): replace mock.calls[0][0] with typed accessor
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 16:53:43 +09:00
YeonGyu-Kim
9ddf13107d
fix(test/runtime-fallback): add git_master to config fixture
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 16:53:13 +09:00
YeonGyu-Kim
e9061731c6
fix(ralph-loop): guard verification retry ownership
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 16:05:36 +09:00
YeonGyu-Kim
9c19bd8c51
fix(ralph-loop): defer during fresh user prompts
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 16:05:36 +09:00
YeonGyu-Kim
bcbab0555d
fix(todo-continuation-enforcer): preserve countdown across compaction
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 15:59:16 +09:00
YeonGyu-Kim
f898116be1
test(todo-continuation-enforcer): lock compaction countdown state
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 15:51:53 +09:00
YeonGyu-Kim
f20294a702
fix(unstable-agent-babysitter): normalize reminder agent names
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 15:48:43 +09:00
YeonGyu-Kim
0ee45aa6ab
fix(unstable-agent-babysitter): respect active sessions
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 15:48:43 +09:00
YeonGyu-Kim
3b54d587bf
Merge pull request #4132 from code-yeongyu/fix/3446-atlas-runaway-loop
...
fix(atlas): stop runaway boulder continuation loops
2026-05-18 14:43:03 +09:00
YeonGyu-Kim
6dc31b2c4f
fix(atlas): scope no-tool-progress counter to active plan path before stall
...
Oracle review on PR #4132 flagged that resetStallStateForPlanChange only
reset state when stalledContinuationReason was already set, so partial
in-progress counts from plan A could carry to plan B and abort the new
plan on its first idle.
Adds activeContinuationPlanPath to SessionState and resets the
no-tool-progress counter + awaiting state whenever the active plan path
changes, even when no stall has occurred yet. The existing stalled-plan
reset still fires when the previously stalled plan path differs from
the new one.
2026-05-18 14:34:00 +09:00
YeonGyu-Kim
428a18c748
test(prompt-gate): tighten dispatch route regressions
2026-05-18 14:22:58 +09:00
YeonGyu-Kim
e1554c088e
fix(ralph-loop): preserve prompt dispatch holds through activity
2026-05-18 14:22:58 +09:00
YeonGyu-Kim
66cb72b831
fix(prompt-gate): bind session messages receiver
2026-05-18 14:22:58 +09:00
YeonGyu-Kim
1a66b96bb8
docs: note Atlas stalled continuation fix
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 14:18:33 +09:00
YeonGyu-Kim
d3b4c022d2
fix(atlas): stop stalled boulder continuations
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 14:17:54 +09:00
YeonGyu-Kim
fff99aeb29
fix(atlas): track no-tool-progress state
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 14:17:54 +09:00
YeonGyu-Kim
0994c107d2
fix(atlas): require blocked plan checkbox edits
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 14:17:54 +09:00
YeonGyu-Kim
b0f432dbe5
Merge pull request #4136 from code-yeongyu/fix/4059-blocker4-reland
...
fix(runtime-fallback): reland BLOCKER-4 delegated empty-history fallback (#4059 )
2026-05-18 13:50:03 +09:00
YeonGyu-Kim
c37725bb7f
Merge pull request #4139 from code-yeongyu/fix/3450-anthropic-context-limit-revisited
...
fix(shared): return GA 1M context limit for Anthropic 4.6/4.7 models without cached entry
2026-05-18 13:44:56 +09:00
YeonGyu-Kim
0f8fc548f1
fix(runtime-fallback): consume delegated bootstrap retry payload
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 13:42:57 +09:00
YeonGyu-Kim
2387f1e702
Merge pull request #4134 from code-yeongyu/ulw/rule-comment-baseline-20260518
...
Optimize rules injector caches
2026-05-18 13:37:09 +09:00
YeonGyu-Kim
35df911919
test(hooks): update preemptive-compaction token thresholds for GA 1M context
...
Raise test token counts from 170K/180K to 800K/810K so compaction triggers at 78% of 1M instead of 78% of 200K, matching the actual GA context limit for 4.6 models.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 13:36:17 +09:00
YeonGyu-Kim
50ae2e110e
perf(rules-injector): cache match decisions
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 13:30:23 +09:00
YeonGyu-Kim
5555dbfc67
Merge pull request #4133 from code-yeongyu/fix/3816-frozen-output-args
...
fix: replace direct output.args mutation with replaceToolArgs helper (fixes #3816 )
2026-05-18 13:09:30 +09:00
YeonGyu-Kim
b20e2c9c55
fix: refactor 5 additional aliased output.args mutations + strengthen audit test
...
Address Oracle review feedback: refactor 4 aliased mutations via argsObject
in plugin/tool-execute-before.ts and 1 via toolOutput in atlas/tool-execute-before.ts.
Strengthen audit test regex to catch Output.args mutations regardless of the
variable name prefix (toolOutput, argsObject aliases).
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 13:04:10 +09:00
YeonGyu-Kim
61890f0857
fix(rules-injector): bound parsed rule cache
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 12:58:41 +09:00
YeonGyu-Kim
46b965b9da
fix(rules-injector): bound matcher cache
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 12:58:41 +09:00
YeonGyu-Kim
1ab1b54ce6
perf(rules-injector): cache compiled glob matchers
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 12:58:41 +09:00
YeonGyu-Kim
3a63a8b205
test(shared): add audit test forbidding direct output.args mutation + fix 9th site
...
Add replace-tool-args.audit.test.ts that scans src/**/*.ts for direct
output.args property assignments and Object.assign(output.args, ...) outside
the helper. Also fix the 9th mutation site discovered by the audit in
compaction-todo-preserver/hook.ts.
Add replace-tool-args.test.ts with 12 regression tests covering both mutable
and Object.freeze'd output.args scenarios for all hook patterns.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 12:46:52 +09:00
YeonGyu-Kim
13d8857415
refactor(hooks): replace direct output.args mutation with replaceToolArgs (question/webfetch/null-byte)
...
Replace Object.assign(output.args, truncatedArgs), output.args.url = resolution.url,
and output.args.command = ... .replace(/\x00/g, "") with replaceToolArgs() calls
in question-label-truncator, webfetch-redirect-guard, and plugin/tool-execute-before.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 12:46:52 +09:00
YeonGyu-Kim
af66b8de0b
refactor(hooks): replace direct output.args mutation with replaceToolArgs (env + prompt injectors)
...
Replace output.args.command and output.args.prompt direct assignments
with replaceToolArgs() in non-interactive-env, prometheus-md-only,
and sisyphus-junior-notepad hooks.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-18 12:37:45 +09:00