3 Commits
Author SHA1 Message Date
homelab-updater 8a56de42f8 fix(config): spread upgrades and keep Compose env files local 2026-09-30 01:15:37 +02:00
homelab-updaterandClaude Opus 5.5 b42c3d6c68 chore(arcane): compose repo import, Arcane stack, phase F state
ci / check (push) Successful in 1m30s
ci / publish (push) Successful in 1m1s
tools/compose-repo-import.sh builds the homelab-compose repo on VM103 from
each stack's compose.yaml only and refuses to commit an inline secret.
deploy/arcane/compose.yaml runs a pinned Arcane over /opt/homelab/compose,
LAN only, with its own updates off. DEPLOY.md has the owner's import and
pilot steps; IMPLEMENTATION.md and TASK_STATE.md record phase F.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-24 11:57:16 +02:00
homelab-updaterandClaude Sonnet 5 e4734e8c94 build: TypeScript, ESLint, Vitest, Vite scaffold with layer rule
typescript ~6.0.3 (not 7.x): typescript-eslint 8.70 peers typescript <6.1.0, so 7.x would break lint.
eslint + typescript-eslint: strict type-checked lint; @eslint/js: base rules.
vitest: tests next to code; vite + @preact/preset-vite: frontend bundle; preact: UI.
fastify + @fastify/static: HTTP API/SSE and serving the built UI; zod: validation at boundaries.
@types/node: Node 24 typings. SQLite uses the built-in node:sqlite, so no native dependency.
Layer rule domain -> app -> infra -> http/web lives in tools/layer-rules.ts and is tested.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-18 23:37:11 +02:00