toastsim/KITCHEN-ATLAS.md
type-two a1ae1be6d6 Atlas grows: the egg dossier, the air fryer, and P12 THE CAREER
Egg dossier (feeds Brief 4/P3): the crack, shell-half separation with
yolk integrity, the float test as free information (so the rotten-egg
fart beat is always YOUR fault, seed-varied so it lands every time),
mayonnaise as a two-hand emulsion with the real rescue, the stick
blender pulse doctrine + THE ZAP (300ms skeleton flash, once a day max,
'I saw your bones, love.').

Air fryer (P6): arrangement scored by Clark-Evans INVERTED (spacing
with margins, contact shadows stay pale in the Field), the shake, and
CookPrograms — convoluted multi-step recipe cards (180 for 5, turn,
190 for 15) with no auto-advance; several programs at once is the
service clock in miniature.

P12 THE CAREER: money via tips, the paper catalogue, equipment quality
as tiers-modifying-existing-numbers (small board rolls dice onto the
floor, copper bowl genuinely whips faster, heavy pan smooths the sear
Field — noise and events, never flat score taxes), knife dulling +
honing/whetstone, a three-branch skill tree where every node is a verb
(stat-stick nodes banned), and rare primo offers the recipes notice.
Hooks stubbed from P6 on so it bolts on without refactors.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-18 16:48:06 +10:00

367 lines
23 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# TOASTSIM — THE KITCHEN ATLAS (the mega plan: every medium, every tool, every dish)
*This is MASTERPLAN.md's continuation — phases P6P11, cut-ready for Opus.
Read MASTERPLAN §1§3 first (the design law and the bones are unchanged and
non-negotiable), then Brief 3 §1§2 (working agreements + traps). Each phase
below gets its own OPUS-BUILD-BRIEF-N.md when its turn comes, re-planned
against what the previous phase taught. Asset generation is unlimited and
free on MODELBEAST — when in doubt, render it. Don't be shy.*
## 0. The audit — what exists, what's missing (2026-07-18)
**Mediums covered by P0P5:** dry radiant (toaster), enclosed roast (oven),
conductive + fat (the pan, P2), wet-gentle (poach, P3), air (whip, P3).
**Mediums missing:** boil, steam, deep-fry, grill, directed flame (torch),
smoke, cure/pickle (time itself as a medium), freeze/churn, microwave (as
comedy), pressure (as risk).
**Tools covered:** knife identities (dinner/bread/butter/Best Thing/soup
spoon), juicers ×3, box grater, toaster, oven tray, tongs+basting spoon (P2).
**Tools missing:** the knife SET as a system (chef's, paring, boning,
cleaver, carving pair), mandoline, peeler, melon baller, torch, thermometer,
pestle & mortar, piping bag, ladle, sieve, rolling pin, ricer, fish slice.
**Technique classes missing:** spec cuts (brunoise/julienne/chiffonade/
tourné), peeling, carving, tempering, emulsifying, seasoning-as-navigation.
Six phases close those gaps. Order matters: WATER before the FRYER (the pot
teaches wet heat cheap), the SPICE RACK before the BANQUET (alchemy is the
depth multiplier), the KNIFE ROLL early (spec cuts feed every later dish).
## 1. The three doctrines this atlas adds (design law amendments)
1. **THE IRREVERSIBILITY DOCTRINE** (John's law: *you can always add more
salt, you can't add less*). Seasoning is a ONE-WAY vector walk. Every
pinch, splash, and spoonful moves the dish's point in flavor space and
there is NO undo — only dilution (add volume: moves you on OTHER axes
too) or acceptance. The TASTE verb (spoon, costs 3s of service time) is
the only way to see your position. This single rule makes every shake of
the jar a decision with weight. It is the alchemy John asked for: the
cauldron never subtracts.
2. **THE INFORMATION-TOOL DOCTRINE.** Some tools don't change the dish —
they reveal it. The thermometer shows the interior ramp; the taste spoon
shows flavor position; the flour-dust shows the rolled thickness. Info
tools cost TIME, and time is the judge's oldest criterion — knowing vs
guessing becomes the skill economy. Masters guess; cowards probe; the
judge respects a confident blind serve that lands ("No thermometer. Bold.
...Correct.").
3. **THE SPEC DOCTRINE.** Every cutting/portioning task can carry a SPEC:
a target size band + CV + optional clock. The same dice you know becomes
brunoise-2mm-in-40s. Specs are data, not code — one `CutSpec` type feeds
the prep bench, the drills mode, and every recipe forever.
## 1.5 THE EGG DOSSIER (feeds Brief 4 / MASTERPLAN P3 — fold this in when cutting it)
P3 (eggs & air) gains a whole act BEFORE the poach: getting into the egg.
- **THE CRACK**: tap-strength gesture on the bowl rim — too soft = nothing,
right = clean halves, too hard = shell shrapnel in the bowl (a judged
fish-the-bits-out with the spoon, mess + time). One-handed crack is a
skill-tree flex (P12).
- **THE SEPARATION**: pass the yolk between shell halves over the bowl —
a tilt-and-pour rhythm gesture; each pass drains white, each sloppy tilt
risks the yolk BREAKING (yolk integrity = a wobble value; broken yolk in
the whites = no meringue for you, start over or serve the crime).
- **THE FLOAT TEST**: a glass of water on the bench, always available —
fresh egg sinks flat, old egg stands up, ROTTEN egg floats. Free
information tool (doctrine 2) — skipping it is gambling.
- **THE ROTTEN EGG**: crack one unfloated and it's the game's best comedy
beat — green puff, a long fart audio synth (Web Audio, hand-made, JOHN'S
LAW: it must be funny every time, so seed-vary the pitch/length), the
judge recoils on camera, bench mess spike. The float test exists so this
is always YOUR fault. Eggs spawn with a freshness roll; the carton shows
the date band (info, not certainty).
- **MAYONNAISE — the emulsion**: yolk + mustard (M18's jars!), then oil in
a THIN STREAM while whisking — pour rate vs whisk speed is a two-hand
tension (pour gesture + the P3 whisk swirl). Too fast = it BREAKS (a
visible split — grainy field); rescue = new yolk in a clean bowl and
re-emulsify the broken batch into it (the game teaches the real fix).
Judge criterion: THE EMULSION (gloss/stiffness band).
- **THE STICK BLENDER (pulse doctrine)**: immersion blender for soups and
rescue jobs — the skill is PULSING (tap-tap-tap) vs holding (comedy
disaster: hold it and lift = the splatter paints the SCREEN — a mess
decal on the camera itself, wiped with the cloth gesture). Pulse rhythm
scored like stroke rhythm on the grater. And per John: water + a mains
appliance = **THE ZAP** — a 300ms X-ray flash (skeleton silhouette +
yellow outline, synth bzzt, no lasting harm, judge line: "I saw your
bones, love."). Wet hands near the stick blender's socket triggers it;
pure slapstick, fires at most once per day so it never stops landing.
- Assets (P3 batch, seeds 340369): egg carton (dated), glass of water,
shell halves, mayo jar, whisk (if not yet), stick blender (hero prop),
broken-vs-glossy mayo 2D reference pair, green stink puff sprite.
## 2. P6 — WATER & OIL (the pot, the steamer, the fryer, THE AIR FRYER)
The pot is the pan's sibling: a heat-under-vessel with a LIQUID field.
- **`sim/pot.ts`**: water state (cold→simmer→rolling; bubble visual+audio
cues, no meter — the P2 rule), salt-the-water tie-in (M16 dosing),
contents cook on immersion clocks (pasta al dente window, egg 6/8/10min
bands — the yolk is a radial doneness ramp, the poach field reused).
- **Steam**: the basket over the pot — gentlest clock, vegetables keep
colour (a `vibrancy` value that boiling murders and steaming keeps — the
judge SEES grey broccoli).
- **THE FRYER**: oil temp is the fear mechanic. Too cold = sog (the sog
clock reused as GREASE), too hot = instant char + spit mess; the basket
lift-and-drain gesture; the drain rack + paper as a station; double-fry
for chips (the ticket teaches it: "twice, love. once for cooked, once
for golden"). Water-drop-in-oil = the spit event (mess + a judged burn
incident — the knuckle lesson's floor applies: careful play never burns).
- **THE AIR FRYER — a minigame in itself (John's spec, verbatim honored)**:
the basket is a small 2D tray and ARRANGEMENT is the skill — pieces need
AIR GAPS under and around the wire rack. Scoring is ClarkEvans INVERTED:
the same point-statistics that reward even topping spread here reward
spacing-with-margins; pieces touching = a contact map, and contact area
→ uneven cook (the browning Field literally masks where air can't reach
— shadowed faces stay pale). Overfill = everything steams, nothing
crisps ("that's not fried, that's WARM"). Mid-cycle SHAKE gesture
redistributes (and its own mini-skill: too hard = pieces jump the rack).
- **CONVOLUTED RECIPE CARDS — the multi-cycle timer doctrine**: air fryer
recipes read like the real cursed things: "180° for 5, turn everything
180°, then 190° for 15, rest 2". A `CookProgram` = ordered steps
{temp, minutes, action-between}; the ticket shows the card and the
PLAYER must execute the transitions — no auto-advance, no alarm unless
they've bought the timer (P12 shop!). Demanding recipes run SEVERAL
independent programs at once (air fryer + oven + pan, each on its own
cycle) — this is the service-clock endgame in miniature, and it
generalizes to every station that has a clock.
- **Dishes unlocked**: pasta night (boil + pan sauce + emulsify with pasta
water — the swirl), soft-boiled egg soldiers (toast reuse!), fish &
chips (batter dip + fry + drain), steamed greens side, air-fryer wings
(a 3-step CookProgram + the shake), air-fryer chips vs deep-fried chips
(the ticket has OPINIONS about which you chose).
- **Feel that must be right:** the fryer's menace. You should hover.
- Assets (seeds 400429): stockpot, pasta pot w/ strainer lid, steamer
basket, chip basket, drain rack, oil jug, thermometer probe, egg timer
(prop only — the REAL clock is the bubbles), chip cup, newspaper cone,
air fryer (hero prop — drawer open/closed pair), wire rack, wings ×2.
## 3. P7 — THE SPICE RACK (alchemy; the irreversibility doctrine lands)
- **`sim/flavor.ts`**: 6-axis flavor space — salt / heat / acid / sweet /
bitter / aroma. Every dish carries a position vector + a target REGION
(per-recipe band, some axes "don't care"). Score = distance-in-band with
named misses per axis ("acid's hiding, love", "that's not warm, that's
ANGRY").
- **Spices as data** (the rack grows across days): salt (M16 curve),
pepper, chili (heat with a LAG — it blooms 8s after tasting, the trap),
paprika, cumin, cinnamon, sugar, lemon (acid + brightness), vinegar,
fresh herbs (aroma, DIE if added early to hot pans — timing matrix
reused). Each spice = a dose curve + an axis vector + a timing profile.
Adding a spice is `flavor.add(spice, mass)` — THERE IS NO SUBTRACT.
- **The verbs**: pinch/shake (dose gestures, M16), TASTE (the info spoon,
3s, shows your vector vs target as a wobbly radar blot — precision of
the readout scales with a "palate" stat that grows with tasting? NO —
YAGNI, flat readout, the wobble is enough), DILUTE (cream/stock/more
base: scales all axes toward origin but raises volume — the only
"eraser" and it costs balance elsewhere), GRIND (pestle & mortar — the
reamer twist verbatim, whole spices > pre-ground bonus), BLOOM (drop in
hot fat — pan tie-in, doubles aroma, burns in 6s), TOAST (dry pan on
whole seeds — a browning Field on a spice bed, shake to even it).
- **Recipes**: curry night is the capstone (bloom → base → build the
vector axis by axis → taste → correct → the judge's palate names every
axis). Chili con carne, cinnamon toast (day-3 callback with sugar dose!),
lemon on the fish (P6 tie).
- **Feel that must be right:** the fear before the second chili pinch.
- Assets (seeds 430469): spice rack shelf, 12 labelled jars (SAME seed
±1 for family coherence), pestle & mortar, taste spoon, cream jug,
stock pot, chili string, lemon ×2 (whole/half), herb bundle ×3.
## 4. P8 — THE KNIFE ROLL (tool tiers, spec cuts, drills)
- **THE KNIFE SET, finally**: chef's (the all-rounder), paring (small
radius = tight curves, peels), boning (flex, fish/meat seams), cleaver
(mass — crushes garlic flat with the SIDE, the bash gesture), carving
pair (below), bread + Best Thing + butter (existing). Knives are the
existing `ToolId` system scaled up: each has bite/wobble/slip numbers
the cutting sim ALREADY consumes — a knife set is mostly DATA + meshes.
The KNIFE ROLL UI replaces the drawer when tools exceed 8 (a canvas
roll-out cloth — the drawer dwell-fish gesture reused on a new surface).
- **Spec cuts** (`CutSpec`: { name, sizeMM: [min,max], cv, clockS? }):
brunoise (2mm), fine dice (5), medium (12), julienne (2-pass strips —
dice pattern with pass B skipped + length spec), chiffonade (STACK the
basil leaves first — a mini stack gesture — then slice the roll),
bâtonnet, tourné (the absurd seven-sided barrel — 7 curved paring
strokes, the S-rank flex, judge line: "A tourné. In THIS kitchen.").
- **The peeler**: inverse coverage — remove a skin Field without cutting
flesh mass; potato, carrot, apple-in-one-ribbon (bonus).
- **The mandoline**: brutal speed for slices-at-spec, and the knuckle
danger at 10× (the guard exists — USING it is the skill; careless
no-guard speed = the floor rule protects care, punishes greed).
- **Melon baller**: sphere-scoop dose gesture — perfect spheres from
watermelon/butter; the ballscape is Clark-Evans ON A PLATE (P4 tie).
- **PREP DRILLS — the minigame mode John asked for**: a side menu off the
title ("STAGE" — culinary school). Timed spec tickets: "brunoise this
onion, 60 seconds, CV under 0.15". Score-attack, medal times, S-rank
ghosts (your best run's cut timings replay as ghost seams). Drills are
ONE scene reusing the whole prep bench + specs + clock — pure content.
- **Feel that must be right:** the mandoline's hum of danger; a landed
tourné.
- Assets (seeds 470519): knife roll cloth, 6 knives (same-seed family),
carving fork, mandoline, peeler, melon baller, watermelon (whole/half),
potato ×3, carrot, apple, medal set 2D (bronze/silver/gold/S).
## 5. P9 — FIRE II: DIRECTED HEAT (the torch, the grill, the smoke)
- **THE BLOWTORCH**: the crown gesture of this phase. A hand-held heat
source you PAINT with — literally the spread gesture driving a browning
Field, but the "knife" is a flame cone: distance = width + intensity,
speed = dose. Hold too close/slow = scorch spot; sweep evenly = glass.
The torch generalizes: brûlée tops, pepper skins (P1 callback — char
then peel!), meringue tips, cheese melts.
- **CRÈME BRÛLÉE — the elaborate dish that earns the tool**: custard base
(P3 whisk + temper: add hot cream to yolks SLOWLY — a pour-rate gesture,
too fast = scramble), bake in a water bath (P6 tie), chill (P10 tie or
simple clock), sugar dose (even coverage — spread stats), TORCH IT, then
**THE CRACK TEST**: the judge taps with the back of a spoon, on camera.
Audio is the verdict — the clean *crack* vs a sad *tap*. Field stats →
crack quality: mean in band + stdev low + no scorch = the sound of S.
- **THE GRILL**: the browning Field with GRATE GEOMETRY — stripes! The
90° rotate for crosshatch is a technique flex (the dice's second pass,
as heat). Flare-ups when fat drips (mess → fire — dodge window).
- **SMOKE** (long clock): the smoker box as a background station across a
whole day; wood chip choice = an aroma axis vector (P7 tie).
- **Feel that must be right:** the torch sweep, and the crack.
- Assets (seeds 520559): blowtorch (hero prop — chrome + red), ramekins
×3, sugar shaker, grill grate, hibachi, smoker box, wood chip bags ×3,
blowtorch flame 2D sprite frames, crosshatch reference 2D.
## 6. P10 — COLD & TIME (the freezer, the cure, the long game)
- **Cold as a medium**: freezer states on the temp clock run past fridge —
granita (scrape-every-N-minutes across a service — a recurring
interrupt the player must remember, no reminder UI), ice cream (the
churn — a sustained stir gesture with a stiffening resistance curve,
the whip's cousin), chilling sets (brûlée, panna cotta — the wobble
test returns at the pass).
- **CURE & PICKLE — time itself as an ingredient**: salt cure (M16 mass ×
DAYS — start a gravlax on day N, it's ready day N+2; the save system
already persists days), quick pickles (acid + sugar + time), preserved
lemons (P7 tie). A CURING SHELF UI: jars with day counters — the first
mechanic that makes the player think ACROSS days. The judge remembers:
"You started this Tuesday. It shows. Good."
- **Feel that must be right:** opening a jar you started three days ago.
- Assets (seeds 560589): chest freezer, granita tray + fork, churn
bucket, preserving jars ×4 (empty/full family), gravlax slab, curing
shelf, ice cream scoop, coupe glass.
## 7. P11 — THE BANQUET (carving, the elaborate table, the symphony)
- **CARVING — the two-handed gesture John called**: the carving FORK
anchors (place + hold = a pin constraint on the roast; the off-hand's
first real job) and the knife slices AGAINST the anchor — unanchored
carving = the roast slides and tears (slip physics at roast scale).
Carve at the PASS, plated per-slice, thickness spec + evenness across
slices (CV across the whole bird/joint — the ultimate pieces test).
- **The elaborate dishes** — each one a graduation exam using 4+ stations:
the roast dinner (roast + carve + gravy [pan fond + flavor nav] + sides
timed to land TOGETHER — the service clock's final form), the whole
fish (fillet with the boning knife — seam-following, a guided cut
along a curve spec — then pan + lemon + herbs), beef wellington if
we're feeling insane (pastry = rolling pin + wrap + the interior ramp
through THREE layers — pre-authorized to defer, it's the Everest),
crème brûlée returns as a course, the banquet DAY: a 3-course ticket
where the temp clocks, cure shelf, and every station play at once.
- **Menu maturity**: multi-course tickets, course sequencing, the pass
window (P5's bones, loaded). The judge brings TWO friends. S the
banquet = the game's current ending (roll credits over the messy bench).
- **Feel that must be right:** the fork anchoring — and the quiet at the
pass when all three plates land hot at once.
- Assets (seeds 590629): roast chicken + carved family, roast joint,
whole fish ×2, carving board with juice groove, gravy boat, dinner
plates ×3, the pass window shelf, credits hero art 2D.
## 7.5 P12 — THE CAREER (money, the skill tree, and gear that matters)
The meta-layer John asked for. It ships LAST-ISH (needs P5 service for
income and several phases of techniques to gate) but it's DESIGNED now so
every phase hangs its hooks: techniques get `skillId`s, equipment gets
quality tiers, ingredients get provenance. Everything is data on bones.
- **MONEY**: tips scale with grade (S pays; a D pays in abuse). Costs are
real but gentle — this is a kitchen, not a roguelike economy. Between
days: **THE CATALOGUE** — a paper mail-order catalogue UI in the house
voice (the ticket's cousin), dog-eared pages per category.
- **EQUIPMENT QUALITY — tiers as data modifying numbers that already
exist** (this is why it's cheap to build and deep to feel):
- **Chopping boards** (John's call): size × quality. The starter board
is SMALL — dice 16 pieces on it and the outer chunks roll OFF the
edge (mess event, "the floor seasoning"); it also WOBBLES under
sawing (adds wobble noise to every cut). The big maple board holds
everything steady; the end-grain board also dulls knives slower.
- **Bowls**: the cheap narrow bowl tips when you whisk hard (a
spilled-mise event) and splatters at high speed; the wide steadied
bowl just works; the COPPER bowl (real chemistry!) whips peaks
measurably faster — the P3 whip constant reads bowl tier.
- **Pans/pots**: thin pan = hot-spot noise in the sear Field (uneven
by HARDWARE, not skill — buying the heavy pan literally smooths the
Field); cheap pot boils over easier.
- **Knife upkeep**: knives dull with cuts (bite decays); the HONING ROD
is a rhythm mini-gesture before service; the WHETSTONE (skill-gated)
restores fully with an angle-hold minigame. The Best Thing never
dulls. Of course it doesn't.
- Tier rule: cheap gear adds NOISE and EVENTS, never a flat score tax —
the player feels the upgrade in their hands, not in a stat sheet.
- **THE SKILL TREE**: skill points from S-ranks, drill medals (P8), and
first-time dish completions. Nodes are TECHNIQUES the atlas already
defines, gated not invented: one-hand crack, chiffonade, tourné,
double-fry, bloom, crosshatch, fork-anchor carving, confident-blind
(serve without info tools for a standing bonus), palate (taste reads
slightly steadier). Three short branches — KNIFE / HEAT / PALATE — a
page, not a constellation. No stat-stick nodes ("+5% score" is BANNED);
every node is a new verb or a new floor.
- **INGREDIENTS & PROVENANCE**: the brand system (WONDERSLICE vs
Crustworthy) generalizes to everything — eggs by freshness date, brie
by ripeness, and the RARE OFFERS: some mornings the catalogue's back
page has one primo item, limited stock — "a good provolone, love.
don't waste it" — which upgrades a recipe's ceiling (the good pasta
NOTICES the good cheese: flavor vector + judge line acknowledge it).
Buying primo and then butchering the dish is the game's saddest
scorecard, and it should be.
- **Feel that must be right:** the first cut on the big maple board —
the silence of nothing rolling off the edge.
- Assets (seeds 630679): boards ×3 tiers, bowls ×3 (incl. copper hero),
pans thin/heavy pair, honing rod, whetstone, catalogue cover + page
spreads 2D ×4, coin/till 2D, skill-page paper 2D ×3, provolone hero,
primo crate.
## 8. Execution rules (how Opus runs this atlas)
1. **One phase = one brief.** Cut OPUS-BUILD-BRIEF-N.md from this atlas
when its turn comes (P6→Brief 4 is next after Brief 3 ships... unless
P3 eggs comes first — MASTERPLAN P3P5 still precede or interleave;
the reviewer decides the order each time based on what the last phase
taught. Suggested weave: P2 → P3(+egg dossier) → P6 → P7 → P4 → P8 →
P9 → P5 → P10 → P12 → P11 — heat before water, alchemy before plating,
the career once there's income and techniques to gate, everything
before the banquet). P12's HOOKS (skillIds on techniques, quality
tiers on gear, provenance on ingredients) get stubbed as plain data
fields from P6 onward so the career layer bolts on without refactors.
2. **Every phase follows Brief 3 §1 working agreements** (harness first,
lanes, floors not lotteries, one pressure per day, STATUS discipline,
deploy per stage) and §2 traps. New traps get APPENDED to the next
brief — pay once.
3. **Fire the phase's asset batch before writing code.** Seeds are
reserved above per phase; same-seed families for prop sets that must
read as siblings (knife set, spice jars, preserving jars). Anything
that carries physics stays procedural — silhouettes are gameplay.
4. **Dishes are content, primitives are code.** If a new dish needs no
new primitive, it's a data PR (recipe + spec + lines + assets) — batch
those freely between phases. If it needs two new primitives, split it.
5. **The drills mode (P8) and the curing shelf (P10) are the two pieces
of NEW SURFACE** (a menu mode; a cross-day UI) — everything else in
this atlas is stations and data on existing surfaces. Guard that ratio:
if a phase sprouts a third new surface, it's over-scoped — cut it.
6. **Kill list stays live**: microwave (comedy cameo only — a prop that
the judge refuses to acknowledge; pre-authorized to cut), pressure
cooker (risk without readable skill — cut unless a clean gesture
appears), sous vide (the bag is a joke prop in P10's freezer, nothing
more), wellington (defer until P11 ships and begs for it).
## 9. The bet, one last time
Every phase in this atlas is the same bones wearing a new apron: the
browning Field becomes the fryer's grease, the torch's glass, the grill's
stripes; the dose curve becomes the spice rack; the reamer twist becomes
the pestle; the wobble test becomes the crack of a brûlée. That's why this
plan is buildable by agents in weeks instead of years — nothing here is
new physics, it's new POETRY on proven physics. The kitchen grows, the
judge's vocabulary grows with it, and the game stays ONE game — from a
slice of toast to a three-course banquet with a blowtorch in your hand.