Omar Shahine
85cfba675a
fix(bluebubbles): lazy-refresh Private API status on send ( #43764 ) ( #65447 )
...
* fix(bluebubbles): lazy refresh Private API cache on send to prevent silent reply threading degradation (#43764 )
When the 10-minute server info cache expires, sends requesting reply
threading or effects silently degrade to plain messages. Add a lazy
async refresh of the cache in the send path when Private API features
are needed but status is unknown, preserving graceful degradation if
the refresh fails.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* fix(bluebubbles): apply lazy Private API refresh to attachment sends and add missing test coverage (#43764 )
Attachment sends had the same cache-expiry bug as text sends: when the
10-minute Private API status cache TTL expired, reply threading metadata
was silently dropped. Apply the same lazy-refresh pattern from send.ts.
Also add the missing "refresh succeeds with private_api: false" test case
for both send.ts and attachments.ts — proves effects throw and reply
threading degrades without the "unknown" warning when the API is explicitly
disabled.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* chore: update no-raw-channel-fetch allowlist for test-harness line shift
Adding fetchBlueBubblesServerInfo to the probe mock module shifted
globalThis.fetch in test-harness.ts from line 128 to 130.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
---------
Co-authored-by: Lobster <lobster@shahine.com >
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 11:03:47 -07:00
Peter Steinberger
39d1a817fa
lint: enable small oxlint rules
2026-04-11 02:15:21 +01:00
Peter Steinberger
60b61288c4
test: fix cron and binding stability
2026-04-11 02:10:47 +01:00
Peter Steinberger
37b91be894
fix(ci): reset BlueBubbles binding adapter fixtures
2026-04-11 01:21:59 +01:00
Tak Hoffman
6afff0642e
fix: preserve account binding metadata on rebind
2026-04-10 19:12:02 -05:00
Peter Steinberger
ebfd468ee0
refactor: simplify typed conversions
2026-04-11 01:01:30 +01:00
Peter Steinberger
29ff425727
refactor: simplify bluebubbles setup strings
2026-04-11 00:08:15 +01:00
Tak Hoffman
8e45398e1d
fix: preserve outbound sender policy context
2026-04-10 17:48:58 -05:00
Vincent Koc
60a3733f12
fix(bluebubbles): remove status type barrel cycle
2026-04-09 09:22:11 +01:00
Vignesh Natarajan
2484064c48
chore(lint): clear extension lint regressions and add #63416 changelog
2026-04-08 17:17:29 -07:00
Peter Steinberger
95e397a266
refactor: dedupe repeated test helpers
2026-04-08 09:58:22 +01:00
Vincent Koc
4260ac4cf6
perf(plugins): narrow boundary compile sdk imports
2026-04-08 08:52:51 +01:00
Peter Steinberger
b6970865b6
refactor: dedupe path lowercase helpers
2026-04-07 22:57:52 +01:00
Peter Steinberger
a4bb2698dd
refactor: dedupe ui provider lowercase helpers
2026-04-07 20:58:01 +01:00
James Reagan
dac72889e5
fix(bluebubbles): localhost probe respects private-network opt-out ( #59373 )
...
* honor localhost private-network policy
* drop flaky monitor private-network test
* align mocks and imports
* preserve account private-network overrides
* keep default account config
* strip stale private-network aliases
* fix(bluebubbles): remove unused channel imports
* fix: add changelog for bluebubbles private-network opt-out landing (#59373 ) (thanks @jpreagan)
---------
Co-authored-by: Shadow <hi@shadowing.dev >
2026-04-07 11:29:21 -05:00
Peter Steinberger
bbcc95948e
refactor: dedupe provider lowercase helpers
2026-04-07 15:53:50 +01:00
Peter Steinberger
4bcbb22678
refactor: dedupe messaging lowercase helpers
2026-04-07 15:53:49 +01:00
Peter Steinberger
ad605052bf
refactor: dedupe provider lowercase helpers
2026-04-07 15:12:31 +01:00
Peter Steinberger
1409d5a160
fix(boundary): restore bluebubbles and matrix type seams
2026-04-07 14:17:03 +01:00
Peter Steinberger
60199fbee3
test: speed up bluebubbles pairing tests
2026-04-07 13:59:09 +01:00
Peter Steinberger
88b394ba1b
refactor: dedupe feishu and bluebubbles lowercase helpers
2026-04-07 13:44:41 +01:00
Peter Steinberger
4ede1e4e3a
fix(boundary): restore compile and dm policy type paths
2026-04-07 13:28:55 +01:00
Vincent Koc
dfb6c9c920
perf(plugin-sdk): split channel secret runtime helpers
2026-04-07 13:09:12 +01:00
Peter Steinberger
b39c7eece6
refactor: dedupe extension lowercase readers
2026-04-07 12:18:01 +01:00
Peter Steinberger
ac478e2024
test: speed up setup surface tests
2026-04-07 11:57:25 +01:00
Peter Steinberger
6236db5192
refactor: dedupe runtime helper aliases
2026-04-07 09:44:53 +01:00
Peter Steinberger
9d8d1dd4c5
refactor: dedupe shared string aliases
2026-04-07 09:44:53 +01:00
Peter Steinberger
dbc67a5626
refactor: dedupe helper alias readers
2026-04-07 08:40:34 +01:00
Peter Steinberger
424b65b697
refactor: dedupe bluebubbles and zalouser readers
2026-04-07 08:40:34 +01:00
Peter Steinberger
9fcef82f2d
refactor: dedupe bluebubbles readers
2026-04-07 06:55:45 +01:00
Peter Steinberger
9e2a1e12fd
refactor: dedupe channel runtime error formatting
2026-04-07 02:03:34 +01:00
Peter Steinberger
61f7d53731
refactor: dedupe shared string readers
2026-04-07 02:03:33 +01:00
Peter Steinberger
a88f240311
refactor: dedupe shared record coercers
2026-04-07 02:03:33 +01:00
Peter Steinberger
29163a8caa
refactor: dedupe bluebubbles status record helper
2026-04-06 22:54:48 +01:00
Peter Steinberger
92e3299793
refactor: dedupe bluebubbles send record helper
2026-04-06 22:54:48 +01:00
Peter Steinberger
ca73e598e0
refactor: dedupe bluebubbles monitor record helper
2026-04-06 22:54:47 +01:00
Vincent Koc
78639eff76
perf(secrets): narrow channel secret sdk seam
2026-04-06 20:40:11 +01:00
Peter Steinberger
6acb43f294
fix: resolve channel typing regressions
2026-04-06 17:43:57 +01:00
Peter Steinberger
e7e3f11b20
refactor: dedupe legacy private-network doctor contracts
2026-04-06 17:28:11 +01:00
Peter Steinberger
943d7de240
refactor: dedupe doctor compatibility adapters
2026-04-06 17:25:36 +01:00
Peter Steinberger
1c5cbad0a6
refactor: dedupe account conversation bindings
2026-04-06 17:18:36 +01:00
Vincent Koc
c3b19d204a
perf(test): lazy-load bundled channel secrets
2026-04-06 16:40:41 +01:00
Vincent Koc
6067f2d9ad
chore(plugins): drop dead channel test any suppressions
2026-04-06 15:45:18 +01:00
Peter Steinberger
af62a2c2e4
style: fix extension lint violations
2026-04-06 14:53:55 +01:00
Vincent Koc
0fdf9e874b
fix(config): normalize channel streaming config shape ( #61381 )
...
* feat(config): add canonical streaming config helpers
* refactor(runtime): prefer canonical streaming accessors
* feat(config): normalize preview channel streaming shape
* test(config): lock streaming normalization followups
* fix(config): polish streaming migration edges
* chore(config): refresh streaming baseline hash
2026-04-06 05:08:20 +01:00
Peter Steinberger
8cb85ff85f
refactor: harden plugin metadata and bundled channel entry seams
2026-04-06 00:15:38 +01:00
Peter Steinberger
97878b853a
refactor: move legacy config migration behind doctor
2026-04-05 16:12:45 +01:00
Peter Steinberger
41e39eb46f
refactor: register channel bootstrap capabilities
2026-04-05 09:13:48 +01:00
Vincent Koc
c863ee1b86
fix(config): migrate bundled private-network aliases ( #60862 )
...
* refactor(plugin-sdk): centralize private-network opt-in semantics
* fix(config): migrate bundled private-network aliases
* fix(config): add bundled private-network doctor adapters
* fix(config): expose bundled channel migration hooks
* fix(config): prefer canonical private-network key
* test(config): refresh rebased private-network outputs
2026-04-05 08:49:44 +01:00
Peter Steinberger
d5cb8cebcd
refactor(extensions): split channel runtime helper seams
2026-04-04 07:39:53 +01:00