Skill: write-like-james @ 30c51ca
MS Chemistry — build report, 26 September 2026
What you have
The whole course is built and closed on keys. Fourteen topics, three checkpoints and the end-of-course
form, every one of them written fresh, six-way reviewed, adjudicated, re-read blind, and every test bank
expanded to fifty or more items and cold-read twice. Zero answer keys ship unverified: across 1,847 blind
reads not one key disagreement survived (every "disagreement" the compare tool printed was a typed
surface form, and the tool now folds those).
Open course_preview/index.html for the rendered course. Every topic card names its state.
| Piece | Lessons | Practice | Bank | Blind reads (lessons / bank) |
|---|---|---|---|---|
| T1 Solids, liquids, gases | 10 | 12 | 50 | 0 disagreements / 0 |
| T2 Changes of state | 8 | 12 | 50 | 0 / 0 |
| T3 Properties you can measure | 5 | 12 | 50 | 0 / 0 |
| T4 Density | 5 | 12 | 50 | 0 / 0 |
| T5 Pure substances and mixtures | 5 | 12 | 50 | 0 / 0 |
| T6 Solutions | 9 | 12 | 50 | 0 / 0 |
| T7 Atoms and elements | 8 | 12 | 50 | 0 / 0 |
| T8 Inside the atom | 5 | 12 | 50 | 0 / 0 |
| T9 The periodic table | 7 | 14 | 51 | 0 / 0 |
| T10 Chemical formulas | 5 | 12 | 51 | 0 / 0 |
| T11 Physical and chemical change | 6 | 13 | 51 | 0 / 0 |
| T12 Reactions and conservation of mass | 8 | 12 | 55 | 0 / 0 |
| T13 Water's pulls | 4 | 12 | 50 | 0 / 0 |
| T14 Acids and bases | 6 | 12 | 52 | 0 / 0 |
| Checkpoint 1 (T1–6) | — | — | 60 (48 MCQ + 12 written), Form A 30 | 0 |
| Checkpoint 2 (T7–10) | — | — | 60, Form A 30 | 0 |
| Checkpoint 3 (T11–14) + Form E | — | — | 60, Form A 30, Form E 40 | 0 |
91 lessons, each with an article, a video script ending "Okay, now your turn." and its gate question,
a quiz of 8–14 items, a topic intro and summary video; 706 figures drawn to one register per thing.
What the reviews kept finding, and what changed because of it
Every topic went through the same six readers before I touched it, and the same faults kept coming back.
Each one is now a rule in the vault, a step in the skill that would have caught it, and where possible a
mechanical sweep. The three that mattered most:
- Test items were lesson checks with the nouns changed. In every bank expansion the non-author review
found four to thirteen "renamed templates" the author's own grep had missed. Fix: every item is designed
from a move line first and read against an inventory of every check; a course-wide register of every
named student (287 names) is built by script, not by hand.
- Figures handed over the answer. Hidden drawing descriptions named the sort ("a metal"), headache
figures answered their own question, a rule table sat beside the sort item it answers, blue litmus was
drawn so light it read as a cut-off strip. Fix: the hidden description gives drawn data only, the
headache figure is the teaching figure with the answer's layer off, and every render is measured by
script (thumbnail renderers hid text that a browser clipped).
- Later items gave earlier ones away. Term-recall items printed their answer in the stems below them;
bank items stated in a key the fact another item tests. Fix: term-recall items sit last (pending your
delivery ruling below); every bank carries a draw-one-per-test list the PP100 draw must respect.
Decisions waiting on you
Each was taken at the blueprint's recommendation or the coordinator's default so the build could finish.
None blocks a student sitting the course; each changes what a small pass would redo.
1. How the platform shows a quiz — one item at a time, or the page?
Call assumed: one at a time. Evidence: with a whole quiz on one screen, either the term-recall item
prints its answer below (old order) or the fluency stems print it above (new order); two Topic 12
give-aways and every topic's term-item position hang on this. What changes: nothing if one at a time;
if the page, term items move to a separate screen or become MCQs.
2. Before-and-after drawings: conserve atom counts everywhere, or keep nine particles a box?
Call assumed: nine a box in Topics 7 and 11 (atom KINDS always conserved), counts conserved from Topic 12
on, and no stem ever points at the count. Evidence: Topic 12 teaches conservation; a student who counts
Topic 11's boxes sees 4 become 9. What changes: redraw ~15 Topic 7/11 pairs if you want counts everywhere.
3. Phone-width tables. Call assumed: accept. Evidence: a 540-unit table renders its 13 px text at
about 8 px in a 324 px column, true of every table since Topic 3. What changes: one page-builder CSS rule
(horizontal scroll on narrow screens) if you want it.
4. Blueprint decisions for Topics 4–14 were all taken at their recommendation (recorded per topic in
topicNN_build/records/ADJUDICATION_*.md §6). Two worth a look: Topic 14 teaches bases on washing soda
solution (baking soda solution is borderline for litmus) and says "slaked lime" for the acid-lake line.
5. Number of forms. Call assumed: one Form A per checkpoint and one end-of-course Form E of 40. The
architecture leaves five forms as your call; the banks (60 each) support it.
6. Small register calls: steel "about 8 g/cm³" (Topic 4's value; 7.8 the alternative); the litmus
scope line in Topic 14 L04 (litmus changes only below ~4.5 or above ~8.3 — one bank item stands or falls
with it); Topic 6 says a more concentrated drink "tastes stronger" in three places, which seeds the
concentrated-equals-strong confusion Topic 14 later avoids; the register stamps TEKS 6.6/7.6/8.6, so the
end-of-course weighting uses those codes.
7. Two rule promotions in the vault: the headache-figure rule is ready to go from provisional to
standing (a second course now uses it); the S28–S34 sweeps are WARN-only and could be promoted to FAIL.
Where everything is
- Course repo:
~/Documents/MS Chemistry(your backup job pushes it). Preview:course_preview/index.html. - Per topic:
topicNN_build/content/(the lessons, figures, bank),records/(authoring, six reviews,
adjudication, bank passes), blind/ (every bundle, sequestered keys and reader files).
- Checkpoints:
checkpoints/checkpointN/; the end-of-course form:course_preview/checkpoint3/form_e.html
with its STAAR / SSA / AZSCI crosswalk in checkpoints/checkpoint3/records/CHECKPOINT3_BANK_2026-09-26.md.
- Vault:
~/Documents/CourseBuilding-Vaultat 30c51ca — every general finding from this build is in a note
with origin and scope, in the skill step that would have caught it, and in the tools where a check was
possible. Not pushed; your backup handles it.
- Student names register:
records/STUDENT_NAMES_REGISTER.md(rebuild:python3 build_tools_names_register.py).
What is not done
- Nothing has left this machine except through your backup job.
- Videos are scripts only; "could do without a video" marks are recorded per lesson for you to apply at
generation time. Photos are placeholder boxes with a "to be sourced" credit (Topic 9 bench, Topic 11 two
scenes, Topic 12 willow, Topic 14 L01).
- Older-topic backlog the new sweeps surfaced (all WARN, none blocking): 89 claim items in Topics 1–9 and
11–13 use one feedback line for both verdicts; 137 item drawings from before the frame-floor ruling sit
under 320 units; nine Topic 2 bank items share a swapped option set. Each is a light pass when you want it.