IDEaS CFP 006 · Challenge 17 (W7714-248676/017) · every Essential / Desired / cross-cutting outcome traced to implementing code and V&V evidence. Unclassified · representational.
| Ref | Type | Challenge requirement | Status | Evidence (module · function) | Maturity / notes |
|---|---|---|---|---|---|
| E1 | Essential | Software-based capability (standalone application, plug-in, middleware, or service) | Met | relay.MessageBridge (library) · relay_service.py (stdlib HTTP middleware) · console/index.html served at / | Pure standard-library Python; no dependencies; runs air-gapped. |
| E2a | Essential | Supports operations across all domains (land, air, maritime, space, cyber) | Met | relay_catalogue.default_catalogue(): SITREP (all), CTC (air/maritime/space), FRAGO/MEDEVAC/CFF (land), SPACEEVT (space), CYBERINC (cyber) | Domain tags per message type; codecs are domain-agnostic. |
| E2b | Essential | …and functional services (C2, intelligence, logistics, medical, fires) | Met | service tags: C2 (SITREP, FRAGO) · INTEL (CTC, RFI, SPACEEVT, CYBERINC) · FIRES (CFF) · MEDICAL (MEDEVAC) · LOGISTICS (LOGSTAT) | Nine representational types; new types are catalogue data. Cyber incidents export/import as OASIS STIX 2.1 (stix_export.py). |
| E3a | Essential | Structured, standards-compliant messaging, e.g. MTF-XML | Met (representational) | mtf_codec.to_xml / from_xml — message→set→field XML binding, catalogue-validated; 9/9 lossless round-trips | Structural model + binding; ratified APP-11/ADatP-3 baseline loads as GFI via Catalogue.from_json(). |
| E3b | Essential | Data-exchange protocols, e.g. NIEM | Met | niem_adapter.to_niem / from_niem — NIEM 6.0 (OASIS PS02): nc:Document + usmtf:MessagePrecedenceCode / MessageSecurityClassificationCode + mo:Unit / mo:Track + NDR-pattern oakr: extension; validate_niem() against the OASIS schemas (9/9 valid); NIEMOpen cmftool x2m/mval/xval pass (docs/CMF_REPORT.md); iepd_manifest() | Conformant to the published model; catalogue fields carry NIEM property mappings. |
| E3c | Essential | …e.g. NCDF (NATO Core Data Framework) | Met (representational seam) | ncdf_adapter.to_ncdf / from_ncdf (JSON) + to_ncdf_xml / from_ncdf_xml (NIEM-NDR-style XML per the documented NATO MTF→NCDF pattern) — entities/events/relationships + STANAG 4774-style label bound by SHA-256 (4778-style); tamper detected | Ratified NCDF schemas not public; NATO MTF→NCDF work applies the NIEM methodology (public briefing), which this follows; vocabularies re-pointed under GFI (M1). |
| E3d | Essential | Documented interfaces for importing, exporting and exchanging data using those standards | Met | docs/build_icd.py → ICD.md (endpoint table, schema summary, wire examples, IEPD manifest, bearer profiles); relay_service endpoints /ingest /export /bridge | ICD generated from the running code so it cannot drift. |
| E4a | Essential | Configurable and modular | Met | one catalogue drives every codec; MessageBridge.register(name, enc, dec); tests register a new format without core change | 270 format-pair translations verified in CI. |
| E4b | Essential | Supports Character-Oriented Information Exchange (COIE) processing | Met | coie.to_text / from_text — set/field slash-delimited text form; coie.xml_to_coie / coie_to_xml lossless transcoding on all 9 types | Escaping, absent-field markers, repeatable sets, banner lines. |
| E4c | Essential | Designed for future extensibility (emerging / disruptive standards) | Met | Catalogue.from_json() — a new message type from a JSON file works in every codec (test_gfi_seam…); register() for new bindings | Extensibility is data + registry, not code. |
| E5 | Essential | Documented interfaces and standards-based exchange for integration incl. experimentation, simulation, wargaming | Met | relay.picture_update() → tracks/alerts/taskings; relay.message_to_cot() (CoT 2.0; suite tactical_interop bridge to Link 16/DIS/VMF/NFFI/OTH-GOLD); ddil_transport.bench_jamming() seeded bearer model | CoT events validate against the MITRE public-release CoT 2.0 schema (cot/); TAK protobuf via takproto. Demonstrated with OAK BMS / joint wargame seams; ICD §8. |
| D1 | Desired | Operability in DDIL environments, with scalability | Met (modelled bearers) | ddil_transport.pack (81–291 B, ×4.1–12.1 vs XML), fragment/reassemble (MTU), PrecedenceQueue, StoreAndForward (selective repeat, pending), Channel/ber_under_jamming; bench(): 100 % to BER 1e-3 | s5066.py models the STANAG 5066 service (AComP-5066 Ed A: SAP table, 2048-B MTU, ARQ/non-ARQ, TTL, HFCHAT/COSS). Real HF/UHF/SATCOM modems under emulated jamming in M2. |
| D2 | Desired | Enhanced UX: intuitive interfaces, multilingual, automation of routine workflows, decision aids | Met | console/index.html (EN/FR, draft→compose→send→inbox→picture→export→audit); message_extract.extract() (EN/FR, confidence, evidence, abstain, confirm); alert levels, precedence, bytes/airtime per format | speech_front.py: Vosk offline STT (EN/FR) + spoken-form normaliser → same assured draft (ASR 0.92 → MEDEVAC 13/13); MGRS grids. Operator trials + accessibility review in M3. |
| D3 | Desired | Documented API to ≥1 service-management / monitoring platform | Met (interface-shaped) | relay_service GET /metrics (Prometheus exposition), GET /integrations/splunk-hec, GET /integrations/servicenow/incidents (auto-opened from CRITICAL alerts) | Live Splunk/ServiceNow integration in M3. |
| D4 | Desired | Readiness for AI/ML integration: data fusion, intelligent prioritisation, decision support | Met | ExtractionResult contract (confidence, evidence, abstain, requires_confirmation); relay_audit.AuditChain; picture fusion; PrecedenceQueue; OAK ai_assurance/ai_calibration on-ramp | Learned model plugs in behind the same contract (M3). |
| X1 | Cross-cutting | Sovereign Canadian IP, ITAR-free, Canadian Content ≥ 70 % | Met | 100 % OAK-developed in Canada; stdlib only; no US-origin export-controlled data | CanCon certification in the form. |
| X2 | Cross-cutting | Integrity and auditability | Met | relay_audit.AuditChain (SHA-256 hash chain; edit/delete/reorder detected); ncdf_adapter.bind/verify | ITSG-33 evidence + independent assessment in M4. |
| X3 | Cross-cutting | Verification & validation evidence | Met | 184 pytest tests; CI Ubuntu+Windows × Py 3.11/3.12; relay_vv.py 97/97 checks traced to EO/DO → RELAY_VV_REPORT.html; vignette.py → VIGNETTE.md | Requirement-traced evidence artefact for TRL 4. |
Summary: 11 Essential rows met (2 representational, ratified baselines as GFI; NIEM 6.0 validated against OASIS) · 4/4 Desired Outcomes addressed · 184 tests · 97/97 V&V checks · 270 format-pair translations · TRL 4.