Starting this one. Investigated the literal 'passive ARP table' approach from the original scope and it would be nearly useless: the api container's ARP cache only fills with devices it has…
Done and deployed. SshHostCollector added, dedicated ed25519 key generated on CT122 (never leaves that host beyond the mounted container path), installed on omv and ripper with a **forced…
Starting this one: adding a generic SshHostCollector for .180 (omv) and .171 (ripper), the two bare-metal boxes Proxmox cannot see. Will reuse the existing SSH trust already used elsewhere…
Done. Deployed via docker-compose on CT122 (192.168.1.103:8090). Hit and fixed one real bug during verification: the session cookie's secure flag was tied to NODE_ENV=production, which…
Implemented as part of the initial scaffold commit (main branch) — see linked files in apps/api/src / apps/web/src. Verifying end-to-end after deploy in #7.
Implemented as part of the initial scaffold commit (main branch) — see linked files in apps/api/src / apps/web/src. Verifying end-to-end after deploy in #7.
Implemented as part of the initial scaffold commit (main branch) — see linked files in apps/api/src / apps/web/src. Verifying end-to-end after deploy in #7.
Done and pushed (main branch, commit visible in repo). apps/api (Fastify+TS), apps/web (React+Vite+TS), CI workflow, docker-compose.yml, config/hosts.yaml, .env.example, and project CLAUDE.md…