Skip to content

Plumbing: read pipeviz plans and draw them on the same core - #4

Merged
XDGFX merged 2 commits into
mainfrom
worktree-155-pipeviz
Oct 1, 2026
Merged

XDGFX merged 2 commits into
mainfrom
worktree-155-pipeviz

Conversation

@XDGFX

@XDGFX XDGFX commented Oct 1, 2026

Copy link
Copy Markdown
Owner

Step 6 of XDGFX/hailey#155: port pipeviz onto ferrule as its plumbing reader. Tagged v0.3.0 at the head of this branch.

  • Reader (src/pipeviz.ts): picked for any file with a top-level components or pipes key. Prepends are deep-merged as pipeviz does. Components become cards, ports become pins with thread and gender, each pipe in a chain becomes a tagged run (coloured by colour or service, weighted by bore), and parts that mate directly get an untagged join. It enforces pipeviz's validation rules, slightly more strictly.
  • U-turns: a reversed pipe (pipe^) leaves both ends eastward and turns round through a layout node of its own, so the far end stays in the same layer instead of being dragged a layer on.
  • Sheet/render: titles too long for the widest card wrap, keeping · 2 with the word before it. Port detail is muted at the row's end. Core colours accept hex.
  • Fix: a hex colour is one stripe. Before, #d2b48c was split like a code and drew grey. In Hailey this turns three electrical fuse swatches tan, as shared.yml asked. Every other electrical SVG and Markdown file is byte-identical.

Tests: 67 pass, including a reader suite and a U-turn layout test. All four Hailey plumbing plans render.

Closes XDGFX/hailey#155

🤖 Generated with Claude Code

XDGFX and others added 2 commits October 1, 2026 13:47
A pipeviz reader turns components into cards and each pipe in a chain into a tagged run,
coloured by service and weighted by bore. A reversed pipe turns round through a node of its
own, so its far end stays in the same layer. Long titles wrap, ports show their thread and
gender, and a hex colour is one stripe rather than being split like a code. Release 0.3.0.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@XDGFX
XDGFX merged commit 980c533 into main Oct 1, 2026
1 check passed
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