AI-powered hardware inventory management for homelab environments
- TestHandler: POST /api/test/cable, GET /api/test/events, GET /api/test/recent - POST /api/test/cable: DisallowUnknownFields (T-05-03), creates NetBox cable, auto-prints with 1s rate limit (T-05-05), prepends to 20-item ring buffer - GET /api/test/events: SSE, 30s keepalive, exits on context cancel (T-05-04) - GET /api/test/recent: thread-safe ring buffer, returns [] when empty - AttachStream() wires StreamingTesterDriver channel to SSE broadcaster - Router: three /api/test/* routes added to NewRouter signature - main.go: constructs TestHandler, wires USB Manager event loop stub - All handler tests pass race-clean (7 test cases) |
||
|---|---|---|
| .planning | ||
| cmd/hwlab | ||
| internal | ||
| scripts | ||
| web | ||
| .env.example | ||
| .gitignore | ||
| ai_config.json | ||
| assets.go | ||
| CLAUDE.md | ||
| config.json | ||
| go.mod | ||
| go.sum | ||
| Makefile | ||