This is a summary of recorded development evidence, not a new test run. No raw execution traces, private groceries, or identifiers are published. Node-level behavior does not establish end-to-end reliability.
Development observations
| Check | Evidence class | Recorded result |
|---|---|---|
| Pending state insert | Observed at node level | An unmatched quantity update produced a saved add request with item and quantity. |
| Select and route confirmation | Observed at node level | A “yes add it” test returned a pending object and routed to Confirm. |
| Rebuild add request | Observed at node level | The prepared request recovered the stored item and quantity. |
| Shared duplicate checker | Observed at node level | The confirmed fixture reached the checker as a new item. |
| Cleanup branch | Reported component behavior | The IF and deletion nodes were reported to fire; final row deletion and downstream persistence were not independently verified. |
| Existing quantity edit | Reported development test | A quantity-update path was reported tested; retained execution evidence is still needed. |
| Cancellation language | Known defect | “No don’t add it” failed the original exact-match regex. Broader wording was proposed, not verified end to end. |
Acceptance cases still open
All cases below require documented execution evidence before being marked passed.
| Case | Scenario | Expected result — not yet verified |
|---|---|---|
| GL-01 | List after router changes | Active items only; correct grouping. |
| GL-02 | New add with quantity | Correct Notion values; acknowledge after success. |
| GL-03 / 04 | Duplicate and reactivation | No extra page; reuse inactive matching page. |
| GL-05 | Remove and repeat remove | Correct Purchased state; harmless repeat. |
| GL-06 | Existing / missing update | Persist quantity; ask before creating a missing item. |
| GL-07 | Live confirmation | Correct create/reactivate/no-op and exact state cleanup. |
| GL-08 | Negative variants | “No”, “no thanks”, and “no don’t add it”: no grocery write; clear pending state. |
| GL-09 | Unrelated and no-pending messages | Preserve chat and /today, /dinner, /groceries routing. |
| GL-10 | Authorization and ambiguity | Unauthorized input cannot read/write; ambiguous match cannot alter wrong record. |
| Reliability | Retries, offline, restart | No duplicate writes or false success. |
| State lifecycle | Expired / multiple pending rows | Predictable selection, isolation, and cleanup. |
| Scope edges | Multi-item and combined edits | Validate quantities/categories; combined-property updates not verified. |
How to record the next test
Case ID · date · fictional input · expected Notion change · actual persisted change · Telegram reply · sanitized execution reference · pass/fail · defect reference.
Release boundary: Partial validation only. No production-readiness, security-validation, full-coverage, or quantified savings claim.