- Documentation
- /
- Inventory
- /
- 00 — Overview
00 — Overview
R9 reference application. Built from the v0.14 Work & Supply reference pack to prove that two DSLCore applications and the orchestrator can run a business process together (reference flows R1 and R2). The demo data is fictional.
What Inventory & Receiving is
Inventory holds custody of stock: which items are at which location, how many are on hand, how many are already held for work, how many are in quarantine — and every movement that changed those numbers. It answers work's demand with reservations, and it records what physically arrives (goods receipts) separately from whether that stock can be used (inspection, acceptance).
The domain
Two mistakes are common: promising the same stock to two jobs, and treating "it arrived" as "it can be used". Inventory avoids the first with reservations that reduce the available quantity (never below zero) and an append-only transaction ledger, and the second by keeping arrival, inspection and acceptance as separate steps — quarantined or uninspected stock is not available.
The 10 models by area
Stock (4) - StockLocation — store, warehouse, service vehicle, quarantine cage. - StockBalance — per item and location: on hand, reserved, quarantined, available. - InventoryTransaction — the movement ledger (receipt, issue, reserve, release, quarantine, transfer, adjustment), linked to the reservation / receipt / work order. - InventoryPolicy — reorder point and quantity, critical items, replenishment method.
Reservations (1) - InventoryReservation — stock held for one work order's material requirement: required vs reserved quantity, status, required-by date.
Receiving (3) - GoodsReceipt — a delivery against a purchase order: arrival, receipt status. - GoodsReceiptLine — each item received: expected / received / accepted / rejected. - ReceiptInspection — the inspection result for a line.
Stock Counts (2) - StockCount, StockCountLine — cycle counts: expected vs counted, variance, reason.
The demo scenario
Shared with Work Management (same network ids):
| Item | Stock | Story |
|---|---|---|
| CAT-793-TRANSMISSION | 0 at Main Store | WO-1001 needs one: reservation RES-1001 is unavailable — reference flow R1 (purchasing need). |
| CAT-OIL-FILTER-1R0716 | 24 on hand, 22 available | WO-1002 needs two: RES-1002 reserved — reference flow R2. |
| CAT-IDLER-152 | 13 at the Workshop store, 1 quarantined | Issued to WO-0998 (RES-0998); restocked by GR-5001 against PO-004410, one damaged roller quarantined. |
New requirements from Work Management while the network runs (see
networks/work_supply/RUNBOOK.md) create new reservations — RES-1003, RES-1004, … —
reserved when the stock is there, unavailable when it is not.