Mapping of OT Agreement Milestones / Technical Objectives to ARES-E deliverables. Each row traces from the OT requirement through the code artifact to the acceptance test.
| Criterion | ARES-E Deliverable | Evidence |
|---|---|---|
| Execution of Project Agreement within 90 days | docs/legal/templates/ — Pre-drafted OT, DUA, and AI Bridge agreement guides |
Agreement templates ready for execution |
| Compliance with Article 3.2(1)(d) requirements | docs/governance/data_rights_ip_guide.md — IP and data-rights mapping |
Cross-referenced to Appendix II and III |
| Unlimited rights on data delivered to DOE | Open data-rights posture; all code MIT-licensed; no proprietary markings | pyproject.toml license field; docs/governance/ |
| Criterion | ARES-E Deliverable | Evidence |
|---|---|---|
| Structured, cleaned, preprocessed data suitable for AI/ML | app/schemas/genesis_payloads.py — Pydantic V2 FAIR schemas with strict validation |
model_validator, ConfigDict(extra="forbid") |
| Adherence to NSTC ML/AI data quality standards | FAIR metadata on every payload (Source, Modality, Timestamp, Uncertainty_Margin) | Schema enforcement; 422 rejection on non-compliance |
| Privacy and confidentiality protections | app/engines/phiak_cyber.py — ε-Differential privacy via Laplace mechanism |
test_physics_engines.py::TestDifferentialPrivacy |
| Data and IP Rights Certification readiness | docs/governance/data_rights_ip_guide.md — Certification checklist |
All dependencies are open-source; no third-party IP |
| Delivery to American Science Cloud | Docker Compose + Ray head for AmSC cluster deployment | docker-compose.yml; containerized Uvicorn |
| Criterion | ARES-E Deliverable | Evidence |
|---|---|---|
| Model uses curated Milestone 2 data | GridPINN trained on FAIR-validated telemetry payloads | ewis_grid.py::evaluate_grid_pinn() |
| Interpretability | Deterministic dispatch layer provides ground-truth reference alongside PINN prediction | AI-Advantage score quantifies PINN vs. baseline delta |
| Control | InteroperabilityManager register/unregister enables runtime domain control |
test_amsc_harness.py::TestHarnessInterop |
| Robustness against adversarial attacks | PHIAK engine with 8 injection + 7 poisoning detectors | test_physics_engines.py::TestAdversarialDetector |
| Secure-by-design principles | Zero-Trust ledger; SHA-256 chain; STIX/TAXII 2.1 export; no external API calls | cyber_ledger.py::verify_chain() |
| Seamless AmSC integration | REST API with OpenAPI 3.1 auto-docs; Docker deployment; Ray distributed compute | /docs endpoint at runtime |
| Data and IP Rights Certification readiness | Open-source stack; no Subject Inventions; Government non-exclusive license | MIT license; Appendix II compliance |
| Requirement | Implementation | Verification |
|---|---|---|
| VVUQ | Every engine returns physics_violations + vvuq_score |
45 pytest tests |
| FAIR Data | Pydantic V2 Metadata block on every payload |
Strict validation; 422 on missing fields |
| Zero-Trust Audit | SHA-256 hash-chained ledger with verify_chain() |
test_amsc_harness.py::test_verify_ledger_intact |
| STIX/TAXII 2.1 | Ledger exportable as JSON bundle | GET /api/v1/genesis/ledger |
| Air-Gapped | Zero external API calls; stdlib crypto | No network dependencies at runtime |
| U.S. Performance | 100% U.S. development; no FCOC dependencies | Open-source stack audit |
| Export Control | No ITAR/EAR controlled components | Standard open-source ML/web stack |
| Test ID | Domain | Test Description | Pass Criteria | Module |
|---|---|---|---|---|
| T-EWIS-01 | EWIS | Basic dispatch at 50 MW / 100 MW | dispatch_ratio ≈ 0.5, violations = 0 | test_physics_engines.py |
| T-EWIS-02 | EWIS | Weather anomaly degrades capacity | DLR factor < 1.0 | test_physics_engines.py |
| T-EWIS-03 | EWIS | Overload triggers violation | violations = 1 | test_physics_engines.py |
| T-EWIS-04 | EWIS | Invalid inputs raise ValueError | Exception raised | test_physics_engines.py |
| T-EWIS-05 | EWIS | PINN returns all required keys | Keys present; vvuq in [0,1] | test_physics_engines.py |
| T-WOIK-01 | WOIK | Energy conservation passes | conservation = True, violations = 0 | test_physics_engines.py |
| T-WOIK-02 | WOIK | High ΔT triggers violation | violations = 1 | test_physics_engines.py |
| T-WOIK-03 | WOIK | Missing component raises | ValueError with "missing component" | test_physics_engines.py |
| T-WOIK-04 | WOIK | Unbalanced flow raises | ValueError with "Unbalanced" | test_physics_engines.py |
| T-PHIAK-01 | PHIAK | Clean signals score 1.0 | robustness_score = 1.0 | test_physics_engines.py |
| T-PHIAK-02 | PHIAK | Adversarial signals degrade score | score < 1.0 | test_physics_engines.py |
| T-PHIAK-03 | PHIAK | Injection detection | is_adversarial = True | test_physics_engines.py |
| T-PHIAK-04 | PHIAK | Fingerprint determinism | h1 == h2, length 64 | test_physics_engines.py |
| T-HARNESS-01 | All | Three-domain workflows complete | status = COMPLETED for each | test_amsc_harness.py |
| T-HARNESS-02 | All | Ledger integrity verified | verify_chain() = True | test_amsc_harness.py |
| T-API-01 | All | All 5 endpoints respond | 200/202 status codes | test_api_endpoints.py |
| T-API-02 | All | Validation rejects bad input | 422 status code | test_api_endpoints.py |