feat: phase d - logistics documents 940, 945, 214, 204 #9

Merged
KofTwentyTwo merged 1 commits from feature/phase-d-logistics into develop 2026-10-14 12:47:13 +00:00
KofTwentyTwo commented 2026-10-14 12:42:00 +00:00 (Migrated from github.com)

Summary

Phase (d) of docs/DESIGN.md.

  • Guides (in-house baselines, 004010 and 005010): 940 Warehouse Shipping Order, 945 Warehouse Shipping Advice, 214 Shipment Status, 204 Load Tender, with situational rules (940/945 control totals, 945 shipped vs ordered quantities, 204 first stop LD and at least one UL, 214 AT7 status/reason pairing and MS1 for movement statuses).
  • Maps: 940 in, 945 out and in, 214 in, 204 in and out; business keys W0502, W0602, B1002, B204. New DATEPART/TIMEPART outbound transforms and +-joined inbound paths for G62 date + time (docs/MAPS.md).
  • Fix: InboundApplier threw on target tables without associations.
  • Demo: Harbor Logistics receives 940s and sends 945s (one short ship); new carrier Ridgeline Freight with 204 tenders and 214 statuses.

Notes: the 214 sample map records the first LX event; 940 outbound and 214 outbound maps are not included (no round trip needs them).

Test plan

  • ./mvnw verify: 151 tests, Checkstyle, JaCoCo (about 94% instructions)
  • Every document and version validates clean and maps; 940 -> 945 and 204 out -> in round trips; one crafted invalid document per type with AK3/AK4; 3PL and carrier pipeline tests
  • CircleCI test_only

🤖 Generated with Claude Code

## Summary Phase (d) of `docs/DESIGN.md`. - **Guides** (in-house baselines, 004010 and 005010): 940 Warehouse Shipping Order, 945 Warehouse Shipping Advice, 214 Shipment Status, 204 Load Tender, with situational rules (940/945 control totals, 945 shipped vs ordered quantities, 204 first stop LD and at least one UL, 214 AT7 status/reason pairing and MS1 for movement statuses). - **Maps**: 940 in, 945 out and in, 214 in, 204 in and out; business keys W0502, W0602, B1002, B204. New `DATEPART`/`TIMEPART` outbound transforms and `+`-joined inbound paths for G62 date + time (`docs/MAPS.md`). - **Fix:** `InboundApplier` threw on target tables without associations. - **Demo:** Harbor Logistics receives 940s and sends 945s (one short ship); new carrier Ridgeline Freight with 204 tenders and 214 statuses. Notes: the 214 sample map records the first LX event; 940 outbound and 214 outbound maps are not included (no round trip needs them). ## Test plan - [x] `./mvnw verify`: 151 tests, Checkstyle, JaCoCo (about 94% instructions) - [x] Every document and version validates clean and maps; 940 -> 945 and 204 out -> in round trips; one crafted invalid document per type with AK3/AK4; 3PL and carrier pipeline tests - [ ] CircleCI `test_only` 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.