YeonGyu-Kim
aae619c58f
fix(ultrawork): align lazy sqlite fallback test
...
Keep bun:sqlite loading lazy and verify the unavailable-runtime fallback without a test-only importer seam.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-05 19:09:31 +09:00
YeonGyu-Kim
c537e840ee
fix(ultrawork): handle bun:sqlite import failure directly
...
Use the lazy bun:sqlite importer inside the deferred override microtask and keep the unavailable-runtime test on the rejected-import path.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-05 19:09:31 +09:00
YeonGyu-Kim
f4a225b6cd
fix(ultrawork): lazy-load bun:sqlite to support Node/Electron runtime
...
Top-level `import { Database } from 'bun:sqlite'` caused Node/Electron's
ESM loader to reject the plugin at module-graph resolution time because
the `bun:` protocol is not in Node's allowed scheme list. This prevented
the OpenCode desktop app from loading the plugin at all.
Fix:
- Remove top-level static import of `bun:sqlite`
- Use a lazy importer (`_bunSqliteImporter`) that calls
`import('bun:sqlite').catch(() => null)` at runtime
- If the import returns null (non-Bun environment), log a warning and
return early — no DB override attempted, plugin loads normally
- Expose `__setBunSqliteImporterForTesting` / `__resetBunSqliteImporterForTesting`
test seams to verify the Node/Electron fallback path
Closes #3795
2026-05-05 19:09:31 +09:00
YeonGyu-Kim
61ea99a72b
fix(process-cleanup): add test seam to prevent process.exitCode contaminating bun runner
...
fix(process-cleanup): isolate test to prevent process.exitCode leaking into shared batch CI
2026-05-05 19:09:19 +09:00
YeonGyu-Kim
32fab88d68
fix(process-cleanup): add test seam to prevent process.exitCode contaminating bun runner
...
scheduleForcedExit() sets process.exitCode which taints the bun test runner's
own exit code for the entire suite. This caused CI to fail even though all
tests passed individually.
Fix:
- Add __disableScheduledForcedExitForTesting / __enableScheduledForcedExitForTesting
seams to skip scheduleForcedExit() during tests
- beforeEach disables forced exit; afterEach re-enables
- The 'fallback exit timer' test explicitly re-enables to verify setTimeout/clearTimeout
- Remove process.exitCode and exitSpy assertions that required forced exit to be active
(shutdown call counts are sufficient to verify behavior)
2026-05-05 19:04:40 +09:00
YeonGyu-Kim
ad535cd29d
fix(process-cleanup): isolate test and avoid checking process.exitCode directly
...
The test file modifies process.exitCode and emits process signals which can
leak into bun test's exit code. Add:
1. mock.module() sentinel to route to isolated batch (following abort-with-timeout.test.ts pattern)
2. Global afterAll() hook that resets process.exitCode = 0 before test runner checks it
3. Remove direct checks of process.exitCode in assertions - only check that process.exit() was called with the right code via spy
This ensures bun test exits with code 0 even after tests verify process.exit behavior.
Fixes #3792
2026-05-05 05:15:59 +09:00
YeonGyu-Kim
45452a039c
Merge pull request #3731 from yizhifengye/fix/process-cleanup-infinite-loop-epipe
...
fix(background-agent): detach error listener before running body to s…
2026-05-05 04:24:01 +09:00
YeonGyu-Kim
fd62f5b072
Merge pull request #3639 from auyua9/fix/fatal-cleanup-exit
...
fix(background): exit after fatal cleanup
2026-05-05 04:15:50 +09:00
YeonGyu-Kim
ef7ac52286
Merge pull request #3771 from tw-yshuang/fix/atlas-pending-continuation-race
...
fix(atlas): block continuation while delegated tasks are pending
2026-05-05 04:15:46 +09:00
YeonGyu-Kim
b43f849fb4
Merge pull request #3791 from code-yeongyu/fix/parentSessionId-typo
...
fix(background-agent): fix parentSessionID -> parentSessionId typo causing TS build failure
2026-05-05 04:05:19 +09:00
YeonGyu-Kim
6323fa8ef9
fix(background-agent): fix parentSessionID -> parentSessionId typo causing TS build failure
...
Property 'parentSessionID' does not exist on type 'LaunchInput' / 'BackgroundTask'.
The correct casing is 'parentSessionId' (camelCase with lowercase 'd').
Fixes CI build failure on dev branch.
2026-05-05 03:53:44 +09:00
github-actions[bot]
a63d6e326e
@brooksbUWO has signed the CLA in code-yeongyu/oh-my-openagent#3790
2026-05-04 18:36:14 +00:00
YeonGyu-Kim
e699f3388d
Merge pull request #3455 from CHLK/fix/cli-run-premature-exit-with-background-tasks
...
fix(cli-run): prevent premature exit when background tasks are active
2026-05-04 23:58:34 +09:00
YeonGyu-Kim
9c8aab9f22
Merge pull request #3420 from grandmaster451/fix-version-comparison
...
fix(auto-update): use semantic version comparison instead of string e…
2026-05-04 23:58:26 +09:00
YeonGyu-Kim
8c8522ee72
Merge pull request #3415 from lightrabbit/fix/skill-mcp-stdio-cwd
...
fix(skill-mcp): pass workspace directory as cwd to stdio MCP processes
2026-05-04 23:58:22 +09:00
YeonGyu-Kim
7b28298b2a
Merge pull request #3414 from garnetlyx/fix/sandbox-cache-availability-check
...
fix: use in-process flag instead of existsSync for cache availability
2026-05-04 23:58:19 +09:00
github-actions[bot]
8fbb4523f9
@Biemmmmm has signed the CLA in code-yeongyu/oh-my-openagent#3785
2026-05-04 12:04:21 +00:00
github-actions[bot]
6b9731923d
release: v3.17.13
2026-05-04 07:42:32 +00:00
YeonGyu-Kim
fa255e14c6
test(create-managers): align openclaw mock with refactored BackgroundManager config object
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-04 16:30:23 +09:00
YeonGyu-Kim
dd4166cb57
test(session-notification): provide chainable Bun shell mock for sender tests
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-04 16:30:23 +09:00
YeonGyu-Kim
ce5bcd1d9b
test(call-omo-agent): align background task fixtures with normalized field names
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-04 16:30:23 +09:00
YeonGyu-Kim
63170f4dd8
test(lsp): use named tmpdir import to avoid node:os mock leak
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-04 16:30:23 +09:00
YeonGyu-Kim
4e763fb0cb
test(team-mode/team-worktree): use named tmpdir import to avoid mock leak
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-04 16:30:23 +09:00
YeonGyu-Kim
700ba1e541
test(unstable-agent-babysitter): align task fixture with sessionId field
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-04 16:30:06 +09:00
YeonGyu-Kim
7fefb59a06
test(stop-continuation-guard): rename parentSessionId/parentMessageId in task fixture
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-04 16:30:06 +09:00
YeonGyu-Kim
65c1b50946
test(background-agent): align manager test fixtures with normalized field names
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-04 16:30:06 +09:00
YeonGyu-Kim
3ae9f5f104
fix(background-agent): prevent false task completion on status API outage
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-04 16:30:06 +09:00
YeonGyu-Kim
4f32ecd7de
test(deps): avoid Bun-specific path metadata
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-04 02:10:57 +09:00
YeonGyu-Kim
1045354776
test(deps): cover picomatch security floor
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-04 02:09:45 +09:00
YeonGyu-Kim
fe9b71635c
fix(deps): bump picomatch to patched release
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-04 02:09:45 +09:00
YeonGyu-Kim
1a881b374e
test(agents): cover OpenCode Agent.list sort with runtime-name prefixes
...
🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode )
2026-05-04 01:44:07 +09:00
YeonGyu-Kim
81d36ae749
test(cli-installer): cover telemetry shutdown failure isolation
...
🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode )
2026-05-04 01:44:04 +09:00
YeonGyu-Kim
e395eadfa4
feat(ralph-loop): add loop session recovery state tracker
...
🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode )
2026-05-04 01:44:01 +09:00
YeonGyu-Kim
6a8bdcaa25
feat(team-mode): add resolveCallerTeamLead helper
...
🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode )
2026-05-04 01:43:55 +09:00
github-actions[bot]
9ba3b574a7
@tw-yshuang has signed the CLA in code-yeongyu/oh-my-openagent#3771
2026-05-03 09:43:40 +00:00
github-actions[bot]
9f60eaee16
@netizenXuan has signed the CLA in code-yeongyu/oh-my-openagent#3770
2026-05-03 09:38:17 +00:00
tw-yshuang
56e4044927
fix(atlas): block continuation while delegated tasks are pending
...
Atlas continuation only treated running background tasks as active work. When a delegated subagent had been launched but was still waiting for session creation, the task remained pending and Atlas could inject another continuation too early.
Treat pending tasks as active background work in the continuation injector and add regression coverage for the pending-session-creation race so delegated work is allowed to acquire a session before Atlas resumes the plan.
Tests: bun test src/hooks/atlas/boulder-continuation-injector.test.ts src/hooks/atlas/index.test.ts; bun run typecheck
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-03 17:24:46 +08:00
github-actions[bot]
6c51eac8bf
@claudianus has signed the CLA in code-yeongyu/oh-my-openagent#3767
2026-05-02 23:44:40 +00:00
YeonGyu-Kim
e17850cbab
Merge pull request #3754 from code-yeongyu/refactor/background-task-naming-cleanup
...
refactor(background-agent): normalize task ID field naming to camelCase
2026-05-02 03:03:21 +09:00
YeonGyu-Kim
da251c9b30
refactor(background-agent): normalize task ID field naming
...
Rename BackgroundTask and attempt ID fields to camelCase across background-agent consumers while moving BackgroundManager construction to a single config object.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-02 03:01:03 +09:00
github-actions[bot]
054ade9ced
@nerored has signed the CLA in code-yeongyu/oh-my-openagent#3752
2026-05-01 16:41:09 +00:00
YeonGyu-Kim
1eadc26e91
Merge pull request #3750 from code-yeongyu/fix/posthog-keep-only-dau
...
fix(telemetry): keep only omo_daily_active for DAU/WAU/MAU
2026-05-02 00:43:43 +09:00
YeonGyu-Kim
425d0300fc
docs(privacy): drop diagnostics retention reference (no diagnostics events collected)
2026-05-02 00:37:07 +09:00
YeonGyu-Kim
0d89294a91
docs(telemetry): align README + installation guide + privacy policy with single-event scope
2026-05-02 00:32:08 +09:00
YeonGyu-Kim
d8d061c2b0
docs(privacy): narrow telemetry scope to omo_daily_active only
2026-05-02 00:11:03 +09:00
YeonGyu-Kim
92dab9285c
refactor(telemetry): narrow PostHog client and mark omo_daily_active anonymous
2026-05-02 00:11:01 +09:00
YeonGyu-Kim
b8a5f27dee
refactor(telemetry): drop plugin_loaded capture from plugin entry
2026-05-02 00:10:59 +09:00
YeonGyu-Kim
14568db278
refactor(telemetry): drop run lifecycle events and captureException from runner
2026-05-02 00:10:57 +09:00
YeonGyu-Kim
be2eee6306
refactor(telemetry): drop install events from cli-installer
2026-05-02 00:10:54 +09:00
YeonGyu-Kim
468e42f57e
Merge pull request #3749 from code-yeongyu/fix/readonly-agent-delegation
...
fix(agents): allow Momus and Metis delegation
2026-05-01 19:32:11 +09:00