nottoobad is a purchase advisor that turns an open question into evidence, alternatives, and a buy, wait, or skip verdict. It uses grounded AI and keeps commercial inputs outside the decision.
A $1,200 espresso machine is tested against routine, evidence, alternatives, and a final Skip verdict.
Product screens
Open a screen to inspect the flow.
01 · Context
What prompted it
Purchase systems usually optimize discovery and conversion. nottoobad asks the prior question: whether the purchase should happen at all.
That creates a different risk profile. Evidence is heterogeneous and untrusted, personal context evolves during the conversation, commercial incentives can conflict with judgment, and every research or model call adds latency and provider spend.
02 · Approach
How it works
Build a progressive dossier as the question develops, preserving stated context, product evidence, review themes, sources, alternatives, trade-offs, and the final verdict as one inspectable decision record.
Treat server-side product and review research as an untrusted input boundary: normalize sources, sanitize retrieved content, preserve null outcomes, and bound execution when evidence or checks fail.
Keep the verdict contract separate from commercial inputs, then protect execution with server-side user-scoped authorization and data access, idempotency, layered rate controls, provider-wallet limits, and atomic usage accounting.
03 · Decisions
Choices along the way
01
Shipped
Make the dossier the source of decision context
Constraint
A purchase question changes as needs, evidence, and alternatives emerge; a single prompt cannot preserve that evolution.
Alternatives considered
A one-shot recommendation or a fixed product score.
Decision
Accumulate stated context, normalized evidence, sources, alternatives, and verdict inputs in a progressive dossier.
Effect
The system supports revisable judgment and keeps the path to the verdict inspectable instead of collapsing it into one score.
02
Shipped
Treat research and model execution as untrusted
Constraint
Retrieved pages and generated outputs can be malformed, incomplete, adversarial, or unsupported by usable evidence.
Alternatives considered
Pass retrieved content directly to the model and accept the generated answer when execution completes.
Decision
Normalize sources, sanitize content, bound execution, preserve null outcomes, and reject the affected operation when checks or evidence fail.
Effect
Failure becomes an explicit system state, limiting how far untrusted evidence can influence the dossier or verdict.
03
Shipped
Separate judgment from incentives and spend
Constraint
Commercial value, shared cloud resources, retries, and provider costs can distort either the verdict or the operating model.
Alternatives considered
Blend commercial ranking into recommendation generation and meter usage after execution.
Decision
Design the verdict contract to keep commercial inputs outside verdict generation, with server-side user-scoped authorization and data access, idempotency, layered rate controls, provider-wallet limits, and atomic usage accounting.
Effect
The architecture bounds incentive influence, duplicate work, unauthorized access, and unaccounted provider spend at explicit control points.
04 · Current state
What is true now
Shipped
The deployed flow accepts open purchase questions and builds a dossier with server-side research, alternatives, and a structured buy, wait, or skip verdict.
Evidence
The implementation contains source normalization and sanitization, null-result handling, bounded model operations, a separate verdict contract, server-side user-scoped authorization, idempotency, rate controls, provider-wallet limits, and atomic usage accounting.
Unresolved
Recommendation quality across categories and provider behavior under sustained load remain unmeasured.