This file is deliberately plain. The editable source of truth is the YAML-like
block below. The richer cockpit in index.html is a review
surface generated from these rules, not the only place to edit them.
schema_version: 1
status: current
title: Toto Bookmaking Rules
updated_at: "2026-05-10"
summary: Minimal current rule registry for Toto story, book, spread, image, cover, and review behavior.
evidence_weight:
strongest:
- Lisbon production work
- Rabat reusable series rules and finished-book lessons
- locked Toto reference image
lower_weight:
- New Delhi demo book data
- one-off experiments
- generated proof artifacts
note: Current book folders contain demo data. Do not overfit durable rules to New Delhi.
reference_notes:
- Keep this page producer-editable; avoid implementation details in rule text.
- Use history.html for retired rules, resolved conflicts, and technical provenance.
- Treat source labels below as human-readable references, not file paths a producer must inspect.
history:
- history.html
rules:
- id: book-format-defaults
category: configuration
status: current
title: Book format should come from inherited configuration
source: Amazon KDP trim and bleed guidance; producer direction, 2026-05-10
rule: All books should inherit default print and typography settings from book configuration, with per-book overrides allowed.
notes:
- Default trim is 8 x 10 inches portrait for Amazon KDP.
- Default full-bleed interior page size is 8.125 x 10.25 inches.
- Default 300 PPI print targets are 2400 x 3000 px trim page, 2438 x 3075 px bleed page, and 4875 x 3075 px two-page spread source.
- Default GPT Image spread generation size is 1536 x 1024 px.
- Cover wraparound dimensions should be calculated from trim size, bleed, page count, paper type, and spine width; do not hardcode a fixed wraparound ratio.
- Default page-text font is Nunito, inherited from book configuration and overrideable per book.
- id: story-development-flow
category: story-generation
status: current
title: Start with a reviewable story idea
source: producer workflow; story queue rules
rule: Every new book should begin as a short, reviewable story idea before it becomes a full manuscript or image plan.
notes:
- Producer should approve the city, hook, guest character, local anchors, spread count, and tagine-specific solution.
- Default new-story spread count is 13.
- Any non-13 spread count should be an explicit creative decision.
- id: evidence-precedence
category: story-generation
status: current
title: Weight Lisbon and Rabat above demo book data
source: user direction, 2026-05-10
rule: Current book data is demo data. Durable consolidation should lean most on Lisbon production work, then Rabat reusable lessons, and only lightly on New Delhi examples.
notes:
- Avoid hard-coding rules because a demo book happened to do something.
- Use New Delhi only as a compatibility or counterexample check.
- id: story-choice-checklist
category: story-generation
status: current
title: Story generation must expose producer choices
source: producer direction, 2026-05-10
rule: A generated story should make the main creative choices visible instead of burying them in prose.
notes:
- Show the city promise, emotional problem, guest character, recurring joke, local objects, and final tagine trick.
- Make it easy to reject a premise before manuscript drafting.
- Keep technical workflow details out of the producer-facing rule text.
- id: story-freshness
category: story-generation
status: current
title: New stories must stay fresh against prior approved stories
source: producer direction, 2026-05-10; variation register
rule: Before choosing a premise, guest, meeting, failed trick, city motif, or final tagine solution, compare against previous approved Toto stories and avoid repeating similar tropes.
notes:
- Repeating Toto mannerisms is good; repeating plot machinery is not.
- The repeatable Toto traits are his red backpack, eager curiosity, rolling sound, lid-pop, "Tagine trick!", warmth, helpfulness, and gentle naivety.
- Flag repeated meeting tropes, failed tricks, tagine solutions, guest-character comic engines, and overused city motifs before drafting.
- id: toto-premise
category: story
status: locked
title: Every story needs a tagine-specific reason
source: Series bible
rule: Toto helps because he is a tagine. If a generic character could solve the central problem, revise the premise.
notes:
- Allowed mechanisms include clay warmth, rounded lid, hollow body, steam seal, weighted base, or rolling form.
- Tagine trick can fail early and succeed later.
- id: voice
category: story
status: locked
title: Warm, funny, sensory read-aloud voice
source: Series bible; writing brief guidance
rule: The prose should be warm, playful, sensory, whimsical, funny, and rhythmic for ages 4-7.
notes:
- Short fragments are allowed for punch.
- Sound effects should be repeatable aloud.
- Toto has enthusiastic tour-guide energy.
- id: laugh-out-loud-comedy
category: story
status: current
title: Every story needs real comic energy
source: producer direction, 2026-05-10
rule: Each story should include laugh-out-loud moments, physical humor, whimsy, and Toto's sweet naivety.
notes:
- The humor should be warm and visual enough for a spread illustration.
- Toto can misunderstand, over-help, overcommit, or try a tagine idea too early.
- Avoid stories that are merely pleasant tours without a funny engine.
- id: opening-energy
category: story
status: current
title: Opening preserves energy, not awkward template fill
source: Brief variation review guidance
rule: Use the classic opening formula only when it reads naturally. Otherwise preserve Toto's eager arrival energy in a cleaner line.
notes:
- Avoid forced gerunds.
- Flag awkward grammar as critical in review.
- id: spread-word-target
category: spread
status: current
title: Per-spread word target
source: final Rabat English PDF benchmark; Lisbon full-text proof comparison, 2026-05-10
rule: Aim for 40-60 words per spread. Allow up to 70 when rhythm, repetition, or a climactic beat benefits.
notes:
- Treat 70+ words as a density warning.
- Treat 75+ words as an editorial review flag, not an automatic failure.
- Sound-effect-only lines can breathe, but they still count toward page density.
- If a spread needs more than 70 words, consider splitting the beat, cutting explanation, or moving detail into the illustration.
- id: spread-humor
category: spread
status: current
title: Each failed stop earns one warm comic beat
source: Manuscript critique guidance
rule: Rejected stops and failed attempts should contain a memorable visual or verbal comic beat.
notes:
- Slapstick is warm, never mean.
- Four stops should not all repeat the same joke structure.
- id: sound-effects
category: spread
status: current
title: Sound effects are story text and visual material
source: Series bible; image prompt workflow
rule: Use "Rumble, rumble, rumble!" when Toto rolls and extract sound words for illustrated sound effects in image prompts.
notes:
- Detected patterns include Ting, Ding-ding, Tin-tin, Sniff-sniff, Clack, Pop, Tap, Thump, Whoosh, Splash, and Chime.
- Sound effects and emphasis should get deliberate expressive treatment, not just the body-text font.
- Do not invent extra sound-effect lettering when none appears.
- id: integrated-page-text
category: spread-layout
status: current
title: Text placement is a spread-level decision
source: Rabat prompt workflow; image prompt workflow
rule: Each spread should decide where the approved story text belongs inside the composition, with enough calm space for comfortable reading.
notes:
- Reserve 30-40% clean negative space unless the spread has a deliberate full-bleed moment.
- Use the book's configured page-text font for narrative and dialogue text; default is Nunito.
- Do not summarize, omit, paraphrase, or add words.
- id: spread-text-role
category: spread-layout
status: current
title: Each spread needs a text role
source: final Rabat English PDF style comparison, 2026-05-10
rule: Before prompting or laying out a spread, decide whether it is a full-text spread, short-caption spread, sound-effect moment, or image-led beat.
notes:
- Rabat moves quickly because some facing-page pairs are image-led or sound-effect-led instead of carrying full prose everywhere.
- Do not force every generated image to carry the same amount of integrated text.
- Manuscript density and final page layout are separate decisions: short text can still produce a rich designed spread.
- id: image-prompt-intent
category: image-direction
status: current
title: Image prompts must state the visual job
source: final Rabat English PDF style comparison, 2026-05-10
rule: Every image prompt should clearly say what the spread needs the reader to notice, feel, and understand.
notes:
- Include the main action, emotional beat, setting anchor, foreground focus, and text-placement need.
- Name the spread's visual job so the image does not become only a list of objects.
- When a spread is image-led, specify the page design role instead of adding more prose.
- Avoid prompts that are only lists of objects.
- If a spread is funny, name the visual joke.
- id: visual-motif-reuse
category: image-direction
status: current
title: Do not overuse the same city motif
source: Lisbon production review; final Rabat English PDF style comparison, 2026-05-10
rule: Repeated city elements should feel intentional, not like the image model is stuck on one attractive landmark or vehicle.
notes:
- A major motif should usually appear in no more than two spreads unless it is central to the plot.
- Lisbon example: the tram should not dominate more than two spreads without a story reason.
- Track repeated vehicles, landmarks, food stalls, bridges, markets, and background crowds.
- Require a fresh visual job per spread: vary camera distance, text placement, city anchor, and physical gag.
- id: toto-visual
category: character
status: locked
title: Toto visual identity is locked
source: Style guide; locked Toto reference
rule: Toto must match the locked reference, including flattened terracotta tagine base, tall conical lid, face only on lid, and red backpack on both shoulders.
notes:
- No spherical body.
- No multiple Totos.
- Lid-pop gap is empty air/shadow, not a torso.
- id: toto-active-pose
category: character
status: current
title: Toto should be active in every spread
source: Lisbon production review, 2026-05-10
rule: Toto should be visibly doing something in every spread, not sitting like a logo or passive mascot.
notes:
- Vary poses across rolling, wobbling, leaning, listening, helping, reacting, balancing, peeking, and celebrating.
- His action should connect to the story beat on that spread.
- Keep the locked visual identity even when the pose is energetic.
- id: guest-character
category: character
status: locked
title: Guest characters support the book, not the series
source: Series bible
rule: Each book has one local creature companion by default, warm but not magnetic, defined by a problem and one visual trait.
notes:
- Returning guests need explicit registry recurrence policy.
- Guest should not overshadow Toto.
- id: local-animal-freshness
category: character
status: current
title: Guest animals should feel local and not repeat by country
source: producer direction, 2026-05-10
rule: When generating a new guest character, prefer an animal strongly associated with the city or country, but do not repeat the same animal across multiple stories in that country.
notes:
- Examples: rooster for Portugal, kiwi for New Zealand, peacock for India.
- If the obvious animal has already been used for that country, choose a different locally plausible animal.
- Repeat an animal only when the producer explicitly wants a returning character.
- id: cover-wraparound
category: cover
status: current
title: Cover size comes from book configuration
source: Cover prompt workflow
rule: The cover is a separate asset whose final canvas should be calculated from the book's trim size, bleed, paper type, page count, and spine width.
notes:
- Include title, subtitle, byline, Toto, guest character, and city anchor.
- Keep spine and fold areas calm after the calculated cover template is known.
- Toto lid stays closed unless explicitly changed.
- id: cover-geometry
category: cover
status: current
title: Cover city geometry must be physically believable
source: Cover prompt workflow
rule: Streets, rails, vehicles, pavements, stairs, and buildings must connect physically.
notes:
- No tram tracks ending at pavement shoulders.
- No rails emerging from buildings.
- No tracks crossing footpaths impossibly.
- id: review-severity
category: review
status: current
title: Review severity has explicit meaning
source: Review guidance
rule: Critical means locked-rule violation, awkward grammar, non-tagine solution, or cultural dignity issue. Freshness issues default to Important.
notes:
- Important covers repeated trope, stale mishap, or over-familiar rhythm.
- Polish covers small echoes and local color improvements.
- id: human-gates
category: review
status: current
title: Humans approve creative locks and visual choices
source: Producer review workflow
rule: The pipeline should automate mechanics but pause for genuine creative decisions.
notes:
- Brief selection.
- Manuscript issue selection.
- Character reference approval.
- Prompt approval.
- Image variant and proof approval.