Selected work

Inventory Request System

Keep approval, issuance and stock changes consistent.

An approved supply request can still run short before the items are issued. Staff need to see what can be supplied now, and a failed issuance must leave stock and request history consistent.

Approval does not consume stock

Approval records the requested quantities without deducting or reserving stock. Issuance checks availability again. This lets demand be approved while keeping the final stock decision at the point the items leave inventory.

Commit the whole request together

The service updates the request, deducts its items and records the audit entry inside one database transaction. If the second item is unavailable, the first deduction must roll back too.

The fulfillment regression tests make this concrete: requesting three paper reams and nine ink units fails when only eight ink units remain. Both original stock counts must survive unchanged. The suite also covers repeat fulfillment.

  1. 01Approve demand
  2. 02Recheck available stock
  3. 03Commit issuance or roll back

Make available stock explicit

The inventory view separates on-hand stock, quantities held aside and what can be issued. Request rows show shortages before an operator opens the detail view. Approval and stock availability remain separate states.

Current demo inventory separating on-hand, held-aside and available stock, with a low-stock item.

Keep checks reproducible

CI provisions PostgreSQL, applies migrations and runs integration and browser checks. A runner compatibility fix pins Ubuntu 24.04 for Playwright, keeping the test environment reproducible as hosted runner images change.

Demo scope

The public entry opens a private, 24-hour workspace with seeded records. The screens were inspected without issuing stock; the transaction behavior above is supported by source and regression tests, not a completed live issuance run. Historical project attribution remains in the repository.

01SplitFlow