Validate LLM-driven end-to-end generation per domain (first real-run hardening)
Status: Not started. The pipeline was built and tested with structural / golden-input checks only — no real LLM in the loop. The test harness (skill/tests/test.sh) SKIPs its assertions when a generated lesson.html is absent, so the prompt-driven stages have never been observed producing a correct lesson end-to-end. (SETUP.md "Open caveats" #3.)
What IS verified
- Build / skill wiring / invocation ✅
- Deterministic scaffolding: SQLite init, SM-2 SR scheduler, schema validators, widget renderers, shell assembly, ingest adapters — golden-input/structural tests pass (181/182 tasks).
What is NOT verified (this issue)
The LLM-driven stages, run for real with the parent Claude Code session executing the prompts (Q8 architecture):
- Stage 1 syllabus generation
- Stage 4 chapter prose + widget generation
- Stage validation / FR-006 retry loop behavior on actual (sometimes malformed) LLM output
Expected first-run bug classes
- LLM emits malformed/partial JSON the Zod schemas reject
- Widget specs that pass create-validation but crash the renderer (shape mismatches)
- Vignette/quiz taxonomy gaps on real medical content
- Prompt-stage edge cases the structural tests can't simulate
Acceptance criteria
Run /chiron for real on one golden input per domain and confirm a correct, openable lesson:
Relationship to other issues
Independent of #2 (TTS provider), #3 (Lesson Expander), #4 (Server/CMS). This is the "does the core generator actually work against a live LLM" gate — arguably the highest-value next step before building features on top.
Validate LLM-driven end-to-end generation per domain (first real-run hardening)
Status: Not started. The pipeline was built and tested with structural / golden-input checks only — no real LLM in the loop. The test harness (
skill/tests/test.sh) SKIPs its assertions when a generatedlesson.htmlis absent, so the prompt-driven stages have never been observed producing a correct lesson end-to-end. (SETUP.md "Open caveats" #3.)What IS verified
What is NOT verified (this issue)
The LLM-driven stages, run for real with the parent Claude Code session executing the prompts (Q8 architecture):
Expected first-run bug classes
Acceptance criteria
Run
/chironfor real on one golden input per domain and confirm a correct, openable lesson:/chiron-code <repo>→ lesson.html opens, MCQ/T-F/spot-the-bug render, SR cards persist to.chiron-state.db/chiron-medicine <pdf>→ AMBOSS-structured chapters, clinical-vignette MCQs render/chiron-language <csv>→ fill-blank/match-madness render (audio tabled per T058: Render audio-tts widgets (US2 Italian native-speaker) — blocked on TTS provider selection #2)skill/tests/so at least one real generated lesson per domain is captured as a regression snapshotRelationship to other issues
Independent of #2 (TTS provider), #3 (Lesson Expander), #4 (Server/CMS). This is the "does the core generator actually work against a live LLM" gate — arguably the highest-value next step before building features on top.