Commit Graph

10915 Commits

Author SHA1 Message Date
Marcus Castro
81a3de1d9d fix(whatsapp): drain debounced inbound before close (#81246)
* fix(whatsapp): drain debounced inbound before close

* docs(changelog): note WhatsApp debounce close drain
2026-05-12 23:13:38 -03:00
Pavan Kumar Gondhi
b7e0decf0c Restrict chat sender allowlist matching [AI] (#80898)
* fix: restrict chat sender allowlist matching

* fix: restrict chat sender allowlist matching

* addressing codex review

* fix: complete sender allowlist root cause

* addressing codex review

* addressing codex review

* fix: complete root-cause handling

* addressing review-skill

* addressing codex review

* addressing review-skill

* addressing codex review

* addressing codex review

* fix: complete chat sender allowlist handling

* addressing codex review

* fix: complete root-cause handling

* addressing codex review

* fix: complete root-cause handling

* addressing codex review

* fix: cover sender matcher conversation target opt-in

* addressing review-skill

* addressing codex review

* fix: require explicit chat target sender matching

* addressing review-skill

* addressing codex review

* addressing codex review

* fix: require explicit chat target sender matching

* addressing codex review

* fix: require explicit chat target sender matching

* addressing codex review

* addressing codex review

* fix: require explicit chat target sender matching

* docs: add changelog entry for PR merge
2026-05-13 07:16:27 +05:30
Sarah Fortune
48529f1a96 feat(onboard): offer codex migration after harness install (#81192)
Add a post-install seam so the wizard can prompt the user to import their
existing Codex CLI state (skills, archived config/hooks, advisory cached
plugins) through the existing `openclaw migrate codex` flow once the
harness plugin is in place. Fires on both fresh installs and repair runs;
the user can decline at any time.

Trigger sites, both routing through one helper:

- src/plugins/provider-auth-choice.ts: after
  `ensureCodexRuntimePluginForModelSelection` reports `installed: true`,
  dynamically import `offerPostInstallMigrations` and call it before the
  wizard moves on.
- src/commands/onboard-non-interactive/local/auth-choice.plugin-providers.ts:
  same call shape with `nonInteractive: true`, so the helper emits a hint
  line only and never mutates state.

Helper (src/wizard/setup.post-install-migration.ts) is generic, not
Codex-hardcoded — it resolves migration providers via the manifest
`migrationProviders` contract, filters to providers owned by plugins the
caller flags as installed in this onboarding step, runs `provider.detect`,
and on TTY hands accepted runs to `migrateDefaultCommand`. All detect,
prompt, and migrate failures are swallowed so onboarding never aborts on
this optional offer.

Also harden the Codex app-server subprocess lifecycle now that `detect()`
runs from a hotter onboarding path: isolate the plugin-install
`plugin/read` call (extensions/codex/src/migration/apply.ts) and have the
isolated request wait for child exit with a SIGKILL fallback
(extensions/codex/src/app-server/request.ts) so parents are not held open
by an orphaned codex binary.

Tests:

- src/wizard/setup.post-install-migration.test.ts (new, 10 cases)
- src/commands/onboard-non-interactive/local/auth-choice.plugin-providers.test.ts
  extended with hint-call assertions and a not-required-no-offer case.
2026-05-12 16:51:27 -07:00
Peter Steinberger
413580bef2 test: dedupe qa lab live gateway mock reads 2026-05-12 22:53:58 +01:00
Peter Steinberger
ec2944dc82 test: dedupe qa lab agent process mock reads 2026-05-12 22:52:33 +01:00
Solomon Neas
314903417f fix(memory-core): prevent staged dream candidates from leaking into MEMORY.md (#68774)
* fix(memory-core): prevent staged dream candidates from leaking into MEMORY.md

* fix(memory-core): correct PromotionComponents shape in dream-fence test fixture
2026-05-12 14:07:43 -07:00
Shakker
9ff2627b7d test: squelch signal client logs 2026-05-12 21:52:38 +01:00
Shakker
559a744594 test: offer slack monitor text 2026-05-12 21:50:13 +01:00
Shakker
cee32280c6 test: weave matrix message assertions 2026-05-12 21:49:38 +01:00
Shakker
f7646f9fde test: shutter browser tab cleanup urls 2026-05-12 21:47:37 +01:00
Shakker
f8ceffde7c test: watch memory path assertions 2026-05-12 21:46:57 +01:00
Shakker
9656cd365b test: erase discord progress labels 2026-05-12 21:46:17 +01:00
Shakker
c716a30a58 test: block discord picker nav ids 2026-05-12 21:45:49 +01:00
Shakker
ad882f681d test: hush discord provider logs 2026-05-12 21:45:04 +01:00
Shakker
693c775a7f test: tag provider unit assertions 2026-05-12 21:42:48 +01:00
Shakker
40b3236415 test: probe qa lab message snapshots 2026-05-12 21:41:42 +01:00
Shakker
8930897220 test: fasten active memory log lines 2026-05-12 21:40:48 +01:00
Shakker
05c83c7bd4 test: steady whatsapp status assertions 2026-05-12 21:38:32 +01:00
Shakker
6890ef4952 test: reserve telegram fallback assertions 2026-05-12 21:37:25 +01:00
Shakker
2f306546ab test: cradle memory dreaming assertions 2026-05-12 21:36:21 +01:00
Shakker
22235e85de test: caption feishu streaming updates 2026-05-12 21:35:36 +01:00
Shakker
97a991d037 test: screen ollama setup request probes 2026-05-12 21:34:42 +01:00
Shakker
f0c016c212 test: dodge msteams graph shares 2026-05-12 21:32:50 +01:00
Shakker
b97d07683a test: heal matrix doctor changes 2026-05-12 21:32:17 +01:00
Shakker
c90635d023 test: vault dreaming repair archives 2026-05-12 21:31:40 +01:00
Shakker
2eba3dabb7 test: reject slack download image content 2026-05-12 21:31:03 +01:00
Shakker
178a50e017 test: triage telegram status issues 2026-05-12 21:30:11 +01:00
Shakker
70817ed5fa test: locate signal config issues 2026-05-12 21:29:39 +01:00
Shakker
b5cb5fa711 test: score memory wiki lint codes 2026-05-12 21:28:56 +01:00
Shakker
c1bfc7b3de test: deny googlechat body reads 2026-05-12 21:28:20 +01:00
Shakker
a76bebd2e6 test: etch discord status patches 2026-05-12 21:27:50 +01:00
Shakker
5c56ac7efd test: advertise bonjour warning checks 2026-05-12 21:26:42 +01:00
Shakker
4cfbfc73e0 test: splice matrix notice bodies 2026-05-12 21:25:33 +01:00
Shakker
1b645b21fc test: joiner synology warning checks 2026-05-12 21:25:03 +01:00
Shakker
dbf5b213af test: mute telegram account warning scan 2026-05-12 21:24:26 +01:00
Kevin Lin
eba73e593a build(canvas): stop tracking a2ui bundle hash (#81141) 2026-05-12 13:23:12 -07:00
Shakker
fd8ba6ae63 test: survey slack message schema props 2026-05-12 21:22:27 +01:00
Shakker
2b2d696f89 test: vet telegram markdown chunks 2026-05-12 21:21:46 +01:00
Shakker
7fa771b665 test: ground memory lancedb hook checks 2026-05-12 21:21:01 +01:00
Shakker
0659780b21 test: sift openai catalog ids 2026-05-12 21:19:44 +01:00
Shakker
33e5f29d0a test: bar codex computer use setup calls 2026-05-12 21:17:56 +01:00
Shakker
97e44aca75 test: recount codex plugin refresh calls 2026-05-12 21:17:19 +01:00
Shakker
fed2b9f132 test: stipulate hermes migration warnings 2026-05-12 21:15:01 +01:00
Shakker
bebb36caa5 test: affirm codex native auth calls 2026-05-12 21:13:33 +01:00
Peter Steinberger
ad1947732d test: dedupe signal container fetch reads 2026-05-12 21:13:22 +01:00
Shakker
8cc5870b49 test: sharpen codex migration warnings 2026-05-12 21:12:27 +01:00
Peter Steinberger
4b81881700 test: dedupe qa channel inbound mock reads 2026-05-12 21:11:05 +01:00
Peter Steinberger
86bcd179a7 test: dedupe openai realtime keychain reads 2026-05-12 21:09:35 +01:00
Peter Steinberger
2f33554ed4 test: dedupe mattermost slash log reads 2026-05-12 21:07:04 +01:00
Peter Steinberger
c299249b4f test: dedupe matrix media failure mock reads 2026-05-12 21:05:11 +01:00