Skill: write-like-james @ e23b67f · the build: write-lesson, write-video-script (the demo of 2 October, your review applied @ 0511eef), write-mcqs (the bank and type sheet @ e23b67f), review-lesson (two blind reads and a full re-read), review-questions, review-accuracy, review-figures @ e23b67f; v2 fixes and v3 polish @ e23b67f
Topic 11 "What a design must do, and what it must stay inside": your read (2 October 2026)
Skim first
The lessons in teaching order, each with its one rule sentence; then the intro script; then the question types. The review page follows.
The lessons and their rules
| Lesson | Atom | Rule sentence |
|---|---|---|
| L01 Say what the design must do | SR4-020 | A job is something the design must do. A job the design must do is called a criterion. |
| L02 Say what the design must stay inside | SR4-021 | You must stay inside a limit. A limit the design must stay inside is called a constraint. |
| L03 Check the idea before you build | SR4-022 | Write the criteria and the constraints down before you build. Meets every criterion, stays inside every constraint: keep it. Fails a criterion or breaks a constraint: cross it out. |
The intro script (104 words, about 52 s)
Here's a school garden in winter, and two bird feeders hang from one branch. Jack's feeder is painted bright red. Molly's feeder is plain brown. A sparrow lands on Molly's feeder and eats. Then it hops to Jack's feeder, and the seed pours out onto the grass. Jack's feeder looked better. So why did Molly's feeder work, and Jack's feeder fail? Molly did something before she built hers, and Jack did not. To find out, we will look at what a design must do, and how to check an idea before you build it. Okay, so are you ready to build something that works?
The question types (from TYPES_G4T11.md)
- Type 1 (easy · MCQ, four lines · SR4-020): four lines for one design: which one is a criterion (three wishes) — or which one can nobody test (three testable jobs) — four board lines of the same shape, "The X must …" (v2: in the nobody-can-test half the wish keys carry a tail — "awesome to look at", "really funny" — so the key is no longer the shortest by a margin)
- Type 2 (medium · MCQ · SR4-020): which of four actions is a TEST of the criterion; which of four lines says a wish ("steady", "loud", "strong") in a way anyone can test — four two-step actions of one shape; four "The X must …" lines
- Type 3 (easy · medium · MCQ, fixed set KIND4 · SR4-021 (7) · SR4-022 (3)): one board line: which kind of line is it (v2: every stem stands alone — no "the same board"; a space line states its size in the lesson's shelf shape) — a criterion / a constraint / a test / neither
- Type 4 (easy · MCQ, fixed set LIMIT4 · SR4-021): a constraint: which kind of constraint is it — what you may use / how much time you have / how much space you have / how much money you have
- Type 5 (medium · MCQ, four lines · SR4-021): four board lines: pick the one constraint among three criteria, or the one criterion among three constraints — the four lines
- Type 6 (hard · MCQ, fixed set ROLE4 · SR4-021): a line IS a constraint (or a criterion): which is the reason — It says what the design must do. / It says what the class may use. / It says how much time the class has. / It says how the class tests the design.
- Type 7 (easy · medium · MCQ · SR4-022): what the class does first; what the class does with each idea before anyone builds; what a child does with an idea that passes — FIRST4 (write the criteria and the constraints down / build the first idea / paint the design / test the built design); four actions; four actions
- Type 8 (medium · MCQ, fixed sets KEEP4 · REASON4 · SR4-022): a one-criterion, one-constraint board and one idea's facts: what should the child do with it — or BOTH lines and the idea's result against each are given, the idea is crossed out: which is the reason (v2) — keep it / cross it out / build it first, then check it / change the constraint to fit it · It fails a criterion. / It breaks a constraint. / It is not the nicest idea. / It is not the first idea.
- Type 9 (hard · MCQ; 5 drawn · SR4-022): the doorstop board (two criteria, two constraints, figure
board_pp_doorstop) and one idea's four facts: which line does it fail or break (v2: every stem asks "fail or break") — or four ideas in a results table (owner · what it uses · what happened; figurestable_pp_sailboat,table_pp_telephone) against a one-criterion, one-constraint board: which idea is kept — the four board lines in short form (DOOR4) · the four owners' ideas - Type 10 (medium (hard in v1) · typed text · SR4-020 (1) · SR4-022 (3)): finish the rule: the missing word — test · before · cross · keep (with articles, plurals and child forms; v2 adds check / throw, leave it out / pick, choose, and "___ it" refuses build with a wrong_fb line that says keep)
- Type 11 (hard · MCQ, fixed set KIND4 · SR4-020 (1) · SR4-021 (1)): the definition → the term: which of these is the name for a job the design must do, that anyone can test / for a limit the design must stay inside (v2; the hard tier recalls every coined term — vault, 30 Sep 2026 — by MCQ, the words being nine and ten letters) — a criterion / a constraint / a test / neither
This is the Grade 4 demo you reviewed on the morning of 2 October, now sitting in the course as Topic 11, ahead of Topic 12.
Three lessons in one class: Miss Reyes's, with Jack, Molly and Liam, making bird feeders for the school garden.
Jack writes "the feeder must be really good" and Molly writes "hold one cup of seed without spilling"; only Molly's line can be tested, and a job the design must do is called a criterion (L01).
Miss Reyes adds "you may use only one plastic bottle" and Liam asks for a second; the line says nothing the feeder must do, it says what you may use, and a limit the design must stay inside is called a constraint (L02).
Liam picks up the scissors and Miss Reyes stops him: write the criteria and the constraints down first, then keep or cross out every idea against them (L03).
Your eight notes on the demo were applied that morning and stand. Since then the topic gained what the demo was never asked for: a bank of 57 items with its type sheet, three reviews, two blind reads and a full re-read (every key agreed), and today's polish. The five videos are live under the demo's ids.
The questions for you (built as recommended)
1. Do we keep "criterion" and "constraint", or switch to the register's "success rule" and "limit"?
The register's note on SR4-021 says these two words wait for grades 6 to 8 and that Grade 4 uses everyday wording.
The demo coined them last, after a lesson each on "job" and "limit", on your brief; you asked for them from L03 on, and Topic 12 recalls both with the same definitions word for word.
NGSS 3-5-ETS1-1 prints both words ("criteria for success and constraints on materials, time, or cost"), and so do the state tests.
Recommendation: keep the coined words, and retire the register's cross note (one line in the knowledge-graph repo's SR4 register; nothing a child reads changes).
Keep criterion / constraint and retire the note / Switch to success rule / limit
2. Do the two summary audio edits go to the Peps session now, or after Olivia's pass?
The live summary video opens "Remember Miss Reyes's chalkboard?" where the ruled opener is "Here's everything we found out about what a design must do and what it must stay inside."
Its fifth beat says "And nicer? Nobody can test nicer. It is neither.", a fragment, where the script says "And nobody can test 'nicer', so 'make it nicer' is neither a criterion nor a constraint."
Both are audio edits by Peps id (video_1790943620211_313c5387a667aaa847a8), never a re-render.
Recommendation: send them now; any note of Olivia's becomes a second edit by the same id.
Now / After Olivia's pass
3. Does L02's video keep your "In the last lesson we learned…" clause, or the pipeline's line?
Your note on L02 asked for the full context again, and the script's first beat ends "In the last lesson we learned that a job like that is called a criterion."
The pipeline dropped the clause under the vault's state-the-fact rule and delivered "Something the design must do is called a criterion."
Putting your clause back is one audio edit by id (video_1790939191214_fe75f2049028f5a26acb).
Recommendation: keep the pipeline's line; a child who watches L02 days after L01 gets the fact either way, and "in the last lesson" points at a lesson they may not remember.
Pipeline's line / my clause, one audio edit
4. Do the three articles stay at 410, 508 and 482 words, or are L02 and L03 split?
The Grade 4 brief warns above 300 words; Grade 3's approved articles run about 300.
You reviewed these pages on 2 October and the architecture adopts the demo as built; each article has a subtitle or figure every eight idea lines or fewer.
A split would cut L02 at "Two more limits" and L03 at "Liam's idea", with a short check between; the videos do not change.
Recommendation: keep them as you reviewed them; Olivia's pass will say if a nine-year-old loses the thread.
Keep / Split L02 and L03
5. Is the demo folder kept as the record, beside the topic folder?
grade4/demo_criteria_constraints/ holds the demo as you reviewed it, your triage, and the five video ids; grade4/topic11_build/ is the course copy, with the bank.
The demo folder is untouched, with one pointer line at the top of its record; deleting it loses the record of what you reviewed.
Recommendation: keep both.
Keep both / Fold the demo folder into the topic folder
Applied without asking
Your eight notes on the demo (the intro's map line in your words; L02 re-setting the whole scene and drawing the use / do contrast; "criterion" coined in its own lesson; L03 naming the class and the feeders, stating its point first, and saying criteria and constraints from there on; L03-q1 and every later item offering the terms as options) were applied on 2 October and stand. The demo was re-pointed as Topic 11 with its lessons, quizzes, practice, intro and summary unchanged in substance; the summary sits before the practice, as you ruled on the demo. The bank of 57 items and its type sheet were written for it; the guidance, figure and accuracy reviews, two blind reads and Reader C's full re-read were applied at once: stems that pointed at "the same board" stand alone; the doorstop stems ask "fail or break"; the reason items give both lines; every "must fit" line carries its size; L02's article gained its one sorting sentence; L03-q1's board lost its headings; every item board reads at 15 px on a phone; the key-tell checker is at 0 of 101; five shape tells and one give-away from the re-read are gone; Dean became Ray, Lou and Hope were retired and nine fresh names added so no child loses twice; the typed items accept the forms the readers wrote. The batch is built and checked and not sent (the videos are live).
The lessons
| Lesson | What it teaches | Video / article words | Quiz items | Figures |
|---|---|---|---|---|
| L01 Say what the design must do | Jack's "really good" against Molly's "hold one cup of seed without spilling": a job the design must do is one anyone can test (use the design, watch what happens), and it is called a criterion | 150 / 410 | 11 | 9 |
| L02 Say what the design must stay inside | "One plastic bottle" and "40 minutes" say nothing the feeder must do; they say what you may use and how much time you have: a limit the design must stay inside is called a constraint, and it comes from the space, time, money or materials you have | 150 / 508 | 12 | 9 |
| L03 Check the idea before you build | Write the criteria and the constraints down before you build; Molly's big hole fails a criterion (crossed out), her small hole meets every line (kept), Liam's glass jar breaks a constraint (crossed out); "make it nicer" is neither | 150 / 482 | 10 | 6 |
Also on the site
Topic intro and poll · summary and three questions · mixed practice · the PP100 bank · the type sheet
After you answer
Nothing a child reads changes if you keep all five. Switching to "success rule / limit" is one substitution in each of the bank's fixed option sets, the lexicon, the terms and Topic 12's recaps, and five audio edits by id. The two summary edits are one message to the Peps session. Your L02 clause is one more. Splitting L02 and L03 is two articles cut at a subtitle with a check between. Either way, Olivia's pass is next; there are no pictures to render, every figure is drawn by code.
The lineage from the demo, and what changed
From G4DEMO to Topic 11 (2 October)
The demo (grade4/demo_criteria_constraints/) was built on the morning of 2 October to your brief, and your eight notes were applied the same morning (the triage is collapsed below). The same afternoon you said "this is actually a grade 4 topic, so we'll want to keep it on record", and the architecture's row 11 adopted "the demo of 2 October, as built". The re-pointing changed the code (G4DEMO to G4T11), added summary_first (your ruling on the demo), equalised five lesson-side key tells the new checker caught (L01's attached key, two L01 test items, L02's last item, one practice item), added L01's closing bullets for the video brief, and changed one word in L03's first beat so the word counter reads 150 (a story beat the live video already paraphrases, so no edit is owed). Everything else a child reads is the demo's. What was added: the PP100 bank (55 items, then 57), its type sheet, the batch file (built for the record, not sent) and the blind bundle. The five videos stay live under the demo's Peps ids: INTRO …02534df9f5543db6a6b7, L01 …52a2fb6b72d72834c129, L02 …fe75f2049028f5a26acb, L03 …3b7a9481d7d2a218ed60, SUMMARY …313c5387a667aaa847a8.
What the reviews found, and what changed
The blind read (two readers, 2 October) and the full re-read (Reader C)
Two readers answered 105 and 104 items cold and agreed every key. Their flags, all applied in v2: L03-q1's board printed "Constraints" over the asked line (now a headingless board); "The bed must fit inside a box" was keyed as a constraint in the criterion's shape (L02's article now states the sorting sentence, and every such line says "You have a box 40 centimeters wide"); four "which line can nobody test" items keyed the shortest option; PP-2's key was the only option not opening "The holder"; the doorstop stems' verb halved the options; three keys echoed the criterion's words; key runs; the typed "keep" item refused "build" as the readers predicted. Reader C then read the whole v2 bundle (107 items) and agreed every key. Five items would not ship as they stood: PP-25, PP-26 and PP-27 keyed the one option that dropped the vague word (now each key keeps the word and adds the test); PP-21 keyed the longest option (its distractors now match); L03's written answer told the child Kate crossed her idea out, which L03-q5 asks (now "Does Kate keep her idea? Explain."). Softer: PP-7 and PP-30 keyed the shortest option; PP-2's distractors were padded grown-up talk; PP-12, PP-19 and PP-29 print the same shelf line, a draw constraint; Sue and Lou rhymed as neighbours, Hank and Hope shared an initial, and six children lost twice. All applied in v3, keys unchanged.
The guidance, questions and accuracy review (2 October)
The bank's architecture held when re-performed: 57 items, one atom each, tags rising with the atom's place, keys spread, scripts at 150 words. Three faults would have misled a child on a randomly drawn form, and all are fixed: two stems said "the same board" when a bank has no order (each now opens on its own scene); the three doorstop stems' verb gave half the answer away (all ask "fail or break"); the three reason items named only one of the two lines (both are given, with the idea's result against each). Worth fixing, all done: Dean was Topic 33's child (now Ray); PP-41's glass jar was L03's taught case renamed (a metal can); "cool" is testable by touch (now "awesome"); "must fit" lines carry a size; two long results items are one sentence and a drawn table; wider accept lists; the typed rule words retagged medium and two definition-to-term items added. The reviewer put two things to you, both on this page: the article lengths (question 4) and the terms call (question 1), with the view that the coined words stay and the register's note is retired.
The figure review (2 October)
What a student notices first: a green chalkboard with the problem on it, and under it white cards that each ask one question and answer it with a chip. Three fixes before the cold read, all made: every item board was 8 px text on a phone (item boards now use a 350-unit frame with 15-unit text; 16 px measured on a 360 px phone); L03-q1's board handed over its answer by its heading (a headingless variant); the seed-test feeder floated above its table (the table now sits at the body's foot). Also done: the idea cards stacked so their rows read on a phone; the unplaced sort_hang deleted; orphan words on second lines balanced. Every inline SVG has no ids (the id checker passes on 30 figures). Not acted: the teaching boards' chips on the article routes are small on a phone, a course-wide convention from Grade 3's shared chip drawer, recorded for the coordinator.
The bank, in brief
57 items in content/G4T11_pp100_bank.py: 53 four-option MCQs and 4 typed words (test, before, cross, keep), the rule's everyday words; "criterion" and "constraint" are nine- and ten-letter words, so they are recognised among sister words, never typed. Per atom: SR4-020 17 · SR4-021 18 · SR4-022 22. Easy 21, medium 26, hard 10, sorted easy to hard and rising with the atom's place in the topic. MCQ keys a 15 · b 18 · c 9 · d 11. Eleven question types, one exemplar each on the type sheet: which of four lines is a criterion, or which can nobody test; which action tests a criterion; a wish rewritten so anyone can test it; which kind of line a board line is; which kind of constraint; the one constraint or criterion among four board lines; the role that makes a line one kind; what to do with an idea, and why it is crossed out; the first step; an idea against a four-line board; four ideas in a table against one board; the term from its definition. Every scene is fresh against the lessons, quizzes and practice (the scene-noun grep is in the build record); the type sheet lists the draw constraints, including today's.
The records, in full
Your triage on the demo (2 October, applied without asking)
Skill: course-build → write-video-script → video-brief; write-lesson; write-mcqs @ 0511eef
James's notes on the Grade 4 demo — triage and what was done (2 October 2026)
Source: reviews/james/RULINGS_2026-10-02.md § G4DEMO (sent 10:39 and 10:40 UTC; the two copies are identical). Every note applied; nothing goes back to James as a decision. Details and the five scripts in full: BUILD_RECORD_G4DEMO.md § v2.
| # | Note (James, verbatim) | Verdict | Done |
|---|---|---|---|
| 1 | INTRO: "what it must stay inside," - to vague before we've mentioned the word constraints, so just delete this and say: To find out, we will look at what a design must do, and how to check an idea before you build it. | Applied as written | Map line is his sentence; two chips; blurb matches; ready line and poll unchanged. |
| 2a | L02: Here's the board again, - not enough context - you need to explain the full context again - i don't know what board your talking about. | Applied (his wording) | Beat 1 names the class, the feeders, the two lines on the board, and recaps "criterion" in one line. Article headache does the same. |
| 2b | L02: And what do you mean One bottle a job the feeder must do? this makes no sense. Explain a bit more. | Applied | "Is the new line a criterion? No, it is not. It says what you may use. It says nothing the feeder must do. It is a different kind of line: a limit you must stay inside." Figure question re-worded. |
| 2c | L02: you've introduced :criterion - that's a new term, so should have its own lesson first | Already so (L01 coins it); reuse fixed | From the recap on, L02 says criterion / criteria for the jobs; "constraint" is coined at the end as planned. |
| 3a | L03: just give a bit more context - they're making bird feeders. | Applied | Beat 1 names the class, the feeders and the board with its criteria and constraints. |
| 3b | L03: its confusing that your using the words job and limit still - we already have introduced criterion and constraint so that's what we should be using now. | Applied across L03, practice, summary, figures | Scaffold nouns retired; one gloss on first use. |
| 3c | L03: And i don't really get the point of this lesson? … i dont get it | Applied | The point (write them down BEFORE you build; check every idea; keep / cross out) stated in the first beat, the forest line, the first subtitle and the rule; the "nicer" case cut from the video, kept short in the article. |
| 4 | L03-q1: should be using the language of criterion and constraints now - the first two lessons introducing them was the whole point | Applied to every L03 item, the practice and the summary's three questions (and L02's quiz) | Options "a criterion" / "a constraint" (/ "neither"); terms chosen, never typed. |
Course-wide in the demo: first beats stand alone; 104 / 150 / 150 / 150 / 125 words; S38 0 fragments; US spelling. Checker 0 FAIL. Batch at handoff/G4DEMO/videos/batch_G4DEMO.json with READY.md (hold rules; the coordinator sends). Page rebuilt with a "← Demo home" link to ../demo/index.html and no PP100 dead end.
Flagged, not changed (James's own wording kept): "In the last lesson we learned that…" locates the fact in a lesson, which the vault's state-the-fact rule discourages; it carries the recap he asked for, so it stands.
The build record (v1, v2 reviews applied, v3 polish)
Skill: course-build → write-lesson (the demo's three lessons re-pointed, substance unchanged; five lesson-side key tells equalised) → write-mcqs (the PP100 bank and its type sheet; design-check-sequence per cluster; write-explanation on every why) → video-brief (the batch built for the record, NOT sent) → review-figures (author self-check on 28 renders and 16 page screenshots) @ e23b67f
Grade 4 Topic 11 — What a design must do, and what it must stay inside — build record (v1, 2 October 2026)
What this is, in plain words
The Grade 4 demo of 2 October (G4DEMO, James's review applied the same morning) is now Topic 11 of the course, in the standard topic shape, so it sits in the Design-and-build pair ahead of Topic 12 like every other topic. James's word: "this is actually a grade 4 topic, so we'll want to keep it on record"; the architecture's row 11 adopts "the demo of 2 October, as built". Nothing a child reads was changed in substance: the three lessons (a job the design must do is a criterion; a limit it must stay inside is a constraint; write both down, then keep or cross out each idea against them), their quizzes, the practice set, the intro and the summary are the demo's. What the re-pointing ADDED is what the demo was never asked for: the PP100 bank of 55 items with its type sheet, the topic's batch file and blind bundle, and this record. Topic 12 recalls both terms with the demo's exact definitions (terms strings identical in G4T11.py and G4T12.py: "a job the design must do, that anyone can test (two or more are criteria)" / "a limit the design must stay inside: what you may use, or how much time, space or money you have"), so the two topics agree word for word.
Lineage. grade4/demo_criteria_constraints/content/{G4DEMO.py, G4DEMO_lessons.py, figures.py} at the working tree of commit 6df8296 (the demo's own Skill lines @ vault 658e971 for v1 and @ 0511eef for v2, James's review). The demo folder is left in place untouched as the record of the demo, with one pointer line at the top of its BUILD_RECORD. records/JAMES_TRIAGE_G4DEMO_2026-10-02.md says every one of James's eight notes was APPLIED (none was applied-on-click), so nothing was left for this re-pointing to apply; v2's one flagged-not-changed line ("In the last lesson we learned that…", James's own wording) stands.
Counts. 3 lessons · 3 scripts (150, 150, 150 spoken words by the topic checker; 150 / 150 / 150 by check_g4_articles.py) + intro (104 words, 2 question marks) + summary (125 words) · 3 attached questions + the intro's poll + 3 summary questions · 33 quiz items (11 + 12 + 10; 1 written answer) · 11 practice items (9 MCQ, 1 written answer, the two terms recalled last by MCQ) · PP100 bank 55 items: 51 four-option MCQs + 4 typed; per atom SR4-020 16 · SR4-021 17 · SR4-022 22; easy 21 · medium 22 · hard 12 · 28 figures, all SVG by code (27 of the demo's + the bank's doorstop board) · checker 0 FAIL, 47 WARN (answered below) · key-tell checker 0 of 99 MCQs flagged.
What changed in the re-pointing (everything else is the demo, byte for byte in substance)
| Where | Change | Why |
|---|---|---|
content/G4T11.py | code G4DEMO → G4T11; imports G4T11_lessons, G4T11_pp100_bank; TYPE_SHEET_ONLY removed and PP100 = [] replaced by the bank; KEY_TELL_EXEMPT_SETS exported; summary_first=True added | the standard topic shape; James ruled summary-before-practice on the demo (site builder flag, 2 Oct) |
G4T11.py PR-4 | the two distractors now join two clauses like the key ("Look at the greenhouse from outside, and say whether it looks warm." / "Measure how tall the greenhouse is, and write the height down.") | key-tell (b): the key alone carried ", and" |
G4T11_lessons.py L01-vq1 | key "The fan must move a feather when you wave it." → "The fan must move a feather." | key-tell (a): +21 characters; the test is still named in fb and why |
| L01-q8, L01-q9 | the two distractors are two-step actions of the key's shape ("Feel the cooler with your hand, and say whether it is thick." / "Put the cooler on a scale, read the number, and write it down."; "Put the empty pot on a scale, and write down its mass." / "Ask the class which pot looks best, and count the hands.") | key-tell (a) and (b) |
| L02-q12 | key shortened to "The sled must carry a teddy bear down the hill."; distractors "You may use only cardboard, string and glue." / "The sled must be fun for everyone who rides it." | key-tell (a): +32 characters |
| L01 | closing_bullets added: the two bullets the delivered G4DEMO-L01 prints ("A job is something the design must do" / "A job the design must do is called a criterion") | the Peps brief rule R79; the demo's L01 dict lacked the key and the tool derived them |
| L03 script beat 1 | "Miss Reyes's class is making bird feeders." → "Miss Reyes's class makes bird feeders." | check_g4_articles.py reads "one-bottle" as two words and counted 151; a non-PROTECTED story beat that the delivered video already paraphrases ("Molly and Jack want to build bird feeders…"), so NO edit by id is owed for it |
figures.py | one figure added, board_pp_doorstop (the bank's type 9 board; its four lines come from the bank's DOORSTOP list, so the drawing and the options' short forms read one list) | the bank |
build_tools_video_batch.py | CONTINUITY["G4T11"] = CONTINUITY["G4DEMO"]; READY_NOTES["G4T11"] opening "DO NOT SEND THIS BATCH" | the topic's batch carries the demo's continuity register and a plain hold |
grade4/NAMES_POOL.md | row 11 added (Miss Reyes, Jack, Molly, Liam; the 18 claim-makers; the bank's 14 idea-owners) | the pool had no row 11 |
Articles untouched at 410 / 489 / 482 student words (the brief's 300-word line WARNs). Kept as built: James reviewed these pages on 2 Oct and the architecture adopts the demo "as built"; each article has a subtitle or figure every eight idea lines or fewer (five, six and six subtitles). The cut, if James wants them shorter, is one question below.
The PP100 design (type sheet: records/TYPES_G4T11.md)
`
Skill: design-check-sequence @ e23b67f
Cluster: the whole topic (SR4-020 → SR4-021 → SR4-022; the capstone is SR4-022, check the idea before you build)
SR4-020 (a) one-step categorisation — testable job or not → types 1 (pick the one of four) and 2 (the test; the testable rewrite); the term is recognised, never typed
SR4-021 (a) one-step categorisation — criterion or constraint; which kind of constraint → types 3, 4, 5; the hard form picks the ROLE that makes a line one kind (type 6)
SR4-022 (b) multi-step routine — does it meet each criterion, stay inside each constraint, so keep or cross out → types 7 (the order), 8 (one board, one idea; the reason), 9 (a whole board; four ideas); typed rule words (type 10)
`
- Ten types, one exemplar each on the type sheet, with the nearest lesson-side instance named beside every exemplar (the design-move inventory, collapsed). Items per type: 9 · 6 · 10 · 4 · 3 · 3 · 3 · 8 · 5 · 4.
- Depth rises with atom order: SR4-020 easy 9 / medium 6 / hard 1 (typed); SR4-021 easy 11 / medium 3 / hard 3; SR4-022 easy 1 / medium 13 / hard 8. Sorted easy → medium → hard; S11 monotonic.
- Hard tier: 12 items, each with a one-line "hard because" in the bank file (checking one idea against four lines; four ideas against a board where the best-working one breaks the constraint; the ROLE of a line against "the class must do it"; the rule's word produced).
- Typed items (4): test · before · cross · keep — the rule's everyday words; accept lists carry articles, plurals and child forms. "criterion" / "constraint" are never typed (
RECALL_BY_MCQ); the hard-tier term-recall exemption is recorded on the type sheet as Topic 12 recorded it. - Fixed sets (declared in
KEY_TELL_EXEMPT_SETS): KIND4 (a criterion / a constraint / a test / neither), LIMIT4, ROLE4, KEEP4 (keep it / cross it out / build it first, then check it / change the constraint to fit it), REASON4, FIRST4, DOOR4. - Fresh scenes, re-performed: the scene nouns of every lesson, quiz, attached, summary and practice item were listed (feeder, bottle, jar, seed, sparrow, garden, paper fan, feather, raft, marbles, bookend, block tower, ruler, paper helicopter, sun hat, shelter, toy dog, zip line, cup, cooler, ice cube, juice box, clay pot, tower, book, piggy bank, shoebox, coins, book stand, pet bed, dog, sunshade, tomato, sled, teddy bear, cardboard chair, kite, paper lantern, straw rocket, sheet of paper, tape, paper clips, flames, parachute, plastic bag, cup tower, train tunnel, cardboard, catapult, cotton ball, craft sticks, rubber bands, Friday, sleeping bag, greenhouse, thermometer, robot costume, cardboard box, dog toy, sock, tennis ball, lemonade stand, marble maze) and grepped against the bank: 0 hits as a scene — "sheet of paper" and "tape" recur only as everyday materials inside two different scenes (a flag's constraint; a drawbridge's constraint), "cup" as a mini-golf hole's cup and a rain gauge's plastic cup, "straw" as a flag's and a sailboat's mast, "Friday" as a lighthouse deadline, "stone" and "book" as test loads; none reuses a taught or quizzed scene with a noun changed.
- One atom per item, every item tagged; S11 reads ≥ 1 per atom (16 / 17 / 22).
- No option bundles a verdict with its reason; no multi-select; no "biggest / smallest"; every stem ≤ 2 sentences (S23 is the mechanical twin; nine stems were cut from three sentences to two).
- Key string (51 MCQs, bank order):
b d b c a d a c d b a b a b b a a b c d a c a b d a b d c b d d d c d a b b a b b a a c a b c b d c b— a 14 · b 17 · c 9 · d 11; no letter above 34 %. Fixed sets keep their order, so c ("a test" in KIND4) is never a key there, which the spread absorbs. - ⟂ pairs are listed on the type sheet (one item per shared scene per form; a typed word's stem beside the items that print it; the doorstop board one per form).
- The bar list (things a generated item must never say) is on the type sheet.
The gates' lines
`
python3 ~/Documents/CourseBuilding-Vault/skills/write-mcqs/check_key_tells.py grade4/topic11_build/content/G4T11.py
KEY TELLS: 0 of 99 MCQs flagged (a: 0, b: 0, c: 0) [the demo read 5 of 48; fixed above]
python3 build_tools_check_topic.py grade4/topic11_build/content/G4T11.py
0 FAIL, 47 WARN (S36-COUNTS unusual_words=38 · S38-COUNTS fragments=0 · S39-COUNTS hits=0 · S30-COUNTS typed=4 fail=0 warn=0 · S37 strand=0)
python3 grade4/check_g4_articles.py grade4/topic11_build/content/G4T11.py
L01 article 410 script 150 ok | L02 article 489 script 150 ok | L03 article 482 script 150 ok | intro 104 (≤120) ok | summary 125 (≤175) ok | opener ok | 0 FAIL
python3 build_tools_build_topic_site.py grade4/topic11_build/content/G4T11.py /tmp/g4t11.html
/tmp/g4t11.html 3 lessons, 11 practice, 55 pp100, 28 figures (0 generated pictures)
python3 ~/Documents/CourseBuilding-Vault/skills/review-figures/check_svg_ids.py grade4/topic11_build/content/figures.py
figures read: 28 ids found: 0 ids shared: 0 RESULT: PASS
python3 build_tools_video_batch.py grade4/topic11_build/content/G4T11.py → handoff/G4T11/videos/batch_G4T11.json (5 videos); key string C B B A B C (B 3 of 6)
python3 ~/Documents/CourseBuilding-Vault/skills/video-brief/check_brief.py handoff/G4T11/videos/batch_G4T11.json
INTRO ✗ 1 (R79 closing bullets — the standing accepted intro hit) · L01 ✓ · L02 ✓ · L03 ✓ · SUMMARY ✓ ~2 (two advisory notes: the PROTECTED rule beats' on-screen text says the lines "glow")
python3 build_tools_blind_bundle.py grade4/topic11_build/content/G4T11.py grade4/topic11_build/blind/2026-10-02
bundled: 99 mcq, 4 text (0 numeric), 2 frq, 0 order, 0 multi — adversarial rows: 4 — held: 105
`
The 47 WARNs, answered. S8 (9): script beats of three sentences — the elementary two- and three-sentence beats, each one screen state, as the demo recorded and James reviewed; kept. S36 (38 words): criterion / criteria / constraint forms do not appear (the readability tool reads G4DEMO's lexicon for Grade 4); the words it lists — puppet, catapult, raft(s), wand(s), periscope(s), helicopter(s), shelter(s), parachute, craft, perfect, ramp(s), scissors, gym, awesome, teddy, maze(s), amazing, super, sturdy, tidy, twist, fantastic, tissue, zip, disc(s), guitar(s), crayon, prettiest, snack, shelves — are Grade 4 everyday words (a 9-year-old meets every one of them in a classroom or a toy box); the wish words (perfect, amazing, super, fantastic, sturdy, awesome, prettiest, tidy) are the point of the items that carry them (a child's own untestable line), so none is swapped. No other WARN.
Blind bundle grep. grep -h "[Drawing:" blind/2026-10-02/*.md | grep -ic "criterion|constraint|keep|cross out|must" → 10, every hit inside the three board drawings' given data (the board lines themselves carry "must" and the headings "Criteria" / "Constraints": the straw-rocket board under L03's recall and scaffold items, the catapult board under PR-1/PR-2, the doorstop board under PP-47–49). On L03-q1 (the recall) the headings do hand over the sort — by design, "scaffold": True, the demo's recorded choice. No drawing line names an item's verdict, a keep / cross out, or a wish word. 0 beyond given data.
Figures (28; author's review-figures self-check — Skill: review-figures @ e23b67f)
Rendered every figure to PNG in headless Chrome at 1000 px (/tmp/g4t11_figs/png/, 28 files) and read them on one contact sheet (/tmp/g4t11_figs/contact.png) and on the BUILT page: screenshots of #/, the three article routes, L03's quiz route, #/practice, #/summary and #/pp100 at 1200 px and in a true 360 px Playwright viewport (/tmp/g4t11_shots/, 16 files; scrollWidth 360 on every phone route, nothing clipped). Smallest item text at 360 px: 13 px (the smallest text on the quiz, practice and PP100 routes is the 13 px voice-note button; stems and options are larger; the 11 px chips are the tag / diff labels, not item text). Check 26 (ids): no drawer writes an id; check_svg_ids.py PASS; no empty box on any page.
| Figure | Where | Finding | Check | Acted / Not acted |
|---|---|---|---|---|
board_pp_doorstop (new) | PP-47–49 | Criteria / Constraints headings over four chalk lines; the long first line wraps to two; nothing outside the frame; the headings name the KIND of each line, which these items never ask (they ask which line the idea fails or breaks) | 3, 10, 17 | no finding |
| 27 demo figures | L01–L03, PR, L03 quiz | identical to the demo's renders James reviewed; every chip, tick and cross reads on the contact sheet; the idea cards' four rows fit at 620; rule_design's three rule sentences sit inside its 680 frame | 1–12 | no finding (re-opened, not read from the demo's record) |
| chip text on sort cards and test figures at phone width | article routes at 360 px | the shared Grade 3 chip (Topic 17's drawer, 10 px bold) scales with its 460-unit figure to about 8 px on a 360 px phone — a course-wide convention, not this topic's | 17 (phone floor) | not acted: shared drawer; recorded for the coordinator — the chips repeat text the idea line beside them states, so no reading is lost |
No people, photos or cartoons are drawn or owed; every figure is svg in IMAGE_KINDS.
The key strings
- Attached questions in video order (L01, L02, L03, summary ×3): C B B A B C — B 3 of 6, unchanged from the delivered videos.
- Lesson quizzes, two-option items (first option = y / criterion / keep): L01
y n y y n n y n· L02n y y n n y y n n· L03n y y y n n n y— unchanged. - Three-option items: L01
0 1 2; L022 (4 opt) · 0 1; L032; practice0 1 2 2 1 1 1. - PP100 (51 MCQs): the string above; a 14 · b 17 · c 9 · d 11.
Videos — status and owed edits
The five videos are LIVE under the demo code, not under CCDEMO: handoff/G4DEMO/videos/G4DEMO-{INTRO,L01,L02,L03,SUMMARY}.mp4 with .beats.json beside each, Peps ids in handoff/VIDEO_IDS.md § G4DEMO — INTRO video_1790942158268_02534df9f5543db6a6b7 (55.6 s) · L01 video_1790939180194_52a2fb6b72d72834c129 (68.0 s) · L02 video_1790939191214_fe75f2049028f5a26acb (72.0 s) · L03 video_1790942169939_3b7a9481d7d2a218ed60 (71.0 s) · SUMMARY video_1790943620211_313c5387a667aaa847a8 (53.9 s). (The task brief named demos/criteria_constraints/handoff/CCDEMO/ — that folder holds the OTHER demo, the six-lesson Erin / Luis / Mr. Park build for Andy, eight CCDEMO videos; it is not this topic's.) This topic's batch, handoff/G4T11/videos/batch_G4T11.json + READY.md, is built for the record and is not to be sent; READY.md says so in its first line. A live video is edited by its Peps id, never regenerated.
Scripts vs the delivered beats (each .beats.json carries only the first words of each beat and the delivery note, so the comparison is on openings and on the notes' verbatim claims). Every PROTECTED line — the rule sentences, the coinings, "Okay, now your turn.", the intro's map line and ready line — is confirmed verbatim by the delivery notes. Story beats were paraphrased by the pipeline under its contract (facts kept), which is not a difference the scripts own. Three differences ARE owed as edits by id, and one is James's call:
| Video (id) | The delivered video says | The script says | Owed |
|---|---|---|---|
SUMMARY …313c5387a667aaa847a8 | opens "Remember Miss Reyes's chalkboard? Four lines for the bird feeder. Let's sort them one more time." | "Here's everything we found out about what a design must do and what it must stay inside." (the ruled opener, 50 Decisions/A summary video opens with here is everything we found out about the topic.md) | edit by id, audio: beat 1 re-voiced as the script's opener |
| SUMMARY (same id) | beat 5 "And nicer? Nobody can test nicer. It is neither." | "And nobody can test 'nicer', so 'make it nicer' is neither a criterion nor a constraint." (lexicon sentence 8) | edit by id, audio: beat 5 re-voiced as the lexicon sentence (the delivered form opens on a fragment) |
L02 …fe75f2049028f5a26acb | the delivery note: "the 'in the last lesson' clause stays dropped by ruling"; beat 1 ends "Something the design must do is called a criterion." | "In the last lesson we learned that a job like that is called a criterion." (James's own line) | James's call: the pipeline dropped the clause under the vault's state-the-fact rule, which the demo record had flagged against James's wording; if he wants his clause, an audio edit by id |
L03 …3b7a9481d7d2a218ed60 | beat 1 opens "Molly and Jack want to build bird feeders. First, Miss…" | "Miss Reyes's class makes bird feeders. The board has two criteria, the jobs a feeder must do, and two constraints, the limits it must stay inside. Before anyone builds, the class checks every idea against the board." | paraphrase; the note confirms the board's four lines print under CRITERIA / CONSTRAINTS and the rule is spoken word for word — not owed unless a viewing finds the "before anyone builds" point missing from the audio (not checkable from first words; listed for the video review) |
| INTRO, L01 | story beats paraphrased ("One snowy morning, two new bird feeders hung…"; "Try Molly's line. Pour in one cup of seed.") with every fact kept | — | not owed |
The scripts were NOT changed to match the videos. The topic's handoff/G4T11/videos.json (the hand-off file the ledger and the site read) is not written here: the renders live under G4DEMO, and whether they are symlinked into handoff/G4T11/videos/ or the ledger learns the alias is the coordinator's call (one question below).
Names
python3 build_tools_names.py Park Erin Luis Kyle → all four "free" (exit 0) — and none of them is in this topic: they are the OTHER demo's characters (demos/criteria_constraints/). This topic's characters are Miss Reyes, Jack, Molly, Liam (headache) and the demo's 18 claim-makers, each used once; python3 build_tools_names.py Reyes Jack Molly Liam Henry Tyler Kate Anna Luke Hannah Zack Ellie Carlos Evie Abby Mason Daisy Ethan Finn Amy Rosie Nate → all "free" (the register globs Grade 3 only); a whole-word grep of every name across grade4/topic*_build/content/, grade3/, demos/, reviews/ → 0 hits in any other Grade 4 topic (Liam's one hit is James's own note on this demo in reviews/james/RULINGS_2026-10-02.md). The bank's 14 idea-owners — Fay, Gil, Jed, Pam, Val, Dean, Fred, Hank, Hope, Polly, Sue, Lou, Todd, Stan — were chosen from a list of 60 short spellable names by a 0-hit grep over the same four trees (every common short name — Omar, Priya, Tess, Nia, Ruby, Sam, Max, Leo, Zara, Kai, Ivy, Noah… — is already another topic's) and are "free" in the register. Recorded as row 11 of grade4/NAMES_POOL.md.
Sentence-atomise
Every student line of the lessons is the demo's (its self-check table stands in BUILD_RECORD_G4DEMO.md). The bank's 55 whys were written one idea per line (<br>-separated), cause before effect, the actor named (the line, the idea, the child), "so" carrying each verdict; S38 reads 0 fragments, S5 reads every why ≤ 60 words, S1 every idea line one sentence.
Questions for James (the Needs-you page)
- Criterion / constraint, or the register's "success rule / limit"? The register's SR4-021 cross note says the two terms are grades 6-8 territory, "everyday wording only"; the demo coined them last (after a lesson each of "job" and "limit") on your brief of 2 Oct, you asked for them to be used from L03 on, and Topic 12 recalls them. Recommendation: keep the coined terms and amend the register's cross note (TEKS G4-1A, NGSS 3-5-ETS1-1 and the state tests print them); if you rule for the register, every string changes by one substitution and the register's wording propagates to Topic 12's recaps. Built: the coined terms.
- Two audio edits by id on the SUMMARY video (the ruled opener; the 'nicer' lexicon sentence) — send them to the Peps session now, or hold until Olivia's pass on the topic?
- L02's "In the last lesson we learned…" clause — the pipeline dropped it under the vault's state-the-fact rule; your line or the pipeline's?
- Articles at 410 / 489 / 482 words against the Grade 4 brief's 300-word line — keep as you reviewed them, or split each at its "More lines" / "Two more limits" / "Liam's idea" subtitle with a check between?
- Where the five videos live for the site: symlink
handoff/G4DEMO/videos/*intohandoff/G4T11/videos/under the G4T11 slugs, or teach the ledger the G4DEMO → G4T11 alias? (A one-line coordinator call; nothing a student sees.)
Owed
- Non-author passes on the bank: review-questions (the type sheet first), a blind read of
blind/2026-10-02/BLIND_BUNDLE_G4T11.md(keys sequestered beside it), review-figures by a reader who did not draw (the doorstop board is the one new figure). - The two SUMMARY audio edits by id (question 2), and the video review's listen to L03's first beat.
- Olivia's pass; the Needs-you page for this topic once the coordinator renders it.
- Not committed; nothing sent; nothing written to the vault (no general rule arose — every rule applied here already stood).
v2 — reviews applied (2 October 2026)
Skill: course-build → write-mcqs (every item change; the key-tell checker) → write-lesson (the one sorting sentence) → write-explanation (the fb and why lines) → review-figures (author re-render after the drawer changes) @ e23b67f
In plain words. The blind read, the guidance review and the figure review of 2 October are applied in place. A child drawing a PP100 form no longer meets a stem that points at "the same board", a doorstop stem whose verb gives half the answer away, or a reason item that names only one of the two lines. The constraint-or-criterion boundary that both blind readers could defend the wrong way ("The bed must fit inside a box") now has its sorting sentence in L02's article and its cases phrased as limits. Every item board and the idea cards read at 13 px or more on a phone. The lessons' substance, the five live videos and Topic 12's coin lines are unchanged.
Finding → change
| Finding (who) | Change |
|---|---|
| "Dean" is Topic 33's child (review) | Dean → Ray in PP-37 and PP-55 (v1's PP-51), the TELEPHONE table list, the type sheet and grade4/NAMES_POOL.md row 11. Grep for the OLD name in grade4/topic11_build/content/: 0. Grep for Ray (whole word) in grade4/ grade3/ demos/ reviews/: one hit, the light-ray word in Grade 3 Topic 13's build record — no character. Every other idea-owner (Fay, Gil, Jed, Pam, Val, Fred, Hank, Hope, Polly, Sue, Lou, Todd, Stan): 0 hits outside this topic. build_tools_names.py Reyes Jack Molly Liam Ray → all free, exit 0 |
| "The same shadow-puppet / drawbridge board" points at nothing (review, Essential) | PP-14 and PP-15 (v1's PP-13 and PP-16) open on their own scene: "A class makes shadow puppets. The board says: …" / "A class makes toy drawbridges. The board says: …" |
| "break" vs "fail" halves the doorstop options (review, Essential; blind B) | PP-51–53 (v1's 47–49) all ask "Which line does …'s idea fail or break?" |
| REASON4 stems name only one kind of line (review, Essential) | PP-41–43 give the criterion AND the constraint and the idea's result against each; PP-41's glass jar (L03's taught case) is Todd's metal can; Stan's top is one button and one toothpick; Hank's wheelbarrow one yogurt tub and two bottle caps. Each stem stays at two sentences (S23) |
| "cool" testable by touch (review) | PP-1 "awesome to use"; PP-6 "awesome to look at" |
| "fit over a grown-up's hand" reads as a constraint (review) | PP-7: "The puppet must stay on when a grown-up wears it." |
| "must fit" with no size, criterion-shaped (review; blind A, B) | PP-12 (v1's PP-14): "The guitar must fit on the shelf: no longer than 50 centimeters."; PP-29's windowsill line "no wider than 25 centimeters"; L02-q5: "You have a box 40 centimeters wide, and the bed must fit inside it." |
| the lesson states no sorting sentence (blind A, B) | ONE idea line in L02's article, after the coin and before the rule: "A constraint comes from the space, time, money or materials you have, not from a job the design does." (19 words; the article's word before the coin is "limit", so the sentence sits where the term it uses is live). The script is untouched; article 489 → 501 words (S WARN above 300 already stood) |
| PP-2 "safe for the egg" tested by the key's own drop (review); key the only option not opening "The holder" (blind A) | key "The holder must keep the egg whole after a drop from the table." at d; distractors "clever and really well thought out" / "super in every single way" / "really special to look at" — all open "The holder", the key is longer by 10 characters (under the checker's 12) |
| PP-50 / PP-51 are 91 / 80 words of prose results (review) | PP-54 / PP-55: one stem sentence plus a drawn table (table_pp_sailboat, table_pp_telephone: who · what it uses · what happened / how far the whisper carries), rows read from the bank's SAILBOAT / TELEPHONE lists |
| accept lists miss check; throw / leave it out; pick / choose; "build" defensible (review; blind A, B) | PP-44 adds check / checks / check it / check out; PP-46 adds throw (out, it out) / leave (out, it out); PP-47 adds pick / pick it / choose / choose it / chosen, drops build / build it, and carries wrong_fb["build"]: "The class builds a kept idea later. The rule's word is keep: …" |
| a cloze on a fixed phrase is recall; no definition → term item (review) | the four typed items are MEDIUM and moved to the end of the medium block (stable re-sort; renumbered 52–55 → 44–47, 44–51 → 48–55); two KIND4 definition → term items added at the end of the hard block, PP-56 (SR4-020, key a) and PP-57 (SR4-021, key b), each with a "hard because" line |
| PP-23 "You must see…" is the constraints' opener (review; blind A) | "The periscope must show you the top of the door while you sit on the floor." |
| PP-06 to PP-09 keys the shortest by a wide margin (blind A, B) | each key carries a tail ("awesome to look at", "really funny", "really nice to look at", "look really fast") and the longest distractor is trimmed; spreads now 36–47 / 32–52 / 36–50 / 30–43 characters |
| PP-22 to PP-24 keys the only option echoing the criterion's words (blind B) | one distractor in each echoes the criterion's words too ("Look at the cup, and say whether a ball would stop in it."; "…measure how high the top of the door is."; "…say whether it could cross the tub."), with a why line that names why looking is not using the design |
| key runs (blind A, B) | PP-10–16 re-ordered: v1 b a b a b b a (four alternating at 10–13) → v2 b a b b a a b. L01's two-option string y n y y n n y n and L03's keep/cross string y n n y have no run of three and no four-alternation in SOURCE order; the readers' B B B / A A B A A B A A are the bundle's shuffle (seed 20260925), so neither quiz was re-ordered — the scaffold → bare order in L03 is pedagogical |
| PP-31 ⟂ PP-32 ⟂ PP-33; the blind read's names note (review; blind) | both on the type sheet (the ⟂ list is rewritten on the v2 numbering; PP-56 ⟂ PP-57 and PP-56 ⟂ PP-44 added) |
| L03 q1's board prints "Constraints" over the asked line (blind A, B; figures fix 2) | board_q_plane_plain (no headings) under q1; the "scaffold": True flag goes with the headings. q2, q3, q5, q6 keep the headed board (given data there) |
| item boards 8 px on a phone (figures fix 1) | board(..., item=True): a 350-unit frame, 15-unit chalk text wrapped at 34 characters, 400 px display width; board_q_plane, board_q_plane_plain, board_pr_catapult, board_pp_doorstop and the two tables use it. Measured in Playwright at a 360 px viewport: smallest item-figure text box 16 px on the L03 quiz, practice and PP100 routes (20 px at 1200 px) |
| idea cards' check rows 6.7 px on a phone (figures fix 1, "if cheap") | done: idea_card is stacked (feeder above the list) on the 350-unit frame, 14-unit rows; 15 px on the phone, 16 px at desktop |
feeder_test_seed floats above the table (figures fix 3) | feeder() draws the table at the body's foot when hang=False; the hanging variants keep the table below |
sort_hang unplaced (figures) | deleted from the drawer and FIGURES |
| orphan words on second lines (figures, minor) | _wrap balances: the narrowest width that keeps the greedy line count, so "door." / "spilling." / "itself." / "rain." no longer sit alone |
| the two tables' headers (author's re-render) | the first render ran "The telephone uses" into the third column; headers shortened to "It uses" and item_table now asserts every wrapped line against its column (the drawer's guard) |
The gates
`
python3 ~/Documents/CourseBuilding-Vault/skills/write-mcqs/check_key_tells.py grade4/topic11_build/content/G4T11.py
KEY TELLS: 0 of 101 MCQs flagged (a: 0, b: 0, c: 0)
python3 build_tools_check_topic.py grade4/topic11_build/content/G4T11.py
0 FAIL, 48 WARN (S8 ×9 three-sentence beats and S36 ×39 everyday words, as v1 answered them; one new S36 word, 'yogurt' — a Grade 4 lunchbox word, kept.
One S5 FAIL surfaced mid-pass — PP-8's why at 61 words after the key's tail — and was trimmed to 54.)
python3 grade4/check_g4_articles.py grade4/topic11_build/content/G4T11.py
L01 article 410 script 150 ok | L02 article 508 script 150 ok | L03 article 482 script 150 ok | intro 104 | summary 125 | opener ok | 0 FAIL
python3 build_tools_names.py Reyes Jack Molly Liam Ray → all free, exit 0
python3 ~/Documents/CourseBuilding-Vault/skills/review-figures/check_svg_ids.py grade4/topic11_build/content/figures.py
figures read: 30 ids found: 0 ids shared: 0 RESULT: PASS
python3 build_tools_build_topic_site.py grade4/topic11_build/content/G4T11.py /tmp/g4t11_v2.html
3 lessons, 11 practice, 57 pp100, 30 figures
python3 build_tools_video_batch.py grade4/topic11_build/content/G4T11.py → 5 videos; key string C B B A B C; READY.md opens "DO NOT SEND THIS BATCH";
check_brief.py INTRO ✗ 1 (the standing R79 intro hit) · L01 ✓ · L02 ✓ · L03 ✓ · SUMMARY ✓ ~2 — and the v2 batch JSON differs from v1 in 0 fields:
no script beat changed, so NO edit by id is owed from this pass (the v1 section's two SUMMARY edits and the L02 question stand as they were)
python3 build_tools_blind_bundle.py grade4/topic11_build/content/G4T11.py grade4/topic11_build/blind/2026-10-02-v2
bundled: 101 mcq, 4 text (0 numeric), 2 frq, 0 order, 0 multi — adversarial rows: 4 — held: 107
grep -h "[Drawing:" … | grep -icE "criterion|constraint|keep|cross out" → 7, all the Criteria / Constraints headings on the headed boards' given data
(the straw-rocket board under L03's scaffold and bare items ×4, the doorstop board ×3); L03-01's drawing line reads "a board with four lines, no headings: …".
0 beyond given data.
`
Key strings (v2)
- PP100, 53 MCQs in bank order:
b d b c a d a c d b a b b a a b a b c d a c a b d a b d c b d d d c d a b b a b b a a c a b c b d c b a b— a 15 · b 18 · c 9 · d 11 (34 % at most). The d d d at PP-31–33 is the three 'neither' wishes, one per form (⟂). - Lesson quizzes (first option = y / criterion / keep): L01
y n y y n n y n· L02n y y n n y y n n· L03n y y y n n n y— unchanged. Three-option: L010 1 2; L022 · 1 1; L032; practice0 1 2 2 1 1 0 1 1 1. Attached, video order: C B B A B C.
Changed ids
Lessons: L02 article (+1 idea line), L02-q5, L03-q1 (figure, flag). Bank (v2 numbering): PP-1, 2, 6, 7, 8, 9, 12, 14, 15, 22, 23, 24, 29, 37, 41, 42, 43, 44–47 (retagged, moved, accept lists; 47's wrong_fb), 51, 52, 53, 54, 55, 56, 57 (new). Figures: board (item variant), item_table (new), board_q_plane, board_q_plane_plain (new), board_pr_catapult, board_pp_doorstop, table_pp_sailboat (new), table_pp_telephone (new), feeder (table position), idea_card (stacked), _wrap (balanced), sort_hang (deleted). Records: this section; TYPES_G4T11.md (type 11, the ⟂ list, the v2 note); grade4/NAMES_POOL.md row 11.
Bank after the two additions: 57 items — 53 four-option MCQs + 4 typed; SR4-020 17 · SR4-021 18 · SR4-022 22; easy 21 · medium 26 · hard 10. The hard tier is all-MCQ now that the typed rule words are medium; the vault's "hard is typed" line is the recorded exception (the type sheet's v2 note), beside the two-term RECALL_BY_MCQ exemption Topic 12 already recorded.
Figures re-opened (author's review-figures pass, 13 PNGs at 1000 px in /tmp/g4t11_v2_figs/, 16 page screenshots in /tmp/g4t11_v2_shots/)
| Figure | Finding on the render | Acted |
|---|---|---|
board_q_plane_plain | four chalk lines, no heading; the asked line reads whole | yes — new |
board_q_plane, board_pr_catapult, board_pp_doorstop | 15-unit text, two lines a sentence, balanced; headings bold; nothing outside the frame; 16 px on the phone | yes — item frame |
table_pp_sailboat, table_pp_telephone | first render: the bold header "The telephone uses" ran under the third column's rule → headers shortened, guard added, re-rendered clean; cells wrap inside their columns; no verdict word in any cell | yes |
idea_big_hole, idea_small_hole, idea_glass_jar | feeder above the question and the four rows; tick / cross, yes / no and the line read at 15 px on the phone; the spilled seed sits on the table under the hanging feeder | yes — stacked |
feeder_test_seed | the bottle stands ON the table line; the two chips beneath | yes |
sort_hold_seed, sort_keep_dry, board_l02_headache | second lines balanced ("of seed without spilling."); no orphan | yes |
| the teaching boards, sort-card chips and rule cards on the article routes | 7–9 px on a 360 px phone — the v1 finding (Topic 17's shared chip and the 560 / 680 teaching frames), not in the figure review's fix list; recorded for the coordinator as before | not acted |
Judged differently, and why
- The sorting sentence sits AFTER the coin ("A name for a limit"), not at the shelf case, because the article's word up to the coin is "limit" and the sentence's job is to carry the term the quiz asks in; one sentence, 19 words, no em dash.
- L01's and L03's quizzes were not re-ordered: their source key strings have no run of three and no four-alternation; the readers' runs came from the bundle's shuffle.
- PP-22–24 (blind B's echo flag, not in the review's table) were fixed anyway — one distractor each now echoes the criterion's words; cheap and it removes a cue.
- Ray carries one whole-word hit in the four trees (the light-ray word in a Grade 3 record), not a character; taken as the review proposed.
Owed
- Non-author re-read of the changed items (the v2 bundle at
blind/2026-10-02-v2/, keys sequestered beside it); the figure reviewer's look at the six re-drawn keys on the built page. - The v1 section's two SUMMARY audio edits by id and the L02 clause question — unchanged by this pass.
- Not committed; nothing sent; nothing written to the vault.
v3 — polish (2 October 2026)
Skill: course-build → write-mcqs (Reader C's five items and the names; the key-tell checker) → write-explanation (the changed why lines and the FRQ model) → write-like-james (the Needs-you page, records/REVIEW_NEXT_G4T11.md) @ e23b67f
In plain words. Reader C read the whole v2 bundle cold (107 items) and agreed every key. What was left were shape tells a test-wise child could use (three items whose key was the only option without the vague word; one key longest by a clause; two keys shortest by a margin; one item whose distractors were padded grown-up talk), one give-away (the L03 written answer stated L03-q5's verdict in its stem), one draw constraint, and names (a rhyming pair twice, a shared initial, six children who lost twice). All are done. No key changed its letter or its meaning; no script line changed, so no edit by id is owed from this pass; the batch JSON is byte-identical to v2.
Finding (Reader C) → change
| Item | Finding | Change |
|---|---|---|
| L03-q8 (FRQ) | the stem said "But Kate crossed her idea out", L03-q5's answer on the same quiz | the task gives the data and asks the verdict: "Kate's rocket is rolled from two sheets of paper, and the constraint says one sheet. It flies 5 meters, farther than any other rocket. Does Kate keep her idea? Explain." Model: two sheets against one sheet → breaks a constraint → cross it out even if it flies the farthest → "So Kate does not keep her idea: she crosses it out." Starter unchanged. The S4 WARN (4 sentences, 30 words) is the FRQ's shape: two data sentences, the verdict question, "Explain." |
| PP-25, PP-26, PP-27 | the key was the only option that dropped the vague word, three times running | each key keeps the word and adds the test: "The tray must keep four cookies steady, none sliding off." (57 vs 46) · "The whistle must be loud enough to hear across the gym." (55 vs 45) · "The shelf must be strong enough to hold three books without bending." (68; the "anything" distractor is "strong enough for anything you put on it", 59). Whys re-worded to the new key text |
| PP-21 | key longest by a clause (FIRST4, exempt from the checker but a tell to a reader) | FIRST4 distractors take the key's shape: "build the first idea the class thinks of" / "paint the design in the class colors" / "test the design after the class builds it" (40 / 36 / 41 against 43) |
| PP-30 | key shortest by a wide margin (20 vs 54–63) | "You have 30 minutes to build the tunnel." (40); the longest distractor trimmed to "The hamster must walk through without getting stuck." (52) |
| PP-7 | key shortest by a margin (31 vs 40–52) | "The puppet must be really funny to watch." (41); "stay on when you shake your hand" (49) |
| PP-2 | distractors padded ("super in every single way", "clever and really well thought out") | child talk at the same length: "the cleverest one in the whole class" / "super special to look at" / "really nice and really neat" (56 / 44 / 47 against the key's 63) |
| PP-12 ⟂ PP-19 ⟂ PP-29 | the "fit on the shelf: no wider / longer than" line is printed as a constraint in PP-19's stem and as a non-criterion in PP-29 | on the type sheet's ⟂ list |
| PP-44 | accepts check / try beside test? | confirmed: test, tests, test it, test out, try, try out, try it, tried, check, checks, check it, check out |
| Names | Sue / Lou rhymed as neighbours (PP-39/40, PP-51/52); Hank / Hope shared an initial; Todd, Fay, Gil, Fred, Hank, Hope each appeared twice and lost both times | Lou and Hope retired. Nine names added so that no child loses twice, each 0 hits (whole word) in grade4/ grade3/ demos/ reviews/ outside this topic and "free" in the register: Rita (PP-26, Hope's wish), Glen (PP-40, Lou's sun clock), Jess (PP-43, Hank's wheelbarrow), Kent (PP-52, Lou's doorstop), Flo (PP-53, Todd's doorstop), Walt and Carl (PP-54, Fay's and Gil's boats), Hugh and Nan (PP-55, Fred's and Hope's telephones). Now Jed, Pam, Val, Ray and Sue each own one kept idea and one crossed-out idea; Fay, Gil, Fred, Hank, Polly, Todd, Stan and the nine new names appear once. No same-initial or rhyming pair inside an item or in neighbouring items. grade4/NAMES_POOL.md row 11, the bank header and the type sheet updated; the SAILBOAT and TELEPHONE lists feed the two table drawings, so the figures follow |
The gates
`
python3 ~/Documents/CourseBuilding-Vault/skills/write-mcqs/check_key_tells.py grade4/topic11_build/content/G4T11.py
KEY TELLS: 0 of 101 MCQs flagged (a: 0, b: 0, c: 0)
python3 build_tools_check_topic.py grade4/topic11_build/content/G4T11.py
0 FAIL, 55 WARN (v2's 48, plus: S36 on the new names walt, carl, kent, hugh, flo, nan — names, not words; S4 on L03-q8 at 4 sentences / 30 words — the FRQ's data-then-ask shape, kept)
python3 grade4/check_g4_articles.py grade4/topic11_build/content/G4T11.py
L01 article 410 script 150 ok | L02 article 508 script 150 ok | L03 article 482 script 150 ok | intro 104 | summary 125 | opener ok | 0 FAIL
python3 build_tools_build_topic_site.py grade4/topic11_build/content/G4T11.py /tmp/g4t11_p.html
3 lessons, 11 practice, 57 pp100, 30 figures (0 generated pictures)
python3 ~/Documents/CourseBuilding-Vault/skills/review-figures/check_svg_ids.py grade4/topic11_build/content/figures.py
figures read: 30 ids found: 0 ids shared: 0 RESULT: PASS
python3 build_tools_names.py Reyes Jack Molly Liam Rita Glen Jess Kent Flo Walt Carl Hugh Nan → all free, exit 0
python3 build_tools_video_batch.py grade4/topic11_build/content/G4T11.py → 5 videos; key string C B B A B C; READY.md opens "DO NOT SEND THIS BATCH";
diff against the v2 JSON: IDENTICAL (no script line touched; the L03-q8 change is a quiz item, not a beat) — NO edit by id owed from this pass;
check_brief.py INTRO ✗ 1 (the standing R79 intro hit) · L01 ✓ · L02 ✓ · L03 ✓ · SUMMARY ✓ ~2 (as v1 and v2)
python3 build_tools_blind_bundle.py grade4/topic11_build/content/G4T11.py grade4/topic11_build/blind/2026-10-02-v3
bundled: 101 mcq, 4 text (0 numeric), 2 frq, 0 order, 0 multi — adversarial rows: 4 — held: 107
grep -h "[Drawing:" … | grep -icE "criterion|constraint|keep|cross out" → 7, all the Criteria / Constraints headings on the headed boards' given data (as v2); 0 beyond given data
`
Key strings (v3, unchanged from v2)
- PP100, 53 MCQs in bank order:
b d b c a d a c d b a b b a a b a b c d a c a b d a b d c b d d d c d a b b a b b a a c a b c b d c b a b— a 15 · b 18 · c 9 · d 11. Bank 57 items: 53 MCQ + 4 typed; SR4-020 17 · SR4-021 18 · SR4-022 22; easy 21 · medium 26 · hard 10. - Lesson quizzes, practice and attached strings: as v2 (L01
y n y y n n y n; L02n y y n n y y n n; L03n y y y n n n y; attached C B B A B C).
Changed ids
Lessons: L03-q8 (task, model). Bank: PP-2, PP-7, PP-21 (FIRST4), PP-25, PP-26, PP-27, PP-30, PP-40, PP-43, PP-52, PP-53, PP-54 (SAILBOAT), PP-55 (TELEPHONE). Records: this section; TYPES_G4T11.md (characters, type 8 / 9 rows, type 2 and type 9 exemplars, the ⟂ list, the v3 note); grade4/NAMES_POOL.md row 11; records/REVIEW_NEXT_G4T11.md (new, the Needs-you page) → course_preview/review/REVIEW_NEXT_G4T11.html; course_preview/review/TYPES_G4T11.html. Figures: none redrawn (the two tables read the renamed lists). Blind bundle: blind/2026-10-02-v3/.
Owed
- James's five answers on the Needs-you page (the terms call and the register's cross note; the two SUMMARY audio edits; L02's clause; the article lengths; the demo folder).
- Olivia's pass. Not committed; nothing sent; nothing written to the vault (no general rule arose — every rule applied here already stood).
The blind read, adjudicated (2 October)
Skill: course-build → review-lesson (Role A blind key read, two readers; Role C adjudication by the coordinator) @ e23b67f
Topic 11 — What a design must do, and what it must stay inside — blind read, 2 October 2026
Every key agreed by two blind readers (105 and 104 rows; MCQ disagreements 0 for both; the four typed words — test, before, cross, keep — on list; the two FRQ models match). The construct is well taught by the items themselves. Both readers found the same three faults.
Flags carried into the fix pass
| Item | Who | Flag | Ruling |
|---|---|---|---|
| L03-01 | A, B | the drawn board heads its columns "Criteria" / "Constraints" and the asked line sits under "Constraints" — the picture hands over the verdict | an unheaded board, as PR-01/02 use |
| L02-05, PP-14 (PP-29 B weaker) | A, B | "The bed must fit inside a box 40 cm wide" / "The guitar must fit inside your backpack" keyed as constraints but phrased in the criterion shape "The X must…"; L01's own rule fits them | the lesson states the sorting sentence before the first item needing it (a constraint is a limit the SITUATION sets — space, time, money, materials — not something the design does), AND the cases are re-phrased in the constraint shape ("You have a box 40 cm wide") |
| PP-06 to PP-09 | A, B | in every "which line can nobody test" item the key is the shortest by a wide margin | lengthen the keys or trim the others |
| PP-02 | A | key the only option not starting "The holder" | "The holder must keep the egg whole after a drop from the table." |
| PP-23 | A | the criterion opens "You must see…", the constraints' opener | "The periscope must let you see the top of the door while you sit on the floor." |
| PP-47 to PP-49 | B | break / fail in the stem halves the options once PP-41–43 teach break = constraint, fail = criterion | "Which line does Sue's idea not meet?" |
| PP-22 to PP-24 | B | keys the only option echoing the criterion's words | match a distractor |
| key runs L03-04/05/06 B B B; PP-12–15 D D D D; L01 yes/no A A B A A B A A | A, B | keys spread | re-order |
| PP-55 typed "keep" | A, B | "build" defensible to a child | fb says "keep"; do not accept "build" |
| names | A, B | no look-alike pair inside one item; eleven idea-owners each own two ideas in two scenes | fine; note on the type sheet |
Readers' files: blind/2026-10-02/READER_A.md, READER_B.md.
The guidance, questions and accuracy review (2 October)
Skill: course-build → review-lesson (Roles B, B2) · review-questions · review-accuracy @ e23b67f — non-author review, filed by the coordinator from the reviewer's report
Topic 11 — guidance, questions and accuracy review, 2 October 2026
The bank's architecture holds when re-performed (55 items, one atom each 16/17/22, tags monotonic, keys a14 b17 c9 d11, typed stems clean, the doorstop board clean, scripts 150/150/150, articles 410/489/482, checker 0 FAIL). Three item faults would mislead a child on a randomly drawn form: two stems say "The same … board" when the bank has no order; the three doorstop stems' verb ("break" vs "fail") halves the options; the three REASON4 stems name only one kind of line. Three record claims false: "Dean" is Topic 33's character; PP-41's glass jar is L03's taught case renamed; "cool" and "fit as a criterion" break the topic's own bar list. Lessons: nothing new beyond James's applied rulings.
Key-tell checker: KEY TELLS: 0 of 99 MCQs flagged (a: 0, b: 0, c: 0).
Essentials
Rows 1–3 below. ## Worth fixing: rows 4–12.
Leave
Key string runs (a bank has no order; mark PP-31 ⟂ PP-32 ⟂ PP-33). Fourteen idea-owner names (labels; twelve own two ideas). PP-3 / PP-26 near miss. Doorstop items use test results (James approved L03's quiz in that shape). Topic 12 recalls both terms word for word. L03 does not recall "fair test" (SR4-023 owns it). Topic 12's "tower of paper cups" reuses Topic 11's attached scene — a finding for Topic 12. "Space" as a constraint kind is a fair simplification.
Question for James (not a ruling): articles 410/489/482 — as a course topic L02 and L03 are two Grade 3 articles long; split L02 at "Two more limits" and L03 at "Liam's idea" with a check between (video route unchanged)? His call.
Terms call — reviewer's and coordinator's view: keep "criterion / constraint" (NGSS 3-5-ETS1-1 reads "criteria for success and constraints on materials, time, or cost"; James ruled 2 Oct; Topic 12 is built on them; plain words taught first). Retire the SR4-021 cross note in the knowledge-graph repo — a register change for the knowledge-graph session, listed on the Needs-you page.
| where | finding | rule broken | severity | the rewrite |
|---|---|---|---|---|
| PP-13, PP-16 | "The same … board" points at nothing | checks are independent | Essential | "A class makes shadow puppets. The board says: 'The puppet's shadow must show a dog with two ears.' Which kind of line is this?" (drawbridge alike) |
| PP-47–49 | "break" vs "fail" halves the options | stem must not name its answer | Essential | "Which line does Sue's idea fail or break?" |
| PP-41–43 | only one kind of line given | option restating a given deleted | Essential | both lines given: "For a rain gauge, the criterion says 'hold one night of rain' and the constraint says 'one plastic cup'. Todd's metal can holds the rain. Todd crosses it out. Which of these is the reason?" |
| PP-37, PP-51 | "Dean" is Topic 33's | a name belongs to one topic | Worth fixing | Dean → Ray (0 hits) |
| PP-41 | glass jar = L03's taught case | fresh instance | Worth fixing | "his idea of a metal can" |
| PP-6, PP-1 | "cool" testable by touch; barred | second everyday reading | Worth fixing | "awesome" |
| PP-7 | "fit over a grown-up's hand" as a testable job vs "must fit" = constraint | one word for one thing | Worth fixing | "The puppet must stay on when a grown-up wears it." |
| PP-14, PP-29 | "must fit…" with no size | boundary | Worth fixing | "The guitar must fit on the shelf: no longer than 50 centimeters." / "The clock must fit on the windowsill: no wider than 20 centimeters." |
| PP-2 | "safe for the egg" tested by the key's own test | second defensible | Worth fixing | "The holder must be really special." |
| PP-50, PP-51 | 91 / 80 words of prose results | results in a table; setup ≤80 | Worth fixing | one sentence + a table (owner · uses · what happened); "Which idea does the class keep?" |
| PP-52, 54, 55 | accepts miss "check", "throw / leave (it out)", "pick / choose" | every correct answer accepted | Worth fixing | add |
| PP-52–55; bank | cloze on a fixed phrase is recall; no definition → term item | hard means more; both tested | Worth fixing | retag medium; add two KIND4 items ("A job the design must do, that anyone can test, is called which of these?" / "A limit the design must stay inside is called which of these?") |
| PP-23 | "You must…" voice | say the specific thing | Worth fixing | "The periscope must show you the top of the door while you sit on the floor." |
| L03-01 board, L02-05, PP-14, PP-06–09, PP-02, key runs, PP-55 "build" | blind read | — | Worth fixing | as the blind-read table rules |
The figure review (2 October)
Skill: review-figures @ e23b67f — non-author figure review with the page pass, filed by the coordinator from the reviewer's report
Topic 11 — figure review, 2 October 2026
What a student notices first: a green chalkboard with the problem written on it, and under it white cards that each ask one question and answer it with one chip. The boards read like a real board; the feeder is one bottle drawn one way everywhere. On a phone every board is a green strip of 8 px text.
Fix before a cold read
- Item boards under the floor on a phone (344 px wide; board text 8.0 px on
board_q_plane(L03 quiz, 5 items),board_pr_catapult(PR, 2 items),board_pp_doorstop(PP-47/48/49)). Fix in the drawer: an ITEM board at W≈350, text 15, wrap ≈34 chars. Idea cards' check rows 6.7 px — stack the feeder above the list on a narrow frame. - L03 q1 hands over its answer: the board prints the heading Constraints over the asked line; flagged scaffold but tagged recall. A headingless
board_q_planevariant for q1 (agrees with the blind read's L03-01 flag). feeder_test_seedfloats 12 units above the table. Draw the table at the body's foot whenhang=False.
Page pass
Every figure renders alone and complete at 1200 px and in a 360 px iframe; check_svg_ids.py: 28 figures, 0 ids, PASS. Bbox pass clean (28/28). Desktop text 21.6–26 px.
Usage read
No item figure's caption, alt or blind text names a verdict or sort. Captions never say "real". L03-q2's board is redundant (minor). No key is generated, so briefs are moot — but the default brief says "a green chalkboard" for every key and "no text" while demanding exact text: fix if any key is ever switched to cartoon.
Unplaced
sort_hang — delete (nothing references it) or keep as video-only.
Minor
Orphan words on second lines (doorstop "door."; sort cards "spilling." / "itself." / "rain.") — balance the wrap.
| key | kind | used by | verdict | what is wrong | the fix |
|---|---|---|---|---|---|
| board_pp_doorstop | item board | PP-47/48/49 | FIX | 8 px; orphan | item frame W≈350, 15 px; wrap 64 |
| board_q_plane | item board | L03-q1,2,3,5,6 | FIX | 8 px; heading answers q1 | item frame; headingless variant for q1 |
| board_pr_catapult | item board | PR-q1,2 | FIX | 8 px | item frame |
| board_l01/l02_headache, board_l01/l02_answer, board_full | boards | L01–L03 | pass | — | — |
| feeder_test_seed | svg | L01 | FIX | floats | table at body foot |
| feeder_test_hang | svg | L01 | pass | — | — |
| sort_* (L01 ×4, L02 ×6) | sort cards | L01, L02 | pass | widows; 11 px | balance wrap |
| sort_hang | sort card | none | DELETE | unplaced | remove |
| rule_criterion, rule_constraint, rule_design | cards | L01–L03 | pass | — | — |
| idea_big_hole, idea_small_hole, idea_glass_jar, idea_paint_red | idea checks | L03 | pass / phone WARN | 6.7 px rows | narrow stacked layout |
Best: idea_big_hole; board_pr_catapult; rule_criterion. Weakest: board_q_plane under q1; feeder_test_seed; the idea cards on a phone.
Reader C's full re-read of the v2 bundle
Skill: review-lesson @ e23b67f — Role A, Reader C (cold blind read of v2 bundle; items only)
Takeaway
Every item has one answer I would stake a key on; I found no two-defensible case and no wrong-key suspect. The sort cases are clean: every constraint now carries a limit with a size, a count, a time or a list, and the "fit on the shelf" lines read as space limits because the size is on the line. The boards do their job (L03-01 and the PR board have no headings; the headed boards only sit under items that ask something else). Three shape tells remain: PP-25/26/27 key the one option that drops the vague word (odd one out, three times running); PP-21 keys the longest option by a clause; PP-07 and PP-30 key the shortest option by a margin. One give-away: L03-08's stem states that Kate crossed her idea out, which is L03-05's answer on the same page. Names: Sue/Lou sit as rhyming neighbours twice (PP-39/40, PP-51/52), and six children appear twice and lose both times (Todd, Fay, Gil, Fred, Hank, Hope). Jack, Molly and Liam are not in any item.
Items
| id | answer | one-line note |
|---|---|---|
| L01-01 | A | yes; clean |
| L01-02 | A | no; "great" vague; clean |
| L01-03 | B | yes; clean |
| L01-04 | A | yes, spin is watchable; clean |
| L01-05 | A | no; clean |
| L01-06 | B | no; clean |
| L01-07 | A | yes; clean |
| L01-08 | C | only option echoing "1 hour" — the point of the item, acceptable |
| L01-09 | B | clean |
| L01-10 | A | no; a child may argue "strong" can be tested — tempting, PP-27 keeps the course consistent |
| L01-11 | A | criterion; "a limit" is an unmet word here but plain English, harmless |
| L01-V-01 | C | clean |
| L02-01 | B | constraint; clean |
| L02-02 | B | criterion; clean |
| L02-03 | B | criterion; clean |
| L02-04 | A | constraint; clean |
| L02-05 | B | constraint (box 40 cm); size on the line, no longer defensible as a criterion |
| L02-06 | A | criterion; clean |
| L02-07 | A | criterion; clean |
| L02-08 | A | constraint; clean |
| L02-09 | A | space; clean |
| L02-10 | B | no; clean |
| L02-11 | C | constraint; "a material" tempting but not a kind of line |
| L02-12 | A | clean; B vague, C constraint |
| L02-V-01 | B | constraint; clean |
| L03-01 | B | board has no headings — good; clean |
| L03-02 | B | yes; headed board does not hand over a yes/no |
| L03-03 | A | yes; clean |
| L03-04 | B | keeps; both options carry capital and full stop — consistent |
| L03-05 | B | crosses out (two sheets); clean — but see L03-08 |
| L03-06 | B | crosses out (2 m); clean |
| L03-07 | A | neither; clean |
| L03-08 | FRQ | Model: "Kate's rocket was rolled from two sheets of paper, so it broke the constraint 'one sheet of paper'; flying far does not save an idea that breaks a constraint." Award: names the two sheets AND the constraint. FLAG: stem states Kate crossed out — gives away L03-05 |
| L03-09 | B | no; clean |
| L03-10 | A | keeps; clean |
| L03-V-01 | B | crosses out; clean |
| SUMMARY-01 | B | criterion; clean |
| SUMMARY-02 | A | constraint; clean |
| SUMMARY-03 | C | neither; clean |
| PR-01 | C | criterion; board no headings — good |
| PR-02 | B | constraint; clean |
| PR-03 | A | neither; clean |
| PR-04 | C | clean |
| PR-05 | A | time; clean |
| PR-06 | B | crosses out; clean |
| PR-07 | B | keeps; clean |
| PR-08 | B | no; clean |
| PR-09 | FRQ | Model: "If the class builds first, nobody knows what the stand must do or what they may use, so nobody can check an idea or say whether the built stand is good; writing the lines first lets them check every idea against them." Award: "cannot check/test an idea" or "will not know if it is good" |
| PR-10 | B | criterion; "a test" tempting because the stem says "test it" — acceptable |
| PR-11 | B | constraint; clean |
| PP-01 | B | only option with a number — inherent to the item |
| PP-02 | D | longest by a clause; padding "super in every single way", "really well thought out" is not child talk |
| PP-03 | D | A "loud enough for everyone" tempting; PP-26 treats the same phrase as untestable — consistent |
| PP-04 | A | clean |
| PP-05 | C | clean |
| PP-06 | C | shortest but by little; clean |
| PP-07 | B | shortest by a margin (31 vs 40-52 chars) |
| PP-08 | C | clean |
| PP-09 | D | clean |
| PP-10 | C | constraint; clean |
| PP-11 | D | criterion; clean |
| PP-12 | D | constraint; size on the line; A tempting; PP-19 and PP-29-B print the same "fit on the shelf" form as a constraint — ⟂ draw |
| PP-13 | A | constraint; clean |
| PP-14 | B | criterion; clean |
| PP-15 | B | criterion; clean |
| PP-16 | D | constraint; clean |
| PP-17 | D | materials; clean |
| PP-18 | C | time; clean |
| PP-19 | B | space; clean |
| PP-20 | A | money; clean |
| PP-21 | C | longest option by a clause against three short ones |
| PP-22 | B | clean |
| PP-23 | D | clean |
| PP-24 | C | clean |
| PP-25 | A | odd one out: the only option without "steady" |
| PP-26 | C | odd one out: the only option without "loud" |
| PP-27 | A | odd one out: the only option without "strong" |
| PP-28 | B | only "You may" option — inherent to the form |
| PP-29 | D | B's "fit on the windowsill" is a good decoy; clean |
| PP-30 | C | shortest by a wide margin and the only "You…" line |
| PP-31 | A | neither; clean |
| PP-32 | D | neither; clean |
| PP-33 | C | neither; clean |
| PP-34 | C | clean |
| PP-35 | D | clean |
| PP-36 | C | keep; clean |
| PP-37 | B | cross out; clean |
| PP-38 | B | cross out (4 cm door, 6 cm hamster); clean |
| PP-39 | D | keep (subset of the list); clean |
| PP-40 | D | cross out; clean |
| PP-41 | A | breaks a constraint; both lines given |
| PP-42 | B | fails a criterion; both lines given |
| PP-43 | A | fails a criterion; both lines given |
| PP-44 | test | typed; also check / try |
| PP-45 | before | typed |
| PP-46 | cross | typed |
| PP-47 | keep | typed |
| PP-48 | C | clean |
| PP-49 | C | clean |
| PP-50 | D | clean |
| PP-51 | C | foil not on the list; "fail or break" both named; clean |
| PP-52 | B | clean |
| PP-53 | D | 90 min > 30; clean |
| PP-54 | D | Jed; one honest keep |
| PP-55 | D | Ray; one honest keep; Hope's "two cups" vs "two cans" is a fine distinction for a nine-year-old |
| PP-56 | C | clean |
| PP-57 | C | clean |
Adversarial answers (typed items)
| item | correct answer 1 | correct answer 2 | correct answer 3 |
|---|---|---|---|
| PP-44 | check | try | tset |
| PP-45 | befor | Before | before you build |
| PP-46 | cross it | crossed | cros |
| PP-47 | keep it | Keep | keap |
Cross-item notes
- L03-08's stem ("But Kate crossed her idea out") states L03-05's answer on the same quiz page. Fix: ask the FRQ without the verdict — "Kate's rocket flew 5 meters, farther than anyone else's. Does Kate keep her idea? Explain." — and accept that it re-tests L03-05 in writing.
- PP-25/26/27 all key the one option that drops the vague word. A test-wise child picks the odd one out three times. Fix one of the three by keeping the word in the key ("The tray must stay steady with four cookies on it, none sliding off") or by putting the vague word in only two of the three distractors.
- PP-21 and PP-30 (length), PP-07 (shortest): trim or pad.
- PP-12 ⟂ PP-19 ⟂ PP-29: the "fit on the shelf: no wider than" form is printed as a constraint in PP-19's stem and as a non-criterion in PP-29; a draw that puts PP-19 before PP-12 hands over PP-12.
- Names: Sue/Lou are rhyming neighbours twice (PP-39/40, PP-51/52); Hank/Hope share an initial and both lose twice. Todd, Fay, Gil, Fred, Hank and Hope each appear twice and are on the losing side both times — swap one appearance each. Jack, Molly and Liam do not appear in any item.
- Terms: "limit" (L01-11 distractor) appears before L02 coins it; harmless plain English. "neither" first appears in L03-07, after the two categories are both met. No other term before its item.
- Boards: L03-01 and PR-01/02 boards carry no headings; the headed boards (L03-02/03/05/06, PP-51-53) sit under items that do not ask the category. No board hands over a verdict.
- Stems: PP-51/52/53 say "fail or break"; no keep-or-cross stem says one alone. PP-41/42/43 give both lines. PP-54/55 each have exactly one honest keep.
Would not ship as is: L03-08, PP-25, PP-26, PP-27, PP-21.