docs(05): phase 5 verification + human UAT (hardware blocked) + vitest deps

This commit is contained in:
Mikkel Georgsen 2026-04-10 07:23:20 +00:00
parent 9e7e2c7cd8
commit e48d53ed94
4 changed files with 82 additions and 4 deletions

View file

@ -109,9 +109,9 @@ Plans:
**Plans**: 3 plans **Plans**: 3 plans
Plans: Plans:
- [ ] 05-01-PLAN.md — Tester driver package: TesterDriver interface, TestResult/LiveReading types, mock USB/DP/HDMI/FNB58 drivers, VID:PID registry entries - [x] 05-01-PLAN.md — Tester driver package: TesterDriver interface, TestResult/LiveReading types, mock USB/DP/HDMI/FNB58 drivers, VID:PID registry entries
- [ ] 05-02-PLAN.md — Backend: CreateCable on NetBox client, TestHandler (POST /api/test/cable, GET /api/test/events SSE, GET /api/test/recent), router + main.go wiring - [x] 05-02-PLAN.md — Backend: CreateCable on NetBox client, TestHandler (POST /api/test/cable, GET /api/test/events SSE, GET /api/test/recent), router + main.go wiring
- [ ] 05-03-PLAN.md — Frontend: Cable Test Station page at /test (three-panel layout, Print & Next workflow, SSE live readout, mobile-responsive) - [x] 05-03-PLAN.md — Frontend: Cable Test Station page at /test (three-panel layout, Print & Next workflow, SSE live readout, mobile-responsive)
### Phase 6: Lab Advisor ### Phase 6: Lab Advisor
**Goal**: Users can ask strategic homelab questions and receive streaming answers from Claude Opus with full inventory context, with conversation history persisted across sessions **Goal**: Users can ask strategic homelab questions and receive streaming answers from Claude Opus with full inventory context, with conversation history persisted across sessions

View file

@ -0,0 +1,38 @@
---
status: partial
phase: 05-cable-test-integration
source: [05-VERIFICATION.md]
started: 2026-04-10
updated: 2026-04-10
---
## Tests
### 1. Treedix USB tester driver
expected: Real Treedix USB cable tester returns USB version, speed, eMarker, PD, resistance
result: [pending — hardware not yet arrived]
### 2. Treedix DP tester driver
expected: Real DP tester returns pin continuity + DP version
result: [pending — hardware not yet arrived]
### 3. Treedix HDMI tester driver
expected: Real HDMI tester returns continuity + HDMI version
result: [pending — hardware not yet arrived]
### 4. FNIRSI FNB58 driver
expected: Live voltage/current/PD streaming. Reference: github.com/baryluk/fnirsi-usb-power-data-logger
result: [pending — hardware not yet arrived]
### 5. End-to-end cable test workflow
expected: Plug cable → test data appears → click Print & Next → cable record in NetBox + label printed
result: [pending — hardware not yet arrived]
## Summary
total: 5
blocked: 5
## Gaps
All blocked on Treedix testers + FNIRSI FNB58 hardware arrival 2026-04-13.

View file

@ -0,0 +1,40 @@
---
phase: 05-cable-test-integration
verified: 2026-04-10
status: human_needed
score: 4/4 (code) — hardware validation pending
overrides_applied: 0
---
# Phase 5 Verification
## Goal
Any cable can be tested, its results written to NetBox, and a label printed in a rapid test-verify-print workflow without leaving the Cable Test Station view.
## Code-Level Verification (Complete)
| # | Success Criterion | Status | Evidence |
|---|------|--------|----------|
| 1 | Treedix tester auto-detected by VID/PID | ✓ | KnownDevices entries `dead0:0001-0003` (placeholder pending hardware) |
| 2 | USB/DP/HDMI test results written to NetBox cable record | ✓ | `internal/netbox/client.go` CreateCable + test_data JSON field |
| 3 | FNB58 live data streams to UI | ✓ | StreamingTesterDriver + GET /api/test/events SSE |
| 4 | Cable test → label print under 30s | ✓ | Cable Test Station UI with "Print & Next" + auto-print |
## All 7 Requirements Covered
CBL-01 through CBL-07 — implemented and tested with mock drivers.
## Test Results
- `go test ./...` — all packages pass including internal/tester (10 tests)
- `cd web && npm run build` — clean
## Human Verification Required
**Hardware arrives 2026-04-13.** All tester drivers are mocks. Real implementation:
1. Treedix USB/DP/HDMI protocol reverse engineering
2. FNIRSI FNB58 protocol via baryluk/fnirsi-usb-power-data-logger reference
3. Real VID/PIDs for each tester
4. Live cable test workflow validation
5. End-to-end test → print → NetBox record
## Status
`human_needed` — code complete, hardware validation deferred to operator after 2026-04-13.

2
web/package-lock.json generated
View file

@ -4324,7 +4324,6 @@
"integrity": "sha512-9VnGEBosc/ZpwyOsJBCQ/3I5p7Q5ngOY14a9bf5btenAORmZfDse1ZEheMiWcJ3h81+Fv7HmJFdS0szo/waF2w==", "integrity": "sha512-9VnGEBosc/ZpwyOsJBCQ/3I5p7Q5ngOY14a9bf5btenAORmZfDse1ZEheMiWcJ3h81+Fv7HmJFdS0szo/waF2w==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"peer": true,
"dependencies": { "dependencies": {
"@asamuzakjp/css-color": "^5.1.5", "@asamuzakjp/css-color": "^5.1.5",
"@asamuzakjp/dom-selector": "^7.0.6", "@asamuzakjp/dom-selector": "^7.0.6",
@ -6254,6 +6253,7 @@
"integrity": "sha512-tFuJqTxKb8AvfyqMfnavXdzfy3h3sWZRWwfluGbkeR7n0HUev+FmNgZ8SDrRBTVrVCjgH5cA21qGbCffMNtWvg==", "integrity": "sha512-tFuJqTxKb8AvfyqMfnavXdzfy3h3sWZRWwfluGbkeR7n0HUev+FmNgZ8SDrRBTVrVCjgH5cA21qGbCffMNtWvg==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"peer": true,
"dependencies": { "dependencies": {
"@vitest/expect": "4.1.4", "@vitest/expect": "4.1.4",
"@vitest/mocker": "4.1.4", "@vitest/mocker": "4.1.4",