Commit Graph

48264 Commits

Author SHA1 Message Date
Shakker
230be4e91c test: cleanse login raw errors 2026-05-12 17:35:05 +01:00
Peter Steinberger
6a099e5971 test: dedupe model picker mock calls 2026-05-12 17:34:46 +01:00
Shakker
07f68b1b4d test: diagnose login connection guidance 2026-05-12 17:33:57 +01:00
Shakker
63563713c6 test: pair login context guidance 2026-05-12 17:33:21 +01:00
Shakker
505aa38079 test: prescribe login auth guidance 2026-05-12 17:32:33 +01:00
Shakker
fe04523211 test: option session override selects 2026-05-12 17:31:32 +01:00
Shakker
5f081c8cd5 test: column sessions table 2026-05-12 17:30:39 +01:00
Peter Steinberger
05fabfbc9c test: dedupe google meet mock calls 2026-05-12 17:29:52 +01:00
Shakker
b98e97210b test: unhide raw config body 2026-05-12 17:29:15 +01:00
Shakker
bfc5d99828 test: flatten malformed config values 2026-05-12 17:28:45 +01:00
Shakker
ddfa97eba2 test: arrange config tabs 2026-05-12 17:27:32 +01:00
Shakker
2cb8a0c4fb test: retain cron advanced labels 2026-05-12 17:26:49 +01:00
Shakker
d7dfd4a8b2 test: navigate cron run links 2026-05-12 17:26:02 +01:00
Peter Steinberger
a8bc83edf4 test: dedupe diagnostics otel mock calls 2026-05-12 17:25:57 +01:00
Shakker
3aeec2e4a4 test: wire cron suggestion lists 2026-05-12 17:25:00 +01:00
Shakker
5681cfd839 test: distinguish cron delivery options 2026-05-12 17:24:14 +01:00
Shakker
641eaeecf3 test: gather localized selectors 2026-05-12 17:23:27 +01:00
Shakker
706b9a2ef7 test: announce slash option exactly 2026-05-12 17:22:34 +01:00
Shakker
637afd6a11 test: sequence thinking option labels 2026-05-12 17:21:06 +01:00
Shakker
a728e6aaf6 test: expect config section titles 2026-05-12 17:19:26 +01:00
Peter Steinberger
6cfb532afd test: dedupe feishu drive mock calls 2026-05-12 17:19:17 +01:00
Shakker
0c5e33480e test: honor wildcard raw redaction 2026-05-12 17:18:20 +01:00
Shakker
3589827635 test: disclose raw redaction state 2026-05-12 17:17:48 +01:00
Shakker
c630aa3488 test: prove config reveal reset 2026-05-12 17:17:08 +01:00
Shakker
16f2b22b33 test: mask config raw secrets 2026-05-12 17:14:49 +01:00
Shakker
b5f8e4c18a test: notice raw mode lockout 2026-05-12 17:13:34 +01:00
Peter Steinberger
72d9ea3b76 test: dedupe matrix send mock calls 2026-05-12 17:13:20 +01:00
Shakker
628eeda84a test: limit scoped config labels 2026-05-12 17:12:41 +01:00
Shakker
ae773272ac test: clear config diff panel 2026-05-12 17:12:00 +01:00
Shakker
0918f3823b test: open config diff rows 2026-05-12 17:11:07 +01:00
Shakker
1f1a5c205c test: quote theme importer hints 2026-05-12 17:09:59 +01:00
Shakker
adb8d553e4 test: mark imported theme metadata 2026-05-12 17:09:19 +01:00
Peter Steinberger
3598938458 test: dedupe openresponses mock calls 2026-05-12 17:09:07 +01:00
Shakker
c5574eb796 test: redact secret ref input 2026-05-12 17:08:23 +01:00
Shakker
c967410bed test: unpack device pairing rows 2026-05-12 17:07:34 +01:00
Shakker
87a4da89e3 test: badge agent tool provenance 2026-05-12 17:05:43 +01:00
Shakker
9be8d38f95 test: freeze exec approval expiry 2026-05-12 17:04:46 +01:00
Peter Steinberger
c0e287f3c1 test: dedupe embedded attempt mock calls 2026-05-12 17:04:11 +01:00
Shakker
e15bb302e0 test: translate exec approval chrome 2026-05-12 17:03:22 +01:00
Shakker
4fe36dc608 test: inventory cron filter options 2026-05-12 17:02:20 +01:00
Shakker
9808fd6802 test: localize talk button title 2026-05-12 17:01:21 +01:00
Shakker
a230aefb40 test: itemize login failure panel 2026-05-12 17:00:24 +01:00
Peter Steinberger
8c6dd5bddc test: dedupe outbound delivery mock calls 2026-05-12 16:59:51 +01:00
Shakker
9076ce0a7d test: outline cron advanced controls 2026-05-12 16:56:32 +01:00
Shakker
24fa9ba6a4 test: expose cron edit controls 2026-05-12 16:55:20 +01:00
Shakker
a5557d1fb5 test: index cron validation status 2026-05-12 16:54:47 +01:00
Peter Steinberger
4f1bee9f8b test: dedupe telegram send mock calls 2026-05-12 16:54:31 +01:00
Ayaan Zaidi
4272ce1597 chore(voice-call): note Telnyx realtime PR (#81024) (thanks @dynamite-bud) 2026-05-12 21:23:50 +05:30
Ayaan Zaidi
665c29d4dc fix(voice-call): bind Telnyx realtime streams to issued calls 2026-05-12 21:23:50 +05:30
Rudra
148e5467b5 fix: align Telnyx stream lifecycle parsing with carrier docs
Two parsing bugs caught by Codex review on the Telnyx Media Streaming
PR:

Lifecycle webhook event names had a stray `call.` prefix that never
matched Telnyx's documented event types. Telnyx surfaces stream
lifecycle as `streaming.started` and `streaming.stopped` (no prefix);
stream errors arrive as `{event:"error"}` JSON frames over the
WebSocket, not as carrier webhooks. Drop the bogus
`call.streaming.failed` case from the webhook parser and add a new
`error` frame kind to the StreamFrameAdapter union so the realtime
handler can log failures instead of silently dropping them.

Telnyx WebSocket frames carry `stream_id` at the top level of the
envelope and `call_control_id` inside the `start` object; the
Telnyx adapter was reading `start.stream_id` (always undefined) and
defaulting `providerCallId` to the constructor-supplied value
regardless of what the carrier sent. Read both fields from the
documented locations and fall back to the constructor providerCallId
only when the carrier frame omits them.

Tests updated to reflect the carrier-documented frame shapes; new
fixture covers `{event:"error"}` round-trip through the adapter.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 21:23:50 +05:30