Vincent Koc
de86e25fd4
fix(ci): skip extension lanes with no tests
2026-03-18 17:52:28 -07:00
Vincent Koc
8884643f40
fix(plugin-sdk): restore imessage-core export
2026-03-18 17:49:51 -07:00
Vincent Koc
f19cb738af
fix(plugin-sdk): restore public runtime subpaths
2026-03-18 17:38:49 -07:00
Vincent Koc
b736a92e19
fix(ci): gate extension relative package escapes
2026-03-18 17:27:57 -07:00
Vincent Koc
9a9db87952
fix(release): isolate config doc surfaces and sdk exports
2026-03-18 17:14:15 -07:00
Peter Steinberger
60a55c9cbe
fix(committer): accept argv and shell path blobs
2026-03-19 00:10:25 +00:00
Peter Steinberger
d7018aaf19
refactor: move bundled extension deps to plugin packages
2026-03-19 00:04:50 +00:00
Peter Steinberger
07d9f725b6
refactor: unify plugin sdk primitives
2026-03-18 23:58:56 +00:00
Peter Steinberger
46f49eb6eb
refactor: shrink plugin sdk public surface
2026-03-18 23:31:08 +00:00
Peter Steinberger
6e044ace28
fix: keep bundled runtime deps out of release pack
2026-03-18 23:18:36 +00:00
Vincent Koc
757c2cc2de
fix(release): isolate bundled config docs loading
2026-03-18 16:01:43 -07:00
Vincent Koc
6ebcd853be
fix(plugin-sdk): isolate provider entry surfaces
2026-03-18 13:20:46 -07:00
Vincent Koc
63e09f8267
chore(changelog): remove fragment workflow drift
2026-03-18 12:26:56 -07:00
Vincent Koc
e9903c9133
Tests: align unit sharding with unit config
2026-03-18 12:16:07 -07:00
Tak Hoffman
600f57c979
test: add architecture smell detector
2026-03-18 13:28:13 -05:00
Peter Steinberger
a0d3dc94d0
perf: reduce unit test hot path overhead
2026-03-18 18:19:40 +00:00
Vincent Koc
152d179302
Plugin SDK: add public WhatsApp runtime subpaths
2026-03-18 11:13:19 -07:00
Josh Lehman
505d140aeb
fix: stabilize build dependency resolution ( #49928 )
...
* build: mirror uuid for msteams
Add uuid to both the msteams bundled extension and the root package so the workspace build can resolve @microsoft/agents-hosting during tsdown while standalone extension installs also have the runtime dependency available.
Regeneration-Prompt: |
pnpm build failed because @microsoft/agents-hosting 1.3.1 requires uuid in its published JS but does not declare it in its package manifest. The msteams extension dynamically imports that package, and the workspace build resolves it from the root dependency graph. Mirror uuid into the root package for workspace builds and keep it in extensions/msteams/package.json so standalone plugin installs also resolve it. Update the lockfile to match the manifest changes.
* build: prune stale plugin dist symlinks
Remove stale dist and dist-runtime plugin node_modules symlinks before tsdown runs. These links point back into extension installs, and tsdown's clean step can traverse them on rebuilds and hollow out the active pnpm dependency tree before plugin-sdk declaration generation runs.
Regeneration-Prompt: |
pnpm build was intermittently failing in the plugin-sdk:dts phase after earlier build steps had already run. The symptom looked like missing root packages such as zod, ajv, commander, and undici even though a fresh install briefly fixed the problem. Investigate the build pipeline step by step rather than patching TypeScript errors. Confirm whether rebuilds mutate node_modules, identify the first step that does it, and preserve existing runtime-postbuild behavior.
The key constraint is that dist and dist-runtime plugin node_modules links are intentional for runtime packaging, so do not remove that feature globally. Instead, make rebuilds safe by deleting only stale symlinks left in generated output before invoking tsdown, so tsdown cleanup cannot recurse back into the live pnpm install tree. Verify with repeated pnpm build runs.
2026-03-18 10:55:25 -07:00
Vincent Koc
7d08070dd7
Plugins: generate bundled auth env metadata
2026-03-18 10:53:48 -07:00
Peter Steinberger
8d73bc77fa
refactor: deduplicate reply payload helpers
2026-03-18 17:30:25 +00:00
Vincent Koc
467ec4d5f3
Types: fix optional cluster check follow-ups
2026-03-18 10:02:40 -07:00
Peter Steinberger
05b1cdec3c
test: make runner scheduling timing-driven
2026-03-18 16:57:38 +00:00
Vincent Koc
891e2a3da8
Build: isolate optional bundled plugin-sdk clusters
2026-03-18 09:54:22 -07:00
Vincent Koc
b4f16bad32
Plugin SDK: export windows spawn and temp path
2026-03-18 09:46:24 -07:00
Vincent Koc
d8008a9a67
Tools: classify optional bundled clusters
2026-03-18 09:26:39 -07:00
Vincent Koc
73539ac787
Core: move web media seam out of plugin sdk
2026-03-18 09:12:23 -07:00
Vincent Koc
947dac48f2
Tests: cap shards for explicit file lanes
2026-03-18 08:59:37 -07:00
Peter Steinberger
f6928617b7
test: stabilize gate regressions
2026-03-18 15:36:32 +00:00
Peter Steinberger
c0c3c4824d
fix: checkpoint gate fixes before rebase
2026-03-18 15:36:18 +00:00
Peter Steinberger
e9b19ca1d1
fix: restore full gate after web-search rebase
2026-03-18 15:35:27 +00:00
Peter Steinberger
0cddb5fb7c
fix: restore full gate
2026-03-18 15:34:27 +00:00
Tak Hoffman
ea476de1e4
Add plugin-sdk seam audit script
2026-03-18 10:16:21 -05:00
Tak Hoffman
c2402e48c9
Build: narrow tsdown unresolved import guard
2026-03-18 08:32:41 -05:00
Tak Hoffman
86e9dcfc1b
Build: fail on unresolved tsdown imports
2026-03-18 07:57:33 -05:00
Onur Solmaz
d41c9ad4cb
Release: add plugin npm publish workflow ( #47678 )
...
* Release: add plugin npm publish workflow
* Release: make plugin publish scope explicit
2026-03-18 13:44:23 +01:00
Tak Hoffman
f58e0f5592
test simplify zero-state boundary guards
2026-03-18 07:04:50 -05:00
Ayaan Zaidi
0e9b899aee
test: enable vmForks for targeted channel test runs
...
Channel tests were always using process forks, missing the shared
transform cache that vmForks provides. This caused ~138s import
overhead per file. Now uses vmForks when available, matching the
pattern already used by unit-fast and extensions suites.
2026-03-18 15:54:02 +05:30
Vincent Koc
f96ee99bbc
Plugin SDK: harden provider auth seams
2026-03-18 02:29:25 -07:00
Vincent Koc
afad0697aa
Plugin SDK: register provider auth login entrypoint
2026-03-18 02:06:06 -07:00
Vincent Koc
0ae3e70a5c
Plugin SDK: fix contract seam regressions
2026-03-18 00:50:19 -07:00
Vincent Koc
466510b6d8
refactor: replace "seam" terminology across codebase
...
Replace "seam" with clearer terms throughout:
- "surface" for public API/extension boundaries
- "boundary" for plugin/module interfaces
- "interface" for runtime connection points
- "hook" for test injection points
- "palette" for the lobster palette reference
Also delete experiments/acp-pluginification-architecture-plan.md
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-18 00:20:15 -07:00
Vincent Koc
e17d10f7cd
Plugin SDK: restore lobster and voice-call exports
2026-03-18 00:09:22 -07:00
Vincent Koc
0385553918
Plugin SDK: trim lobster and qwen helper exports
2026-03-17 23:48:19 -07:00
Vincent Koc
d341d68180
Plugin SDK: trim legacy helper exports
2026-03-17 23:32:16 -07:00
Vincent Koc
fe84354a33
fix(plugins): add missing secret-input-schema build entry and Matrix runtime export
...
buildSecretInputSchema was not included in plugin-sdk-entrypoints.json,
so it was never emitted to dist/plugin-sdk/secret-input-schema.js. This
caused a ReferenceError during onboard when configuring channels that use
secret input schemas (matrix, feishu, mattermost, bluebubbles, nextcloud-talk, zalo).
Additionally, the Matrix extension's hand-written runtime-api barrel was
missing the re-export, unlike other extensions that use `export *` from
their plugin-sdk subpath.
Co-authored-by: hxy91819 <masonxhuang@icloud.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 23:28:23 -07:00
Ayaan Zaidi
c245c8b39d
refactor(plugin-sdk): split interactive runtime helpers
2026-03-18 11:30:34 +05:30
Muhammed Mukhthar CM
dc20a7cd89
Build: fix bundled plugin runtime symlinks
2026-03-18 05:42:51 +00:00
Val Alexander
5f89897df1
plugins: dist node_modules symlink + config raw-toggle UI fix ( #49490 )
...
* plugins: symlink node_modules into dist plugin dir for bare-specifier resolution
* UI: fix config raw-toggle button sizing and semantic markup
* Update scripts/stage-bundled-plugin-runtime.mjs
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
* Update ui/src/styles/config.css
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
* fix: hoist dist node_modules cleanup before existsSync guard; drop !important from config toggle
---------
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-03-18 00:20:14 -05:00
Tak Hoffman
2c5fd8e0c1
chore finalize web search provider boundaries
2026-03-17 23:50:18 -05:00
Tak Hoffman
77fb2589b1
test add extension plugin sdk boundary guards
2026-03-17 23:39:51 -05:00
Peter Steinberger
a8907d80dd
feat: finish xai provider integration
2026-03-17 21:31:20 -07:00
Gustavo Madeira Santana
826c592deb
Plugin SDK: add outbound session route helpers
2026-03-18 04:09:47 +00:00
Tak Hoffman
92a40d324a
test refresh boundary inventories for web search migration
2026-03-17 23:07:19 -05:00
Tak Hoffman
3de973ffff
refactor web search provider execution out of core
2026-03-17 23:07:19 -05:00
Peter Steinberger
5b2c5ee2bc
refactor: remove remaining extension src imports
2026-03-17 19:53:32 -07:00
Peter Steinberger
1313767825
refactor: enforce plugin boundary seams
2026-03-17 19:45:36 -07:00
Vincent Koc
bd21442f7e
Perf: add extension memory profiling command
2026-03-17 15:59:08 -07:00
Tak Hoffman
5a2a4abc12
CI: add built plugin singleton smoke ( #48710 )
2026-03-17 15:17:41 -05:00
Vincent Koc
0d80897476
Plugins: add inspect matrix and trim export
2026-03-17 10:33:35 -07:00
Peter Steinberger
4b125762f6
refactor: clean extension api boundaries
2026-03-17 09:38:21 -07:00
Peter Steinberger
795f1f438b
refactor: expose lazy runtime helper to plugins
2026-03-17 08:37:11 -07:00
Harold Hunt
f036ed27f4
CI: guard gateway watch against duplicate runtime regressions ( #49048 )
2026-03-17 10:55:55 -04:00
Peter Steinberger
f9588da3e0
refactor: split plugin testing seam from bundled extension helpers
2026-03-17 01:05:09 -07:00
Peter Steinberger
449127b474
fix: restore full gate
2026-03-17 07:47:28 +00:00
Peter Steinberger
5fb7a1363f
fix: stabilize full gate
2026-03-17 07:06:25 +00:00
Peter Steinberger
f6868b7e42
refactor: dedupe channel entrypoints and test bridges
2026-03-16 23:52:23 -07:00
Peter Steinberger
38a6415a70
build: tighten lazy runtime boundaries
2026-03-16 23:24:17 -07:00
Peter Steinberger
c1ef5748eb
refactor: enforce scoped plugin sdk imports
2026-03-16 23:15:24 -07:00
Peter Steinberger
aa2d5aaa0c
feat(plugins): add image generation capability
2026-03-16 22:58:55 -07:00
Peter Steinberger
f2bd76cd1a
refactor: finalize plugin sdk legacy boundary cleanup
2026-03-16 22:51:46 -07:00
Peter Steinberger
0cfc80b81c
refactor: finish public plugin sdk boundary seams
2026-03-16 21:33:59 -07:00
Peter Steinberger
9ebe38b6e3
refactor: untangle remaining plugin sdk boundaries
2026-03-16 21:16:32 -07:00
Peter Steinberger
095a9f6e1d
fix: handle Parallels poweroff snapshot restores
2026-03-17 04:01:19 +00:00
Peter Steinberger
622f13253b
feat(tts): add microsoft voice listing
2026-03-16 20:24:13 -07:00
Peter Steinberger
2497b8147e
refactor: add shared setup sdk subpath
2026-03-16 20:17:13 -07:00
Peter Steinberger
1ffe8fde84
fix: stabilize docker test suite
2026-03-17 03:02:03 +00:00
Vincent Koc
02df22a495
Tests: improve extension runner discovery
2026-03-16 17:59:39 -07:00
Harold Hunt
94c27f34a1
fix(plugins): keep built plugin loading on one module graph ( #48595 )
2026-03-16 20:58:58 -04:00
Tak Hoffman
313e5bb58b
Fix launcher startup regressions ( #48501 )
...
* Fix launcher startup regressions
* Fix CI follow-up regressions
* Fix review follow-ups
* Fix workflow audit shell inputs
* Handle require resolve gaxios misses
2026-03-16 17:21:18 -05:00
Tak Hoffman
2de28379dd
Plugins: remove public extension-api surface ( #48462 )
...
* Plugins: remove public extension-api surface
* Plugins: fix loader setup routing follow-ups
* CI: ignore non-extension helper dirs in extension-fast
* Docs: note extension-api removal as breaking
2026-03-16 15:51:08 -05:00
Gustavo Madeira Santana
09df232f39
Plugins: stage local bundled runtime tree
2026-03-16 16:43:47 +00:00
Gustavo Madeira Santana
7d4ccee717
Plugin SDK: update entrypoint metadata
2026-03-16 12:46:23 +00:00
Gustavo Madeira Santana
e5282e6bda
Plugin SDK: update entrypoint metadata
2026-03-16 12:22:21 +00:00
Gustavo Madeira Santana
8cd1bdd345
Status: stabilize startup memory probes
2026-03-16 10:27:44 +00:00
Vincent Koc
d68645d47f
Tests: detect changed extensions
2026-03-16 02:29:46 -07:00
Vincent Koc
d572188f61
Tests: add extension test runner
2026-03-16 02:06:21 -07:00
Vincent Koc
ff2e864c98
Plugins: add Claude marketplace registry installs ( #48058 )
...
* Changelog: note Claude marketplace plugin support
* Plugins: add Claude marketplace installs
* E2E: cover marketplace plugin installs in Docker
2026-03-16 01:46:07 -07:00
Peter Steinberger
77b1f240fd
fix: retry runtime postbuild skill copy races
2026-03-16 08:42:50 +00:00
Peter Steinberger
0ed64f124d
fix: mount CLI auth dirs in docker live tests
2026-03-16 07:44:15 +00:00
Peter Steinberger
8fe08df2eb
refactor(plugins): derive compat provider ids from manifests
2026-03-16 00:41:05 -07:00
Peter Steinberger
49251def61
docs: codify macOS parallels discord smoke
2026-03-16 00:38:20 -07:00
Peter Steinberger
b3025e6d8e
refactor(plugin-sdk): clean shared core imports
2026-03-16 00:25:32 -07:00
Peter Steinberger
7964563299
refactor: finish plugin-owned channel runtime seams
2026-03-16 00:25:19 -07:00
Peter Steinberger
e90c1d9add
fix: unblock docs and registry checks
2026-03-16 07:23:43 +00:00
Peter Steinberger
cec10703dc
fix: unblock ci gates
2026-03-16 07:19:54 +00:00
Peter Steinberger
edab939f4d
fix: make docs i18n use gpt-5.4 overrides
2026-03-16 07:03:19 +00:00
Vincent Koc
476d948732
!refactor(browser): remove Chrome extension path and add MCP doctor migration ( #47893 )
...
* Browser: replace extension path with Chrome MCP
* Browser: clarify relay stub and doctor checks
* Docs: mark browser MCP migration as breaking
* Browser: reject unsupported profile drivers
* Browser: accept clawd alias on profile create
* Doctor: narrow legacy browser driver migration
2026-03-15 23:56:08 -07:00
Peter Steinberger
0b58a1cc13
fix: stabilize windows parallels smoke harness
2026-03-15 22:41:35 -07:00
Peter Steinberger
46482a283a
feat: add nostr setup and unify channel setup discovery
2026-03-15 19:58:22 -07:00
Peter Steinberger
47a9c1a893
refactor: merge minimax bundled plugins
2026-03-16 02:26:45 +00:00
Peter Steinberger
38abdea8ce
fix: restore ci type checks
2026-03-16 02:23:44 +00:00
Peter Steinberger
2b57d3bb34
build(plugin-sdk): enforce export sync in check
2026-03-16 02:11:19 +00:00
Peter Steinberger
39aba198f1
fix(docs): run i18n through a local rpc client
2026-03-16 02:11:18 +00:00
Peter Steinberger
0a136f1b90
fix(docs): harden i18n prompt failures
2026-03-16 02:11:18 +00:00
Peter Steinberger
59940cb3ee
refactor(plugin-sdk): centralize entrypoint manifest
2026-03-16 02:11:18 +00:00
Peter Steinberger
70a6d40d37
fix: remove stale dist plugin dirs
2026-03-16 02:10:36 +00:00
Peter Steinberger
fb991e6f31
perf(plugins): lazy-load setup surfaces
2026-03-15 18:46:54 -07:00
Peter Steinberger
9c89a74f84
perf(cli): trim help startup imports
2026-03-15 18:20:52 -07:00
Peter Steinberger
bc5054ce68
refactor(google): merge gemini auth into google plugin
2026-03-16 01:19:32 +00:00
Vincent Koc
c0e0115b31
CI: add CLI startup memory regression check
2026-03-15 17:42:48 -07:00
Peter Steinberger
c156f7c7e3
fix: reduce plugin and discord warning noise
2026-03-16 00:24:44 +00:00
Peter Steinberger
a058bf918d
feat(plugins): test bundle MCP end to end
2026-03-15 16:51:13 -07:00
Gustavo Madeira Santana
14137bef22
Plugins: clean stale bundled skill outputs
2026-03-15 21:48:09 +00:00
Gustavo Madeira Santana
50a6902a9a
Plugins: skip nested node_modules in bundled skills
2026-03-15 21:43:13 +00:00
Gustavo Madeira Santana
1839bc0b1a
Plugins: relocate bundled skill assets
2026-03-15 21:42:02 +00:00
Nimrod Gutman
50c8934231
fix(dev): align gateway watch with tsdown wrapper ( #47636 )
2026-03-15 23:28:57 +02:00
Vincent Koc
5a7aba94a2
CLI: support package-manager installs from GitHub main ( #47630 )
...
* CLI: resolve package-manager main install specs
* CLI: skip registry resolution for raw package specs
* CLI: support main package target updates
* CLI: document package update specs in help
* Tests: cover package install spec resolution
* Tests: cover npm main-package updates
* Tests: cover update --tag main
* Installer: support main package targets
* Installer: support main package targets on Windows
* Docs: document package-manager main updates
* Docs: document installer main targets
* Docs: document npm and pnpm main installs
* Docs: document update --tag main
* Changelog: note package-manager main installs
* Update src/infra/update-global.test.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
---------
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-03-15 14:18:12 -07:00
Nimrod Gutman
47fd8558cd
fix(plugins): fix bundled plugin roots and skill assets ( #47601 )
...
* fix(acpx): resolve bundled plugin root correctly
* fix(plugins): copy bundled plugin skill assets
* fix(plugins): tolerate missing bundled skill paths
2026-03-15 23:00:30 +02:00
Gustavo Madeira Santana
4fb0160309
Gateway: sync runtime post-build artifacts
2026-03-15 20:44:15 +00:00
Ted Li
07f890fa45
fix(release): block oversized npm packs that regress low-memory startup ( #46850 )
...
* fix(release): guard npm pack size regressions
* fix(release): fail closed when npm omits pack size
2026-03-15 21:31:30 +01:00
Gustavo Madeira Santana
594920f8cc
Scripts: rebuild on extension and tsdown config changes ( #47571 )
...
Merged via squash.
Prepared head SHA: edd8ed8254
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-03-15 16:19:27 -04:00
Onur Solmaz
a2080421a1
Docs: move release runbook to maintainer repo ( #47532 )
...
* Docs: redact private release setup
* Docs: tighten release order
* Docs: move release runbook to maintainer repo
* Docs: delete public mac release page
* Docs: remove zh-CN mac release page
* Docs: turn release checklist into release policy
* Docs: point release policy to private docs
* Docs: regenerate zh-CN release policy pages
* Docs: preserve Doctor in zh-CN hubs
* Docs: fix zh-CN polls label
* Docs: tighten docs i18n term guardrails
* Docs: enforce zh-CN glossary coverage
2026-03-15 20:42:39 +01:00
Nimrod Gutman
e2dac5d5cb
fix(plugins): load bundled extensions from dist ( #47560 )
2026-03-15 21:16:27 +02:00
Harold Hunt
53462b990d
chore(gateway): ignore `.test.ts` changes in `gateway:watch` ( #36211 )
2026-03-15 11:14:28 -04:00
Radek Sienkiewicz
e3b7ff2f1f
Docs: fix MDX markers blocking page refreshes ( #46695 )
...
Merged via squash.
Prepared head SHA: 56b25a9fb3
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com>
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com>
Reviewed-by: @velvet-shark
2026-03-15 02:58:59 +01:00
Radek Sienkiewicz
4c6a7f84a4
docs: remove dead security README nav entry ( #46675 )
...
Merged via squash.
Prepared head SHA: 63331a54b8
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com>
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com>
Reviewed-by: @velvet-shark
2026-03-15 01:40:00 +01:00
Brian Qu
8a607d7553
fix(feishu): fetch thread context so AI can see bot replies in topic threads ( #45254 )
...
* fix(feishu): fetch thread context so AI can see bot replies in topic threads
When a user replies in a Feishu topic thread, the AI previously could only
see the quoted parent message but not the bot's own prior replies in the
thread. This made multi-turn conversations in threads feel broken.
- Add `threadId` (omt_xxx) to `FeishuMessageInfo` and `getMessageFeishu`
- Add `listFeishuThreadMessages()` using `container_id_type=thread` API
to fetch all messages in a thread including bot replies
- In `handleFeishuMessage`, fetch ThreadStarterBody and ThreadHistoryBody
for topic session modes and pass them to the AI context
- Reuse quoted message result when rootId === parentId to avoid redundant
API calls; exclude root message from thread history to prevent duplication
- Fall back to inbound ctx.threadId when rootId is absent or API fails
- Fetch newest messages first (ByCreateTimeDesc + reverse) so long threads
keep the most recent turns instead of the oldest
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(feishu): skip redundant thread context injection on subsequent turns
Only inject ThreadHistoryBody on the first turn of a thread session.
On subsequent turns the session already contains prior context, so
re-injecting thread history (and starter) would waste tokens.
The heuristic checks whether the current user has already sent a
non-root message in the thread — if so, the session has prior turns
and thread context injection is skipped entirely.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(feishu): handle thread_id-only events in prior-turn detection
When ctx.rootId is undefined (thread_id-only events), the starter
message exclusion check `msg.messageId !== ctx.rootId` was always
true, causing the first follow-up to be misclassified as a prior
turn. Fall back to the first message in the chronologically-sorted
thread history as the starter.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(feishu): bootstrap topic thread context via session state
* test(memory): pin remote embedding hostnames in offline suites
* fix(feishu): use plugin-safe session runtime for thread bootstrap
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com>
2026-03-14 18:01:59 -05:00
Vincent Koc
cbec476b6b
Docs: add config drift baseline statefile ( #45891 )
...
* Docs: add config drift statefile generator
* Docs: generate config drift baseline
* CI: move config docs drift runner into workflow sanity
* Docs: emit config drift baseline json
* Docs: commit config drift baseline json
* Docs: wire config baseline into release checks
* Config: fix baseline drift walker coverage
* Docs: regenerate config drift baselines
2026-03-14 14:23:30 -07:00
Tak Hoffman
e81442ac80
Fix full local gate on main
2026-03-14 15:52:11 -05:00
Onur
d33f3f843a
ci: allow fallback npm correction tags ( #46486 )
2026-03-14 19:38:14 +01:00
scoootscooob
ac29edf6c3
fix(ci): update vitest configs after channel move to extensions/ (openclaw#46066)
...
Verified:
- pnpm build
- pnpm check
- pnpm test:macmini
Co-authored-by: scoootscooob <167050519+scoootscooob@users.noreply.github.com>
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com>
2026-03-14 13:23:25 -05:00
Onur Solmaz
c08317203d
ci: enforce calver freshness on npm publish
2026-03-14 13:45:40 +01:00
Onur Solmaz
00891dee90
ci: switch npm release workflow to trusted publishing
2026-03-14 13:45:40 +01:00
Onur Solmaz
02a86da23a
ci: preserve manual npm release approval delays
2026-03-14 13:45:40 +01:00
Onur Solmaz
2eea93982f
ci: make npm release preview more verbose
2026-03-14 13:45:40 +01:00
Onur Solmaz
78d2bfc4d8
ci: add dry-run gate to npm release workflow
2026-03-14 13:45:40 +01:00
scoootscooob
439c21e078
refactor: remove channel shim directories, point all imports to extensions ( #45967 )
...
* refactor: remove channel shim directories, point all imports to extensions
Delete the 6 backward-compat shim directories (src/telegram, src/discord,
src/slack, src/signal, src/imessage, src/web) that were re-exporting from
extensions. Update all 112+ source files to import directly from
extensions/{channel}/src/ instead of through the shims.
Also:
- Move src/channels/telegram/ (allow-from, api) to extensions/telegram/src/
- Fix outbound adapters to use resolveOutboundSendDep (fixes 5 pre-existing TS errors)
- Update cross-extension imports (src/web/media.js → extensions/whatsapp/src/media.js)
- Update vitest, tsdown, knip, labeler, and script configs for new paths
- Update guard test allowlists for extension paths
After this, src/ has zero channel-specific implementation code — only the
generic plugin framework remains.
* fix: update raw-fetch guard allowlist line numbers after shim removal
* refactor: document direct extension channel imports
* test: mock transcript module in delivery helpers
2026-03-14 03:43:07 -07:00
scoootscooob
16505718e8
refactor: move WhatsApp channel implementation to extensions/ ( #45725 )
...
* refactor: move WhatsApp channel from src/web/ to extensions/whatsapp/
Move all WhatsApp implementation code (77 source/test files + 9 channel
plugin files) from src/web/ and src/channels/plugins/*/whatsapp* to
extensions/whatsapp/src/.
- Leave thin re-export shims at all original locations so cross-cutting
imports continue to resolve
- Update plugin-sdk/whatsapp.ts to only re-export generic framework
utilities; channel-specific functions imported locally by the extension
- Update vi.mock paths in 15 cross-cutting test files
- Rename outbound.ts -> send.ts to match extension naming conventions
and avoid false positive in cfg-threading guard test
- Widen tsconfig.plugin-sdk.dts.json rootDir to support shim->extension
cross-directory references
Part of the core-channels-to-extensions migration (PR 6/10).
* style: format WhatsApp extension files
* fix: correct stale import paths in WhatsApp extension tests
Fix vi.importActual, test mock, and hardcoded source paths that weren't
updated during the file move:
- media.test.ts: vi.importActual path
- onboarding.test.ts: vi.importActual path
- test-helpers.ts: test/mocks/baileys.js path
- monitor-inbox.test-harness.ts: incomplete media/store mock
- login.test.ts: hardcoded source file path
- message-action-runner.media.test.ts: vi.mock/importActual path
2026-03-14 02:44:55 -07:00
Peter Steinberger
6e251dcf68
test: harden parallels beta smoke flows
2026-03-14 05:54:49 +00:00
Peter Steinberger
7e41ba4cbb
test: harden parallels all-os smoke harness
2026-03-14 04:46:47 +00:00
Peter Steinberger
d925b0113f
test: add parallels linux smoke harness
2026-03-14 01:56:24 +00:00
Peter Steinberger
4dbab064f0
test: add parallels windows smoke harness
2026-03-14 00:33:39 +00:00
Tak Hoffman
bff340c1ca
test: preserve wrapper behavior for targeted runs FIX OOM issues( #45518 )
...
* test: preserve wrapper behavior for targeted runs
* test: tighten targeted wrapper routing
2026-03-13 18:36:38 -05:00
Jacob Tomlinson
63802c1112
docker: add apt-get upgrade to all Dockerfiles ( #45384 )
...
* docker: add apt-get upgrade to patch base-image vulnerabilities
Closes #45159
* docker: add DEBIAN_FRONTEND and --no-install-recommends to apt-get upgrade
Prevents debconf hangs during Docker builds and avoids pulling in
recommended packages that silently grow the image.
Co-Authored-By: Claude <noreply@anthropic.com>
* Revert "docker: add DEBIAN_FRONTEND and --no-install-recommends to apt-get upgrade"
This reverts commit 6fc3839cb5 .
* docker: add DEBIAN_FRONTEND and --no-install-recommends to apt-get upgrade
Prevents debconf hangs during Docker builds and avoids pulling in
recommended packages that silently grow the image.
Co-Authored-By: Claude <noreply@anthropic.com>
---------
Co-authored-by: Claude <noreply@anthropic.com>
2026-03-13 16:23:02 -07:00
Peter Steinberger
e7863d7fdd
test: add parallels macos smoke harness
2026-03-13 21:44:29 +00:00
Peter Steinberger
c659f6c959
fix: improve onboarding install diagnostics
2026-03-13 21:44:29 +00:00
Peter Steinberger
75c7c169e1
test: re-enable Node 24 vmForks fast lane
2026-03-13 20:38:24 +00:00
Peter Steinberger
d17490ff54
ci: speed up scoped workflow lanes
2026-03-13 19:53:40 +00:00
Peter Steinberger
16ececf0a6
chore: bump version to 2026.3.13
2026-03-13 04:38:32 +00:00
Peter Steinberger
08da1b47ba
fix: use build-stage image for docker live tests
2026-03-13 02:59:36 +00:00
Peter Steinberger
c25e46a433
chore: prepare 2026.3.12 release
2026-03-13 01:38:20 +00:00
Josh Lehman
52e2a7747a
Revert "feat: add --no-test flag to prepare-gates"
...
This reverts commit ee6bdb3bab .
2026-03-12 16:37:50 -07:00
Josh Lehman
ee6bdb3bab
feat: add --no-test flag to prepare-gates
...
Allows skipping the full test suite during prepare phase.
Testing is deferred to the dedicated Test phase in the pipeline.
2026-03-12 16:22:37 -07:00
Peter Steinberger
86a3149b2e
fix: harden windows npm runtime path
2026-03-12 23:03:19 +00:00
Peter Steinberger
115f24819e
fix: make node-llama-cpp optional for npm installs
2026-03-12 16:45:59 +00:00
Nimrod Gutman
b77b7485e0
feat(push): add iOS APNs relay gateway ( #43369 )
...
* feat(push): add ios apns relay gateway
* fix(shared): avoid oslog string concatenation
# Conflicts:
# apps/shared/OpenClawKit/Sources/OpenClawKit/GatewayChannel.swift
* fix(push): harden relay validation and invalidation
* fix(push): persist app attest state before relay registration
* fix(push): harden relay invalidation and url handling
* feat(push): use scoped relay send grants
* feat(push): configure ios relay through gateway config
* feat(push): bind relay registration to gateway identity
* fix(push): tighten ios relay trust flow
* fix(push): bound APNs registration fields (#43369 ) (thanks @ngutman)
2026-03-12 18:15:35 +02:00
Jacob Riff
3fa91cd69d
feat: add sessions_yield tool for cooperative turn-ending ( #36537 )
...
Merged via squash.
Prepared head SHA: 75d9204c86
Co-authored-by: jriff <50276+jriff@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-12 08:46:47 -07:00
Altay
b0f717aa02
build: align Node 22 guidance with 22.16 minimum
2026-03-12 20:07:44 +05:30
Altay
0a8d2b6200
build: raise Node 22 compatibility floor to 22.16
2026-03-12 20:07:44 +05:30
Altay
deada7edd3
build: default to Node 24 and keep Node 22 compat
2026-03-12 20:07:44 +05:30
Sally O'Malley
8e0e4f736a
docs: add Kubernetes install guide, setup script, and manifests ( #34492 )
...
* add docs and manifests for k8s install
Signed-off-by: sallyom <somalley@redhat.com>
* changelog
Signed-off-by: sallyom <somalley@redhat.com>
---------
Signed-off-by: sallyom <somalley@redhat.com>
2026-03-12 07:28:21 -04:00
Peter Steinberger
ce5dd742f8
build: sync versions to 2026.3.11
2026-03-12 04:01:57 +00:00
Peter Steinberger
0e397e62b7
chore: bump version to 2026.3.10
2026-03-11 23:29:53 +00:00
Nimrod Gutman
2d91284fdb
feat(ios): add local beta release flow ( #42991 )
...
Merged via squash.
Prepared head SHA: 82b38fe93b
Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com>
Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com>
Reviewed-by: @ngutman
2026-03-11 12:32:28 +02:00
Peter Steinberger
0aa79fc4d3
fix(build): restore full gate
2026-03-11 02:52:55 +00:00
Onur
8ba1b6eff1
ci: add npm release workflow and CalVer checks ( #42414 ) (thanks @onutc)
2026-03-10 20:09:25 +01:00
Peter Steinberger
8d2d6db9ad
test: fix Node 24+ test runner and subagent registry mocks
2026-03-09 06:45:13 +00:00
Vincent Koc
6d5e142b93
Docker: improve build cache reuse ( #40351 )
...
* Docker: improve build cache reuse
* Tests: cover Docker build cache layout
* Docker: fix sandbox cache mount continuations
* Docker: document qr-import manifest scope
* Docker: narrow e2e install inputs
* CI: cache Docker builds in workflows
* CI: route sandbox smoke through setup script
* CI: keep sandbox smoke on script path
2026-03-08 17:57:46 -07:00
Vincent Koc
3f3f66a5f7
Docker: trim runtime image payload ( #40307 )
...
* Docker: shrink runtime image payload
* Docker: add runtime pnpm opt-in
* Docker: collapse helper entrypoint chmod layers
* Docker: restore bundled pnpm runtime
* Update CHANGELOG.md
2026-03-08 16:07:04 -07:00
langdon
bd1fe4d8b4
fix(run-openclaw-podman): add SELinux :Z mount option on enforcing/permissive hosts ( #39449 )
...
* fix(run-openclaw-podman): add SELinux :Z mount option on Linux with enforcing/permissive SELinux
* fix(quadlet): add SELinux :Z label to openclaw.container.in volume mount
* fix(podman): add SELinux :Z mount option for Fedora/RHEL hosts
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: sallyom <somalley@redhat.com>
---------
Signed-off-by: sallyom <somalley@redhat.com>
Co-authored-by: sallyom <somalley@redhat.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 18:53:09 -04:00
Peter Steinberger
3ada30e670
fix: restore gate after rebase
2026-03-08 18:40:15 +00:00
Peter Steinberger
d307a7ca1a
refactor: extract bundled extension manifest parser
2026-03-08 18:26:36 +00:00
Peter Steinberger
f493b03202
refactor: validate bundled extension release metadata
2026-03-08 18:26:36 +00:00
Peter Steinberger
64d4d9aabb
refactor: move bundled extension gap allowlists into manifests
2026-03-08 18:26:35 +00:00
yuweuii
6c9b49a10b
fix(sessions): clear stale contextTokens on model switch ( #38044 )
...
Merged via squash.
Prepared head SHA: bac2df4b7f
Co-authored-by: yuweuii <82372187+yuweuii@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-08 10:59:16 -07:00
GitBuck
caf1b84822
feat: allow compaction model override via config ( #38753 )
...
Merged via squash.
Prepared head SHA: a3d6d6c845
Co-authored-by: starbuck100 <25417736+starbuck100@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-08 10:47:34 -07:00
Peter Steinberger
1ec1f0f1f2
refactor: scope prep push results to env artifacts
2026-03-08 16:22:52 +00:00
Peter Steinberger
fa00b1d0ca
refactor: dedupe prep branch push flow
2026-03-08 16:22:52 +00:00
Peter Steinberger
032778fb2e
refactor: avoid checkout during prep head verification
2026-03-08 16:22:52 +00:00
Altay
ca5e352c53
CLI: include commit hash in --version output ( #39712 )
...
* CLI: include commit hash in --version output
* fix(version): harden commit SHA resolution and keep output consistent
* CLI: keep install checks compatible with commit-tagged version output
* fix(cli): include commit hash in root version fast path
* test(cli): allow null commit-hash mocks
* Installer: share version parser across install scripts
* Installer: avoid sourcing helpers from stdin cwd
* CLI: note commit-tagged version output
* CLI: anchor commit hash resolution to module root
* CLI: harden commit hash resolution
* CLI: fix commit hash lookup edge cases
* CLI: prefer live git metadata in dev builds
* CLI: keep git lookup inside package root
* Infra: tolerate invalid moduleUrl hints
* CLI: cache baked commit metadata fallbacks
* CLI: align changelog attribution with prep gate
* CLI: restore changelog contributor credit
---------
Co-authored-by: echoVic <echovic@163.com>
Co-authored-by: echoVic <echoVic@users.noreply.github.com>
2026-03-08 19:10:48 +03:00
Peter Steinberger
eba9dcc67a
Refactor release hardening follow-ups ( #39959 )
...
* build: fail fast on stale host-env swift policy
* build: sync generated host env swift policy
* build: guard bundled extension root dependency gaps
* refactor: centralize provider capability quirks
* test: table-drive provider regression coverage
* fix: block merge when prep branch has unpushed commits
* refactor: simplify models config merge preservation
2026-03-08 14:49:58 +00:00
Charles Dusek
64760614aa
macOS: default release app builds to universal binaries
2026-03-08 14:14:36 +00:00
Peter Steinberger
dd8fd98ad4
build: reduce build log noise
2026-03-08 04:12:32 +00:00
Peter Steinberger
21df014d56
fix: stage docker live tests from mounted source
2026-03-08 04:06:26 +00:00
Peter Steinberger
79e3d1f956
fix: retry git lock in committer
2026-03-08 00:28:37 +00:00
Peter Steinberger
9856d8432d
chore(scripts): remove changelog fragment workflow helpers
2026-03-08 00:24:49 +00:00
Peter Steinberger
efdff9c738
fix(scripts): enforce changelog.md and post clickable SHA links
2026-03-08 00:23:45 +00:00
Peter Steinberger
168e4159ad
fix(podman): honor OPENCLAW_GATEWAY_BIND env-file override ( #38785 , thanks @majinyu666)
...
Co-authored-by: majinyu666 <majy14miles@gmail.com>
2026-03-07 21:08:15 +00:00
Peter Steinberger
e27bbe4982
fix(exec): block dangerous override-only env pivots
2026-03-07 19:18:05 +00:00
Nimrod Gutman
43ab4f33ad
feat(ios): prepare app store connect release assets
2026-03-07 17:21:07 +02:00
Vincent Koc
a190220967
Tests: serialize low-memory test runner lanes
2026-03-06 17:45:44 -05:00
Vincent Koc
60d20f9daf
Install Smoke: allow reusing prebuilt test images
2026-03-06 14:23:00 -05:00
Vincent Koc
6a9deb21b8
CI: cover skill and extension tests
2026-03-06 11:21:03 -05:00
Shakker
60849f3335
chore(pr): enforce changelog placement and reduce merge sync churn
2026-03-05 06:37:53 +00:00
Shakker
5d5fa0dac8
fix(pr): make review claim step required
2026-03-05 04:53:32 +00:00
Shakker
4cc293d084
fix(review): enforce behavioral sweep validation
2026-03-04 18:49:36 +00:00
Gustavo Madeira Santana
7a2f5a0098
Plugin SDK: add full bundled subpath wiring
2026-03-04 02:35:12 -05:00
Gustavo Madeira Santana
802b9f6b19
Plugins: add root-alias shim and cache/docs updates
2026-03-04 01:20:48 -05:00
Gustavo Madeira Santana
1278ee9248
plugin-sdk: add channel subpaths and migrate bundled plugins
2026-03-03 22:07:03 -05:00
Igal Tabachnik
a4850b1b8f
fix(plugins): lazily initialize runtime and split plugin-sdk startup imports ( #28620 )
...
Merged via squash.
Prepared head SHA: 8bd7d6c13b
Co-authored-by: hmemcpy <601206+hmemcpy@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-03-03 19:58:48 -05:00