Repository navigation
v0.4.0 — delivery contract and safe resumption
A contract and resumption release. Quizzing now only advertises adapters it actually has,
tells you when a saved draft cannot be restored intact, and ships one worked example that
demonstrates every question type rather than a handful.
Changed
deliveryMethodinanswers.schema.jsonis narrowed tohtmlandlocal-server.
Themarkdownandtuivalues were removed: neither adapter was ever built, so the
schema was advertising a contract nothing could satisfy. A consumer that branches on
those values will no longer receive them.delivery.adaptersanddelivery.selectedin
questionnaire.schema.jsonare narrowed to match. This is the reason for the minor bump.- A browser is now a stated prerequisite rather than something the skill tries to work
around. Every host CLI is an npm application, so Node is present by construction; the
browser is the real variable, and Quizzing is human-in-the-loop by definition. The
conversational fallback inSKILL.md, which guarded an impossible no-Node case, is gone. - The example corpus is a single questionnaire,
file-uploads, replacing
project-sharing. It is broad enough that every question type is the natural way to ask
something in it, and it covers both declarative diagram formats, all threerequired
modes, and branching. A test now fails the build if a question type or diagram format has
no example using it.
Added
- A resumed draft now discloses what it could not restore. Drafts carry a fingerprint of
the question set, so a questionnaire edited without a version bump is detected: the resume
notice reports how many answers were dropped instead of silently losing them. - Drafts stranded by a version bump are surfaced with a discard control. Previously they
sat inlocalStorageforever, invisible and unreachable. recommended.booleanValueis now valid inquestionnaire.schema.json, so boolean
questions can carry a seeded recommendation.- Four new documentation screenshots covering multi-select, boolean, free text, and ranking.
Fixed
- Connected mode mislabelled its output.
buildAnswersdefaulteddeliveryMethodto
htmland no call site ever passed anything else, so every answers file written by
serve.jssince v0.1.0 claimed to be a static submission. It now reportslocal-server.
Found by the test asserting every advertised enum value is emitted by something. - Boolean recommendations were unreachable.
app.jsreadrec.booleanValue, but
recommendedisadditionalProperties: falseand never declared it, so the schema
rejected the only spelling the form understood. Dead since boolean questions shipped. - Edge labels on predominantly vertical diagram edges no longer have the arrow drawn
through them. - Five documentation screenshots were cropped mid-content; viewport heights are now the
measured content height of each screen.