1Mise — One Recipe, X-Ray View · six frames, two layers, one tomato
1aHorizontal storyboard · top = phone screen · bottom = engine lane · amber = the tomato line, tracked end to end
F1Capture
9:41●●●
good evening, chef
M
“Snap a recipe, I'll handle the rest.”
Take a photo or
upload a recipe
📷 Camera↑ Upload
Reading your card…
arborio rice · 80g
tomatoes  2
cremini · 250g  ·  + 5 more lines
⚙ Under the hood
extract_lines(photo) — LLM read
8 draft lines · no lookups, no math
// draft line — the tomato { qty: 2, unit: "each", text: "tomatoes" }
Shape illustrative — regenerate from frozen fixtures after the schema session.
"each" and "tomatoes" are both ambiguous — noted, not resolved.
No costing yet. No conversion yet. Just reading.
F2Silent costing attempt
9:41●●●
M
Pricing your dish…
let me walk the numbers, chef
✓ Matched 8 ingredients
✓ Checked market prices near you
◔ Around $4.85–5.35 a plate
two answers would pin it down
↩ feel free to keep cooking — I'll ping you
⚙ Under the hood — the full engine chain fires
match_ingredient ("tomatoes")
3 candidates:
roma · $2.10/lb
5x6 · $1.60/lb
cherry · $3.40/lb
convert(2 each → g)
needs an each→weight fact
none in kitchen memory
assume 150g/each ⚠
yield_lookup ("tomato, diced")
none found
assume 92% ⚠
POLICY TBD yield on 'each'-quantified lines may double-count trim (an each is bought whole)
cost_recipe()
totals all 8 lines
plate cost $5.02 ± 0.31
COST + LEDGER: 8 entries — 2 material, 6 auto-resolved
// ledger entry — the tomato assumption { line: "tomatoes 2", assumed: { match: "roma", each_g: 150 }, candidates: ["roma","5x6","cherry"], plate_cost_delta: "$0.08 – $0.31", status: "MATERIAL" } // → will be asked
Shape illustrative — regenerate from frozen fixtures after the schema session.
The full rigor runs HERE, invisibly. The conversion engine fires inside every costing.
F3Verify · nuance check
‹ back●●●
M
Two things would move your plate cost — 20 seconds, chef.
Needs detail · 2 of 8
? Which tomatoes?
price swings this cost ~2×
Roma ✓5x6Cherry
? "2 each" — what size?
"each" hides weight — swings 10–25%
Medium ~150g ✓Large ~200gby weight
tapping "by weight" →
enter grams
g
or use ~150g until you weigh one
Sharpened — cost it ›
later — save as is
⚙ Under the hood — the dollar gate
8 ledger entries
filter
plate-cost swing > threshold
2 questions
6 entries auto-resolve silently — their deltas were pennies.
The LLM phrases the questions. It never chooses them — dollars do.
F3bThe skip path
‹ recipes●●●
Saved to your book
Heirloom Tomato Tart
2 assumptions pending · $5.02 ±0.31
↩ pin them down anytime — I'll keep the questions
On your menu · at risk
Heirloom Tomato Tartest. 30% ±
Seared Scallops46%
⚙ Under the hood — assumptions carried, not lost
verify_queue
2 questions parked
  which_tomatoes · status: OPEN
  each_size · status: OPEN
cost stands on assumptions
plate $5.02 ±0.31
ledger keeps candidates: roma / 5x6 / cherry
Verification is a debt you can carry, not a gate — the book stays live, honesty stays visible.
A chef mid-service will skip. The system holds the assumptions honestly until they come back.
F4Answers become memory
‹ back●●●
Needs detail · answered
Which tomatoes?
Roma ✓5x6Cherry
2 each — what size?
Medium ~150g ✓Large ~200gby weight
cost it ›
✎ saved to this kitchen's memory
⚙ Under the hood — 2 facts written to kitchen memory
identity link
this kitchen's "tomatoes"
  = roma  (supplier: Baldor)
conversion fact
tomato, roma:
  1 each = 150g
Both facts are kitchen-scoped — every future recipe that says "tomatoes" or "each" resolves instantly.
Asked once. Never asked again — for any future recipe in this kitchen.
F5The living answer
‹ recipes●●●
Heirloom Tomato Tart
avg cost $4.85 / plate · live · tracked
FOOD COST
29%
margin 71%profit / plate $12.15
Mise's pick: sell $17 → keep $12.15
adjust
food cost = $4.85 ÷ $17 menu = 29%
Cost breakdown
pastry · 90g$0.62
tomatoes (roma) · 2 ea · 300g$0.68
price: Baldor invoice 7/12 · 1 ea = 150g (you)
chèvre · 40g$0.85
market estimate · $3.10–3.60/lb · 9 kitchens nearby
+ waste & yield loss$0.38
+ labor · ~5 min prep$0.42
TRUE COST / PLATE$4.85
✓ 87% of this cost from your own prices
⚙ Under the hood — costing with resolved facts
cost_recipe() — re-run
0 assumptions ⚠ → all facts ✓
// ledger — now provenance, not guesses { line: "tomatoes 2", status: "RESOLVED", price: {src:"Baldor inv 7/12"}, each_g: {src:"chef, F4"} }
Shape illustrative — regenerate from frozen fixtures after the schema session.
margin math
cost $4.85 ÷ menu $17 = 29% food cost · profit/plate $12.15
The trust screen renders the ledger. Every number can say where it came from.
F6Live tracking
9:41●●●
Your Menu
24 dishes · all priced live
FOOD COST
31%
AVG MARGIN
67%
AT RISK
2
M
Tomatoes up 14% this week — 2 dishes affected. review →
Heirloom Tomato Tart29% → 30%
Seared Scallops46%
+ New recipe
⚙ Under the hood — the forever loop
new invoice / market move
roma $2.10 → $2.40/lb
automatic re-cost
(conversion engine fires again)
margin delta · 29% → 30%
$4.85 → $4.95 / plate
alert → chef
↻ loops on every price event, no chef action needed
The engine re-runs on every price event, forever. Verification was a moment; costing is continuous.
BETA ROUND ONE (SEPT)F1 capture and F3 verify are performed concierge-style by our team; F2 / F4 / F5 / F6 machinery is identical in both modes.