Files
secs-gem/apps
raphael ff1a6b3726 D4: E87 server dispatch for S3F17/F25/F27
Hooks the CarrierStore + LoadPortStore from D3 onto the wire:

  S3F17 CarrierAction:
        ProceedWithCarrier -> CarrierIDEvent::ProceedWithCarrier
        CancelCarrier      -> CarrierIDEvent::CancelCarrier
        BindCarrierID      -> CarrierIDEvent::Bind
        unknown action     -> CAACK=CarrierActionInvalid
        unknown carrier    -> CAACK=CarrierIDUnknown

  S3F25 CarrierTransfer:
        fires source.StartUnloading + target.StartLoading transfer
        events, updates Carrier::port_id, returns CAACK=Accept.

  S3F27 CancelCarrier:
        fires CIDS CancelCarrier + CAS Cancel against the carrier.

The state-change handlers wired into the stores in D3 are the right
place to emit S6F11 CEIDs for carrier-events; that hookup is left for
a follow-up commit (it depends on the equipment.yaml CEID catalog,
which doesn't yet enumerate E87 events).

Closes Tranche D — E87 Carrier Management end-to-end (FSMs + wire +
stores + dispatch).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-08 00:16:04 +02:00
..