Skip to content

v0.1.6#10

Merged
ssweber merged 5 commits into
mainfrom
dev
Apr 8, 2026
Merged

v0.1.6#10
ssweber merged 5 commits into
mainfrom
dev

Conversation

@ssweber

@ssweber ssweber commented Apr 8, 2026

Copy link
Copy Markdown
Owner

Few fixes for our hydration check
Better SCR decode

ssweber and others added 5 commits April 8, 2026 08:49
…on golden

Add unit tests for _hydrate_wire_continuations (T → | propagation in
non-A columns) and dehydrate→hydrate round-trip tests through the
writer/converter pipeline. Add instr-copy-multirow-2af-T golden fixture
for copy instructions with a T-junction wire.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The wire continuation hydration pass blindly propagated `|` downward
through every blank cell below a `T` or `|`. When the row below had a
horizontal wire path from the left (e.g. a contact at C-1), the
vertical wire should terminate — Click auto-snaps the horizontal path
to the junction above without an explicit `|`.

Skip hydration at (R+1, C) when (R+1, C-1) carries a horizontal path
(anything other than blank or `|`).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…forward pass

The backward scan in _find_row_topology_block could match false positive
topology blocks created by flag-table tail bytes coincidentally matching
the _ROW_TOPOLOGY_PREFIX. This caused spurious 30-row rungs in some SCR
files (e.g. Scr12.tmp StackLight).

Replace the three scanning functions (_find_row_topology_block,
_find_row_topology_blocks_between, _brute_force_topology_block) with a
single _find_all_row_topology_blocks that forward-scans once, skipping
past each block's full extent (continuation_start). Topology blocks are
then assigned to sections by position, eliminating the backward scan
entirely.

Also removes unused _ROW_TOPOLOGY_FLAG_ENTRY_COUNTS constant.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@ssweber ssweber merged commit 2b0a0fe into main Apr 8, 2026
0 of 4 checks passed
@ssweber ssweber deleted the dev branch April 8, 2026 17:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant