Peter Steinberger
6268eeef15
test: wire Control UI suite into CI, fix its broken tests, drop dead harness surface ( #104361 )
...
* test: wire Control UI suite into CI, fix its broken tests, drop dead harness surface
- fix 7 Control UI tests broken on main: module-mock factories are unreliable
under isolate:false shared workers; use RealtimeTalkSession prototype spies
and real jsdom storage instead (chat-realtime, chat-pull-requests)
- add gated checks-ui CI job (runUiTests changed-scope output): chromium
provisioning, lint:ui:no-raw-window-open, pnpm --dir ui test; ~30s on a
4vcpu runner, runs only when ui-affecting paths change
- add weekly node22-compat workflow exercising the supported lower Node bound
with the same command set as the dispatch-only ci.yml job
- delete the unreachable channels entry in EXTENSION_TEST_CONFIG_ROUTES and
the never-populated extensionRoutedChannelTestFiles override machinery
(born empty in 2ccb5cff22 ); resolved globs are provably identical
- guard run-vitest.mjs hardcoded path maps with existence tests so renames
cannot silently drop extended stall watchdogs
- remove unenforced coverage thresholds; test:coverage is informational, docs
updated (reference/test, help/testing, plugins/sdk-testing)
Closes #104321
* test: pin OPENCLAW_CI_RUN_UI_TESTS in the manifest env expectation
* test(ui): capture the realtime start spy instead of referencing the unbound prototype method
* test(ui): raise ui vitest timeouts for real-browser layout tests on small CI runners
2026-07-11 03:04:11 -07:00
Peter Steinberger
f7d7148cf0
docs: rewrite published docs grounded in current source ( #100142 )
...
Source-grounded rewrite of 529 published docs pages with per-unit information-loss verification: 1,713 factual corrections cited to src/**, generated surfaces regenerated, frontmatter titles preserved for i18n, release notes pages untouched. All docs gates green.
Closes #100141
2026-07-05 00:32:47 -04:00
Bek
9c95abd49d
fix: seed Slack thread context after reset ( #97100 )
2026-06-28 02:36:53 -04:00
Dallin Romney
780bc79147
fix(plugin-sdk): stop exporting vitest test helpers ( #87120 )
2026-05-26 23:10:41 -07:00
Peter Steinberger
827b0de0ce
refactor: reduce plugin sdk surface
2026-05-10 12:37:10 +01:00
Peter Steinberger
c5013eaf43
docs: complete source-backed docs sweep
2026-05-02 22:37:01 +01:00
Peter Steinberger
129b996a4e
refactor: tighten extension test support boundaries
2026-04-28 03:52:19 +01:00
Peter Steinberger
2628326264
refactor: expose agent runtime test contracts
2026-04-28 03:40:57 +01:00
Peter Steinberger
e1acb61317
refactor: expose SDK test helper subpaths
2026-04-28 03:28:17 +01:00
Peter Steinberger
1945389374
test: expose provider media test helpers
2026-04-28 02:52:30 +01:00
Peter Steinberger
d35ada2f54
refactor: relocate channel contract helpers
2026-04-28 02:14:08 +01:00
Peter Steinberger
dc4512ad0c
refactor: split channel target test helpers
2026-04-28 02:03:15 +01:00
Peter Steinberger
45a84b5f95
refactor: expose channel contract test helpers
2026-04-28 01:45:58 +01:00
Peter Steinberger
56875c4d32
refactor: split generic plugin test fixtures
2026-04-28 01:21:39 +01:00
Peter Steinberger
f34b41f198
refactor: split plugin sdk test helpers
2026-04-28 01:14:19 +01:00
Peter Steinberger
8057561cee
refactor: promote plugin test helpers to sdk
2026-04-28 00:55:11 +01:00
Peter Steinberger
90b6665ded
refactor: move plugin api test helper to sdk
2026-04-28 00:24:54 +01:00
Peter Steinberger
d462d1faf2
refactor: move plugin contracts onto SDK testing seams
2026-04-28 00:14:58 +01:00
Peter Steinberger
0df6e5a473
refactor: expose plugin test helpers via sdk
2026-04-27 23:45:26 +01:00
Peter Steinberger
bf4306d1b0
refactor: route plugin test helpers through sdk
2026-04-27 23:12:21 +01:00
Peter Steinberger
a041ea7ca7
docs(plugins): clarify runtime config access
2026-04-27 12:52:20 +01:00
Peter Steinberger
c59af3caf7
docs(plugins): document runtime config APIs
2026-04-27 12:35:59 +01:00
Alex Knight
06b3e4ef8a
Fail invalid plugin registration gates loudly ( #72577 )
...
* fix plugin registration gate failures
2026-04-27 15:46:50 +10:00
Vincent Koc
c5c163d078
docs: standardize frontmatter field order (summary before title)
2026-04-23 13:18:17 -07:00
Vincent Koc
2777b089b5
docs: normalize frontmatter titles to sentence case
2026-04-23 13:15:17 -07:00
Vincent Koc
4a2cd533ac
docs: remove duplicate H1 where frontmatter title already sets it
2026-04-23 13:11:14 -07:00
Gustavo Madeira Santana
78ac118427
fix(plugins): stabilize bundled setup runtimes ( #67200 )
...
Merged via squash.
Prepared head SHA: e8d6738fd0
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-04-15 12:35:18 -04:00
Peter Steinberger
6845b8061c
docs: simplify vitest workflow guidance
2026-04-03 12:45:13 +01:00
Peter Steinberger
341e617c84
docs(plugins): refresh bundled plugin runtime docs
2026-03-29 09:10:39 +01:00
Vincent Koc
d1ad48cb50
fix(docs): align frontmatter titles with H1 headings
...
- sdk-runtime: 'Plugin SDK Runtime' -> 'Plugin Runtime Helpers'
- sdk-testing: 'SDK Testing' -> 'Plugin Testing'
- sdk-setup: 'Plugin SDK Setup' -> 'Plugin Setup and Config'
2026-03-22 15:20:46 -07:00
Vincent Koc
28838802d4
docs(plugins): add SDK reference and how-to guide pages ( #52366 )
...
* docs(plugins): add SDK reference and how-to guide pages
Create 7 new plugin SDK documentation pages:
- sdk-overview: import map, registration API reference
- sdk-entrypoints: definePluginEntry/defineChannelPluginEntry reference
- sdk-runtime: api.runtime namespace reference
- sdk-setup: packaging, manifests, config schemas reference
- sdk-channel-plugins: step-by-step channel plugin how-to
- sdk-provider-plugins: step-by-step provider plugin how-to
- sdk-testing: test utilities and patterns reference
Restructure plugin docs navigation with nested groups:
- Top-level: user-facing pages (Install, Community, Bundles)
- Building Plugins: Getting Started, Channel, Provider
- SDK Reference: Overview, Entry Points, Runtime, Setup, Testing, Migration, Manifest, Internals
Revise existing pages for new IA:
- building-plugins.md: tightened as quick-start, routes to detailed guides
- architecture.md: updated info box with links to new guides
- sdk-migration.md: expanded Related section
* docs(plugins): add Mintlify components (Steps, CodeGroup, Tabs, Accordion, CardGroup)
- Channel plugin guide: wrap walkthrough in Steps, use CodeGroup for
package.json/manifest, Accordion for createChatChannelPlugin details,
CardGroup for advanced topics
- Provider plugin guide: wrap walkthrough in Steps, use CodeGroup for
package files, Tabs for hook examples, Accordion for all-hooks reference
- Getting started: use CardGroup for plugin-type picker and next steps,
CodeGroup for package/manifest
- SDK Overview: wrap subpath tables in AccordionGroup for scannability
* fix(docs): address PR review feedback on plugin SDK pages
- Remove nonexistent api.runtime.channel.handleInboundMessage call,
replace with realistic webhook pattern and note about channel-specific
inbound handling (issue a)
- Fix registrationMode values: 'setup' -> 'setup-only' and 'setup-runtime'
matching actual PluginRegistrationMode type (issue b)
- Fix createOptionalChannelSetupSurface params: channelId -> channel,
add required label field (issue c)
- Fix broken anchor links: #multi-capability-providers ->
#step-5-add-extra-capabilities, #plugin-kinds -> #registration-api (issue d)
- Add missing acmeChatApi import in channel plugin example (issue e)
- Fix undefined provider variable in provider test example (issue f)
* fix(docs): use correct createProviderApiKeyAuthMethod options
Replace incorrect params (provider, validate) with actual required fields
(providerId, methodId, optionKey, flagName, promptMessage) matching
src/plugins/provider-api-key-auth.ts.
* fix(docs): address second round of PR review feedback
- Add required model fields (reasoning, input, cost, contextWindow,
maxTokens) to catalog example (issue b)
- Fix buildChannelConfigSchema to take a Zod schema argument (issue c)
- Replace fabricated setupWizard steps/run with real ChannelSetupWizard
contract (channel, status, credentials) (issue d)
- Add required sessionFile/workspaceDir to runEmbeddedPiAgent (issue e)
- Fix wrapStreamFn to return StreamFn from ctx.streamFn (issue f)
2026-03-22 11:35:53 -07:00
Peter Steinberger
05279539a8
docs(plugin-sdk): document public SDK surface
2026-03-22 08:50:48 -07:00