kiranmagic7
cc97eca9b1
test(installer): keep Node floor tied to package engine
...
Adds a focused installer regression test tying install.sh's accepted Node 22 floor to the package engine floor. Thanks @kiranmagic7.
2026-05-31 21:32:00 -04:00
Vincent Koc
2d0c755013
fix(test): order unit-fast fake-timer project
2026-06-01 02:24:48 +01:00
Peter Steinberger
5443baa852
Persist plugin install index in SQLite ( #88794 )
...
* refactor: persist plugin install index in sqlite
* fix: merge legacy plugin index records into sqlite
* test: update plugin index sqlite fixtures
* fix: migrate custom plugin install indexes
* test: update plugin index sentinel
* fix: exclude migrated plugin index archives
* fix: read post-upgrade plugin index from sqlite
* fix: migrate legacy plugin index before agent runs
* fix: respect disabled persisted plugin registry reads
* test: type plugin install record fixtures
* fix: simplify plugin index record reader type
* test: fix sqlite plugin index CI fallout
* test: mock provider normalization in agent command tests
# Conflicts:
# src/commands/agent-command.test-mocks.ts
* build: remove unused ui three dependency
2026-05-31 20:51:33 -04:00
Peter Steinberger
27dde7a4d6
chore(lint): enable stricter error rules
2026-06-01 01:12:21 +01:00
Vincent Koc
0bfba7e26d
fix(ui): detect system chromium for e2e
2026-06-01 01:09:46 +01:00
Vincent Koc
ddbd16a04a
fix(ui): honor chromium executable override
2026-06-01 00:20:10 +01:00
Vincent Koc
16ef9c1435
fix(ci): use reliable Azure Crabbox capacity
2026-06-01 00:38:11 +02:00
Peter Steinberger
22cb7fb6b7
chore(lint): enable no-promise-executor-return
2026-05-31 23:06:13 +01:00
Peter Steinberger
b653d94918
chore(lint): enable no-useless-assignment
2026-05-31 22:40:48 +01:00
Peter Steinberger
e681569536
feat: add code-mode MCP API files
...
* feat: add code-mode MCP API files
* fix: satisfy code-mode MCP lint
2026-05-31 21:29:06 +01:00
Peter Steinberger
92b9cd21ec
test: avoid positional CI check assertion
2026-05-31 16:00:04 -04:00
Peter Steinberger
d62bfab946
ci: split startup and shrinkwrap checks
2026-05-31 15:55:43 -04:00
Peter Steinberger
b4a6244ef4
ci: split agents core test shard
2026-05-31 15:35:36 -04:00
WT-WSL
462b52f62c
fix(ci): guard workflow template injection
...
Guard the remaining Windows Testbox workflow ref logging against GitHub Actions template injection by moving `target_ref` through step env before PowerShell reads it.
Extend the local workflow check wrapper to run pinned `zizmor` across every workflow file, and keep Workflow Sanity's CI audit explicit with trusted-base pre-commit and zizmor configs for pull-request runs.
Thanks @WT-WSL for the original report and patch.
Co-authored-by: dev111-actor <captaintobb@outlook.com >
2026-05-31 20:28:40 +01:00
Vincent Koc
f983111166
perf(scripts): parallelize test group reports
2026-05-31 20:32:54 +02:00
Vincent Koc
db0209ac5d
perf(scripts): parallelize remote core oxlint shards
2026-05-31 20:01:41 +02:00
Peter Steinberger
304e2c83c0
chore(lint): enable stricter oxlint rules
2026-05-31 18:59:02 +01:00
Vincent Koc
a3fa5b6577
test(vitest): classify Crabbox shared dependencies
2026-05-31 19:31:17 +02:00
Peter Steinberger
33c246dbba
refactor: move plugin state slices to sqlite
...
* refactor: move plugin state slices to sqlite
* fix: keep legacy plugin state migration out of runtime
* fix: add doctor migrations for plugin sqlite state
* fix: preserve teams feedback learning migration keys
* fix: merge teams legacy feedback learnings
* fix: guard doctor imports against plugin state caps
* fix: leave lossy teams learning filenames unmigrated
* fix: preserve teams feedback learning scope
* fix: load plugin doctor contracts from package dist
* fix: satisfy plugin state migration gates
2026-05-31 18:09:27 +01:00
Peter Steinberger
f80a1e9e85
refactor: clean up ACP translator and manager tests ( #88677 )
...
* test: split ACP translator bridge coverage
* refactor: extract ACP translator session helpers
* refactor: extract ACP manager backend failover helpers
* test: split ACP manager failover coverage
* test: split ACP manager runtime config coverage
* test: split ACP manager turn result coverage
* test: split ACP manager runtime handle coverage
* test: keep ACP manager helpers within task boundaries
* ci: split gateway runtime state test shard
2026-05-31 18:04:28 +01:00
Vincent Koc
dd79c8836a
perf(scripts): parallelize startup metadata help rendering
2026-05-31 18:35:01 +02:00
samzong
5b310a7b27
fix(agents): release abandoned provider streams
...
Fix streamed provider cleanup so abandoned managed fetch bodies no longer keep undici sockets open, and cancel Anthropic/Gemini SSE readers deterministically when parsing exits early.
Keep the FinalizationRegistry abort path as a last-resort GC safety net for unmanaged/abandoned responses, while parser-owned paths cancel readers explicitly on thrown errors or malformed events.
Also records the browser-only Control UI redactor alias in the optional deadcode allowlist and keeps mocked exec supervisor tests off shell snapshot wrapping after the branch was rebased onto default shell snapshots.
Fixes #67461
Verification:
- node scripts/run-vitest.mjs src/agents/provider-transport-fetch.test.ts src/agents/anthropic-transport-stream.test.ts extensions/google/transport-stream.test.ts src/agents/bash-tools.test.ts src/agents/bash-tools.exec.path.test.ts test/scripts/test-live-shard.test.ts
- pnpm check:test-types
- node scripts/run-oxlint-shards.mjs --threads=8
- .agents/skills/autoreview/scripts/autoreview --mode branch --base origin/main --parallel-tests "node scripts/run-vitest.mjs src/agents/provider-transport-fetch.test.ts src/agents/anthropic-transport-stream.test.ts extensions/google/transport-stream.test.ts src/agents/bash-tools.test.ts src/agents/bash-tools.exec.path.test.ts test/scripts/test-live-shard.test.ts"
- git diff --check origin/main...HEAD
- PR CI on a1db789652
Co-authored-by: samzong <samzong.lu@gmail.com >
Signed-off-by: samzong <samzong.lu@gmail.com >
2026-05-31 17:17:53 +01:00
Peter Steinberger
4ef141d525
fix(agents): prevent embedded runtime shadowing
2026-05-31 16:13:01 +01:00
Peter Steinberger
7b78941ea5
refactor: clean up ACP package metadata and helpers ( #88659 )
...
* refactor: derive acp core package subpath maps
* refactor: split acp manager task and timeout helpers
* refactor: split acp translator presentation helpers
* fix: keep packaged acp core plugin aliases
* ci: split gateway control plane runtime shard
2026-05-31 15:53:14 +01:00
Peter Steinberger
d1bec469af
ci: stabilize Testbox changed checks
2026-05-31 15:34:23 +01:00
Peter Steinberger
d99934aacd
ci: use normal node_modules for Blacksmith Testbox
2026-05-31 15:04:49 +01:00
Vincent Koc
0833c68b1b
fix(e2e): show plugins docker sweep progress
2026-05-31 15:57:19 +02:00
Peter Steinberger
7dea283756
refactor: expand acp core package ( #88618 )
...
* refactor: expand acp core package
* chore: drop acp core package symlink
* fix: keep acp core dependency graph stable
* fix: add acp core tsconfig subpaths
* fix: sync acp core boundary path artifacts
* fix: use kysely for cron run-log queries
* fix: resolve acp core subpaths in loaders
2026-05-31 14:48:57 +01:00
yaoyi1222
75e0053cf9
fix(auto-reply): warn on substantive private message-tool finals
...
Warn operators when message_tool_only produces unusually substantive private final text without a delivered source reply. Keeps short/NO_REPLY silence quiet, avoids logging response bodies, and distinguishes unrelated side effects from source-reply delivery.
2026-05-31 14:35:58 +01:00
Vincent Koc
fbde572491
fix(e2e): heartbeat resource-sampled docker lanes
2026-05-31 15:22:44 +02:00
Peter Steinberger
100dd79468
test(release): wait for bundled runtime commands
2026-05-31 14:09:27 +01:00
Peter Steinberger
7423e9cb66
refactor(openai): confine legacy codex repair to doctor
...
Confine retired OpenAI Codex identifiers to doctor repair and migration paths while keeping runtime OpenAI surfaces canonical.\n\nProof: focused Vitest; autoreview clean; AWS Crabbox check:changed run_3789cbe12413 (cbx_2c88b700810b) passed.
2026-05-31 14:03:17 +01:00
Peter Steinberger
f83886c12d
chore(lint): trim remaining suppressions
2026-05-31 13:01:19 +01:00
Ayaan Zaidi
4de9b79d30
refactor(agents): simplify stale cli retry cleanup
2026-05-31 17:28:05 +05:30
brokemac79
afe9826fc1
Stabilize lint suppression guard in CI
2026-05-31 17:28:05 +05:30
Peter Steinberger
00d17e9df7
refactor: make OpenAI Codex legacy doctor-only ( #88605 )
2026-05-31 12:58:01 +01:00
Vincent Koc
823c38a1f9
fix(e2e): keep plugin binding escape smoke focused
2026-05-31 13:37:41 +02:00
Peter Steinberger
2bd07eead7
Refactor cron SQLite runtime paths ( #88582 )
...
* refactor: clean cron sqlite runtime paths
* fix: preserve legacy cron sqlite delivery migration
* fix: keep legacy cron notify fallback for invalid webhooks
* test: handle packaged lint suppression files
* fix: keep invalid cron notify migrations retryable
* test: fix ui timer lint
2026-05-31 12:14:48 +01:00
Peter Steinberger
77f1359612
refactor: extract media and ACP core packages ( #88534 )
...
* refactor: extract media and acp core packages
* refactor: remove relocated media and acp sources
* build: wire new core packages into dependency checks
* test: alias new core packages in vitest
* build: keep media sniffer runtime dependency
* docs: refresh plugin sdk api baseline
* fix: keep normalized proposal queries non-empty
* test: keep channel timer tests isolated
* fix: keep rebased plugin checks green
* fix: preserve sms numeric allowlist entries
* test: harden exec foreground timeout failure
* test: remove duplicate skill workshop assertion
* fix: remove channel config lint suppression
* test: refresh lint suppression allowlist
2026-05-31 11:30:33 +01:00
Soham Patankar
4f3d8a57dd
fix(codex): accept first-party OpenAI plugin marketplaces
...
Allow Codex native plugin config to target first-party OpenAI marketplaces, including openai-curated, openai-bundled, and openai-primary-runtime.
Fixes #82216 .
Thanks @yaanfpv for the contribution.
Verification:
- node scripts/run-vitest.mjs test/scripts/lint-suppressions.test.ts
- pnpm build:ci-artifacts
- OPENCLAW_VITEST_MAX_WORKERS=2 node scripts/run-vitest.mjs run --config test/vitest/vitest.full-core-support-boundary.config.ts test/scripts/lint-suppressions.test.ts
- node scripts/run-vitest.mjs extensions/codex/src/app-server/config.test.ts extensions/codex/src/app-server/plugin-activation.test.ts extensions/codex/src/app-server/session-binding.test.ts extensions/codex/src/migration/provider.test.ts extensions/sms/src/channel.test.ts extensions/sms/src/inbound.test.ts
- git diff --check
- ./.agents/skills/autoreview/scripts/autoreview --mode local
- GitHub PR CI on head 896640060b , including build-artifacts run 26709647050
2026-05-31 11:08:42 +01:00
Vincent Koc
a753e6bc86
fix(test): extend e2e vitest watchdog
2026-05-31 11:50:18 +02:00
Peter Steinberger
3950605561
chore(lint): tighten lint exception coverage
2026-05-31 10:42:59 +01:00
Evan Newman
a0d2febe6b
fix(scripts): timeout crabbox wrapper sanity checks
...
Add bounded timeouts for Crabbox wrapper sanity probes so a stale or hung selected binary cannot block the wrapper indefinitely. The wrapper now maps timed-out sanity probes to a deterministic failure and keeps provider/help parsing behavior intact.
Also add regression coverage for a binary whose `--version` probe hangs while `run --help` still responds.
Co-authored-by: Evan Newman <evanjames010101@gmail.com >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-05-31 10:29:12 +01:00
Peter Steinberger
f5eca3f84c
chore(lint): enable object and reassignment rules
2026-05-31 09:32:52 +01:00
Peter Steinberger
d4f78c9339
ci: harden Crabbox Testbox runs
2026-05-31 09:29:56 +01:00
Peter Steinberger
b81adc6202
fix(ci): keep unsafe assertion lint disabled
2026-05-31 04:09:48 -04:00
Peter Steinberger
b78dd6a9ca
test: remove channel test isolation hack
...
Remove isolate: true from the channel Vitest config and fix the leaking fake-timer/mock tests so the lane runs under the shared non-isolated runner. Verified with focused scoped-config/channel tests, the full channel Vitest config, git diff --check, and branch-mode autoreview.
2026-05-31 09:09:10 +01:00
Peter Steinberger
48ccc50282
chore: update dependencies
2026-05-31 09:07:53 +01:00
Peter Steinberger
59694e86d9
chore(lint): enable structured clone rules
2026-05-31 08:34:28 +01:00
Peter Steinberger
930b371a2f
refactor(telegram): persist plugin state in sqlite
...
Move Telegram plugin-local state from JSON sidecars into plugin-state SQLite. Keep legacy JSON handling in startup and doctor migration plans, with runtime state now reading and writing SQLite directly. Stabilize the channel Vitest lane by cleaning up typing timers and isolating that lane.
2026-05-31 08:28:53 +01:00