Repository navigation
iPhone: the grid's three phases against the main fuse (WP16) - #50
Merged
Merged
Conversation
The grid node view gains one row under the range line: L1, L2 and L3 as 10-cell meters against the main fuse, each with its current in mono, and the phase nearest the fuse in an inverse tag. The values are the box's extra fields 11 to 14 from protocol/registry.yaml, copied byte for byte from srcfl/ftw-webapp. With no phases on the wire the row is not there; while they are not live it keeps its room and shows no number. The live ring leaves the phases and the fuse out, since no trace draws them. The demo box sends phases under a 20 A fuse. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
This was referenced Oct 14, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
WP16 of the polish plan, step 3 of 3, and decision 6. On 14 October 2026 Fredrik asked for "faser l1 l2 l3": the grid's three phases, live, against his main fuse.
What changes
FASER · SÄKRING 20 A, then L1, L2 and L3, each as its current in mono over a 10-cell meter, a cell for each tenth of the fuse. The phase nearest the fuse wears the inverse tag. The row isGridPhasesRowin its own file;NodeView.swiftgains one branch.protocol/registry.yaml, copied byte for byte from feat(contract): the grid's phase currents and the main fuse as extra fields ftw-webapp#86, sent by feat(appproto): stream the grid's phase currents and the main fuse ftw#1629).Contract.FIDgainsgridL1DA,gridL2DA,gridL3DAandgridFuseDA;ContractTestsreads them back from the registry.freshness(fid:)the hero uses.LiveTrace.untraced): no trace draws them, and keeping them pushed the sealed ring past its 20 KB test.The logic is
GridPhasesin FTWKit (State/GridPhases.swift), withGridPhasesTests. Words in Swedish and English;everySentenceHasSwedishreads both new files.The look, against the Phosphor rules
The demo house is in balance, so the grid reads 0 W while L1 buys and L3 sells about 1.2 A each: the case where the phases tell you what the total hides. At the largest accessibility size the page scrolls, as every node page does, and the meters stack.
Not done yet
LaunchClocknumbers.Paired pull requests. All three carry the same registry, byte for byte.
This repository's CI does not compare its copy with the other two, so I compared them by hand. This one can merge on its own: with an older box the row never shows.
Tests
🤖 Generated with Claude Code