Files
Mikkeli Matlock fbaf0a92b1 docs(01): capture phase context
Phase 01: Foundation
- Container isolation decisions documented
- Build strategy established
- Dev workflow defined

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 01:29:40 +09:00

60 lines
1.6 KiB
Markdown

# Phase 1: Foundation - Context
**Gathered:** 2026-02-03
**Status:** Ready for planning
<domain>
## Phase Boundary
Go backend running in Docker with isolated storage. Container serves HTTP and has access only to the mounted data volume. This phase establishes the infrastructure foundation — no application logic yet.
</domain>
<decisions>
## Implementation Decisions
### Container Isolation
- Standard isolation — volume mount restriction only, no hardened filesystem
- Port 32768 inside container — high port to avoid collisions with other Pi services
- Data volume mounted at `/data` inside container
- HTTP only — no outbound network access needed
### Build Strategy
- Multi-arch image using docker buildx (x86_64 + ARM64)
- Single Dockerfile — no separate dev/prod files
- Base image: Debian slim (compatibility and debugging over minimal size)
- Push to local Gitea registry (once set up)
### Dev Workflow
- Docker Compose for local development
- Deploy to Pi: git pull from Gitea + build image directly on Pi
- Go version: Latest stable (1.22+)
### Claude's Discretion
- Go project structure and module naming
- Hot reload / watch mode setup for local dev (or manual rebuild)
- Multi-stage Dockerfile optimization
- Health check endpoint design
</decisions>
<specifics>
## Specific Ideas
- User plans to move primary dev environment to Pi after setting up local Gitea, so cross-platform dev experience is transitional
- Pi may run other services, hence the high port (32768) to avoid conflicts
</specifics>
<deferred>
## Deferred Ideas
None — discussion stayed within phase scope
</deferred>
---
*Phase: 01-foundation*
*Context gathered: 2026-02-03*