# CartProof

- **Event:** [Meta Global AI Developer Hackathon](https://cerebralvalley.ai/e/meta-ai-developer-hackathon)
- **When:** Oct 26, 12:00 PM – Nov 4, 9:00 PM (EST)
- **Where:** Online
- **Team:** [Arvind Ramachandran R](https://cerebralvalley.ai/u/arvind_ram)
- **GitHub:** https://github.com/arvindram27/CartProof
- **Demo video:** https://drive.google.com/file/d/1vsdhy_eOlS0KsMsBKj1G2mVwE9jdQDMn/view
- **Gallery:** https://cerebralvalley.ai/e/meta-ai-developer-hackathon/hackathon/gallery
- **Page:** https://cerebralvalley.ai/e/meta-ai-developer-hackathon/hackathon/gallery/3680

AI shopping agents can report success while the real cart says otherwise. CartProof checks what actually happened: it verifies whether a shopping action produced the requested cart state, and makes one bounded recovery when an item is missing.

Built during the hackathon, CartProof pairs a Meta model with a deterministic checker. In the live demo, the customer's cart instruction is resolved by a deterministic, explicit SKU grammar that is authoritative; Muse Spark 1.3 (via the Meta Model API) cross-checks the intent and selects the allowed cart action on a real Shopify development store (Storefront API). CartProof's server executes the chosen action, then re-reads the cart fresh from the same backend and compares it to the requested state - never trusting the agent's own report.

The demo shows the full arc on one synthetic test cart: a normal add is verified; then one add is deliberately dropped before it is ever sent to Shopify (a controlled injected fault). The check reports PARTIAL - one item missing. CartProof issues exactly one bounded recovery add and re-verifies from a fresh read: final cart A=2, B=1, with the pre-existing B preserved. The run used 5 model calls and 16 Shopify requests, with no checkout, order, customer or Admin API use. A local read-only browser UI displays that same cart and the checked result.

Under the hood: a Python/FastAPI service with an offline mock store for development, an MCP server exposing the store's cart tools, a provider-neutral model interface, and 122 focused offline tests covering receipts and UI behavior.

Limits, stated plainly: this is an API-driven test, not browser-clicking automation; the injected fault is deliberate, not a sample of unpredictable failures; a COMPLETE verdict is a saved read at that moment, not a concurrency guarantee. The demo uses synthetic test products on a development store.

## More from Meta Global AI Developer Hackathon

- [Minkyu Park](https://cerebralvalley.ai/e/meta-ai-developer-hackathon/hackathon/gallery/3677)
- [Ratnadeep Kakade](https://cerebralvalley.ai/e/meta-ai-developer-hackathon/hackathon/gallery/3678)
- [--martin-with-muse](https://cerebralvalley.ai/e/meta-ai-developer-hackathon/hackathon/gallery/3679)
- [Sketch2Circuit](https://cerebralvalley.ai/e/meta-ai-developer-hackathon/hackathon/gallery/3681)
- [Manikyam](https://cerebralvalley.ai/e/meta-ai-developer-hackathon/hackathon/gallery/3682)
- [Spartan](https://cerebralvalley.ai/e/meta-ai-developer-hackathon/hackathon/gallery/3683)

---

Markdown version of https://cerebralvalley.ai/e/meta-ai-developer-hackathon/hackathon/gallery/3680. Site index for agents: https://cerebralvalley.ai/llms.txt · full text: https://cerebralvalley.ai/llms-full.txt
