Malte Ubl and Claude Opus 5.5
c294d129d0
Filter a union of arrays arm by arm
...
`.filter` on `A[] | B[]` refused with SC2020: `lowerArrayUnionHofCall`
admitted only `map` and `forEach`. Under TS 5.2's callable-union rule the
predicate runs over `A | B`, and the result element is the one the
predicate names — `(b): b is TextContent` over a union of block arrays
answers `TextContent[]` — which no single arm's element need equal.
`filter` joins the same arm dispatch: each arm filters its own concrete
array through the existing per-arm helper, and its survivors then pass
through the checked conversion to the checker's result element, so a
predicate that kept an element it does not describe throws instead of
reinterpreting a value. An arm with no such conversion (a boolean
predicate that names no narrower element) leaves the SC2020 fence in place.
Typed programs are untouched: the gate only widens, and `map`/`forEach`
keep their exact helper key, so the helpers a program already emitted stay
byte-identical.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-29 19:11:10 -07:00
..
2026-10-29 19:11:10 -07:00
2026-10-28 06:40:50 -05:00
2026-10-28 08:56:40 -05:00
2026-10-25 19:42:02 -05:00
2026-10-25 18:35:38 -07:00
2026-10-20 21:05:19 -05:00
2026-10-20 21:05:19 -05:00
2026-10-05 17:51:24 -05:00
2026-10-20 17:56:44 -05:00
2026-10-20 07:22:27 -07:00
2026-10-20 07:22:27 -07:00
2026-10-27 10:32:32 -05:00
2026-10-27 05:40:00 -07:00
2026-09-28 12:02:00 -05:00
2026-10-05 17:51:24 -05:00
2026-10-20 17:56:44 -05:00
2026-10-05 17:51:24 -05:00
2026-10-14 11:43:44 -05:00
2026-10-26 22:38:40 -05:00
2026-10-22 19:35:40 -07:00
2026-10-25 15:06:50 -07:00
2026-10-21 09:09:19 -05:00
2026-10-28 08:56:40 -05:00
2026-10-29 08:37:25 -05:00
2026-10-29 08:37:25 -05:00
2026-10-20 17:56:44 -05:00
2026-10-25 15:36:08 -05:00
2026-10-25 15:36:08 -05:00
2026-10-19 06:33:33 -05:00
2026-10-20 17:56:44 -05:00
2026-10-20 17:56:44 -05:00
2026-10-26 14:09:17 -05:00
2026-10-26 14:09:17 -05:00
2026-10-29 05:34:46 -07:00
2026-10-20 17:56:44 -05:00
2026-10-27 03:24:16 -05:00
2026-10-27 19:47:24 -05:00
2026-10-22 04:27:35 -05:00
2026-10-22 04:27:35 -05:00
2026-10-22 04:27:35 -05:00
2026-10-20 17:56:44 -05:00
2026-10-20 17:56:44 -05:00
2026-10-22 07:20:38 -05:00
2026-10-05 17:51:24 -05:00
2026-10-20 17:56:44 -05:00
2026-10-20 17:56:44 -05:00
2026-10-19 06:33:33 -05:00
2026-10-05 17:51:24 -05:00
2026-10-19 06:33:33 -05:00
2026-10-22 18:49:52 -07:00
2026-10-12 12:25:30 -05:00
2026-10-20 18:21:35 -05:00
2026-10-23 06:20:02 -05:00
2026-10-23 06:20:02 -05:00
2026-10-05 17:51:24 -05:00
2026-10-20 17:56:44 -05:00
2026-10-20 17:56:44 -05:00
2026-10-20 18:21:35 -05:00
2026-10-20 17:56:44 -05:00
2026-10-20 17:56:44 -05:00
2026-10-20 17:56:44 -05:00
2026-10-20 17:56:44 -05:00
2026-10-05 17:51:24 -05:00
2026-10-05 17:51:24 -05:00
2026-10-20 08:29:06 -05:00
2026-10-20 18:21:35 -05:00
2026-10-25 01:04:55 -05:00
2026-10-25 01:04:55 -05:00
2026-10-05 17:51:24 -05:00
2026-10-24 15:20:53 -05:00
2026-10-20 17:56:44 -05:00
2026-10-23 06:20:02 -05:00
2026-10-05 17:51:24 -05:00
2026-10-05 17:51:24 -05:00
2026-10-20 17:56:44 -05:00
2026-10-21 08:11:47 -07:00
2026-10-21 08:11:47 -07:00
2026-10-22 00:34:51 -05:00
2026-10-25 10:27:52 -07:00
2026-10-21 22:23:04 -05:00
2026-10-21 22:23:04 -05:00
2026-10-21 19:20:54 -05:00
2026-10-21 19:20:54 -05:00
2026-10-18 13:40:18 -07:00
2026-10-25 12:05:52 -07:00
2026-10-12 12:25:30 -05:00
2026-10-19 17:31:38 -07:00
2026-10-25 05:15:58 -05:00
2026-10-24 20:06:31 -05:00
2026-10-19 06:33:33 -05:00
2026-10-29 15:27:09 -05:00
2026-10-27 21:43:36 -05:00
2026-10-25 20:42:25 -05:00
2026-10-05 17:51:24 -05:00
2026-10-22 20:01:47 -05:00
2026-10-29 15:24:04 -05:00
2026-10-12 12:25:30 -05:00
2026-10-12 12:25:30 -05:00
2026-09-30 02:17:56 -05:00
2026-10-18 08:57:56 -07:00
2026-10-26 00:51:51 -05:00
2026-10-05 17:51:24 -05:00
2026-10-12 12:25:30 -05:00
2026-10-05 17:51:24 -05:00
2026-10-12 12:25:30 -05:00
2026-10-20 17:56:44 -05:00
2026-10-25 05:03:57 -05:00
2026-10-19 07:41:28 -05:00
2026-10-25 16:16:41 -07:00
2026-10-24 12:22:19 -05:00
2026-10-24 12:22:19 -05:00
2026-10-06 04:19:01 -05:00
2026-10-29 15:27:09 -05:00
2026-10-25 12:41:21 -07:00
2026-10-29 15:59:21 -05:00
2026-10-19 06:33:33 -05:00
2026-10-05 17:51:24 -05:00
2026-10-05 17:51:24 -05:00
2026-10-25 15:36:08 -05:00
2026-10-20 17:56:44 -05:00
2026-08-23 20:16:13 -05:00