System Reconstruction Coverage Matrix — MK Inventory Allocation Wave¶
- Status:
CURRENT ALLOCATION COVERAGE COMPANION - Parent register:
SYSTEM_RECONSTRUCTION_COVERAGE_MATRIX.md - Process:
PROC-OMS-INVENTORY-TO-OUTBOUND-ALLOCATION-MK - Rebuild packet:
MK_INVENTORY_ALLOCATION_CAPABILITY_REBUILD_PACKET.md - Important: coverage values are documentation labels, not Process lifecycle, implementation completion or migration authorization.
1. Coverage Vocabulary¶
COMPLETE INPUT
PARTIAL
MAPPED
MISSING
FUTURE PLAN
RUNTIME EVIDENCE REQUIRED
NOT APPLICABLE
Dimensions:
PDT Product outcome
ROL Roles/access
PRC Process
STA State
DAT Data/identity/fields
INT Query/command/error interfaces
EFF External/async effects
UIX UI/UX
OPS Operator procedure/recovery
WIK Wiki projection/publication
MIG Migration/rollback/caller-zero
VER Verification evidence
2. Summary¶
| Capability | PDT | ROL | PRC | STA | DAT | INT | EFF | UIX | OPS | WIK | MIG | VER | Main remaining work | |---|---|---|---|---|---|---|---|---|---|---|---|---|---|---| | Source-lot eligibility | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | COMPLETE INPUT | NOT APPLICABLE | COMPLETE INPUT | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | RUNTIME EVIDENCE REQUIRED | accepted lot-state/source/UOM policy and current-role negative evidence | | Existing target eligibility | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | COMPLETE INPUT | NOT APPLICABLE | COMPLETE INPUT | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | RUNTIME EVIDENCE REQUIRED | target bridge/readiness policy and role/API evidence | | Basket preview | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | COMPLETE INPUT | COMPLETE INPUT | COMPLETE INPUT | NOT APPLICABLE | COMPLETE INPUT | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | RUNTIME EVIDENCE REQUIRED | target preview/freshness implementation choice | | Basket Apply | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | COMPLETE INPUT | COMPLETE INPUT | COMPLETE INPUT | NOT APPLICABLE | COMPLETE INPUT | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | RUNTIME EVIDENCE REQUIRED | idempotency, versioning, quantity/weight/UOM and concurrency policy | | Source balance consumption | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | COMPLETE INPUT | NOT APPLICABLE | COMPLETE INPUT | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | RUNTIME EVIDENCE REQUIRED | quantity/weight authority and post-write parity | | Correction/reversal | COMPLETE INPUT | PARTIAL | PARTIAL | PARTIAL | COMPLETE INPUT | COMPLETE INPUT | NOT APPLICABLE | COMPLETE INPUT | COMPLETE INPUT | PARTIAL | PARTIAL | RUNTIME EVIDENCE REQUIRED | Product policy, downstream locks, audit/reversal persistence and owner acceptance | | Unknown-result reconciliation | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | COMPLETE INPUT | COMPLETE INPUT | COMPLETE INPUT | NOT APPLICABLE | COMPLETE INPUT | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | RUNTIME EVIDENCE REQUIRED | request-token persistence and current lost-response characterization | | Allocation composite handoff | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | NOT APPLICABLE | COMPLETE INPUT | COMPLETE INPUT | NOT APPLICABLE | COMPLETE INPUT | COMPLETE INPUT | PARTIAL | COMPLETE INPUT | RUNTIME EVIDENCE REQUIRED | Inbound/Outbound/Booking/Scale/Packing role and field acceptance |
3. Dimension Detail¶
Product outcome — COMPLETE INPUT¶
Documented:
- explicit source-lot to existing outbound shipment relation;
- source balance consumption;
- created target item under current parity behavior;
- allocation completion separated from receipt and physical shipment completion;
- no hidden allocation in ordinary Outbound or Booking Save;
- no blind replay after unknown result.
Remaining:
- owner acceptance of full-lot-only versus partial allocation;
- owner acceptance of target-line-per-source behavior.
Roles/access — PARTIAL¶
Documented target capabilities:
oms.allocation.view
oms.allocation.preview
oms.allocation.apply
oms.allocation.correct
oms.allocation.reverse
oms.allocation.reconcile
oms.allocation.support
Missing:
- current role IDs/menu visibility;
- current direct API access;
- target role-to-capability matrix;
- record-scope negative fixtures;
- correction/reversal approval role.
Process — COMPLETE INPUT¶
Documented:
- search source and target;
- basket and preview;
- all-or-nothing Apply;
- exact readback;
- duplicate/stale/unknown recovery;
- separate correction/reversal owner;
- handoff to Outbound/Scale/Packing/Delivery.
Remaining:
- Process-owner acceptance of new policy IDs and target corrections.
State — PARTIAL¶
Documented semantic states:
- Lot eligibility/availability;
- demand allocation projection;
- allocation active/corrected/reversed/conflict;
- basket draft/previewed/committed/conflict/unknown.
Missing:
- accepted mapping to current
LOT_STATUSand soft-delete behavior; - partial-lot status policy;
- downstream-locked correction state;
- persisted versus derived target representation.
Data — COMPLETE INPUT¶
Documented:
- source order/item/transload/lot IDs;
- target order/item and equipment bridge;
- allocation relation;
- quantity, weight, UOM, rate, remaining balance;
- request and correction/reversal identities;
- ER relationship;
- MySQL/PostgreSQL preservation.
Missing evidence:
- exact current schema/index/decimal readback;
- row uniqueness and null/default behavior;
- active production data distributions.
Interfaces — COMPLETE INPUT¶
Queries:
GetEligibleInventoryLots
GetAllocationTargets
GetAllocationPreview
GetOutboundAllocationState
GetInventoryLotBalanceAndAllocationHistory
GetAllocationResultByRequestToken
Commands:
AllocateInventoryBasket
AllocateInventoryToOutbound
CorrectAllocation
ReverseAllocation
ReconcileAllocationUnknownResult
Errors:
- stable
ALLOCATION_*catalog documented.
Remaining:
- final route names/versioning;
- request-token storage;
- accepted correction/reversal DTO.
Effects — NOT APPLICABLE for core Apply¶
The current and target core allocation is local DB work. No provider/email/file/device worker is required.
Potential downstream asynchronous effects remain separately owned and must not enter the core transaction implicitly.
UI/UX — COMPLETE INPUT¶
Documented:
- source and target search;
- basket and preview;
- full-lot current parity;
- loading/empty/denied/stale/UOM/conflict/submitting/unknown/success states;
- exact IDs and before/after balance result;
- no-blind-retry;
- mobile/accessibility target.
Missing:
- current target-role screenshots and labels;
- React component-level design review;
- field usability acceptance.
Operations — COMPLETE INPUT¶
Documented:
- before-start checks;
- source/target/basket/Apply procedure;
- exact readback;
- timeout/concurrent/stale/data-drift/Booking-compatibility recovery;
- escalation packet;
- correction/reversal warning.
Missing:
- Inventory/Shipping operator field review;
- approved manual recovery owner.
Wiki — PARTIAL¶
Draft topics:
mk-schedule-allocation
mk-inbound-orders
mk-outbound-orders
mk-operations
errors-recovery
Missing:
- current
T_WIKI_PAGEread; - current rendered-page comparison;
- current route/role screenshots;
- process/role review;
- named publication authorization and readback.
Migration — COMPLETE INPUT¶
Documented:
ALLOC-W0throughALLOC-W9;- typed read shadow;
- React/Next.js read-only workspace;
- preview parity;
- one-writer Apply;
- idempotency/unknown recovery;
- correction/reversal;
- stabilization;
- PHP caller-zero;
- later PostgreSQL;
- rollback without replay.
Missing:
- selected cohort/selector;
- accepted first-write policy;
- release and rollback rehearsal evidence.
Verification — RUNTIME EVIDENCE REQUIRED¶
Stable scenarios are defined but not executed in this documentation wave.
Required environments/evidence:
- Local MySQL schema/fixtures;
- intended MK role and denied role;
- browser and API;
- DB before/after;
- concurrent sessions;
- response-loss simulation;
- Booking compatibility fixture;
- cleanup/retained conflict evidence;
- current Wiki read and later field acceptance.
4. Critical Integrity Gaps¶
| Gap | Current risk | Required owner |
|---|---|---|
| weight decremented, quantity not immediately decremented | dual remaining values can diverge or rely on later recalculation | Product + P5/P6/DB |
| no request idempotency | lost response can duplicate target item/allocation and consume again | P5/P6/P12 |
| source list/write predicate mismatch | selected source may change or write may accept weaker conditions | P5/P6 |
| no general reversal owner | correction may become manual/delete-based | Product + P6 |
| allocated Outbound update not reconciled | target item may diverge from relation/source balance | Outbound + Allocation + P5 |
| Inbound lot correction after allocation | source remaining values can be reset/recalculated unexpectedly | Inbound + Inventory + Allocation |
| Booking compatibility affects allocations | hidden cross-owner mutation/partial result | Booking + P5/P6 |
| role/context is compatibility-oriented | direct or foreign record risk requires evidence | P2/P4/P5 |
5. Reconstruction Artifacts¶
docs/reconstruction/MK_INVENTORY_ALLOCATION_CAPABILITY_REBUILD_PACKET.md
docs/reconstruction/MK_INVENTORY_ALLOCATION_SOURCE_AUTHORITY.md
docs/processes/MK_INVENTORY_ALLOCATION_RECONCILIATION.md
docs/processes/MK_INVENTORY_ALLOCATION_POLICY_DECISION_MATRIX.md
docs/processes/MK_INVENTORY_ALLOCATION_SEQUENCE_DIAGRAMS.md
docs/processes/MK_INVENTORY_ALLOCATION_PARITY_AND_CUTOVER_MATRIX.md
docs/runbooks/MK_INVENTORY_ALLOCATION_OPERATOR_RUNBOOK.md
docs/wiki/internal/MK_INVENTORY_ALLOCATION_WIKI_PROJECTION_PACKET.md
6. Current Disposition¶
Source/process reconciliation:
M2 INPUT
Detailed data/interface/migration documentation:
COMPLETE INPUT FOR OWNER REVIEW
Target-role/runtime verification:
REQUIRED
Policy acceptance:
INCOMPLETE
M4 migration authorization:
NOT ESTABLISHED
7. Next Coverage Wave¶
Physical Scale
The Scale packet must define:
- physical/device/session/ticket identity;
- live versus accepted weight;
- Gross/Tare/Net and axle precision;
- check-in/check-out/finalize handoff;
- duplicate/timeout/eventual commit;
- correction/reweigh/void;
- owner-process completion versus ticket completion;
- device adapter and target React/Next.js/TypeScript boundary;
- operator Runbook, Wiki, one-writer migration and stable scenarios.
---¶
Source:
docs/reconstruction/SYSTEM_RECONSTRUCTION_COVERAGE_MATRIX_ALLOCATION_WAVE.md— ctc repository · This page is an English translation of the source document. Identifiers, file paths and code symbols are unchanged.