YeonGyu-Kim
0078b736b9
fix: stabilize stale timeout tests with fixed Date.now()
...
Tests 'should use default timeout when config not provided' (manager.test.ts)
and 'should use DEFAULT_MESSAGE_STALENESS_TIMEOUT_MS when not configured'
(task-poller.test.ts) failed in CI because Date.now() drifted between
test setup (when creating timestamps like Date.now() - 46*60*1000) and
actual execution inside checkAndInterruptStaleTasks().
On slower CI machines, this drift pushed borderline values across
the threshold, causing tasks that should be stale to remain 'running'.
Fix: Mock Date.now with spyOn to return a fixed time, ensuring
consistent timeout calculations regardless of execution speed.
2026-03-23 22:17:03 +09:00
MoerAI
6d7f69625b
fix: update stale timeout test fixtures for new 45/60 min defaults
2026-03-23 21:00:59 +09:00
MoerAI
fda17dd161
fix(background-agent): increase default stale timeouts and improve cancellation messages ( fixes #2684 )
2026-03-23 20:49:43 +09:00
MoerAI
c41d6fd912
fix(delegate-task): trust user-configured category models without fuzzy validation ( fixes #2740 )
2026-03-23 20:39:47 +09:00
YeonGyu-Kim
6e9128e060
fix: add fetch mock to install test to prevent CI timeout
...
The first test case 'non-TUI mode: should show warning but continue when
OpenCode binary not found' was missing a globalThis.fetch mock, causing it
to make a real HTTP request to npm registry via fetchNpmDistTags().
The npm fetch timeout (5s) collided with the test timeout (5s), causing
flaky CI failures.
Added the same fetch mock pattern already used by the other two test cases.
Test runtime dropped from 5000ms+ to ~2ms.
2026-03-23 20:03:45 +09:00
MoerAI
92509d8cfb
fix(non-interactive-env): detect shell type for csh/tcsh env var syntax ( fixes #2089 )
2026-03-23 19:33:54 +09:00
YeonGyu-Kim
331f7ec52b
Merge pull request #2768 from code-yeongyu/fix/issue-2117
...
fix: emit formatter events from hashline-edit tool (fixes #2117 )
2026-03-23 18:49:10 +09:00
YeonGyu-Kim
4ba2da7ebb
fix: add tests and fix typing for formatter trigger ( #2768 )
2026-03-23 18:46:44 +09:00
YeonGyu-Kim
f95d3b1ef5
fix: emit formatter events from hashline-edit tool ( fixes #2117 )
2026-03-23 18:40:27 +09:00
YeonGyu-Kim
d5d7c7dd26
Merge pull request #2767 from code-yeongyu/fix/issue-2742
...
fix: respect disabled_tools config in agent prompts (fixes #2742 )
2026-03-23 18:39:51 +09:00
YeonGyu-Kim
6a56c0e241
Merge pull request #2766 from code-yeongyu/fix/issue-390
...
fix: trigger compaction before continue after session error recovery (fixes #390 )
2026-03-23 18:39:50 +09:00
YeonGyu-Kim
94c234c88c
Merge pull request #2765 from code-yeongyu/fix/issue-2024
...
fix: skip keyword injection for non-OMO agents (fixes #2024 )
2026-03-23 18:39:48 +09:00
YeonGyu-Kim
2ab976c511
Merge pull request #2764 from code-yeongyu/fix/issue-2624
...
fix: add oh-my-openagent.jsonc config file detection (fixes #2624 )
2026-03-23 18:39:46 +09:00
YeonGyu-Kim
dc66088483
Merge pull request #2763 from code-yeongyu/fix/issue-2037
...
fix: respect OPENCODE_DISABLE_CLAUDE_CODE env vars (fixes #2037 )
2026-03-23 18:39:45 +09:00
YeonGyu-Kim
67b5f46a7c
Merge pull request #2762 from code-yeongyu/fix/issue-2150
...
fix: clarify Prometheus file permission error message (fixes #2150 )
2026-03-23 18:39:43 +09:00
YeonGyu-Kim
0e483d27ac
Merge pull request #2761 from code-yeongyu/fix/issue-2729
...
fix: validate serverUrl port before tmux pane spawn (fixes #2729 )
2026-03-23 18:39:41 +09:00
YeonGyu-Kim
f5eaa648e9
fix: respect disabled_tools config in agent prompts ( fixes #2742 )
...
- Check disabled_tools for 'question' in tool-config-handler permission logic
- Strip Question tool code examples from Prometheus prompts when disabled
- Pass disabled_tools through prometheus agent config builder pipeline
- Add tests for disabled_tools question permission handling
2026-03-23 18:13:38 +09:00
YeonGyu-Kim
4c4760a4ee
fix: trigger compaction before continue after session error recovery ( fixes #390 )
2026-03-23 18:12:51 +09:00
YeonGyu-Kim
7f20dd6ff5
fix: add oh-my-openagent.jsonc config file detection ( fixes #2624 )
2026-03-23 18:11:01 +09:00
YeonGyu-Kim
de371be236
fix: skip keyword injection for non-OMO agents ( fixes #2024 )
2026-03-23 18:10:44 +09:00
YeonGyu-Kim
f3c2138ef4
fix: respect OPENCODE_DISABLE_CLAUDE_CODE env vars ( fixes #2037 )
2026-03-23 18:10:08 +09:00
YeonGyu-Kim
0810e37240
fix: validate serverUrl port before tmux pane spawn ( fixes #2729 )
2026-03-23 18:09:31 +09:00
YeonGyu-Kim
a64e364fa6
fix: clarify Prometheus file permission error message ( fixes #2150 )
2026-03-23 18:07:59 +09:00
github-actions[bot]
d886ac701f
@hunghoang3011 has signed the CLA in code-yeongyu/oh-my-openagent#2758
2026-03-23 04:28:31 +00:00
MoerAI
11f1d71c93
fix(prometheus): respect agent model override instead of using global opencode.json model ( fixes #2693 )
2026-03-23 10:36:59 +09:00
github-actions[bot]
30dc50d880
@0xYiliu has signed the CLA in code-yeongyu/oh-my-openagent#2738
2026-03-21 23:05:07 +00:00
github-actions[bot]
b17e633464
@ndaemy has signed the CLA in code-yeongyu/oh-my-openagent#2734
2026-03-21 10:18:31 +00:00
ndaemy
07ea8debdc
fix(keyword-detector): remove duplicate separator from ultrawork templates
2026-03-21 19:09:51 +09:00
YeonGyu-Kim
eec268ee42
fix: use find() instead of calls[0] in wakeGateway test to handle background fetch calls
2026-03-21 18:01:39 +09:00
github-actions[bot]
363661c0d6
@whackur has signed the CLA in code-yeongyu/oh-my-openagent#2733
2026-03-21 05:27:27 +00:00
github-actions[bot]
261bbdf4dc
@nguyentamdat has signed the CLA in code-yeongyu/oh-my-openagent#2718
2026-03-20 07:34:31 +00:00
YeonGyu-Kim
8aec4c5cb3
feat(hooks/todo-continuation-enforcer): enhance continuation message with skeptical verification guidance
2026-03-20 16:13:02 +09:00
YeonGyu-Kim
16cbc847ac
fix(cli/run): set OPENCODE_CLIENT to 'run' to exclude question tool from registry
2026-03-20 16:12:58 +09:00
YeonGyu-Kim
436ce71dc8
docs(skills/github-triage): fix Phase 1 JSON parsing and large repo handling
2026-03-20 16:12:54 +09:00
MoerAI
0e610a72bc
fix(runtime-fallback): make fallback provider selection provider-agnostic ( fixes #2303 )
2026-03-20 09:53:24 +09:00
github-actions[bot]
d2a49428b9
@tonymfer has signed the CLA in code-yeongyu/oh-my-openagent#2701
2026-03-19 17:14:04 +00:00
github-actions[bot]
c3b23bf603
@trafgals has signed the CLA in code-yeongyu/oh-my-openagent#2690
2026-03-19 04:22:43 +00:00
YeonGyu-Kim
50094de73e
docs: fix remaining AGENTS hook composition text
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-19 12:02:52 +09:00
YeonGyu-Kim
3aa2748c04
docs: sync hook counts after continuation hook removal
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-19 12:02:52 +09:00
YeonGyu-Kim
ccaf759b6b
fix(hooks): remove gpt permission continuation hook
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-19 12:02:52 +09:00
YeonGyu-Kim
521a1f76a9
fix(atlas): stop only after 10 consecutive prompt failures
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-19 12:02:52 +09:00
github-actions[bot]
490f0f2090
@walioo has signed the CLA in code-yeongyu/oh-my-openagent#2688
2026-03-19 02:35:04 +00:00
YeonGyu-Kim
caf595e727
fix(build-binaries): prevent test imports from triggering binary builds
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-19 10:47:33 +09:00
YeonGyu-Kim
1f64a45113
Merge pull request #2620 from code-yeongyu/feat/openclaw-bidirectional
...
feat: port OpenClaw bidirectional integration from omx
2026-03-19 10:47:07 +09:00
YeonGyu-Kim
9b2dc2189c
fix(ralph-loop): detect promise tags in tool_result parts for ulw verification
...
Oracle's <promise>VERIFIED</promise> arrives as a tool_result part from the
task() tool call, not as a text part. Both detectCompletionInSessionMessages
and collectAssistantText only scanned type=text parts, missing the
verification signal entirely. This caused ulw loops to fail verification
even when Oracle successfully emitted VERIFIED.
Include tool_result parts in promise detection alongside text parts.
Exclude tool_use parts to avoid false positives from instructional text.
2026-03-18 19:09:59 +09:00
MoerAI
071fab1618
fix: match existing codebase session.messages() parameter shape
2026-03-18 19:08:05 +09:00
YeonGyu-Kim
f6c24e42af
fix(ralph-loop): detect promise tags in tool_result parts for ulw verification
...
Oracle's <promise>VERIFIED</promise> arrives as a tool_result part from the
task() tool call, not as a text part. Both detectCompletionInSessionMessages
and collectAssistantText only scanned type=text parts, missing the
verification signal entirely. This caused ulw loops to fail verification
even when Oracle successfully emitted VERIFIED.
Include tool_result parts in promise detection alongside text parts.
Exclude tool_use parts to avoid false positives from instructional text.
2026-03-18 19:03:30 +09:00
YeonGyu-Kim
22fd976eb9
feat(categories): change quick category default model from claude-haiku-4-5 to gpt-5.4-mini
...
GPT-5.4-mini provides stronger reasoning at comparable speed and cost.
Haiku remains as the next fallback priority in the chain.
Changes:
- DEFAULT_CATEGORIES quick model: anthropic/claude-haiku-4-5 → openai/gpt-5.4-mini
- Fallback chain: gpt-5.4-mini → haiku → gemini-3-flash → minimax-m2.5 → gpt-5-nano
- OpenAI-only catalog: quick uses gpt-5.4-mini directly
- Think-mode: add gpt-5-4-mini and gpt-5-4-nano high variants
- Update all documentation references
2026-03-18 19:03:30 +09:00
YeonGyu-Kim
826284f3d9
Merge pull request #2676 from code-yeongyu/fix/atlas-task-session-review-followup
...
fix(atlas): address review findings for task session reuse
2026-03-18 18:50:45 +09:00
YeonGyu-Kim
3c7e6a3940
fix(atlas): address review findings for task session reuse
2026-03-18 18:44:42 +09:00