Said Turksever and Claude Opus 5.5
c2f1b54d00
refactor(street-level): remove the remaining duplicated code and fakes
...
A duplicate scan of every module the PR adds (repeated 4-line blocks,
normalised) after gekh's dedup round left these:
- glyphs.js: the cone, ring and position glyphs share cachedGlyph(), wedge(),
ring() and dot(). Checked with a recording canvas: all 20 draw calls keep
the same path and fill/stroke state, so the glyphs are pixel-identical.
- panelPositionControls.js: one placeAt() for the three places that pin a
panel's top-left corner as a fixed window.
- tiles.js: one warn() for the three background-failure logs.
- Tests: src/testSupport/streetLevelFakes.mjs holds the provider snapshot
(uiState + presentation tests), the stand-in provider (core + controls
tests) and one real-ray pinhole camera (view + coverage tests, which had
each written their own). The coverage line-of-sight test still fails when
refresh() stops passing its focus.
- qa-street-level.mjs: one waitForCoverage() for the five copies of the
"on, drawn, settled, not key-gated" wait.
No behaviour change: unit 5862 pass, fixture gate 16/16, panel gate 5/5.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-06 14:27:58 +01:00
..
2026-09-28 19:07:57 -05:00
2026-10-05 18:35:44 +01:00
2026-10-05 13:47:54 +01:00
2026-09-15 20:15:32 -07:00
2026-10-06 14:27:58 +01:00
2026-10-04 10:49:06 -07:00
2026-09-28 19:07:57 -05:00
2026-09-28 19:07:57 -05:00
2026-09-23 16:00:53 -05:00
2026-09-28 19:07:57 -05:00
2026-09-28 19:07:57 -05:00
2026-10-03 23:10:32 -07:00
2026-10-05 13:47:54 +01:00
2026-09-12 21:55:18 -07:00
2026-10-06 14:27:58 +01:00
2026-10-05 18:35:44 +01:00
2026-10-03 23:10:32 -07:00
2026-10-06 14:27:58 +01:00
2026-10-02 18:29:42 -07:00
2026-10-02 21:18:15 -07:00
2026-09-12 21:55:18 -07:00
2026-09-24 01:52:41 -05:00
2026-09-11 17:02:54 -07:00
2026-09-28 19:07:57 -05:00
2026-09-28 19:07:57 -05:00
2026-09-15 11:17:10 -07:00
2026-09-15 07:26:32 -07:00
2026-08-24 17:02:16 -05:00
2026-09-14 15:29:10 -07:00
2026-09-15 07:26:32 -07:00
2026-09-14 15:29:10 -07:00
2026-09-15 07:26:32 -07:00
2026-08-24 17:02:16 -05:00
2026-09-14 19:08:00 -05:00
2026-09-15 07:26:32 -07:00
2026-08-24 17:02:16 -05:00
2026-10-01 17:00:10 +05:30
2026-09-13 02:37:44 -07:00
2026-08-31 17:49:45 -05:00
2026-09-13 02:33:38 -07:00
2026-09-15 07:26:32 -07:00
2026-08-24 17:02:16 -05:00
2026-09-23 20:31:56 -07:00
2026-09-23 20:31:56 -07:00
2026-10-01 17:00:10 +05:30
2026-10-01 17:00:10 +05:30
2026-09-15 07:26:32 -07:00
2026-09-14 15:29:10 -07:00
2026-09-15 07:26:32 -07:00
2026-08-24 17:02:16 -05:00
2026-09-14 15:29:10 -07:00
2026-09-14 15:29:10 -07:00
2026-10-02 20:17:21 -07:00
2026-09-28 19:07:57 -05:00
2026-09-15 07:26:32 -07:00
2026-09-10 23:48:12 -07:00
2026-09-23 20:31:56 -07:00
2026-09-23 20:31:56 -07:00
2026-09-23 20:31:56 -07:00
2026-09-23 20:31:56 -07:00
2026-09-23 20:31:56 -07:00
2026-09-23 20:31:56 -07:00
2026-09-14 18:55:24 -05:00
2026-09-01 11:17:42 -05:00
2026-10-02 15:21:37 -07:00
2026-09-23 20:31:56 -07:00
2026-09-12 16:37:04 -07:00
2026-09-11 15:08:23 -07:00
2026-09-11 15:08:23 -07:00
2026-09-23 20:31:56 -07:00
2026-09-13 22:41:11 -07:00
2026-09-15 07:26:32 -07:00
2026-09-23 20:31:56 -07:00
2026-09-23 20:31:56 -07:00
2026-08-24 17:02:16 -05:00
2026-08-24 17:02:16 -05:00
2026-09-22 17:45:39 -05:00
2026-09-22 17:45:39 -05:00
2026-09-13 04:26:09 -07:00
2026-09-13 21:23:13 -07:00
2026-09-14 14:49:04 -07:00
2026-10-02 15:21:37 -07:00
2026-09-23 20:31:56 -07:00
2026-10-05 17:06:24 +01:00
2026-09-12 13:00:43 -07:00
2026-09-21 17:28:23 +02:00
2026-09-13 17:21:42 -07:00
2026-09-14 15:29:10 -07:00
2026-10-02 20:02:48 -07:00
2026-10-02 19:56:42 -07:00
2026-09-14 15:29:10 -07:00
2026-09-28 19:07:57 -05:00
2026-09-28 19:07:57 -05:00
2026-09-12 22:55:18 -07:00
2026-08-24 17:02:16 -05:00
2026-09-15 07:26:32 -07:00
2026-08-24 17:02:16 -05:00
2026-09-11 18:08:01 -07:00
2026-09-14 15:29:10 -07:00
2026-09-12 22:25:05 -07:00
2026-09-14 15:29:10 -07:00
2026-09-13 18:59:29 -07:00
2026-09-13 18:59:29 -07:00
2026-09-13 18:59:29 -07:00
2026-10-04 10:49:06 -07:00
2026-09-14 19:21:38 -05:00
2026-09-15 07:26:32 -07:00
2026-08-24 17:02:16 -05:00
2026-09-28 19:07:57 -05:00
2026-09-14 21:22:08 -05:00
2026-09-14 21:22:08 -05:00
2026-09-15 07:26:32 -07:00
2026-09-28 19:07:57 -05:00
2026-09-28 19:07:57 -05:00
2026-09-14 15:29:10 -07:00
2026-09-12 19:55:02 -07:00
2026-09-23 20:31:56 -07:00
2026-09-11 15:08:23 -07:00
2026-09-11 15:08:23 -07:00
2026-08-31 17:49:45 -05:00
2026-09-14 19:34:23 -05:00
2026-09-15 07:41:56 -07:00
2026-08-24 17:02:16 -05:00
2026-08-24 17:02:16 -05:00
2026-09-23 20:31:56 -07:00
2026-10-02 15:21:37 -07:00
2026-09-15 07:26:32 -07:00
2026-08-24 17:02:16 -05:00
2026-09-15 07:26:32 -07:00
2026-09-23 15:21:21 +01:00
2026-09-14 20:09:41 -05:00
2026-09-15 07:26:32 -07:00
2026-08-31 17:49:45 -05:00
2026-09-25 18:08:43 +01:00
2026-10-05 18:35:30 +01:00
2026-10-05 18:35:30 +01:00
2026-09-13 04:26:11 -07:00
2026-08-24 17:02:16 -05:00
2026-10-05 18:35:30 +01:00
2026-09-14 18:55:24 -05:00
2026-09-14 14:49:04 -07:00
2026-08-24 17:02:16 -05:00
2026-09-15 07:26:32 -07:00
2026-08-24 17:02:16 -05:00
2026-09-15 07:26:32 -07:00
2026-08-24 17:02:16 -05:00