Phase 7 is mostly authored assets. This commit is the asset half; the
template half is a Builder child issue because this phase must not write
application code.
DoD items satisfied or advanced:
- [x] Eight diagrams present, both themes, readable at 1x and on mobile
8 SVGs, one byte-identical <style> block across all 8 (one visual
language by construction). Light and dark resolve from a single file
via prefers-color-scheme, verified per file in Chrome: 8/8 return two
distinct palettes. Geometry verified with getBBox(), not estimated:
0 findings after fixing 74 (text overflow, partial overlap, empty
text, out-of-viewBox). Mobile type at the 900px minimum is 14.1/12.2px.
- [x] Six code exhibits with a two-sentence rationale each
212 verbatim lines across five eras, copied with cp/sed from the
read-only archive. Every rationale is exactly two sentences about why
the code is good; every exhibit also carries an honest_note, and where
the code is not good the note says so (the 3,400-line procedural PHP
script is presented for its operational judgement, not its structure).
- [~] Every image optimised; total page weight budgeted and recorded
BUDGET.md records measured raw and gzip weights for all 15 served
files: 63,802 B raw / 13,220 B gzipped. Zero rasters by design. Page
weight of a real page is not measurable until Phase 2 templates and
Phase 3 serving exist, and is recorded as open rather than asserted.
- [x] Archive never linked or exposed
No mount paths or volume names under content/. Provenance recorded as
"private archive, path withheld".
- [ ] Client wall reads as deliberate -> needs markup/CSS (Builder)
- [ ] Lighthouse held at >= 95/95 -> needs a served page (Phase 3)
Also: the client wall is authored as data (45 entries, 44 distinct names) with
the 45-vs-46 discrepancy and the Diajio -> Diageo correction recorded
rather than papered over. No commercial marks are enabled: that is a
permission decision for Sam, so availability is recorded and permission is not
implied.
Ai Resume — Paperclip build directory
This is the working directory for the Paperclip project Resume Ai. Paperclip builds here. Everything needed to build is in this folder; nothing outside it is required.
Relationship to the planning folder
| Folder | Holds | Status |
|---|---|---|
/home/sam/paseo/projects/resume_ai_system/ |
The why — research, cull decisions, stack rationale, evidence notes, content drafts | Planning. Not the build. Sam works here |
/home/sam/paseo/projects/resume_ai_system_paperclip_build/ |
The what — build spec, phase documents, reference material, and the site itself | This folder. Paperclip works here |
The planning folder is read-only reference. Do not edit it from here, and do not make the build depend on it — anything needed must be copied in.
Start here
AGENTS.md— the build spec. Constraints, conventions, and the phase list. Read it before anything else.docs/phase-N-*.md— one document per phase: work, Definition of Done, out of scope, risks.reference/— frozen decisions, stack and budgets, content map, acceptance tests.
Phases
| # | Phase | Ships |
|---|---|---|
| 1 | Content source of truth | content/ + validator |
| 2 | Mode A static site | Browsable pre-rendered site, no AI |
| 3 | Public deployment | Live URL behind Caddy |
| 4 | Corpus and retrieval | content/ → Qdrant |
| 5 | Mode B console | Streaming, cited answers |
| 6 | Guardrails, cost, kill switch | Safe to leave public |
| 7 | Polish | Logos, diagrams, code exhibits |
Order is deliberate. Content first (both renderers need it). Deploy at Phase 3, not last — a live half-built URL is worth more than a perfect site that never ships. AI after deployment so it can never block launch.
Repository
This folder is the git working copy of sam/ai-resume. One repo, one product.
Previously held an abandoned Vite/React scaffold. It was replaced by this build spec; the history is retained because it honestly records the false start, and it is referenced in the site's "alternatives considered" content.
Ground rules
- Do not touch other systems. No stopping containers, no editing other projects, no
nixos-rebuild, no Caddy changes except the single block specified in Phase 3 — and that one Sam applies. - Mode A must work with every AI service stopped. Hard gate.
- Never invent facts about Sam's career. If it is not in
reference/orcontent/, ask. - Secrets live in
~/.config/environment.d/only. - All models go through OmniRoute.
Current state
- Repo prepared, scaffold retired, build spec written
- Phase 1 — content source of truth
- Phase 2 — static site
- Phase 3 — public deployment
- Phase 4 — corpus
- Phase 5 — AI overlay
- Phase 6 — guardrails
- Phase 7 — polish