# Inventory snapshot summary

One script that turns an inventory export into the answers people actually ask for: how much is in each room, what has been sitting for 90 days, what is about to run out, what changed since last week. From lesson 04-02 of the No Bullshit AI Course. Python 3, standard library only, no AI call anywhere in it.

- `snapshot-summary.py`: the script. `--by room|category|product`, `--aging DAYS`, `--low UNITS`, `--diff other.csv`, `--map` to rename your columns.
- `sample-inventory.csv` and `sample-inventory-prev.csv`: two fake snapshots one week apart, so you can see `--diff` work before you trust it on yours.
- The prompts that go with it are in `../inventory-snapshot-questions.md`.

Run it:

    python3 snapshot-summary.py sample-inventory.csv
    python3 snapshot-summary.py sample-inventory.csv --aging 90 --low 10
    python3 snapshot-summary.py sample-inventory.csv --diff sample-inventory-prev.csv
    python3 snapshot-summary.py --self-test

Your export will not have these exact column names. Do not edit the file; rename on the way in:

    python3 snapshot-summary.py distru-inventory.csv --map "Package Label=tag,Product Name=product,Location=room,Qty=quantity,UOM=unit"

Rules the script keeps for you: grams and eaches are never summed together; a zero-quantity package counts as low stock; the diff is keyed on the Metrc tag, never the product name.

Save one export a day into a folder named by date and you have the history nobody can reconstruct later. Version 1.0, tested 2026-09-17 with Python 3.11. CC0 1.0: copy it, change it, no attribution needed.
