Peter Steinberger
1878ca0820
chore(release): prepare 2026.6.2 beta
2026-06-04 00:06:52 +01:00
Peter Steinberger
e254346bc2
chore(release): prepare 2026.6.3 beta
2026-06-03 23:42:34 +01:00
Omar Shahine
02192bd27f
fix(imessage): keep typing active during tool work ( #88948 )
...
Keep iMessage native typing indicators alive through long tool-running gaps by bridging tool-start activity into the existing typing controller, while preserving typingMode and sendPolicy suppression semantics.
Real behavior proof was added from the live iMessage generated-image run: inbound id 5805, outgoing media reply id 5806, and requester-observed typing during the 84s tool path.
Co-authored-by: omarshahine <10343873+omarshahine@users.noreply.github.com >
Reviewed-by: @lobster
2026-06-01 16:45:46 -07:00
Peter Steinberger
a14eacf372
chore(release): set version 2026.6.2
2026-06-01 23:06:55 +01:00
Peter Steinberger
8e28c773fe
chore(release): prepare 2026.6.1
2026-06-01 10:30:15 +01:00
Peter Steinberger
27dde7a4d6
chore(lint): enable stricter error rules
2026-06-01 01:12:21 +01:00
Vincent Koc
227530f906
test(imessage): align service-qualified target expectations
2026-06-01 00:20:10 +01:00
Peter Steinberger
3491834d49
Migrate iMessage monitor state to SQLite ( #88797 )
...
* refactor: move imessage monitor state to sqlite
* test: use OpenClaw temp root in iMessage state helper
* test: avoid pending promise lint in chat tests
* test: harden gateway ci flakes
* test: align session list merge expectation
2026-06-01 00:19:51 +01:00
colmbrogan
421ad93203
fix(imessage): tolerate self-chat timestamp skew
...
Fixes iMessage self-chat reflection dedupe when reflected rows arrive with sub-second `created_at` skew, while keeping ambiguous normal-DM suppression exact-match only.
Maintainer follow-ups scoped skew tolerance to confirmed self-chat remembered rows and bounded cache cleanup so TTL-only expiry cannot leave the insertion-order queue growing indefinitely.
Verification:
- `node scripts/run-vitest.mjs extensions/imessage/src/monitor/self-chat-cache.test.ts extensions/imessage/src/monitor/self-chat-dedupe.test.ts extensions/imessage/src/monitor/inbound-processing.test.ts`
- `pnpm oxlint extensions/imessage/src/monitor/self-chat-cache.ts extensions/imessage/src/monitor/self-chat-cache.test.ts extensions/imessage/src/monitor/self-chat-dedupe.test.ts`
- `git diff --check origin/main...HEAD`
- autoreview clean on branch tip
- CI run 26727192244 green; Real behavior proof run 26727196218 green
Co-authored-by: Colm O Brogain <73212305+colmbrogan@users.noreply.github.com >
2026-06-01 00:14:47 +01: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
7617d062fd
chore(lint): fix rebased lint violations
2026-05-31 18:59:02 +01:00
Peter Steinberger
304e2c83c0
chore(lint): enable stricter oxlint rules
2026-05-31 18:59:02 +01:00
Ho Lim
044f7f3790
fix: route iMessage DM media through attachment handoff ( #87904 )
...
* fix: route iMessage DM media through attachment handoff
* fix: close iMessage caption follow-up clients
* test: stabilize iMessage timeout recovery checks
* fix(imessage): keep attachment reply-cache identifiers aligned
* fix(imessage): preserve service for media handoff
* fix(imessage): prefer caption ids for placeholder attachments
* fix(imessage): preserve region fallback for media handles
* fix(imessage): retain chat id attachment cache scope
* fix(imessage): avoid premature caption echoes
---------
Co-authored-by: Omar Shahine <10343873+omarshahine@users.noreply.github.com >
2026-05-31 09:00:00 -07:00
Peter Steinberger
0d17623f00
chore: bump OpenClaw version to 2026.5.31
...
Bumps OpenClaw release metadata to 2026.5.31 across package manifests, app version files, plugin metadata, changelog headings, and generated shrinkwraps.
Verification:
- pnpm plugins:sync:check
- pnpm ios:version:check
- pnpm deps:shrinkwrap:check
- git diff --check
- stale 2026.5.30/build-code scan across changed files
- autoreview clean: no accepted/actionable findings
- PR CI green for real gates: Checks, security scans, dependency guard, app lanes, real behavior proof
Known non-code workflow issue:
- label workflow failed because this PR hits GitHub's 100-label issue cap before the size-label step.
2026-05-31 14:46:17 +01:00
Peter Steinberger
f5eca3f84c
chore(lint): enable object and reassignment rules
2026-05-31 09:32:52 +01:00
Ayaan Zaidi
87664ed096
Fix iMessage startup watch replay ( #88406 )
...
* fix(imessage): start watch after existing local rows
* test(imessage): cover stale startup watch rows
* fix(imessage): keep watch startup tolerant of db probes
* fix(imessage): watermark default local watch startup
* fix(imessage): tolerate missing sqlite startup probe
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-05-31 08:33:22 +01:00
Peter Steinberger
444562b3de
chore: remove stale dead code
2026-05-31 03:04:25 -04:00
Peter Steinberger
deb7bc6539
chore(lint): enable readability lint rules
2026-05-31 07:17:57 +01:00
Peter Steinberger
becd45325b
fix(imessage): bound private api negative cache expiry
2026-05-30 13:28:17 -04:00
Peter Steinberger
f4d461bbff
fix(imessage): bound approval reaction poll expiry
2026-05-30 13:25:45 -04:00
Peter Steinberger
5269924ff8
fix(imessage): bound probe cache clocks
2026-05-30 10:55:53 -04:00
Peter Steinberger
62fa5692cb
fix(imessage): bound chat list cache clocks
2026-05-30 10:52:38 -04:00
Peter Steinberger
a80d9f00f1
test(imessage): align SMS route expectations
2026-05-30 15:18:30 +01:00
Vincent Koc
fced29de17
perf(extensions): cache meeting runtime loaders
2026-05-30 13:00:31 +02:00
Peter Steinberger
adf981de89
fix(imessage): tolerate invalid catchup cursor timestamps
2026-05-30 06:46:09 -04:00
Peter Steinberger
cd07d013ba
chore(release): bump version to 2026.5.30
2026-05-30 06:49:13 +01:00
Kevin Lin
dc4f3b57cf
fix(imessage): preserve SMS approval reply routes
...
Preserve iMessage SMS reply routes for approval replies so a direct SMS /approve response can acknowledge and return results to the same SMS conversation.
Verification: gateway-only build, extension type checks, CI build-artifacts/check-prod-types/check-test-types/check-lint/check-additional-extension-package-boundary, and live prod iMessage SMS approval proof. checks-node-core-fast was waived by maintainer request after unrelated flaky failures in non-iMessage tests.
2026-05-29 19:00:45 -07:00
Kevin Lin
c57671176e
refactor: share native approval route gates
...
Share native approval route gate helpers across mainstream channel approval runtimes and keep PR #87770 green on current main.
2026-05-29 15:32:31 -07:00
Peter Steinberger
5fbeffd56b
fix(imessage): validate chat list ids
2026-05-29 09:08:39 -04:00
Peter Steinberger
8a8767dd1e
fix: validate imessage action integers
2026-05-28 19:14:45 -04:00
Vincent Koc
6d90e00fa3
refactor: dedupe channel approval forwarding
2026-05-29 00:48:40 +02:00
Peter Steinberger
a661506b0f
fix(release): satisfy lint for beta preflight
2026-05-28 21:28:50 +01:00
Tideclaw
05202c1f8a
test: tighten imessage notification callback type
2026-05-28 21:22:16 +01:00
Vincent Koc
50e6bd307d
test(agents): narrow Codex bootstrap assertions
2026-05-28 22:14:38 +02:00
Vincent Koc
65d47dc5d7
fix(imessage): bound cli output capture
2026-05-28 16:22:21 +02:00
Peter Steinberger
aab5410bd5
test: speed up slow test suite ( #87611 )
...
* test: speed up slow test suite
* test: preserve fake timer cleanup hooks
* test: avoid timeout readiness race
* test: satisfy reply test types
* test: restore runner and image coverage
* test: restore final media runner path
* test: make cli auth status fixture deterministic
* test: repair runtime alias fixtures
2026-05-28 13:20:19 +01:00
Peter Steinberger
cee2a50fe6
chore(release): prepare 2026.5.28
2026-05-28 01:48:07 +01:00
Peter Steinberger
59c3ee7c45
fix(imessage): continue polling after denied reactions
...
(cherry picked from commit 6cc534af9b859301f9ff814bdd8672fa910141e3)
2026-05-28 00:17:52 +01:00
Kevin Lin
40bca6d8bb
fix(imessage): suppress duplicate native exec approvals
...
Fix iMessage native exec approval routing so approval prompts bind to the sent GUID without duplicate sends after RPC timeout. Also keeps chat.db GUID recovery on the local imsg path while avoiding local DB recovery for configured or detected SSH wrappers.
Thanks @kevinslin.
2026-05-27 23:55:28 +01:00
Kevin Lin
bb752c2b47
Revert "feat: expose plugin approval action metadata" ( #87419 )
...
This reverts commit 0c867eef75 .
# Conflicts:
# docs/.generated/plugin-sdk-api-baseline.sha256
2026-05-27 14:48:06 -07:00
Peter Steinberger
7aaca4a8a6
chore(release): prepare 2026.5.27
2026-05-27 16:53:50 +01:00
Peter Steinberger
1507a9701b
refactor: centralize inbound supplemental context
...
* refactor: centralize inbound supplemental context
* refactor: trim supplemental finalizer typing
* docs: clarify supplemental context projection
* refactor: move inbound finalization into core
* refactor: simplify channel inbound facts
* refactor: fold supplemental media into inbound finalizer
* refactor: migrate channel inbound callers to builder
* docs: mark inbound finalizer compat types deprecated
* refactor: wire runtime turn context builder
* refactor: replace channel turn runtime API
* fix: respect discord quote visibility
* fix: avoid deprecated line dispatch helper
* refactor: deprecate channel message SDK seams
* docs: trim channel outbound SDK page
* test: migrate irc inbound assertion
* refactor: deprecate outbound SDK facades
* refactor: deprecate channel helper SDK facades
* refactor: deprecate channel streaming SDK facade
* refactor: move direct dm helpers into inbound SDK
* chore: mark legacy test-utils SDK alias deprecated
* refactor: remove unused allow-from read helper
* refactor: route remaining channel dispatch through core
* refactor: enforce modern extension SDK imports
* test: give slow image root tests more time
* ci: support node fallback on windows
* fix: add transcripts tool display metadata
* refactor: trim legacy channel test seams
* fix: preserve channel compat after rebase
* fix: keep deprecated channel inbound aliases
* fix: preserve discord thread context visibility
* fix: clean final rebase conflicts
* fix: preserve channel message dispatch aliases
* fix: sync channel refactor after rebase
* fix: sync channel refactor after latest main
* fix: dedupe memory-core subagent mock
* test: align clickclack inbound dispatch assertions
* fix: sync plugin sdk api hash after rebase
* fix: sync channel refactor after latest main
* fix: sync plugin sdk api hash after rebase
* fix: sync plugin sdk api hash after latest main
* test: remove stale inbound context awaits
2026-05-27 09:26:06 +01:00
Pablo Guardiola
0c867eef75
feat: expose plugin approval action metadata
...
Expose plugin approval action metadata so plugins can describe richer approval actions across gateway, SDK, channel, and UI surfaces.
2026-05-26 22:46:09 -07:00
Omar Shahine
9434228cdc
fix(imessage): dedupe accounts sharing the local Messages source ( #86705 )
...
Merged via squash.
Prepared head SHA: fcfe97d7c8
Co-authored-by: omarshahine <10343873+omarshahine@users.noreply.github.com >
Co-authored-by: omarshahine <10343873+omarshahine@users.noreply.github.com >
Reviewed-by: @omarshahine
2026-05-26 01:39:12 -07:00
Omar Shahine
17f7ef5c0f
fix(imessage): send group media via attachment command ( #86770 )
...
* fix(imessage): send group media via attachment command
* fix(imessage): preserve media rpc fallback
---------
Co-authored-by: Omar Shahine <10343873+omarshahine@users.noreply.github.com >
2026-05-25 23:31:27 -07:00
Omar Shahine
3452382cc0
fix(imessage): seed direct DM history ( #86706 )
...
* fix(imessage): seed direct DM history
* docs(imessage): clarify DM history override seeding
---------
Co-authored-by: Omar Shahine <10343873+omarshahine@users.noreply.github.com >
2026-05-25 22:38:32 -07:00
Omar Shahine
5a33378f9c
revert: iMessage group media attachment command ( #86734 )
...
Co-authored-by: Omar Shahine <10343873+omarshahine@users.noreply.github.com >
2026-05-25 19:47:16 -07:00
Omar Shahine
f32273257c
fix(imessage): send group media via attachment command
...
* fix(imessage): send chat media via attachment command
* fix(imessage): satisfy bundled lint
---------
Co-authored-by: Omar Shahine <10343873+omarshahine@users.noreply.github.com >
2026-05-25 19:24:37 -07:00
Peter Steinberger
d00d0a21c2
chore: bump OpenClaw to 2026.5.26
2026-05-26 01:26:00 +01:00