Vincent Koc
918745ed21
docs(changelog): note native app reliability fixes
2026-07-13 03:53:15 +02:00
Vincent Koc
5e9bc0916f
fix(ios): harden gateway and watch state handling
2026-07-13 03:53:15 +02:00
Vincent Koc
b9d53d3cce
fix(android): keep disconnected nodes offline
2026-07-13 03:53:15 +02:00
Peter Steinberger
6eae468d45
feat(ui): scope the sidebar sessions list to the chip-selected agent ( #105832 )
...
* feat(ui): scope the sidebar sessions list to the selected agent
* fix(ui): render the target agent's cached sessions during a chip switch
* fix(ui): key the sessions list off the chip-selected agent
2026-07-12 18:43:11 -07:00
Peter Steinberger
cba79b4aaa
fix(slack): suppress room event typing indicators ( #105813 )
...
* fix(slack): suppress room event typing indicators
* fix(slack): suppress room event typing indicators
2026-07-12 18:41:49 -07:00
Vincent Koc
8091292e3e
refactor(infra): trim advertised host exports ( #105834 )
2026-07-13 09:40:34 +08:00
Peter Steinberger
43901be298
refactor(agents): trim embedded helper dead exports ( #105815 )
...
* refactor(agents): trim embedded helper exports
* chore(deadcode): refresh export baseline
* chore(deadcode): sync export baseline
* chore(deadcode): reconcile export baseline
2026-07-12 18:34:45 -07:00
Peter Steinberger
3613b83c6c
refactor(browser): trim private Playwright exports ( #105794 )
...
* refactor(browser): trim private Playwright exports
* chore(deadcode): refresh export baseline
* chore(deadcode): refresh current baseline
* chore(deadcode): refresh latest baseline
2026-07-12 18:30:34 -07:00
qingminlong
60ca7565a7
fix(discord): omit invalid component accent colors ( #105387 )
...
* fix(discord): omit invalid component accent colors
* test(discord): cover accent color boundaries
* docs: keep release notes in PR context
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-12 18:25:49 -07:00
Peter Steinberger
a63aec8bf8
test: remove more avoidable waits ( #105816 )
2026-07-12 18:24:13 -07:00
Vincent Koc
f1a64741b5
refactor(plugins): trim registry exports ( #105812 )
2026-07-13 09:16:54 +08:00
Peter Steinberger
6aca7ca48f
improve: start Gateway and first agent turn faster ( #105801 )
...
* perf(gateway): streamline cold startup and first turn
* test(gateway): cover startup fast-path contracts
2026-07-12 18:16:18 -07:00
Peter Steinberger
3616fba951
fix(gateway): make hot reload transactional ( #105289 )
...
* fix(gateway): make hot reload transactional
Replace partial reload side effects with a deferred transaction that publishes config, secrets, auth, and subsystem state together, and drains in-flight reload work before shutdown.
Co-authored-by: LZY3538 <293718838+LZY3538@users.noreply.github.com >
* fix(auth): preserve state-only credential ownership
Keep derived runtime snapshots in place for main-store state mutations so order refreshes do not look like credential replacement.
* fix(gateway): close reload transaction gaps
* fix(gateway): close merged reload gaps
* chore: move reload note to PR context
* fix(gateway): exclude restart emission root
---------
Co-authored-by: LZY3538 <293718838+LZY3538@users.noreply.github.com >
2026-07-12 18:16:15 -07:00
NIO
c93f87756a
fix(qqbot): reject unsafe mention patterns ( #102976 )
...
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-12 18:14:01 -07:00
Peter Steinberger
a948168690
fix(ui): restore logs auto-follow when re-enabled ( #105809 )
2026-07-12 18:13:09 -07:00
Vincent Koc
4afcbea5c5
test(sqlite): harden compaction and restore reliability proof ( #105811 )
...
* test(sqlite): chain compaction and restore reliability proof
* test(sqlite): bound reliability stress storage
* test(sqlite): monitor transient WAL growth
2026-07-13 09:09:21 +08:00
Peter Steinberger
774d5249cc
test: eliminate unchecked TypeScript casts ( #105804 )
2026-07-12 18:08:26 -07:00
Peter Steinberger
f9d7aa286e
refactor(sessions): reduce accessor boundary debt ( #105786 )
...
* refactor(sessions): publish rewrite updates through accessor
* refactor(sessions): patch suspensions through accessor
* refactor(acp): clarify accessor-backed session loads
* test(sessions): ratchet accessor boundary debt
* fix(sessions): preserve file-backed rewrite notifications
* test(sessions): retain file-backed rewrite debt
* fix(sessions): preserve transcript rewrite update identity
* test(sessions): restore rewrite debt baseline
2026-07-12 18:07:55 -07:00
Vincent Koc
6c88469110
refactor(msteams): remove obsolete sso invoke stack ( #105799 )
2026-07-13 08:59:08 +08:00
Vincent Koc
5c49055293
fix(release): allow larger plugin publication manifests ( #105800 )
2026-07-13 08:55:23 +08:00
Peter Steinberger
fe0a6db2b4
fix(slack): warn on disabled channel drops ( #105790 )
2026-07-12 17:50:14 -07:00
Peter Steinberger
462edb3373
fix(ui): scope usage insights to active filters ( #105792 )
2026-07-12 17:46:54 -07:00
Peter Steinberger
fbade914f5
refactor(plugins): decompose plugin registry ( #105783 )
...
* refactor(plugins): decompose plugin registry
* chore(plugins): move session accessor debt baseline
2026-07-12 17:44:27 -07:00
Peter Steinberger
af326b98d7
fix(macos): avoid SwiftUI macro plugin dependency ( #105768 )
...
* fix(macos): avoid SwiftUI macro plugin dependency
* fix(macos): scope chat previews to iOS
* chore(i18n): refresh native source locations
* fix(macos): preserve explicit environment keys in formatter
* chore(pr): keep changelog release-owned
2026-07-12 17:40:41 -07:00
Peter Steinberger
95c3182030
refactor(agents): trim auth-profile dead exports ( #105788 )
...
* refactor(agents): trim auth profile exports
* chore(deadcode): refresh export baseline
2026-07-12 17:38:39 -07:00
ZOOWH
a2b55b5721
fix(cron): throttle session reaper after persistence errors ( #105386 )
...
* fix(cron): throttle session reaper after persistence errors
* refactor(cron): record session reaper attempts eagerly
* docs: keep release notes in PR context
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-12 17:36:40 -07:00
Peter Steinberger
e01d1e85f3
ci(swift): enforce shared OpenClawKit dead-code coverage ( #105770 )
...
* ci(swift): enforce shared kit dead-code coverage
* chore(i18n): sync native source inventory
* ci(swift): install pinned iOS scan tools
2026-07-12 17:35:47 -07:00
xiaobao-k8s
ff166425d1
fix(media): parse local file extensions across path styles ( #105614 )
...
* fix(media): parse local file extensions across path styles
* docs: note cross-platform media path fix
* docs: keep release notes in PR context
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-12 17:35:43 -07:00
wuqxuan
5429f06940
fix(ai): clean up abort listener after provider retry sleep ( #105519 )
...
* fix(ai): unregister abort listener after provider sleep completes
* refactor(ai): isolate abortable retry sleep
* test(ai): isolate retry sleep lifecycle coverage
* docs: keep release notes in PR context
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-12 17:34:30 -07:00
Vincent Koc
8f7295ee35
refactor(gateway): trim session utils exports ( #105782 )
2026-07-13 08:33:36 +08:00
chengzhichao-xydt
cacd435632
fix(tlon): bound stalled inbound and outbound media header waits ( #104132 )
...
* fix(tlon): bound stalled inbound and outbound media header waits
* refactor(tlon): share media fetch timeout policy
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-12 17:30:35 -07:00
VectorPeak
b4d3a038a2
fix: run ts-topology entrypoint on Windows ( #105397 )
...
* fix: run ts-topology entrypoint on Windows
Co-authored-by: chatgpt-codex-connector[bot] <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com>
* refactor: tighten ts-topology entrypoint guard
---------
Co-authored-by: chatgpt-codex-connector[bot] <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-12 17:26:04 -07:00
Peter Steinberger
491e1f6f6d
feat(ui): agent-centric sidebar footer chip with utility menu ( #105777 )
...
* feat(ui): agent-centric sidebar footer chip with utility menu
* feat(ui): agent chip menu anchoring, link styling, locale sync
* fix(ui): keep agent chip presence announcement out of the aria-hidden avatar
* fix(ui): resolve agent chip resume sessions against the target agent, not the route agent
* fix(ui): tie unprefixed session keys to the system default agent in chip resume
* style(ui): oxfmt layout.css
2026-07-12 17:25:41 -07:00
Peter Steinberger
867284dfa3
refactor(deadcode): delete package and script exports ( #105776 )
...
Refs #105733
2026-07-12 17:24:45 -07:00
Peter Steinberger
55067fd5e7
fix(cli): gateway startup no longer waits for claw animation ( #105774 )
...
* fix(cli): avoid gateway delay from claw animation
* chore: keep release notes in PR metadata
2026-07-12 17:20:30 -07:00
Peter Steinberger
0ba1e5ca2e
fix(ui): honor session delete no-op results ( #105778 )
2026-07-12 17:17:05 -07:00
Vincent Koc
37807242c9
fix(release): pin publish workflow refs ( #105773 )
2026-07-13 08:15:35 +08:00
Vincent Koc
c9012f2037
refactor(ui): trim private API type exports ( #105772 )
2026-07-13 08:11:24 +08:00
Peter Steinberger
cee3e30c68
fix(docs-i18n): mask fenced literals before translation
2026-07-12 20:10:31 -04:00
Peter Steinberger
1c33c52f1b
refactor(mcp): trim private app exports ( #105771 )
2026-07-12 17:07:58 -07:00
Vincent Koc
01501f717a
refactor(nostr): trim private test seams ( #105756 )
2026-07-13 08:03:54 +08:00
Vincent Koc
4be088ec02
fix(sqlite): reject unsafe maintenance schema additions ( #105767 )
2026-07-13 08:01:14 +08:00
Vincent Koc
dc644800ef
refactor(packages): trim private aggregate roots ( #105747 )
2026-07-13 08:00:59 +08:00
pick-cat
81b480f26b
fix(restart-handoff): use normalizeText for intentId to match sibling fields ( #104168 )
...
* fix(restart-handoff): use normalizeText for intentId to match sibling fields
* chore: trigger CI re-run
* fix(restart-handoff): normalize persisted intent IDs
Co-authored-by: Pick-cat <huang.ting3@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-12 16:57:35 -07:00
Peter Steinberger
1ffccaab94
fix(ui): omit blank cron delivery account ids ( #105762 )
2026-07-12 16:56:54 -07:00
Peter Steinberger
f87492539b
test(whatsapp): initialize runtime in auto-reply harness ( #105760 )
2026-07-12 16:50:55 -07:00
Vincent Koc
b7a7f3fa71
refactor(ai): trim private Responses exports ( #105720 )
2026-07-13 07:46:35 +08:00
Vincent Koc
13212f1a4d
fix(release): accept canonical plugin package identities ( #105746 )
2026-07-13 07:45:31 +08:00
evan-YM
45e681deac
fix(slack): guard matchesSlackDeliveryMetadataSignature against UTF-8/UTF-16 length mismatch ( #105492 )
...
* [AI] fix(slack): guard matchesSlackDeliveryMetadataSignature against UTF-8/UTF-16 length mismatch
Compare Buffer byte lengths instead of JS string lengths (UTF-16 code
units) so multi-byte characters in the stored signature never produce
mismatched Buffer sizes that would cause timingSafeEqual to throw
TypeError and crash the message reconciliation loop.
Related to #105436
Co-Authored-By: Claude <noreply@anthropic.com >
* test(slack): prove malformed delivery signature recovery
---------
Co-authored-by: Claude <noreply@anthropic.com >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-12 16:44:52 -07:00
Peter Steinberger
ada0dee301
refactor(agents): hide unused runtime-plan helper types ( #105755 )
...
* refactor(agents): hide runtime plan helper types
* chore(deadcode): refresh export baseline
2026-07-12 16:44:31 -07:00