YeonGyu-Kim
d78ebc1280
Merge pull request #3370 from Zireael/fix/git-bash-shell-detection-on-windows
...
fix: detect Git Bash/WSL/MSYS2 shell on Windows (non-interactive-env hook)
2026-05-21 12:58:48 +09:00
YeonGyu-Kim
6678c2ae04
Merge pull request #3884 from leeyazhou/i18n
...
feat(i18n): add toast i18n with en/zh locale and plugin config support
2026-05-21 12:58:45 +09:00
YeonGyu-Kim
c5f8fd4060
Merge pull request #4031 from PeterPonyu/feat/config-disabled-providers
...
feat(config): add disabled_providers schema + helper
2026-05-21 12:58:42 +09:00
YeonGyu-Kim
e4a60b8cd2
Merge pull request #4048 from PeterPonyu/feat/doctor-check-tui-plugin
...
feat(doctor): warn when oh-my-openagent/tui is missing from tui.json
2026-05-21 12:58:39 +09:00
YeonGyu-Kim
735b4d2997
Merge pull request #4070 from PeterPonyu/fix/4036-prompt-shield-system-directive-marker
...
fix(prometheus-md-only): replace SYSTEM DIRECTIVE marker with XML tag in external prompts (#4036 )
2026-05-21 12:58:36 +09:00
YeonGyu-Kim
45e5d5ddfc
Merge pull request #4071 from PeterPonyu/fix/4027-role-coordinator-subagent-selection
...
fix(team-mode): reject coordinator agents as subagent targets (#4027 )
2026-05-21 12:58:33 +09:00
YeonGyu-Kim
d7d023bf27
Merge pull request #4072 from PeterPonyu/fix/3645-runtime-fallback-git-silent-fail
...
fix(runtime-fallback): fall back to synthetic continuation when session messages are empty (#3645 )
2026-05-21 12:58:30 +09:00
YeonGyu-Kim
689ad9970b
Merge pull request #4079 from PeterPonyu/refactor/3694-extract-analyze-constants
...
refactor(keyword-detector): consolidate analyze pattern/message into analyze/default and document delegate_task params (#3694 )
2026-05-21 12:58:27 +09:00
YeonGyu-Kim
c5b1bff33f
Merge pull request #4080 from PeterPonyu/docs/3469-mcp-list-plugin-vs-native
...
docs(mcp): clarify plugin-injected MCPs do not appear in opencode mcp list (#3469 )
2026-05-21 12:58:24 +09:00
YeonGyu-Kim
9cca6848c9
Merge pull request #4081 from PeterPonyu/feat/4004-agent-display-name-i18n
...
feat(agents): support per-agent displayName for i18n (#4004 )
2026-05-21 12:58:21 +09:00
YeonGyu-Kim
acedacc5e7
Merge pull request #4084 from pizzav-xyz/feature/keyword-detector-enabled-expansions
...
feat(keyword-detector): add enabled_expansions config for allowlist control
2026-05-21 12:58:18 +09:00
YeonGyu-Kim
ba5bc0ef4f
Merge pull request #4092 from code-yeongyu/fix/status-timeout-hang
...
fix(shared): add timeout to isSessionActive to prevent infinite hang
2026-05-21 12:58:14 +09:00
YeonGyu-Kim
a7401a34ac
Merge pull request #4157 from ririnto/docs/config-reference-alignment
...
docs: align config reference with implementation
2026-05-21 12:58:11 +09:00
YeonGyu-Kim
323e53f3a5
Merge pull request #4181 from devswha/docs/add-vibetip-docs-link
...
docs(readme): add docs site badge linking to omo.vibetip.help/docs
2026-05-21 12:58:07 +09:00
YeonGyu-Kim
b40426ca1b
Merge pull request #4190 from herjarsa/feat/default-mode
...
feat(default-mode): auto-activate ultrawork and ralph loop without commands
2026-05-21 12:58:04 +09:00
YeonGyu-Kim
d502900201
Merge pull request #4221 from heunghingwan/feat/plan-format-validator
...
Add plan format validator hook to detect malformed task labels
2026-05-21 12:58:01 +09:00
YeonGyu-Kim
e4049b7ab3
Merge pull request #4222 from andomeder/wip/pr1-skip-disconnected-explicit-provider-fallbacks
...
fix(background-agent): skip disconnected explicit-provider fallbacks
2026-05-21 12:57:58 +09:00
YeonGyu-Kim
bd55396266
fix(look-at): avoid empty stable idle completion
2026-05-21 12:54:56 +09:00
YeonGyu-Kim
bd61479315
Merge pull request #4227 from code-yeongyu/fix/post-4106-cleanup-20260521
...
fix: clean up post-4106 prompt gate artifacts
2026-05-21 12:53:17 +09:00
YeonGyu-Kim
95291fa4ed
chore(evidence): refresh package layering refactor notes
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
fc0f4cc9ee
chore(model-core): remove unused generated snapshot (DI strategy makes it dead)
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
f6a2ff3541
test(coupling-audit): allowlist dual-runtime spawn shims
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
2f26f78f0d
chore(evidence): backfill PASS sentinels in empty evidence files
...
Backfilled explicit PASS sentinel content in 14 evidence files:
- .omo/evidence/task-1-baseline.txt
- .omo/evidence/task-2-package-exists.txt
- .omo/evidence/task-2-no-coupling.txt
- .omo/evidence/task-2-reexports.txt
- .omo/evidence/task-2-tests.txt
- .omo/evidence/task-3-no-coupling.txt
- .omo/evidence/task-3-di-interface.txt
- .omo/evidence/task-3-tests.txt
- .omo/evidence/task-5-tests.txt
- .omo/evidence/task-5-no-coupling.txt
- .omo/evidence/task-9-loc-check.txt
- .omo/evidence/task-9-tests.txt
- .omo/evidence/task-9-no-coupling.txt
- .omo/evidence/w2-qa-coupling-sweep.txt
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
017f05dddb
refactor(packages/model-core): eliminate src/ back-imports via dependency injection
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
e15461febc
refactor(model-core): inject bundled capabilities snapshot from harness
...
- remove bundled snapshot dependency on src/generated in model-core
- make shared harness provide runtime bundled snapshot
- update guardrail and capability tests to pass explicit snapshot
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
2462d7af29
refactor(model-core): remove src back-imports via core utilities and adapter
...
- move fuzzyMatchModel and transformModelForProvider into model-core
- replace connected-providers re-export with adapter contract
- route shared wrappers through model-core exports
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
819bf0d11f
chore: update meta-audits + add opencode coupling grep gate
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
a089d4a584
docs: update AGENTS.md + ROADMAP.md for package layering refactor
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
faf4a2d349
chore: post-W2 cleanup (remove orphan rules-core dir + W2-QA evidence)
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
27e434578a
docs: update rules-core → rules-engine references
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
4bbf1d9388
refactor(packages): rename rules-core to rules-engine
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
7c7aa28160
refactor(packages): extract agents-md-core package
2026-05-21 12:50:10 +09:00
YeonGyu-Kim
2748009ff2
refactor(packages): extract model-core package
2026-05-21 12:49:50 +09:00
YeonGyu-Kim
f7ceb03efe
refactor(packages): extract boulder-state package
2026-05-21 12:49:33 +09:00
YeonGyu-Kim
7028c1f40a
refactor(packages): extract comment-checker-core package
2026-05-21 12:49:10 +09:00
YeonGyu-Kim
3b303e79f4
refactor(packages): extract ast-grep-core from ast-grep-mcp
2026-05-21 12:48:43 +09:00
YeonGyu-Kim
a5c1d71001
refactor(packages): extract utils package
2026-05-21 12:48:43 +09:00
YeonGyu-Kim
c4fe747e15
chore: baseline measurements for package layering refactor
2026-05-21 12:45:21 +09:00
YeonGyu-Kim
6e6f300c7d
fix(background-agent): defer stale cancel on activity lookup errors
2026-05-21 12:43:51 +09:00
YeonGyu-Kim
036e04c15b
fix(look-at): allow stable idle after sync prompt
2026-05-21 12:32:55 +09:00
YeonGyu-Kim
98d760a5f3
test(agent): align remapper display assertion
2026-05-21 12:32:51 +09:00
YeonGyu-Kim
927cc84fa5
fix(background-agent): refresh stale checks from session activity
2026-05-21 12:32:43 +09:00
YeonGyu-Kim
8979e198ca
Merge pull request #4226 from code-yeongyu/fix/background-notification-active-turn-queue
...
fix(background-agent): defer parent wakes during active turns
2026-05-21 12:17:33 +09:00
YeonGyu-Kim
0ad4d974f1
fix(background-agent): preserve parent activity across idle events
...
Cubic caught that clearing recent parent activity on session.idle could reopen the stale-idle race. Keep the fresh activity marker until its normal expiry so background completions still defer while the parent turn is actively reasoning.
Red: parent idle after fresh reasoning delta dispatched an unexpected parent wake. Green: focused parent-wake regression suite passes.
2026-05-21 12:07:40 +09:00
YeonGyu-Kim
ced36bffc1
refactor: split prompt async gate modules
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-21 12:00:01 +09:00
YeonGyu-Kim
3717b33247
chore: remove leaked debugging artifact
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-21 11:59:44 +09:00
YeonGyu-Kim
a8201726ef
fix(background-agent): defer parent wakes during active turns
...
Record fresh parent session message activity before parent-wake flushing so stale idle status cannot dispatch a background completion into a live reasoning turn.
Add regression coverage for the Discord 4.2.3/OpenCode 1.15.5 duplicate-branch repro shape where a parent reasoning delta arrives before the background all-complete wake.
Refs #4212
Refs #4019
Refs #3774
Plan: plans/background-notification-active-turn-queue.md
2026-05-21 11:50:30 +09:00
YeonGyu-Kim
8b52612449
Merge pull request #4194 from MoerAI/fix/lsp-windows-cli-path-separator
...
fix(mcp): normalize path separators in LSP/ast-grep cli candidate detection (fixes #4151 )
2026-05-21 11:44:28 +09:00
ZeyuFu
9bd2a9d7a9
fix(runtime-fallback): fall back to synthetic continuation when session messages are empty ( #3645 )
...
When the working directory contains a .git folder the OpenCode server
normalises the project root to the git root before persisting messages.
This creates a race: the 429/503/529 error event can fire before the
user's message is committed to storage, so session.messages returns []
and getLastUserRetryParts returns an empty array. The previous code
treated that as a silent no-op (cleared all retry state, Sisyphus stalled).
Fix: when fetchedParts is empty, emit a structured log explaining the
.git-directory race and fall back to a synthetic { type:"text", text:"continue" }
part — matching the pattern already used by autoContinueAfterFallback in
event.ts. The fallback dispatch always proceeds regardless of whether
the messages API can return user parts.
Update four tests that fired two consecutive session.error events relying
on the old silent-stop behaviour: add top-level model fields to the second
error so the awaiting-fallback gate recognises it as coming from the
dispatched fallback model and lets it through normally.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-20 22:29:59 -04:00
YeonGyu-Kim
20ba83e19e
test(mcp): remove stale lsp exists import
2026-05-21 11:24:18 +09:00