Files
beachho.us/docs/IMPLEMENTATION_DECISIONS.example.md
matt bc02d72576
CI / quality (push) Has been cancelled
New initial commit
2026-04-22 16:28:11 -07:00

35 lines
1.2 KiB
Markdown

# Implementation Decisions (Working Defaults)
These defaults unblock implementation. Replace them when final production decisions are
made.
## Platform and Routing
- Public site target: Cloudflare Pages.
- Internal/admin target: Cloudflare Tunnel to a private origin.
- Edge policy: default deny for `/admin` in public traffic; allow only trusted network.
## Media Storage and Privacy
- Public assets must be scrubbed before publication.
- Default metadata policy: remove EXIF/IPTC/XMP from public files.
- Admin-private metadata may include location/time fields for curation workflows.
## AI Vision Layer
- Provider contract is `VisionProvider` with a common result schema.
- Default provider in local development: mock provider (no external key required).
- Fallback behavior: if provider fails, ingestion continues with manual-tagging state.
## Taxonomy and Classification
- Shared tags remain free-form for now, but collection values are fixed in
`src/types/gallery.ts`.
- Suggested tags are reviewed by user confirmation before publishing.
## Tooling and CI
- Node LTS target: 22.
- Quality gate: typecheck + lint + test + build.
- CI provider: GitHub Actions.