Commit Graph

898 Commits

Author SHA1 Message Date
Vincent Koc e1d4c38cee fix(runtime): skip peer resolution for bundled plugin deps 2026-03-22 22:47:46 -07:00
Vincent Koc fd5555d5be fix(runtime): make dist-runtime staging idempotent 2026-03-22 22:41:27 -07:00
Peter Steinberger af9de86286 perf: trim vitest hot imports and refresh manifests 2026-03-23 05:25:05 +00:00
Peter Steinberger 7fcbf383d8
fix(ci): write dist build stamp after builds 2026-03-22 22:23:25 -07:00
Peter Steinberger 6b9915a106
refactor!: drop legacy CLAWDBOT env compatibility 2026-03-22 22:13:39 -07:00
Peter Steinberger 827c441902 fix(test): isolate flaky extension lanes 2026-03-23 05:02:07 +00:00
Peter Steinberger 7818344f82 fix(ci): harden changed extension diff fallback 2026-03-23 04:41:54 +00:00
Vincent Koc f69062c16e fix(plugin-sdk): export line runtime subpath 2026-03-22 20:39:16 -07:00
Vincent Koc 3ad652fa9e fix(build): restore plugin-sdk and line compat after refactor 2026-03-22 19:37:27 -07:00
Peter Steinberger 96d61aa50c
refactor: harden generated-file guards and provider ids 2026-03-22 19:08:08 -07:00
Peter Steinberger 562e4a1791 refactor(outbound): split delivery queue storage and recovery 2026-03-23 01:57:56 +00:00
Peter Steinberger f56edd62f0 fix: export provider-entry plugin sdk subpath 2026-03-23 01:56:01 +00:00
Vincent Koc 3f002feffb fix(plugins): remove metadata generator conflict markers 2026-03-22 18:46:51 -07:00
Vincent Koc a59db4c9f4 fix(plugins): make metadata generator formatter portable 2026-03-22 18:41:13 -07:00
Peter Steinberger 2dd3425584 fix(ci): restore delivery queue branch checks 2026-03-22 18:39:24 -07:00
Vincent Koc 0f54ca20aa refactor(image-generation): move provider builders into plugins 2026-03-22 17:57:31 -07:00
Vincent Koc de6bf58e79 refactor(tts): move speech providers into plugins 2026-03-22 17:48:59 -07:00
Vincent Koc ac6542584b fix(ci): unblock windows generator and gateway test typing 2026-03-22 17:42:28 -07:00
Peter Steinberger bca7787f92 style: fix rebased format drift 2026-03-22 23:26:21 +00:00
Peter Steinberger 60273758f8 fix(ci): use Windows-safe formatter spawn 2026-03-22 23:24:29 +00:00
Peter Steinberger d0f5e7cb2d
test: simplify vitest runner pools 2026-03-22 16:22:09 -07:00
Vincent Koc 091b811a61 fix(ci): lazy-load TypeScript in ts guard utils 2026-03-22 16:04:55 -07:00
Peter Steinberger e0af23106c ci: fix workflow sanity gate 2026-03-22 23:04:04 +00:00
Peter Steinberger 1ad47b8fa1 test: harden path resolution test helpers 2026-03-22 22:47:58 +00:00
Peter Steinberger d91913c207 test: fix windows bundled metadata generation 2026-03-22 22:47:35 +00:00
Peter Steinberger d907ebffc5
perf: trim vitest thread overrides 2026-03-22 15:25:58 -07:00
Peter Steinberger 29c0e783b1
refactor: rename vitest behavior lanes 2026-03-22 14:36:57 -07:00
Peter Steinberger f0dc42a9c5 test: improve parallels smoke defaults 2026-03-22 21:35:02 +00:00
Peter Steinberger 2773f33084
test: stabilize vitest no-isolate suites 2026-03-22 14:28:43 -07:00
Peter Steinberger ca99163b98 perf: precompute base config schema 2026-03-22 21:28:16 +00:00
Peter Steinberger 171b24c5c5 perf: generate bundled plugin metadata for cold startup 2026-03-22 21:28:16 +00:00
Peter Steinberger cf8891a824 fix: stabilize docker live test lanes 2026-03-22 20:07:27 +00:00
Vincent Koc 4bd90f24d1
perf(ci): gate install smoke on changed-smoke (#52458) 2026-03-22 12:58:08 -07:00
Vincent Koc 66beff726b
perf(ci): trim install smoke overhead (#52447)
* perf(ci): trim install smoke overhead

* perf(ci): skip discord opus native build noise

* fix(ci): use npm latest dist-tag in install smoke
2026-03-22 12:44:47 -07:00
Vincent Koc dbd26e49f1
fix(test): reduce startup-heavy hotspot retention (#52381) 2026-03-22 12:28:55 -07:00
Peter Steinberger e39d5b9ef8
perf: default unit vitest lanes to threads 2026-03-22 12:25:51 -07:00
Peter Steinberger 8e09568bc7
perf: expand base vitest thread lanes 2026-03-22 11:59:38 -07:00
Peter Steinberger 95ae8aabb7
perf: expand vitest thread lanes 2026-03-22 11:26:38 -07:00
Peter Steinberger b44152fcc8
perf: automate vitest thread candidate scans 2026-03-22 11:19:10 -07:00
Peter Steinberger 1ceaad18a6
test: harden vitest no-isolate coverage 2026-03-22 10:48:21 -07:00
Peter Steinberger 3fa2300ba1 perf: reduce plugin runtime startup overhead 2026-03-22 16:34:09 +00:00
Bob 4f1e12a2b1
Docs: prototype generated plugin SDK reference (#51877)
* Chore: unblock synced main checks

* Docs: add plugin SDK docs implementation plan

* Docs: scaffold plugin SDK reference phase 1

* Docs: mark plugin SDK reference surfaces unstable

* Docs: prototype generated plugin SDK reference

* docs(plugin-sdk): replace generated reference with api baseline

* docs(plugin-sdk): drop generated reference plan

* docs(plugin-sdk): align api baseline flow with config docs

---------

Co-authored-by: Onur <2453968+osolmaz@users.noreply.github.com>
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-03-22 09:19:00 -07:00
Vincent Koc 3ce5a8366a
fix(plugins): enforce minimum host versions for installable plugins (#52094)
* fix(plugins): enforce min host versions

* fix(plugins): tighten min host version validation

* chore(plugins): trim dead min host version code

* fix(plugins): handle malformed min host metadata

* fix(plugins): key manifest cache by host version
2026-03-22 09:12:08 -07:00
Peter Steinberger 3382ef2724 perf: reduce plugin runtime startup overhead 2026-03-22 09:35:36 +00:00
Peter Steinberger d81772dbc7 test: trim import-heavy startup paths 2026-03-22 02:11:43 +00:00
Tak Hoffman d6c05c1941
ci: surface hidden failures in smoke helpers (#51954)
* ci: surface hidden failures in smoke helpers

* changelog: add ci smoke failure-signal note
2026-03-21 20:21:48 -05:00
Vincent Koc 2b4c3c2057
fix(plugin-sdk): remove relative extension boundary escapes (#51939)
* fix(plugin-sdk): remove relative extension boundary escapes

* Gate new plugin-sdk subpaths on host version

* Add changelog entry for #51939

* Fix local staging for plugin-sdk host version gate

* Raise host floor for line and googlechat plugins

---------

Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com>
2026-03-21 20:03:18 -05:00
Peter Steinberger d0d82ea67b test: trim import-heavy startup paths 2026-03-22 00:53:12 +00:00
Vincent Koc 45f84cf639 fix(test): normalize path separators [skip ci] 2026-03-21 17:33:35 -07:00
Peter Steinberger 37d5cbe43a test: trim test startup overhead 2026-03-21 23:30:51 +00:00
Peter Steinberger a622eecd3b refactor(test): dedupe shared test helpers 2026-03-21 23:07:51 +00:00
Vincent Koc 5069c771e7
fix(test): recycle unit-fast CI batches (#51884)
* fix(test): recycle unit-fast ci batches

* refactor(config): narrow discord timeout import

* test(outbound): lighten target plugin stubs

* refactor(auth): narrow env api key resolution

* docs(auth): restore anthropic vertex sentinel comment
2026-03-21 14:56:29 -07:00
Peter Steinberger c29ba9d21a fix(docs): handle anchors in docs link audit 2026-03-21 19:58:36 +00:00
Jari Mustonen fd2b3ed6af
feat(memory): pluggable system prompt section for memory plugins (#40126)
Merged via squash.

Prepared head SHA: 5228d1937f
Co-authored-by: jarimustonen <1272053+jarimustonen@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-21 11:20:45 -07:00
Harold Hunt e24bf22f98
Fix Discord `/codex_resume` picker expiration (#51260)
Merged via squash.

Prepared head SHA: 76eb184dbe
Co-authored-by: huntharo <5617868+huntharo@users.noreply.github.com>
Co-authored-by: huntharo <5617868+huntharo@users.noreply.github.com>
Reviewed-by: @huntharo
2026-03-21 12:59:21 -04:00
Peter Steinberger 0a842de354 test: widen low-profile singleton batching 2026-03-20 23:02:33 +00:00
Josh Lehman 2364e45fe4
test: align extension runtime mocks with plugin-sdk (#51289)
* test: align extension runtime mocks with plugin-sdk

Update stale extension tests to mock the plugin-sdk runtime barrels that production code now imports, and harden the Signal tool-result harness around system-event assertions so the channels lane matches current extension boundaries.

Regeneration-Prompt: |
  Verify the failing channels-lane tests against current origin/main in an isolated worktree before changing anything. If the failures reproduce on main, keep the fix test-only unless production behavior is clearly wrong. Recent extension refactors moved Telegram, WhatsApp, and Signal code onto plugin-sdk runtime barrels, so update stale tests that still mock old core module paths to intercept the seams production code now uses. For Signal reaction notifications, avoid brittle assertions that depend on shared queued system-event state when a direct harness spy on enqueue behavior is sufficient. Preserve scope: only touch the failing tests and their local harness, then rerun the reproduced targeted tests plus the full channels lane and repo check gate.

* test: fix extension test drift on main

* fix: lazy-load bundled web search plugin registry

* test: make matrix sweeper failure injection portable

* fix: split heavy matrix runtime-api seams

* fix: simplify bundled web search id lookup

* test: tolerate windows env key casing
2026-03-20 15:59:53 -07:00
Peter Steinberger fac64c2392 test: widen unit timing snapshot coverage 2026-03-20 22:33:49 +00:00
Peter Steinberger 39a4fe576d test: normalize perf manifest paths 2026-03-20 22:06:46 +00:00
Peter Steinberger cadbaa34c1 test: widen low-profile scheduler peeling 2026-03-20 21:30:44 +00:00
Peter Steinberger aed1f6d807 test: parallelize low-profile deferred lanes 2026-03-20 21:07:56 +00:00
Peter Steinberger 09cf6d80ec test: batch thread-only unit lanes 2026-03-20 20:51:38 +00:00
Peter Steinberger fa71ad7c5d test: repair latest-main web search regressions 2026-03-20 20:17:11 +00:00
Peter Steinberger 1b18742e8e test: peel more slow unit files out of unit-fast 2026-03-20 20:04:52 +00:00
Peter Steinberger 62ddc9d9e0 refactor: consolidate plugin sdk surface 2026-03-20 19:24:10 +00:00
Vincent Koc 42801f6178 fix(plugin-sdk): dedupe rebased zalo export entries 2026-03-20 10:38:55 -07:00
Vincent Koc a2e1991ed3 refactor(plugin-sdk): route bundled runtime barrels through public subpaths 2026-03-20 10:38:55 -07:00
Harold Hunt 4838e3934b
Tests: default CI unit lanes to forks (#51145) 2026-03-20 13:15:55 -04:00
Peter Steinberger 85a5d64d8f test: speed up isolated test lanes 2026-03-20 17:11:23 +00:00
Peter Steinberger 18fa2992f9 fix: restore plugin sdk runtime barrels 2026-03-20 16:46:34 +00:00
Vincent Koc aa78a0c00e refactor(plugin-sdk): formalize runtime contract barrels 2026-03-20 09:30:34 -07:00
Vincent Koc dbc9d3dd70 fix(plugin-sdk): restore root diagnostic compat 2026-03-20 09:27:37 -07:00
Peter Steinberger 50ce9ac1c6 refactor: privatize bundled sdk facades 2026-03-20 15:56:14 +00:00
Peter Steinberger f6948ce405 refactor: shrink sdk helper surfaces 2026-03-20 15:43:14 +00:00
Vincent Koc faa8e27291 fix(ci): share compat matrix and restore skill python gating 2026-03-20 00:27:50 -07:00
Vincent Koc ce878a9eb1 fix(test): batch unit-fast worker lifetimes 2026-03-19 23:30:48 -07:00
Shakker 94ab044387 fix(ci): split unit-fast into bounded shared-worker lanes 2026-03-20 06:13:27 +00:00
Shakker b90eef50ec fix(ci): widen Linux memory-hotspot isolation cap 2026-03-20 06:13:27 +00:00
Shakker 829beced04 fix(ci): avoid Windows shell arg overflow in unit-fast 2026-03-20 06:13:27 +00:00
Shakker d689b3fc89 fix(ci): prioritize memory-heavy unit scheduling 2026-03-20 06:13:27 +00:00
Shakker 254ea0c65e fix(ci): parse GitHub Actions memory hotspot logs 2026-03-20 06:13:27 +00:00
Shakker 9c7da58770 fix(ci): auto-isolate memory-heavy unit tests 2026-03-20 06:13:27 +00:00
Shakker ac18a734ac
fix(ci): cap top-level test lane concurrency 2026-03-20 01:36:12 +00:00
Vincent Koc c38295c7a2 test(ci): tighten startup memory thresholds 2026-03-19 16:28:00 -07:00
Vincent Koc 9486f6e379 fix(build): suppress singleton smoke deprecation noise 2026-03-19 16:07:53 -07:00
Vincent Koc bbfeb0b6f9 fix(ci): cache node in install smoke image 2026-03-19 15:38:16 -07:00
Vincent Koc a245916dcb fix(ci): repair test-parallel heap snapshot parsing 2026-03-19 15:25:29 -07:00
Josh Lehman 35bc00c55b
test: reduce low-memory Vitest pressure (#50652)
* test: reduce low-memory Vitest pressure

Reuse the bundled config baseline inside doc-baseline tests, keep that hotspot out of the shared unit-fast lane, and make OPENCLAW_TEST_PROFILE=low default to process forks instead of vmForks.

* test: keep low-profile vmForks in CI

Scope the low-profile forks fallback to local runs so the existing CI contracts lane keeps its current pool behavior.
2026-03-19 15:02:48 -07:00
Harold Hunt bbd62469fa
Tests: Add tooling / skill for detecting and fixing memory leaks in tests (#50654)
* Tests: add periodic heap snapshot tooling

* Skills: add test heap leak workflow

* Apply suggestion from @greptile-apps[bot]

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* Update scripts/test-parallel.mjs

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-03-19 14:59:13 -07:00
Vincent Koc 98298f7931 fix(ci): trace test runner memory retention 2026-03-19 14:02:19 -07:00
Vincent Koc a94e21e0a7 docs(install): update container setup paths 2026-03-19 13:40:26 -07:00
Vincent Koc 46ccbacbd9 refactor(scripts): move container setup entrypoints 2026-03-19 13:40:26 -07:00
Vincent Koc 3b79494cbf fix(runtime): lazy-load setup shims and align contracts 2026-03-19 13:33:32 -07:00
Vincent Koc feb9a3b5b2 fix(ci): harden test gating under load 2026-03-19 11:08:33 -07:00
Vincent Koc 51519b4086 fix(ci): fail on fatal test runner output 2026-03-19 11:08:33 -07:00
Tak Hoffman fb18034011
test: add macmini test profile 2026-03-19 10:29:39 -05:00
Peter Steinberger 22943f24a9 refactor: prune bundled sdk facades 2026-03-19 07:17:04 +00:00
Tak Hoffman 5b7b5529f1
Plugins: remove shared extension boundary debt 2026-03-18 22:58:40 -05:00
Peter Steinberger b7ca56f662 refactor: install heavy plugins on demand 2026-03-19 03:37:30 +00:00
Peter Steinberger 30a94dfd3b refactor: untangle whatsapp runtime boundary 2026-03-19 03:13:48 +00:00