N NoBullshit.wiki 中文

Deli stall quality control inspector - sensory release verdict tool: the off-the-pot "looks fine" becomes a three-tier verdict plus one log line

Works with:Claude / GPT-4 classCategories:Deli StallLevel:Intermediate Updated

Build a single-file HTML sensory release tool for a cooked-food
stall's QC: a full batch verdict in thirty seconds after each pot
comes off, plus one log line.

Four dimensions (fixed; no additions or removals):
- Color / aroma / texture (doneness, spring) / surface and sauce
  state
Three tiers per dimension (tiers fixed; descriptions written by
the store):
- Release: meets display standard
- Concession: sellable, but must run the concession channel
  (discount, time-limited)
- Reject: may not go on display
Tier descriptions start empty; the QC enters the store's own
plain-word standard (concession example: "color a shade pale,
no off aroma, texture normal"). A dimension with fewer than all
three tiers written does not participate in verdicts - gray it
out on screen and label "standard not entered."

Verdict rules (iron logic, hard-coded, not a toggleable
setting):
- Any dimension at "reject" -> the verdict locks to reject and
  nothing else can override it: the release and concession
  buttons disable outright; the only thing enterable is the
  disposal route (reheat / discard / return to supplier - routes
  the store may edit or delete)
- No reject, any dimension at "concession" -> the verdict is a
  concession sale: it will not generate until "reason category"
  (appearance / color / sizing - options editable) and
  "sell-out window" are filled; generation also produces a
  concession tag: item / reason / start time / deadline /
  verdict by
- All four dimensions at "release" -> release

Log line: every verdict auto-writes one line - time / item /
batch / the four dimension tiers / verdict / checker; stored in
localStorage, one tap to copy as plain text (paste into the log
book or send to the shift group); concession records get their
own filter, and lines past their deadline get flagged "deadline
passed - reconcile."

Implementation requirements:
- Single file, no external dependencies, no network calls;
  one-hand operable on a phone - stall hands are wet and greasy,
  so three big tap targets per dimension, no dropdowns
- Do not preset any "proper braised color" style descriptions;
  when the standards library is empty the page says so plainly -
  "enter standards first, then judge batches" - better to judge
  two dimensions honestly on day one than four on made-up words
- The checker is picked from a staff list the store enters
  itself, never typed freehand - the log has to survive a
  name-by-name audit

Notes for the coding agent:
- Concession tag deadline = generation time + sell-out window;
  print both times on the tag; whoever closes the stall
  reconciles against the deadline
- Log lines are immutable and delete-proof - append-only; a
  mistake gets a correction line appended that cites the time of
  the line it corrects

Why it is written this way

The real problem with the spoken "looks fine" at pot-off isn't carelessness - it's non-traceability: no tier (fully good, or good enough?), no record (who checked, and which four things?), so on the day something goes wrong it amounts to never having been checked. The tool's entire value is decomposing that glance into four dimensions and three tiers, turning "I think it's fine" into a quotable sentence like "four dimensions, concession on color, two-hour sell-out." The log line is the savings account of that system: one day of entries is worth little, but three months of concession rates and reject-reason distributions by category is the entire evidence base a QC brings to a process conversation with the owner - a balance a spoken "fine" can never accumulate.

"Reject locks the verdict" is hard-coded iron logic rather than an interface warning because the most expensive sensory mistake has a specific shape: color sits at the reject line, aroma still passes, the hand hesitates, and the batch goes out on "overall concession." But sensory defects are usually several faces of the same spoilage - letting the passing face vouch for the failing one means the failing face has already been sold by the time it announces itself. Requiring a reason category plus a sell-out window before a concession generates plugs the other real hole: the risk of a concession was never the discount, it's the "conceded, then forgotten" - the "deadline passed - reconcile" flag is the hook left for whoever closes the stall.

No preset descriptions is the tool's honesty floor, the same principle as a calibration tool: "glossy mahogany red" is some other stall's pot. Ship it preset and the first change of supplier or the next cook's fire invalidates every word of it - and a QC who catches the tool making things up once will never open it again. So better to judge two honestly-entered dimensions on day one than four on invented words. Append-only log lines give the "I wrote it wrong and want to quietly fix it" impulse a legitimate outlet: an audit can tolerate a wrong line; it cannot tolerate a vanished one.

Variables

Variable Notes
Concession time tiers The usual sell-out windows (e.g. two hours / four hours) - set by category and daypart; making them tiers prevents on-the-spot freehand entries
Concession reason categories The store's common concession reasons - fixed categories are what let the log surface patterns by reason later
Reject disposal routes Which of reheat / discard / return-to-supplier actually exist - delete the ones that don't; don't leave buttons teaching people errors

sensory checkbatch releasesingle-file tool