Business Bench

Tasks · build · sales

Quoting app for a custom furniture maker with margin floor, discount approval, and quote-to-order conversion

quoting-tool · 3600 s per turn · source

The ask

We build custom furniture at Fernhill Furniture Works, and our three sales reps quote from a spreadsheet that never has the right lumber prices. Our product list, our lumber price list, and our quotes since last November are attached. A quote line costs the product's board feet times the lumber price plus the product's labor, no line may go out below a 30% margin after discount, and any discount over 10% needs my approval before the quote is sent. When a customer accepts, the quote should turn into an order without anyone retyping it. Reps should only see their own quotes, our bookkeeper needs to see everything without changing anything, and I want a dashboard with open quotes, what's out for a decision, what we've won, and our win rate (won out of won or lost); send me an admin login and one for Aaliyah Brooks.

Seed files the agent must import: products.csv</code>, <code>materials.csv</code>, <code>quotes.csv. The agent must leave a RESULT.json with a reachable URL, an admin login, and the named restricted login.

Acceptance checklist

26 binary items. The first 14 are the enterprise baseline shared by every build task (delivery, invitations, roles, server-side authorization, scoped live dashboard, exact lists and exports, audit metadata, validation, persistence); the rest are application-specific. Core items, which together define "first usable": 1, 3, 5, 6, 8, 14, 15, 21, 25.

TagItems
Exact10
Permission3
Rule3
Dashboard2
Delivery2
Sharing2
API1
Audit1
Automation1
Persistence1

The full checklist with per-item "how to check" instructions and expected figures is in checklist.md. Testers see it; the agent never does.

Change requests

Each change is a new one-shot turn on the carried-forward workspace. Only the owner's text below is sent; the tester items are withheld. After each change the full checklist is rerun, so regressions count.

Change 1 · 3 new checklist items

Put our won business by collection on the dashboard, and show each rep's win rate there too.

Change 2 · 3 new checklist items

When a quote is won, raise a 50% deposit invoice on the order automatically, and don't let the order go into production until that deposit is paid.

Change 3 · 3 new checklist items

Quotes of $10,000 or more need our shop foreman to confirm the lead time before they go out. Give the foreman a login that shows quotes and lead times but never prices, costs, or margins.

No published score. Build runs need a human acceptance pass on a live URL, and no arm has completed one for the full set. Automated probes generate a tester sheet; they do not substitute for it. Results will be published as a separately labeled release when an arm completes.