Repository navigation
fix: restore the dark Physical AI workbench and Hardware navigation - #6477
Conversation
Restore installed workbench defaults, add a working hardware filter to free history, and carry declared node UI capabilities inside encrypted snapshots. Co-Authored-By: Codex <noreply@openai.com>
✅ Drift Bot (ClawMetry): no drift detectedDrift Bot analyzed the changed files against this project's blueprints and requirements and found no drift. |
Describe the preserved installed workbench and the explicit free history route, including bounded history filtering. Co-Authored-By: Codex <noreply@openai.com>
Visual diffComparing No flagged differences (running with ALWAYS_POST=1).
Folder: 36ee6590b71f. Full PNGs also attached as a workflow artefact. Generated by visual-diff bot. Pixel diffs >1% flagged; eyeball the table before merging. This check is non-blocking — fail = bot bug, not a code problem. |
✅ Drift Bot (ClawMetry): no drift detectedDrift Bot analyzed the changed files against this project's blueprints and requirements and found no drift. |
Co-Authored-By: Codex <noreply@openai.com>
✅ Drift Bot (ClawMetry): no drift detectedDrift Bot analyzed the changed files against this project's blueprints and requirements and found no drift. |
Co-Authored-By: Codex <noreply@openai.com>
✅ Drift Bot (ClawMetry): no drift detectedDrift Bot analyzed the changed files against this project's blueprints and requirements and found no drift. |
Opening Physical AI replaced the installed robot workbench with a light history page and lost the Hardware selector. Restore the entitled installed workbench as the default, preserve explicit robot-history deep links, and apply the existing dark dashboard theme plus a working Hardware filter to the free fallback.
A shared supported-hardware catalog feeds the page and extension metadata. An optional plugin hook carries the owning node's declared navigation inside the existing encrypted snapshot.
Also preserve the authoritative Assistant timeout result while its durable failure receipt is being saved. A renewing stream read remains readable during that window instead of being misclassified as sync unavailable. A receipt-completion barrier reproduces the race before the correction and verifies the final persisted timeout afterward.
Correct the already-declared OpenDots runtime's missing shared store prefix, so persisted local-work records match their own filter and are excluded from OpenClaw.
Validation: independently reviewed UI changes passed 122 focused tests, the JavaScript lifecycle/hardware harness and a separately reproduced native recording through the daemon and query proxy. The 366-event / 22-joint recording renders with dark styles, correct Hardware switching, no JavaScript errors and mobile layout. Assistant lifecycle coverage passed 126 tests with 2 expected skips; root independently passed 17 deadline, barrier and executor tests. The persisted OpenDots query regression failed before correction; 14 wiring and no-leak checks pass after it, followed by 58 independently run attribution, isolation and migration checks. Release and coordinated cloud verification remain pending.
Product records:
.sw-factory/JUMPER-OSS/requirements.mdandblueprint.md, existing OpenDots AC-GOV-ERS-011, plus.sw-factory/assistant/requirements.mdandblueprint.md. Follow-up plan, review and evidence are in.sw-factory/PHYSICAL-AI-UI-RESTORE/.No-PRD: User-requested restoration under REQ-JUMPER-001 and bounded repairs to the existing Assistant durable-failure and OpenDots runtime-attribution contracts. Requirements and repair plans were recorded before their edits, with no new commercial product decision.
Prepared with Codex following the repository delivery workflow.