The version history of nathan-the-system. Semver, manually maintained. Major = era of work · Minor = milestone within era · Patch = iterations.
v5.4.0 — 2026-08-10 (current)
- Fixed a scroll regression that killed wheel and trackpad input on every
page after any in-app navigation.
height: 100%on<html>froze Lenis's cached page height, so the scroll limit belonged to whichever page loaded first — measured against production, a 5,476px case study inherited the home page's 188px of travel. Post-mortem at /incidents/scroll-lock-after-navigation - Repositioned from "product engineer" to "software engineer". AI-assisted work stays disclosed on every case study, moved out of the headline and into evidence
- Every route is now reachable by clicking. /status, /availability, /repl, /changelog and /resume previously had no inbound link from anywhere
- /projects/portfolio rewritten as an infrastructure case study — Docker, the self-hosted deploy path, the CSP trade-off, the streaming REPL service — and five stale metrics corrected, including a claim that six shipped routes were "not yet built"
- BackStageRate restructured to lead with the 512MB quota work and the security posture rather than the analysis pipeline
- SSRF guard on nathan.match(url): scheme, port, IP-literal and DNS checks before any fetch, with manual redirect handling
- No page overflows horizontally at 375px any more
- lint, typecheck, 118 tests and a full build now gate every deploy — the assertions existed for two months with no runner and no CI step
- Status colours and page widths moved into @theme;
limitedused to render in two different colours on the same screen - Removed 9 unused dependencies, 2 dead API routes and 450KB of tracked build artifacts
v5.3.0 — 2026-07-31
- Fixed a production hydration mismatch (React #418) live since at least June 4 — root-caused to client-side date formatting on a statically prerendered page, documented as the site's first post-mortem at /incidents/hydration-mismatch
- Rebalanced hero, meta copy, and every case study's build section away from leading with "AI-native / orchestrates agents" toward shipped results — the framing research showed getting specifically discounted from junior candidates in 2026, including at AI-native-leaning companies
- /status now reads real version, uptime, deploy timestamp, availability status, and per-project state instead of a placeholder
- New /resume — one-page, screen + print, built from the same real data as the rest of the site
- New /llms.txt, CSP + HSTS headers, Person JSON-LD structured data
- /availability dates switched to ISO precision
v5.2.0 — 2026-06-07
- Portfolio shipped at nathandebock.com
- /repl complete with 8 commands + nathan.match() (Claude Sonnet 4.5, streaming)
- 4 client case studies live · 5,313 words · 45 GitHub permalinks
- Meta case study at /projects/portfolio documents the build workflow
- AI-native positioning surfaced in home and case studies (// build sections)
v5.1.0 — 2026-04-12
- BackStageRate shipped in production
- AI pipeline · 7 stages · €0.234 per analysis measured across 212 calls
- GDPR-aware anonymization · RandomForest feature importance
- Three-container architecture · solo build in 6 weeks
v5.0.0 — 2026-04
- Portfolio v0 started — creative direction cross-validated across 4 LLMs
- CLAUDE.md contract locked · 10 hard rules · 10 anti-patterns
v4.3.0 — 2025-11-15
- Club Azur Avantages shipped on App Store + Google Play
- RN/Expo · Supabase · dual-track auth · 5-month solo build
v4.2.0 — 2025-10-21
- serlei.ch shipped in production
- Custom in-place CMS · Swiss-first Stripe (CHF) · self-hosted Scaleway
v4.1.0 — 2025-08-21
- Year abroad started at CSUSM (California)
- CS446 Cloud Computing · CS471 Intro to AI · MATH264 Linear Algebra
v4.0.0 — 2025-04-07
- cse-martinez first commit
- First solo client project deployed to production
- Hôtel Martinez internal portal · Next.js + MongoDB + S3
v3.0.0 — 2024-09-01
- 3rd year at Epitech Nice — Programme Grande École
- Full-stack focus on Next.js + Supabase stack