item_tier restricted to fixed|variable only (no one_off) to match DB check constraint on template_items
presets.{type}.{slug} i18n key structure matches type+slug fields in PRESETS array
duration
completed
tasks_completed
files_changed
~5 minutes
2026-04-20
2
3
Phase 06 Plan 02: Preset Data Library Summary
Static 19-item preset budget library with English and German translations, structured as presets.{type}.{slug} i18n keys matching the PRESETS array shape.
All item_tier values are "fixed" or "variable" (no "one_off")
Pure static module — no Supabase or React imports
Both i18n files now have a top-level "presets" key with nested {type}.{slug} structure covering all 19 slugs in English and German.
Deviations from Plan
None - plan executed exactly as written.
Threat Surface Scan
No new network endpoints, auth paths, or trust boundaries introduced. T-06-05 (JSON malformed) mitigated — both files verified valid via node -e "JSON.parse(...)" before commit.