docs/waves/network_profile_decision_record.md
Network Profile Decision Record
Status: active
Owner: transport-rust + browser + engine
Ticket: T0-14
Canonical decision
- Active implementation target profile:
wap-net-core. - Live desktop/browser ingress posture: legacy
gateway-bridgedfetch path remains in use until native fetch activation tickets land. - Target runtime profile after desktop activation:
wap-net-core. - Promotion beyond
wap-net-coreremains gated by future extension-lane decisions.
Profile definitions
gateway-bridged (legacy baseline)
- Transport uses configured gateway HTTP/WBXML path.
- Native WDP/connectionless-WSP protocol stack is not the active ingress path.
- Host/runtime contracts remain stable and deterministic under this mode.
Fixture lane:
transport-rust/tests/kannel_smoke.rstransport-rust/tests/fixture_harness.rsdocs/waves/TRANSPORT_E2E_READINESS_SCORECARD.md
wap-net-core (active)
- Transport ingress is native WDP/UDP -> connectionless WSP.
- The strict WAP 1.2.1 Class C path does not activate WTP.
- Profile activation requires protocol-core fixture evidence and replay-gate evidence.
- Activation must not alter browser/engine contracts without explicit contract update tickets.
Current caveat:
- Native GET/POST ingress and smoke slices are landed, and
WSP-801now directly evidences the selected WAP-203 connectionless PDU/primitive matrix. Generic headers and Encoding-Version remain open underWSP-802, with host ingress work underWSP-804/805; the selected WAP-200 and WAP-202 rows are directly evidenced byTRN-701, the narrow constrained-payload policy byTRN-702, the non-IP general-WCMP capability byTRN-703, and the selected CDPD/IPv4 ICMP profile byTRN-708.
Fixture lane:
transport-rust/tests/fixtures/transport/wsp_connectionless_matrix/(WSP-801 source-linked PDU, status, primitive, and role matrix)transport-rust/src/wsp_registry.rs(assigned-number policy fixtures)transport-rust/src/wsp_capability.rs(capability-bound fixtures)transport-rust/tests/fixtures/transport/wdp_constrained_payload_mapped/(bounded CDPD/IPv4 payload and lower-IP reassembly replay lane)transport-rust/tests/network/interop/wdp_cdpd_ipv4_seed.json(schema-v2 directly mapped TRN-706 selected-profile WDP replay lane with exact accepted/reassembled datagram delivery assertions)transport-rust/tests/network/interop/(promotion replay lane; tracked byT0-22andT0-24)transport-rust/tests/fixtures/transport/wcmp_cdpd_icmp_profile/(selected CDPD/IPv4 ICMP type 3 and echo boundary)
wap-net-ext (target, gated)
- Future extension profile for additional bearers, connection-oriented WSP/WTP, Push, and advanced session features.
- Promotion requires explicit additional gates beyond the protocol-core baseline.
- Activation must remain contract-compatible or ship with explicit contract changes.
- “Gated” here means gated by the promotion process above (
T0-*gates), not a Cargo compile-time feature flag — none exists today. Thenetwork::wtp,network::wcmp,wsp_registry.rs,wsp_capability.rs, andnetwork::wsp::pdu/sessionmodules that back this profile are compiled unconditionally intotransport-rust; they are simply unwired from the live fetch path, which is the only thing keeping them out of production traffic today. A future change that wires any of this in must go through the promotion gates above rather than relying on a build flag to have kept it inert.
Promotion gates
Promotion from gateway-bridged to wap-net-core required all of:
T0-17scope lock isdone.T0-18,T0-19,T0-20,T0-22, andT0-24aredonewith fixture evidence.T0-21security boundary posture is explicit and default-safe.- Contract stability checks stay green for:
browser/contracts/transport.tsengine-wasm/contracts/wml-engine.ts
- Local Kannel E2E readiness remains explicit and tracked in:
docs/waves/TRANSPORT_E2E_READINESS_SCORECARD.md
This gate set and the browser/native activation slices are satisfied for protocol-core readiness. They do not substitute for the exact 22-row strict transport conformance program.
Rollback criteria
If profile activation introduces deterministic regressions or contract drift, rollback from wap-net-core to gateway-bridged is mandatory when any of the following occur:
- Replay harness (
T0-22/T0-24) fails for the selectedGET/POST/REPLYlane or for an explicitly enabled extension lane. - Contract checks fail for browser/engine boundary payloads.
- Cross-layer fixture regressions appear in transport/runtime hostflow evidence.
Rollback action:
- Revert active profile selection to
gateway-bridged. - Preserve failing fixture artifacts in the associated
T0-*ticket notes. - Re-open promotion only with new explicit remediation tickets.
Operational tracking
Use docs/waves/TRANSPORT_E2E_READINESS_SCORECARD.md to track how close Waves is to:
transport-rust-> local Kannel -> local WML server E2E smoke- browser/host -> transport -> local Kannel -> local WML server E2E smoke