Inspiration
A listing can mention an included item, a missing piece and a qualification in the same paragraph. A buyer searching for one favorable phrase can miss the surrounding context. Second Look keeps the full seller text beside suggested excerpts, then ties checkout to the exact version the buyer reviewed.
What it does
The prototype is one fictional merchant shop with six boxed collectibles. Buyers enter up to three requirements. Local AI suggests exact seller excerpts and fixed neutral questions; the full saved listing remains visible. Buyers make their own assessment and explicitly acknowledge it.
PayPal is central to checkout. The app creates a sandbox order for the reviewed item, price and version. The buyer approves separately on PayPal sandbox, returns and explicitly requests server capture. A receipt preserves the review alongside verified provider and capture states.
How we built it
Node 24 built-ins, SQLite and plain browser modules provide the app without npm runtime dependencies or a build step. Ollama runs qwen3.5:4b-q4_K_M locally. One bounded model request selects server-owned source-span and question IDs. The server maps accepted IDs to exact source text and fixed wording. Invalid or unavailable output produces visible empty suggestions.
Immutable snapshots and integer-cent prices preserve what was reviewed. Merchant description or price edits invalidate stale review and checkout approval. The sandbox-only Orders v2 adapter implements server create/get/capture, persistent request IDs and amount, currency and reference checks. Browser callbacks cannot mark an order paid, and unresolved capture blocks another checkout for that item in the same session.
Challenges we ran into
Exact quotations do not establish relevance, completeness, authenticity or truth. Small synthetic evaluations still found omitted context, unnecessary excerpts and generic questions. These limitations remain disclosed; the model gives no buying verdict and performs no purchase action.
Payment state also needs careful handling. Approval is separate from completed capture. A controlled PayPal negative-testing simulation returned HTTP 422 INSTRUMENT_DECLINED; the app retained ambiguity with no completed capture, then reconciled through status GETs without repeating the capture POST.
Accomplishments that we're proud of
Actual sandbox testing completed two $48.00 USD captures of listing version 1, including a fresh order for the recorded demo. A separate cancelled order remained uncaptured. Reload preserved receipt and provider state. The deterministic suite passed 154/154 checks, with five actual HTTP checks recorded separately from sandbox requests and labeled transport mocks.
The 65-second captioned demo shows live review, acknowledgement, sandbox order/capture and receipt reload. Four takes are edited together; PayPal's account/approval screen is excluded, and captions explain its separate approval. No live funds, real cards or bank accounts were used.
What we learned
Source validation protects quotation integrity while leaving the buyer responsible for reading and assessment. Payment verification must preserve uncertainty instead of treating a return URL or an approved order as proof of payment.
What's next
Improve retrieval evaluation and neutral question selection before expanding beyond fictional listings. Judges can run the documented local build with Node 24.2+, the exact Ollama model and their own free Sandbox Business app and generated Sandbox Personal buyer. Credentials stay in a protected local file. Existing local operation was tested; startup from a clean extraction remains unverified.

Log in or sign up for Devpost to join the conversation.