At a glance
- Governance policy in config.yaml: confirm anything over $250/week, plus always-confirm areas (recall, budget, range, replenishment, markdown, credit, customer terms, slotting, production, quality)
- Every proposal has an id (D-1a2b3c4d), evidence, impact, confidence and a 7-day expiry
- Answer in the web app (Confirm/Reject → Download → import), by CLI, or by typing 'confirm D-…' in the chat
- The log is append-only: nothing is overwritten, so the full history can be audited
How it works
- After each run, actions pass through the governance policy. Major ones are stored as 'pending'; minor ones are 'auto-approved' but still logged.
- Your answers are imported with python -m shelly decisions import shelly-decisions.json. The file is validated (schema, id format, size) before anything is applied.
- On the next run, the learning loop reads confirmed and rejected decisions and updates each rule's precision.
How to read it
- Rejecting a decision is useful feedback, not a failure. It teaches Shelly what counts as a false alarm in your store.
- Add a short note when you reject (e.g. 'promo week'). Notes are kept in the audit trail.
Limits & safeguards
- The static website can't write back to GitHub, which is why answers are exported and imported. A future version can do this by email or through the Claude task.
Ask Shelly
What needs my confirmation?confirm D-1a2b3c4dWhat have you learned?
Type or say these in the chat on the main page.