Skip to content

Inventory Receipt, Lot And Placement — Current Source Reconciliation

  • Status: SOURCE_RECONCILED CURRENT ADAPTER / TARGET APPROVAL BLOCKED
  • Parent Task: NS0-003
  • Reviewed source revision: qa/master@1529bce22ae39c7c2c11e1b9b07e457e1e4c4355
  • Profiles: ctc-execution, mk-order
  • Restriction delta: RD-000 / NONE
  • Effects: documentation/catalog only

1. Reconciliation Result

Current Inventory authority is distributed but separable:

T_INVENTORY_LOT
= received lot identity, source lineage and persisted remaining values

T_WAREHOUSE_LOCATION
= location definition/current placement compatibility family

T_LOAD / T_LOAD_ITEM
= purchase or execution source lineage

T_TRANSLOAD
= physical receipt/execution source

bale ledger/review/adjustment families
= CTC custody/spare count and correction evidence

Target separation:

Inventory Lot Identity
!= Current Balance
!= Placement
!= Allocation Relation
!= Inventory Cost Layer

2. Receipt Materialization

Current Purchase/Transload paths can materialize purchase lots after an UNLOADED result and hand a Transload placement to Inventory Lot placement.

Current behavior is adapter evidence, not target policy.

Target candidate:

ConfirmReceipt
-> accepted quantity/weight/source facts
-> MaterializeInventoryLot
-> establish Placement
-> create ledger/provenance evidence
-> authoritative Inventory readback

Saving a Commercial Order, Booking or Scale Ticket must not silently create every Inventory record.

3. Lot Identity And Lineage

Current lot lineage may include:

SOURCE_ORDER_ID
SOURCE_ORDER_ITEM_ID
SOURCE_TRANSLOAD_ID / UUID
SOURCE_CODE
COMMODITY_ID / snapshot name
OWNER_COMPANY_ID
RECEIVED_DATE

Current status values include OPEN, PARTIAL, HOLD, CLOSED in selected paths. Their complete live distribution and approved target transition policy remain unverified.

4. Placement

Current placement has separate location rows and compatibility mirrors. A WAREHOUSE_LOCATION string on a source or lot is not sufficient by itself to prove current physical placement.

Target candidate:

Placement
- inventoryLotId
- locationId/code
- effectiveAt
- status
- sourceCommand
- correction lineage

Movement, clearing and forced-vacant behavior require explicit command ownership and physical/system mismatch recovery.

5. Balance And Ledger

Current lot persists both:

REMAIN_QUANTITY
REMAIN_NET_WEIGHT

CTC bale workflows add count/weight review and ledger-style correction evidence. These dimensions must not be silently collapsed.

Candidate target commands:

ConfirmReceipt
MaterializeInventoryLot
MoveInventoryLot
AdjustInventoryBalance
RecordCountCheck
HoldInventoryLot
CloseInventoryLot
ReopenInventoryLot
ReconcileInventoryLot

6. Cost Layer Boundary

Current rate snapshots appear in several records, including source lines and lot UNIT_RATE. They do not establish a first-class cost layer.

Inventory Lot
!= Inventory Cost Layer

Unit-rate snapshot
!= landed cost

Candidate InventoryCostLayer remains separate:

source purchase line
received quantity/weight
purchase cost
freight allocation
handling allocation
landed cost
valuation method

7. CTC / MK Composition

Concern CTC default candidate MK default candidate Owner/type
accounting mode custody perpetual typed policy
ownership customer/custody common tenant-owned common persisted fact
cost layer often absent required for owned stock after approval separate aggregate
bale count important commodity-dependent capability
placement custody/warehouse owned inventory shared capability
source appointment/transload purchase execution line typed source reference

Persisted record facts must include, when applicable:

materialOwnership
ownerParty
custodyParty
sourcePurchaseLine
quantity
weight
UOM
location
costingMethod

8. Correction And Terminal Close

Current terminal Transload source logic can close related purchase lots and placements. Target correction must not infer that a source terminal status always means all inventory should become zero/closed.

Required decision inputs:

  • partial receipt and partial consumption;
  • lot split/merge;
  • count/weight correction;
  • source correction after allocation;
  • hold/release;
  • close/reopen/void;
  • immutable ledger versus mutable balance projection.

9. Unknown Result

missing response
-> reread exact lot
-> reread placement
-> reread ledger/correction evidence
-> reread source only for lineage
-> resume only missing owner command

10. Page And Wiki Boundary

No Runtime page changed. Page-specific browser tests, screenshots, in-app User Wiki and page CHANGELOG are NOT_APPLICABLE.

---

Source: new-system/docs/reconstruction/INVENTORY_RECEIPT_LOT_PLACEMENT_SOURCE_RECONCILED.md — ctc repository · This page is an English translation of the source document. Identifiers, file paths and code symbols are unchanged.