
Haven
Tools
What worked
12 phases across v1.0 and v1.1 in 4 calendar days — 25 plans, 125 commits, ~80% Sonnet / 15% Haiku / 5% Opus model mix. Claude Code handled the bilingual (EN/DA) prompt authoring cleanly, produced 27 crop JSON files with growth stages and child-facing actions, and the 30 weekly schedule files (W15-W44) without drift. The centimeter-level planting grids for two beds, the neurodivergent-adapted session scripts with sensory transitions and self-regulation exit ramps, and the Home Assistant YAML (sensors, 10 alert rules, Lovelace dashboard) all held together structurally.
What broke
This is the only project in the portfolio where 'shipping faster' is meaningless — plants, seasons, and a young learner's attention operate on their own clocks. As of W15 the project is planning-complete but the real validation only starts in W16. The engagement assumptions are derived from literature and parent knowledge, not tested. The budget exceeded the initial 2000-5000 DKK ceiling (landed at 8500-10500 DKK, accepted as 20-year infrastructure). Longer absences are a single point of failure: entirely dependent on self-watering reservoir + neighbor cooperation.
Roles
I set every constraint that matters: the learner is the primary user, watering IS the routine (do not automate away), sensors deferred to v2 because manual observation teaches more in season 1, 2 beds not 5, 60%+ Tier 1 'can't fail' crops. Claude Code wrote the documentation, the JSON files against the schemas, and the HA configs. The evidence-based slug defense (Ferramol over copper tape per Aarhus University research) was my research; Claude translated it into docs. This is the only vibe with zero application code.
Haven (Learning Garden System)
Overview
Haven is a documentation-first garden planning system for a backyard raised-bed garden in southern Denmark (USDA Zone 7b). The project is designed as a developmental agency-building tool for a neurodivergent 7-year-old learner, where the primary success metric is engagement and growing independence — not crop yield.
Core purpose: A young learner who independently checks on, cares for, and harvests from plants he chose to grow — and sees the direct connection between his effort and the food on his plate.
Target user: A neurodivergent 7-year-old, with the parent as facilitator.
Key Features
- 27 crop JSON database with growth stages, child-facing actions in EN/DA, difficulty tiers, companion plants, and Home Assistant alert triggers
- 30 weekly schedules (W15-W44) with themed tasks, bilingual prompts, prioritized activities, and vacation flags
- Neurodivergence-adapted session scripts with 5-10 minute attention windows, sensory transitions, timed steps, self-regulation exit ramps, and pick-2-of-4 task model
- Hyperspecific planting guides with centimeter-level grid positions for every plant across 2 raised beds
- Self-watering reservoir system with DIY PVC wicking build guide and 5-day dry-run test protocol
- Vacation handoff documentation — Neighbor guide with photos, pre-departure checklist, countdown session script
- Home Assistant integration — 10 automation rules (drought, frost, heat stress), sensor definitions, Lovelace dashboard YAML (copy-paste ready)
- Bilingual throughout (EN/DA) with child-facing prompts spoken by father
- Succession calendar for continuous harvest (W22-W43) ensuring something is always ready to pick
- Evidence-based slug defense — Ferramol pellets (jernfosfat) per Aarhus University research; copper tape, beer traps documented as less effective
- Daily routine card and weekly garden walks — Printed visual checklists for child independence
Architecture
Structure
This is a pure documentation + structured data project — zero application code.
| Layer | Technology |
|---|---|
| Documentation | 31 markdown guides (143 total MD files including planning) |
| Data | 72 JSON files with JSON Schema validation |
| Automation | Home Assistant YAML configs (sensors, alerts, plants, dashboard) |
| Planning | GSD methodology (.planning/ directory) |
| Version Control | Git (125 commits) |
Physical Layout
- Bed A "Family Bed" (230x120x40cm, corten steel by byJEMA) — Tomato, cucumber, pepper, lettuce, herbs, nasturtium, 3 zones
- Bed B "His Bed" (150x60x40cm, corten steel) — Strawberries, radishes, sensory plants (lamb's ear, thyme), flowers, sunflower
Data Architecture
data/
crops/ # 27 crop JSON files (growth stages, EN/DA actions, difficulty tiers)
beds/ # bed-a.json, bed-b.json (cm-position coordinates per plant)
schedules/ # W15-W44 (30 weekly files with themed tasks, vacation flags)
ha/ # Home Assistant configs (sensors, alerts, plants, customize)
schemas/ # JSON Schema (crop, bed, week, checklist, season-review)
succession-calendar.json
Documentation Architecture
docs/
property-map.md # ASCII site overview with sun zones
bed-layout.md # Physical dimensions, materials
planting-grid-bed-a.md # Per-cm grid positions (36KB)
planting-grid-bed-b.md # Per-cm grid positions
setup-guide.md # 12-step construction sequence
soil-layers.md # 3-layer fill recipe
reservoir-build.md # DIY self-watering PVC wicking system
trellis-build.md # Lean-to cucumber trellis
slug-defense.md # Evidence-based Ferramol strategy
planting-day-script.md # W16 session (neurodivergence-adapted, sensory transitions)
warm-season-session-scripts.md # W21-W22 transplant scripts
troubleshooting-guide.md # Symptom-based pest/disease diagnosis
daily-routine-card.md # Child-facing printed routine (visual checklist)
weekly-garden-walk.md # Guided observation structure
neighbor-vacation-guide.md # Plain-language handoff with photos
end-of-season-guide.md # Cleanup, perennial care, soil refresh
[+15 more guides]
Development History
100% complete — 12 phases across v1.0 and v1.1, 25 plans executed, built March 26-30, 2026:
| Milestone | Phases | Focus |
|---|---|---|
| v1.0 | 1-6 | Bed infrastructure, spring/warm planting plans, data system (27 crops, 30 schedules), documentation, vacation prep |
| v1.1 | 7-12 | Data consistency fix (Bed 1-5 -> A-B), child engagement (routine card, garden walk, treasure hunts), operational readiness, HA setup, season 2 prep, artifact maintenance |
125 commits over 4 calendar days. Model mix: ~80% Sonnet, ~15% Haiku, ~5% Opus.
As of April 13 (W15): zero commits since March 30. The project is now fully planning-complete and waiting for the seasonal start of physical execution. The engagement assumptions, neurodivergence-adapted session scripts, and pick-2-of-4 agency model remain theoretical. This is the only project in the portfolio where "shipping faster" is meaningless — plants, seasons, and a young learner's attention operate on their own clocks. The real validation happens outdoors in W16, not on the keyboard.
Architectural Decisions
| Decision | Rationale |
|---|---|
| Raised beds over in-ground | Defined ownership ("his bed"), better soil control, accessible height for child |
| Corten steel beds (byJEMA) | 20+ year lifespan, food-safe, aesthetic match to villa |
| Manual watering is intentional | Watering IS the routine that builds agency — do NOT automate away |
| Staggered planting | Continuous harvest keeps engagement high (always something to pick, W22-W43) |
| JSON data from day one | Enables HA integration, alerts, structured schedules; no rework later |
| 2-bed layout (not original 5) | Scoped down from initial plan — simpler, focused, less overwhelming for first season |
| Sensors deferred to v2 | Manual observation teaches the child more in season 1; data format proven first |
| Difficulty tiers (1-3) | 60%+ Tier 1 "can't fail" crops; stretch crops alongside guarantees |
| Ferramol over copper tape | Aarhus University research: pellets + manual patrols more effective for Danish Spanish slugs |
| Bilingual EN/DA prompts | Father speaks Danish to child; prompts in both languages; not child-readable text |
Strengths
- Neurodivergent-first design — Every session script accounts for short attention windows, sensory needs, and self-regulation resilience; not retrofitted
- Extraordinary specificity — Centimeter-level planting positions, timed steps, visual cues ("See the V between stem and leaf? Pinch it off!")
- Continuous harvest engineering — Succession calendar ensures something is always ready to pick May through October
- Evidence-based decisions — Slug defense from Aarhus University research, companion planting from validated sources, HA sensor recommendations from community testing
- Absence-proofed — Reservoir design, neighbor guide, pre-departure checklist, and countdown session script cover the longest summer absence window
- Complete HA integration readiness — JSON crop files include temperature thresholds and moisture alerts; YAML configs are copy-paste ready
- Data-first, schema-driven — JSON schemas enable reusability and validation; no surprises when HA integration activates
- Decision documentation — Every choice recorded with rationale in PROJECT.md
Weaknesses & Risks
- Longer absences are a single point of failure — Entirely dependent on self-watering reservoir + neighbor cooperation; no redundancy
- Budget exceeded initial ceiling — 8,500-10,500 DKK vs. initial 2,000-5,000 DKK ceiling; accepted as 20-year infrastructure investment
- Danish climate risk for warm-season crops — Tomato, pepper, cucumber all marginal in zone 7b; cool/wet August could mean poor yields
- Sensor deployment deferred to v2 — HA configs written but no physical sensors; manual observation only for season 1
- Engagement assumptions not yet validated — Neurodivergent design derived from literature and parent knowledge; real sensory triggers only emerge in practice
- Single-season data — All planning is theoretical until first growing season validates assumptions
- Roof terrace structural assessment deferred — Load capacity for wet soil on older carport roof not yet verified
- Crop variety availability unconfirmed — Specific varieties (Sungold, Mini Munch, Korona) not verified at local nurseries
- No fallback if child disengages — The entire project premise depends on sustained child interest
Connection to Other Projects
- TuringPi — Home Assistant runs on the homelab cluster; HA configs in Haven target this infrastructure
- 2024.garden — Digital garden could document the physical garden journey
- CNC — Could potentially monitor HA sensor health
- Evolver — Shares neurodivergent-first design philosophy (session scripts, timed steps, sensory engagement, quick wins)
- No direct connections to Roughneck, Etyde, GoVejle, or Ollama (no async processing, no LLM, no web serving)
What Makes This Project Different
Haven stands apart from the rest of the portfolio:
- Zero application code — Pure documentation + structured data
- A non-technical primary user — A neurodivergent 7-year-old learner
- Physical-world dependencies — Weather, soil, plant biology, seasons, Danish climate
- Developmental goals — Agency, routine, responsibility as success metrics; not technical metrics
- Time-locked phases — Can't be compressed with faster coding; plants grow on their own schedule
- Evidence-based domain research — University slug research, therapeutic garden literature, HA community testing
- Bilingual, locale-specific — Danish suppliers, climate data, plant names, HA prompts throughout
This is the only project where "shipping faster" is explicitly counterproductive — the child's pace and engagement, not development velocity, determine success.