d52e35f3ad
- FragmentSchema with stable-string-ID regex /^season\d+\.[a-z0-9._-]+$/ - SeasonContentSchema wraps fragments[] - loader.ts uses import.meta.glob with literal patterns (Pitfall 1) - Throws on schema violation at module-eval time, failing npm run build (PIPE-01) - Test-only loadFragmentsFromGlob helper for unit-test injection - Demo fragment season0.demo.first-light proves end-to-end round-trip - content/README.md documents the convention for Phase 2 writers (STRY-09) - Removes now-redundant src/content/.gitkeep firewall marker
14 lines
517 B
YAML
14 lines
517 B
YAML
# /content/seasons/00-demo/fragments.yaml
|
|
#
|
|
# Phase 1 demo fragment — proves the loader round-trips end-to-end.
|
|
# Removed in Phase 2 when real Season 1 content lands under /content/seasons/01-soil/.
|
|
#
|
|
# Fragment ID convention is `season<N>.<id>` per CLAUDE.md "Code Style"
|
|
# and content/README.md. Never numeric. Renames forbidden once shipped.
|
|
fragments:
|
|
- id: season0.demo.first-light
|
|
season: 0
|
|
body: |
|
|
The garden remembers the first time it was tended,
|
|
though it cannot say in whose voice.
|