Repository navigation
fix: chunk 4 — new boards, event log and cockpit actions #133
Copy link
Copy link
Closed
Milestone
Description
Part of the fix track (parent issue linked in the sidebar). These items change behaviour on purpose; each final answer was decided on 2026-10-16. The test checklist at the bottom is one hardware session with boards that aren't adopted, including one unidentified board.
Owners: nodes/node-model.ts (newState), nodes/node-events.ts + events/event-journal.ts, nodes/faults.ts, nodes/cockpit-snapshot/*, nodes/mapping-sequence.ts.
| Item | Today | After |
|---|---|---|
| D1 / X3 / R2 strays on every tab | The 5 s "UNIDENTIFIED" warning is counted on the Cockpit only | One newState; Cockpit, Overview and Connection all count it |
| S6 grace from coming online | The grace counts from the first sighting, so a board that comes online late is flagged at once | onlineSince, reset on each offline → online |
| X8 / C6 wording | Registry boards waiting to be added say "NOT IN REGISTRY" in one place and "from NODE_IDS.md" in another | "from NODE_IDS.md" everywhere (one newReason) |
| D8 / S5 / C4 event-log scope | Error rows and "N online" include boards never added; a board identified only by telemetry never gets a "new" row; the "seen new" record survives Forget | The log is the physical bus: every board is logged, boards outside your cockpit labelled as such at info level, "new" worked out once, cleared on Forget |
| X6 / R8 fault order | The log and the Cockpit order faults differently | The Cockpit's order everywhere (bus-off → fault → overheat → error-passive), one table |
| R6 Add-all race | A double click runs it twice | One busy flag for the whole dialog; the sequence can't re-enter |
| N4 Un-hide all | Stops at the first failure, no report | Continues past failures and reports which failed |
| R9 / R10 dialogs | The reset preview refetches on every push; Adopt can open on a stale board; its count doesn't match the button | Small guards so each dialog shows the current board and count. R10's count rule replaced 2026-10-27 by #182 (#180), the user's pick (design v167): the Adopt header counts every new board and says how many can't be adopted ("{N} board(s) this computer hasn't added yet; {k} can't be adopted"); the Attention button still counts only the adoptable ones, so the two numbers differ on purpose. |
| C5 revisions | Partly fixed in the rewrite (the snapshot carries rev) |
An older snapshot never wins anywhere |
Tests that change on purpose: overview/connection "strays absent" cases, the events lookup() stub, the NODE_ID 0 overview cases (PART 1D rows).
Hardware test (one session)
- An unidentified board: after 5 s every tab counts the warning
- A board that comes online late isn't flagged until 5 s after it comes online
- A registry board not yet added reads "from NODE_IDS.md" everywhere
- The Log lists a never-adopted board at info level, labelled outside the cockpit; a telemetry-only board gets one "new" row; Forget then re-plug logs "new" again
- Fault order matches between the Log and the Cockpit for a board with several flags
- Double-click Add all: it runs once
- Un-hide all with one failing board: the others are un-hidden and the failure is listed
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
[-]fix: chunk 3 — link and roster lifecycle, HID[/-][+]fix: chunk 4 — new boards, event log and cockpit actions[/+]fix(nodes): one fault order, add all and un-hide all can't double-run…
fix(nodes): new boards counted on every tab, grace from coming online…
fix(cockpit): keep the Adopt dialog's footer on screen with many new …