# MEYER Inactive Inventory Retirement — Execution Summary

**Executed:** 2026-04-13 (server time)
**Effective return date:** 2026-02-15 12:00:00
**Batch tag:** `MEYER-RETURN-2026-02-15`
**Attributed to:** user_id=1 (Admin / admin@go-parts.com)
**Reference type:** `manual_adjustment`
**Action type:** `deduction`

## Result

| Metric | Value |
|---|---|
| Distinct MEYER products affected | 200 |
| Stock rows zeroed (was qty>0) | 191 |
| Stock rows already at 0, only is_selling flipped | 8 |
| `stock_history` rows inserted | 191 |
| Total units removed | 193 |
| Total stock value removed | **$23,595.42** |
| Stock history id range | see `audit_history_rows.tsv` |

## Write-off by location type

| Location type | Products | Units | Value removed |
|---|---|---|---|
| quarantine | 109 | 111 | $18,364.60 |
| shelf      |  82 |  82 |  $5,230.82 |
| **Total**  | **191** | **193** | **$23,595.42** |

(2 of the 112 quarantine product instances had qty=0, hence 109 quarantine rows in the write-off vs. 112 stock rows total in quarantine.)

## Historical valuation — full inventory (widget logic)

| Date | Before | After | Diff |
|---|---:|---:|---:|
| 2026-02-14 23:59:59 | $252,082.81 (4827) | $252,082.81 (4827) | $0.00 |
| 2026-02-15 23:59:59 | $252,082.81 (4827) | $228,487.39 (4636) | **−$23,595.42** |
| 2026-02-28 23:59:59 | $248,665.20 (4766) | **$225,069.78** (4575) | **−$23,595.42** |
| 2026-03-31 23:59:59 | $228,043.12 (4314) | **$204,447.70** (4123) | **−$23,595.42** |
| 2026-04-13 23:59:59 | $222,264.83 (4209) | $198,669.41 (4018) | −$23,595.42 |

Pre-Feb-15 valuation is identical (proves the backdate is correct and earlier history was not disturbed).
Post-Feb-15 valuation drops by exactly $23,595.42 on every date.

## Historical valuation — MEYER inactive subset

| Date | Before | After |
|---|---:|---:|
| 2026-02-14 23:59:59 | $23,595.42 (191 SKUs) | $23,595.42 (191 SKUs) |
| 2026-02-15 23:59:59 | $23,595.42 (191 SKUs) | **$0.00 (0 SKUs)** |
| 2026-02-28 23:59:59 | $23,595.42 (191 SKUs) | **$0.00 (0 SKUs)** |
| 2026-03-31 23:59:59 | $23,595.42 (191 SKUs) | **$0.00 (0 SKUs)** |
| 2026-04-13 23:59:59 | $23,595.42 (191 SKUs) | **$0.00 (0 SKUs)** |

## Final state of MEYER inactive stocks table

| Field | Value |
|---|---|
| SUM(quantity) | **0** |
| SUM(reserved_quantity) | **0** |
| SUM(is_selling) | **0** |
| Row count | 199 (untouched, just zeroed) |

## Month-end inventory valuations (full warehouse, post-retirement)

- **2026-02-28**: **$225,069.78**, 4,575 SKUs, 5,503 units
- **2026-03-31**: **$204,447.70**, 4,123 SKUs, 4,931 units

## Files in this folder

- `SUMMARY.md` — this file
- `00_preflight_summary.txt` — pre-mutation state
- `product_ids.txt` — comma-separated PK list of the 200 products
- `stocks_pre.sql` — pre-mutation stocks dump (restorable)
- `stock_history_pre.sql` — pre-mutation stock_history dump
- `valuation_before.txt` / `valuation_after.txt` — full inventory valuation across 5 dates, before vs after
- `valuation_before_meyer_only.txt` / `valuation_after_meyer_only.txt` — MEYER-only subset
- `valuation_2026-02-28.txt` — Feb-end full inventory (post-retirement)
- `valuation_2026-03-31.txt` — March-end full inventory (post-retirement)
- `writeoff_by_location_type.tsv` — quarantine vs shelf split
- `audit_history_rows.tsv` — every inserted `stock_history.id` with its quantity/price/timestamp

## Rollback (if ever needed)

```sql
BEGIN;
DELETE FROM stock_history WHERE reference_id='MEYER-RETURN-2026-02-15';
-- then restore stocks from stocks_pre.sql:
--   delete affected stock rows by id, then source stocks_pre.sql
COMMIT;
```
