icdev 0.0.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- args/agent_config.yaml +113 -0
- args/audit_regimes/cisa_sbd.json +381 -0
- args/audit_regimes/cmmc_l2.json +906 -0
- args/audit_regimes/dod_cssp.json +393 -0
- args/audit_regimes/dodi_5000_87.json +297 -0
- args/audit_regimes/fedramp_moderate.json +650 -0
- args/audit_regimes/ieee_1012.json +373 -0
- args/audit_regimes/nist_800_171.json +624 -0
- args/audit_regimes/nist_800_53.json +907 -0
- args/cloudforge_blueprints/aws_commercial.yaml +29 -0
- args/cloudforge_blueprints/aws_govcloud_il4.yaml +34 -0
- args/cloudforge_blueprints/aws_govcloud_il5.yaml +38 -0
- args/cloudforge_blueprints/azure_commercial.yaml +28 -0
- args/cloudforge_blueprints/azure_gov_il4.yaml +32 -0
- args/cloudforge_blueprints/azure_gov_il5.yaml +36 -0
- args/cloudforge_blueprints/gcp_commercial.yaml +28 -0
- args/cloudforge_blueprints/oci_commercial.yaml +28 -0
- args/cloudforge_config.yaml +231 -0
- args/cloudforge_runbook_templates/backup_verify.yaml +98 -0
- args/cloudforge_runbook_templates/dr_failover.yaml +107 -0
- args/cloudforge_runbook_templates/health_check.yaml +97 -0
- args/cloudforge_runbook_templates/incident_response.yaml +101 -0
- args/cloudforge_runbook_templates/migration_cutover.yaml +105 -0
- args/cloudforge_runbook_templates/patch_rollout.yaml +92 -0
- args/cloudforge_runbook_templates/zone_provision.yaml +93 -0
- args/code_pattern_config.yaml +151 -0
- args/code_quality_config.yaml +47 -0
- args/compliance_config.yaml +17 -0
- args/control_inheritance.yaml +177 -0
- args/csp_mcp_config.yaml +41 -0
- args/cui_markings.yaml +35 -0
- args/databridge_config.yaml +232 -0
- args/db_config.yaml +116 -0
- args/decision_tables/agent_trust_decision.yaml +143 -0
- args/decision_tables/ato_boundary_impact.yaml +132 -0
- args/decision_tables/deployment_approval.yaml +152 -0
- args/degradation_matrix.yaml +163 -0
- args/devsecops_config.yaml +286 -0
- args/endpoint_security_config.yaml +207 -0
- args/exit_criteria.yaml +102 -0
- args/feature_flags.yaml +235 -0
- args/file_access_tiers.yaml +88 -0
- args/forge_studio/blueprint_config.yaml +27 -0
- args/forge_studio/component_catalog.json +411 -0
- args/forge_studio/workflow_templates.yaml +103 -0
- args/govcon_config.yaml +41 -0
- args/harness_config.yaml +67 -0
- args/innovation_config.yaml +321 -0
- args/knowledge_graph_config.yaml +113 -0
- args/llm_config.yaml +222 -0
- args/marketplace_config.yaml +260 -0
- args/monitoring_config.yaml +127 -0
- args/mosa_config.yaml +190 -0
- args/observability_tracing_config.yaml +170 -0
- args/owasp_agentic_config.yaml +171 -0
- args/pipeline_gates.yaml +197 -0
- args/project_defaults.yaml +235 -0
- args/prompt_chains.yaml +163 -0
- args/rag_config.yaml +167 -0
- args/research_config.yaml +89 -0
- args/resilience_config.yaml +197 -0
- args/ricoas_config.yaml +191 -0
- args/security_gates.yaml +763 -0
- args/storage_config.yaml +63 -0
- args/writeguard_config.yaml +131 -0
- args/zta_config.yaml +247 -0
- context/__init__.py +6 -0
- context/agent/__init__.py +6 -0
- context/agent/response_schemas/__init__.py +6 -0
- context/agent/response_schemas/debate_position.json +46 -0
- context/agent/response_schemas/fitness_scorecard.json +74 -0
- context/agent/response_schemas/review_decision.json +39 -0
- context/agent/response_schemas/task_decomposition.json +82 -0
- context/agent/response_schemas/veto_decision.json +40 -0
- context/agentic/__init__.py +6 -0
- context/agentic/architecture_patterns.md +269 -0
- context/agentic/capability_registry.yaml +223 -0
- context/agentic/csp_integration.md +30 -0
- context/agentic/csp_mcp_registry.yaml +280 -0
- context/agentic/fitness_rubric.md +56 -0
- context/agentic/governance_baseline.md +205 -0
- context/ci/__init__.py +6 -0
- context/ci/worktree_templates.json +44 -0
- context/cloud/__init__.py +6 -0
- context/cloud/csp_service_registry.json +739 -0
- context/compliance/__init__.py +6 -0
- context/compliance/ai_rmf_crosswalk.yaml +226 -0
- context/compliance/atlas_mitigations.json +293 -0
- context/compliance/atlas_techniques.json +833 -0
- context/compliance/cisa_sbd_requirements.json +477 -0
- context/compliance/cjis_security_policy.json +522 -0
- context/compliance/cmmc_practices.json +2494 -0
- context/compliance/cmmc_report_template.md +142 -0
- context/compliance/cnssi_1253_overlay.json +109 -0
- context/compliance/control_crosswalk.json +1914 -0
- context/compliance/control_families/__init__.py +6 -0
- context/compliance/csp_certifications.json +251 -0
- context/compliance/cssp_report_template.md +193 -0
- context/compliance/cui_templates/__init__.py +6 -0
- context/compliance/cui_templates/banner_block.txt +4 -0
- context/compliance/cui_templates/code_header.txt +8 -0
- context/compliance/cui_templates/document_template.md +35 -0
- context/compliance/data_type_framework_map.json +321 -0
- context/compliance/data_type_registry.json +147 -0
- context/compliance/dod_cssp_8530.json +463 -0
- context/compliance/eu_ai_act_annex_iii.json +108 -0
- context/compliance/export_templates/__init__.py +6 -0
- context/compliance/export_templates/emass_controls.csv.j2 +4 -0
- context/compliance/export_templates/evidence_package.md.j2 +39 -0
- context/compliance/export_templates/executive_summary.md.j2 +55 -0
- context/compliance/export_templates/poam_tracking.csv.j2 +4 -0
- context/compliance/fedramp_20x_ksi_schemas.json +133 -0
- context/compliance/fedramp_high_baseline.json +4370 -0
- context/compliance/fedramp_moderate_baseline.json +2183 -0
- context/compliance/fedramp_report_template.md +181 -0
- context/compliance/fips_200_areas.json +362 -0
- context/compliance/gao_ai_accountability.json +262 -0
- context/compliance/hipaa_security_rule.json +720 -0
- context/compliance/hitrust_csf_v11.json +930 -0
- context/compliance/impact_level_profiles.json +251 -0
- context/compliance/incident_response_template.md +1110 -0
- context/compliance/iso27001_2022_controls.json +750 -0
- context/compliance/iso27001_nist_bridge.json +382 -0
- context/compliance/iso42001_controls.json +254 -0
- context/compliance/ivv_checklist_template.md +80 -0
- context/compliance/ivv_report_template.md +116 -0
- context/compliance/ivv_requirements.json +372 -0
- context/compliance/mosa_crosswalk.json +327 -0
- context/compliance/mosa_framework.json +250 -0
- context/compliance/narrative_templates/AC.md.j2 +101 -0
- context/compliance/narrative_templates/AU.md.j2 +106 -0
- context/compliance/narrative_templates/IA.md.j2 +104 -0
- context/compliance/narrative_templates/SC.md.j2 +102 -0
- context/compliance/narrative_templates/SI.md.j2 +111 -0
- context/compliance/narrative_templates/__init__.py +6 -0
- context/compliance/narrative_templates/default.md.j2 +50 -0
- context/compliance/narrative_templates/executive_summary.j2 +27 -0
- context/compliance/narrative_templates/poam_milestone.j2 +19 -0
- context/compliance/narrative_templates/ssp_section.j2 +11 -0
- context/compliance/nist_800_171_controls.json +1552 -0
- context/compliance/nist_800_207_crosswalk.json +399 -0
- context/compliance/nist_800_207_zta.json +258 -0
- context/compliance/nist_800_53.json +324 -0
- context/compliance/nist_ai_600_1_genai.json +326 -0
- context/compliance/nist_ai_rmf.json +206 -0
- context/compliance/nist_sp_800_60_types.json +1667 -0
- context/compliance/omb_m25_21_high_impact_ai.json +248 -0
- context/compliance/omb_m26_04_unbiased_ai.json +262 -0
- context/compliance/owasp_agentic_asi.json +133 -0
- context/compliance/owasp_agentic_threats.json +285 -0
- context/compliance/owasp_llm_top10.json +274 -0
- context/compliance/pci_dss_v4.json +510 -0
- context/compliance/poam_template.md +117 -0
- context/compliance/safeai_controls.json +512 -0
- context/compliance/sbd_report_template.md +77 -0
- context/compliance/siem_config_templates/__init__.py +6 -0
- context/compliance/siem_config_templates/filebeat.yml +213 -0
- context/compliance/siem_config_templates/log_sources.json +208 -0
- context/compliance/soc2_trust_criteria.json +661 -0
- context/compliance/ssp_template.md +432 -0
- context/compliance/stig_templates/__init__.py +6 -0
- context/compliance/stig_templates/webapp_stig.json +139 -0
- context/compliance/xai_requirements.json +108 -0
- context/dashboard/__init__.py +6 -0
- context/dashboard/nlq_examples.json +50 -0
- context/dashboard/schema_descriptions.json +23 -0
- context/icdev_methodology.md +100 -0
- context/integration/__init__.py +6 -0
- context/integration/approval_workflows.json +32 -0
- context/integration/gitlab_field_mappings.json +33 -0
- context/integration/jira_field_mappings.json +32 -0
- context/integration/reqif_export_schema.json +23 -0
- context/integration/servicenow_field_mappings.json +22 -0
- context/languages/__init__.py +6 -0
- context/languages/framework_patterns.json +205 -0
- context/languages/language_registry.json +279 -0
- context/llm/__init__.py +6 -0
- context/llm/example_provider.py +89 -0
- context/marketplace/assets/writeguard-core.yaml +100 -0
- context/marketplace/assets/writeguard-govcon.yaml +45 -0
- context/marketplace/assets/writeguard-style-guides.yaml +44 -0
- context/mbse/__init__.py +6 -0
- context/mbse/des_report_template.md +162 -0
- context/mbse/des_requirements.json +411 -0
- context/mbse/digital_thread_patterns.json +403 -0
- context/mbse/reqif_schema.json +280 -0
- context/mbse/sysml_element_types.json +432 -0
- context/oscal/NIST_SP-800-53_rev5_catalog.json +254987 -0
- context/oscal/README.md +43 -0
- context/patterns/__init__.py +6 -0
- context/profiles/__init__.py +6 -0
- context/profiles/dod_baseline_v1.yaml +145 -0
- context/profiles/fedramp_baseline_v1.yaml +143 -0
- context/profiles/financial_baseline_v1.yaml +142 -0
- context/profiles/healthcare_baseline_v1.yaml +135 -0
- context/profiles/law_enforcement_v1.yaml +129 -0
- context/profiles/startup_v1.yaml +134 -0
- context/rag/source_mappings.json +42 -0
- context/requirements/__init__.py +6 -0
- context/requirements/ambiguity_patterns.json +97 -0
- context/requirements/boundary_impact_rules.json +123 -0
- context/requirements/default_constitutions.json +67 -0
- context/requirements/document_extraction_rules.json +58 -0
- context/requirements/gap_patterns.json +108 -0
- context/requirements/readiness_rubric.json +78 -0
- context/requirements/red_alternative_patterns.json +210 -0
- context/requirements/safe_templates.json +72 -0
- context/requirements/spec_quality_checklist.json +122 -0
- context/research/regulatory_registry.json +114 -0
- context/research/verticals/cybersecurity.json +127 -0
- context/research/verticals/defense.json +104 -0
- context/research/verticals/fintech.json +125 -0
- context/research/verticals/healthcare.json +118 -0
- context/research/verticals/logistics.json +117 -0
- context/research/verticals/trading.json +145 -0
- context/simulation/__init__.py +6 -0
- context/simulation/architecture_patterns.json +36 -0
- context/simulation/coa_templates.json +38 -0
- context/simulation/cost_models.json +23 -0
- context/simulation/risk_categories.json +46 -0
- context/supply_chain/__init__.py +6 -0
- context/supply_chain/isa_templates.json +129 -0
- context/supply_chain/nist_800_161_controls.json +247 -0
- context/supply_chain/scrm_risk_matrix.json +147 -0
- context/templates/__init__.py +6 -0
- context/templates/ansible/__init__.py +6 -0
- context/templates/ansible/playbooks/__init__.py +6 -0
- context/templates/ansible/roles/__init__.py +6 -0
- context/templates/gitlab_ci/__init__.py +6 -0
- context/templates/grafana/__init__.py +6 -0
- context/templates/kubernetes/__init__.py +6 -0
- context/templates/project/__init__.py +6 -0
- context/templates/project/api/__init__.py +6 -0
- context/templates/project/cli/__init__.py +6 -0
- context/templates/project/data_pipeline/__init__.py +6 -0
- context/templates/project/iac/__init__.py +6 -0
- context/templates/project/javascript_frontend/__init__.py +6 -0
- context/templates/project/javascript_frontend/src/__init__.py +6 -0
- context/templates/project/javascript_frontend/tests/__init__.py +6 -0
- context/templates/project/microservice/__init__.py +6 -0
- context/templates/project/python_backend/__init__.py +6 -0
- context/templates/project/python_backend/src/__init__.py +6 -0
- context/templates/project/python_backend/tests/__init__.py +6 -0
- context/templates/project/python_backend/tests/features/__init__.py +6 -0
- context/templates/project/python_backend/tests/steps/__init__.py +6 -0
- context/templates/terraform/__init__.py +6 -0
- context/templates/terraform/govcloud_base/__init__.py +6 -0
- context/templates/terraform/modules/__init__.py +6 -0
- context/tone/__init__.py +6 -0
- context/writing/grammar_rules/common_errors.json +306 -0
- context/writing/grammar_rules/govcon_vocabulary.json +113 -0
- context/writing/style_guides/academic.yaml +43 -0
- context/writing/style_guides/business.yaml +42 -0
- context/writing/style_guides/government.yaml +59 -0
- context/writing/style_guides/proposal.yaml +58 -0
- context/writing/style_guides/technical.yaml +43 -0
- docs/adr/README.md +66 -0
- docs/adr/connector-forge-decisions.md +318 -0
- docs/adr/core-decisions.md +289 -0
- docs/adr/db-decisions.md +94 -0
- docs/adr/harness-decisions.md +122 -0
- docs/adr/innovation-decisions.md +262 -0
- docs/adr/marketplace-decisions.md +109 -0
- docs/adr/sbd-decisions.md +109 -0
- docs/adr/scale-engine-decisions.md +108 -0
- docs/adr/writeguard-decisions.md +136 -0
- docs/architecture/bounded-contexts.md +1032 -0
- docs/features/phase-65-writeguard.md +139 -0
- docs/features/phase-66-marketplace-commerce.md +79 -0
- docs/features/phase-67-knowledge-ingestion-rag-autodraft.md +97 -0
- docs/features/phase-68-enhanced-autodraft-pipeline.md +109 -0
- docs/features/phase-69-proposalai-marketplace-module.md +131 -0
- docs/features/phase-70-databridge.md +214 -0
- docs/features/phase-71-databridge-messaging.md +102 -0
- docs/implementation-plan-architecture-evolution.md +614 -0
- docs/marketplace/CONTRIBUTING.md +124 -0
- docs/marketplace/module_manifest_schema.yaml +83 -0
- docs/research/ai-architecture-patterns-2024-2026.md +1236 -0
- docs/research/app-builder-platform-analysis.md +582 -0
- docs/research/architecture-patterns-c4-ddd-agentic.md +871 -0
- docs/research/flowable-boat-competitive-analysis.md +426 -0
- docs/research/modern-dev-practices-2024-2026.md +1615 -0
- docs/research/secure-by-design-cloudyrion-adaptation.md +270 -0
- goals/agent_management.md +144 -0
- goals/ai_accountability.md +90 -0
- goals/ai_narratives.md +79 -0
- goals/ai_transparency.md +76 -0
- goals/ato_simulator.md +78 -0
- goals/audit_engine.md +177 -0
- goals/bite_sized_plans.md +225 -0
- goals/boundary_supply_chain.md +206 -0
- goals/brainstorming_gate.md +186 -0
- goals/build_app.md +604 -0
- goals/cato_live_evidence.md +77 -0
- goals/cloudforge.md +106 -0
- goals/code_intelligence.md +197 -0
- goals/compliance_workflow.md +858 -0
- goals/connector_forge.md +133 -0
- goals/databridge.md +128 -0
- goals/deploy_workflow.md +390 -0
- goals/developer_scorecard.md +78 -0
- goals/devsecops_workflow.md +408 -0
- goals/firmware_sbom.md +79 -0
- goals/forge_hub.md +78 -0
- goals/golden_path.md +77 -0
- goals/harness_engineering.md +91 -0
- goals/integration_testing.md +189 -0
- goals/knowledge_graph.md +128 -0
- goals/maintenance_audit.md +196 -0
- goals/manifest.md +50 -0
- goals/monitoring.md +126 -0
- goals/mosa_workflow.md +463 -0
- goals/multi_agent_orchestration.md +68 -0
- goals/observability_traceability_xai.md +154 -0
- goals/owasp_agentic_security.md +395 -0
- goals/pr_intelligence.md +78 -0
- goals/requirements_intake.md +213 -0
- goals/secure_by_design.md +135 -0
- goals/security_scan.md +381 -0
- goals/self_healing.md +120 -0
- goals/simulation_engine.md +111 -0
- goals/subagent_review.md +205 -0
- goals/systematic_debugging.md +257 -0
- goals/tdd_workflow.md +403 -0
- goals/template_exchange.md +77 -0
- goals/thread_heatmap.md +77 -0
- goals/threat_modeler.md +77 -0
- goals/verification_iron_law.md +192 -0
- goals/vsm_dashboard.md +76 -0
- goals/writeguard.md +89 -0
- goals/zero_trust_architecture.md +403 -0
- hardprompts/__init__.py +6 -0
- hardprompts/agent/__init__.py +6 -0
- hardprompts/agent/agentic_architect.md +100 -0
- hardprompts/agent/debate_prompt.md +32 -0
- hardprompts/agent/fitness_evaluation.md +48 -0
- hardprompts/agent/governance_review.md +214 -0
- hardprompts/agent/reviewer_prompt.md +34 -0
- hardprompts/agent/skill_design.md +172 -0
- hardprompts/agent/task_decomposition.md +275 -0
- hardprompts/agent/veto_check_prompt.md +33 -0
- hardprompts/architect/__init__.py +6 -0
- hardprompts/architect/api_design.md +283 -0
- hardprompts/architect/data_model.md +277 -0
- hardprompts/architect/system_design.md +180 -0
- hardprompts/builder/__init__.py +6 -0
- hardprompts/builder/code_generation.md +59 -0
- hardprompts/builder/refactor.md +58 -0
- hardprompts/builder/scaffold_project.md +69 -0
- hardprompts/builder/test_generation.md +87 -0
- hardprompts/ci/__init__.py +6 -0
- hardprompts/ci/worktree_setup.md +35 -0
- hardprompts/compliance/__init__.py +6 -0
- hardprompts/compliance/cmmc_assessment.md +63 -0
- hardprompts/compliance/cssp_assessment.md +75 -0
- hardprompts/compliance/cui_marking.md +86 -0
- hardprompts/compliance/fedramp_assessment.md +55 -0
- hardprompts/compliance/ivv_assessment.md +96 -0
- hardprompts/compliance/poam_generation.md +57 -0
- hardprompts/compliance/sbd_assessment.md +101 -0
- hardprompts/compliance/security_categorization.md +74 -0
- hardprompts/compliance/ssp_generation.md +56 -0
- hardprompts/compliance/stig_evaluation.md +63 -0
- hardprompts/dashboard/__init__.py +6 -0
- hardprompts/dashboard/nlq_system_prompt.md +26 -0
- hardprompts/infra/__init__.py +6 -0
- hardprompts/infra/k8s_manifests.md +118 -0
- hardprompts/infra/pipeline_generation.md +160 -0
- hardprompts/infra/terraform_generation.md +92 -0
- hardprompts/integration/__init__.py +6 -0
- hardprompts/integration/approval_review.md +17 -0
- hardprompts/integration/jira_mapping.md +25 -0
- hardprompts/integration/servicenow_mapping.md +14 -0
- hardprompts/knowledge/__init__.py +6 -0
- hardprompts/knowledge/pattern_detection.md +73 -0
- hardprompts/knowledge/recommendation_engine.md +90 -0
- hardprompts/knowledge/root_cause_analysis.md +91 -0
- hardprompts/maintenance/__init__.py +6 -0
- hardprompts/maintenance/maintenance_assessment.md +82 -0
- hardprompts/mbse/__init__.py +6 -0
- hardprompts/mbse/digital_thread.md +67 -0
- hardprompts/mbse/model_import.md +62 -0
- hardprompts/mbse/model_to_code.md +65 -0
- hardprompts/modernization/__init__.py +6 -0
- hardprompts/modernization/legacy_analysis.md +93 -0
- hardprompts/modernization/migration_planning.md +150 -0
- hardprompts/modernization/seven_r_assessment.md +107 -0
- hardprompts/proposal_draft.md +53 -0
- hardprompts/rag_citation.md +12 -0
- hardprompts/rag_rerank.md +31 -0
- hardprompts/requirements/__init__.py +6 -0
- hardprompts/requirements/bdd_generation.md +35 -0
- hardprompts/requirements/clarification_prioritization.md +29 -0
- hardprompts/requirements/decomposition.md +60 -0
- hardprompts/requirements/document_extraction.md +45 -0
- hardprompts/requirements/gap_detection.md +70 -0
- hardprompts/requirements/intake_conversation.md +101 -0
- hardprompts/requirements/readiness_assessment.md +39 -0
- hardprompts/requirements/spec_quality.md +33 -0
- hardprompts/requirements/traceability_analysis.md +23 -0
- hardprompts/security/__init__.py +6 -0
- hardprompts/security/endpoint_security.md +78 -0
- hardprompts/security/threat_model.md +70 -0
- hardprompts/security/vulnerability_assessment.md +81 -0
- hardprompts/simulation/__init__.py +6 -0
- hardprompts/simulation/architecture_impact.md +27 -0
- hardprompts/simulation/coa_alternative.md +27 -0
- hardprompts/simulation/coa_generation.md +25 -0
- hardprompts/simulation/compliance_impact.md +28 -0
- hardprompts/simulation/cost_estimation.md +33 -0
- hardprompts/simulation/risk_assessment.md +28 -0
- hardprompts/translation/code_translation.md +68 -0
- hardprompts/translation/dependency_suggestion.md +44 -0
- hardprompts/translation/test_translation.md +64 -0
- hardprompts/translation/translation_repair.md +59 -0
- icdev-0.0.3.dist-info/METADATA +909 -0
- icdev-0.0.3.dist-info/RECORD +1214 -0
- icdev-0.0.3.dist-info/WHEEL +5 -0
- icdev-0.0.3.dist-info/entry_points.txt +9 -0
- icdev-0.0.3.dist-info/licenses/LICENSE +201 -0
- icdev-0.0.3.dist-info/licenses/NOTICE +11 -0
- icdev-0.0.3.dist-info/top_level.txt +7 -0
- memory/MEMORY.md +52 -0
- memory/logs/2026-02-14.md +17 -0
- memory/logs/2026-03-03.md +2 -0
- memory/logs/__init__.py +1 -0
- tools/a2a/icdev_callback_client.py +210 -0
- tools/agent/cards/architect_card.json +29 -0
- tools/agent/cards/builder_card.json +34 -0
- tools/agent/cards/compliance_card.json +29 -0
- tools/agent/cards/connector_forge_card.json +49 -0
- tools/agent/cards/devsecops_zta_card.json +24 -0
- tools/agent/cards/knowledge_card.json +29 -0
- tools/agent/cards/monitor_card.json +29 -0
- tools/agent/cards/orchestrator_card.json +29 -0
- tools/agent/cards/requirements_analyst_card.json +24 -0
- tools/agent/cards/security_card.json +29 -0
- tools/agent/cards/simulation_card.json +24 -0
- tools/agent/cards/supply_chain_card.json +24 -0
- tools/analysis/__init__.py +1 -0
- tools/analysis/code_analyzer.py +770 -0
- tools/analysis/runtime_feedback.py +379 -0
- tools/analytics/__init__.py +2 -0
- tools/analytics/scorecard.py +538 -0
- tools/analytics/vsm_engine.py +612 -0
- tools/architecture/__init__.py +2 -0
- tools/architecture/adr_extractor.py +393 -0
- tools/audit/__init__.py +1 -0
- tools/audit/audit_logger.py +199 -0
- tools/audit/audit_query.py +153 -0
- tools/audit/decision_recorder.py +73 -0
- tools/audit_engine/__init__.py +12 -0
- tools/audit_engine/ai_advisor.py +906 -0
- tools/audit_engine/cli.py +286 -0
- tools/audit_engine/comparator.py +305 -0
- tools/audit_engine/eject_scaffolder.py +399 -0
- tools/audit_engine/engine.py +614 -0
- tools/audit_engine/git_fetcher.py +341 -0
- tools/audit_engine/regime_loader.py +200 -0
- tools/audit_engine/regime_updater.py +325 -0
- tools/audit_engine/report_card.py +289 -0
- tools/audit_engine/scanner.py +684 -0
- tools/audit_engine/self_heal.py +1042 -0
- tools/ci/__init__.py +2 -0
- tools/ci/connectors/__init__.py +2 -0
- tools/ci/connectors/base_connector.py +80 -0
- tools/ci/connectors/connector_registry.py +188 -0
- tools/ci/connectors/mattermost_connector.py +159 -0
- tools/ci/connectors/slack_connector.py +197 -0
- tools/ci/core/__init__.py +2 -0
- tools/ci/core/air_gap_detector.py +115 -0
- tools/ci/core/comment_handler.py +192 -0
- tools/ci/core/conversation_manager.py +480 -0
- tools/ci/core/event_envelope.py +500 -0
- tools/ci/core/event_router.py +444 -0
- tools/ci/core/failure_parser.py +397 -0
- tools/ci/core/recovery_engine.py +527 -0
- tools/ci/gate_enforcer.py +361 -0
- tools/ci/modules/__init__.py +2 -0
- tools/ci/modules/agent.py +271 -0
- tools/ci/modules/git_ops.py +175 -0
- tools/ci/modules/state.py +117 -0
- tools/ci/modules/vcs.py +303 -0
- tools/ci/modules/workflow_ops.py +295 -0
- tools/ci/modules/worktree.py +337 -0
- tools/ci/pipeline_config_generator.py +558 -0
- tools/ci/pr_intelligence.py +485 -0
- tools/ci/triggers/__init__.py +2 -0
- tools/ci/triggers/gitlab_task_monitor.py +327 -0
- tools/ci/triggers/poll_trigger.py +237 -0
- tools/ci/triggers/webhook_server.py +356 -0
- tools/ci/workflows/__init__.py +2 -0
- tools/ci/workflows/icdev_build.py +140 -0
- tools/ci/workflows/icdev_comply.py +284 -0
- tools/ci/workflows/icdev_document.py +152 -0
- tools/ci/workflows/icdev_e2e.py +188 -0
- tools/ci/workflows/icdev_patch.py +186 -0
- tools/ci/workflows/icdev_plan.py +202 -0
- tools/ci/workflows/icdev_plan_build.py +41 -0
- tools/ci/workflows/icdev_plan_build_test.py +46 -0
- tools/ci/workflows/icdev_plan_build_test_review.py +47 -0
- tools/ci/workflows/icdev_review.py +126 -0
- tools/ci/workflows/icdev_sdlc.py +261 -0
- tools/ci/workflows/icdev_test.py +240 -0
- tools/cli/__init__.py +1 -0
- tools/cli/output_formatter.py +756 -0
- tools/cloudforge/__init__.py +12 -0
- tools/cloudforge/airgap/__init__.py +2 -0
- tools/cloudforge/airgap/il_classifier.py +70 -0
- tools/cloudforge/airgap/offline_validator.py +42 -0
- tools/cloudforge/airgap/shift_emulator.py +155 -0
- tools/cloudforge/airgap/sneakernet.py +91 -0
- tools/cloudforge/cd_hub/__init__.py +2 -0
- tools/cloudforge/cd_hub/canary_deployer.py +88 -0
- tools/cloudforge/cd_hub/gitops_renderer.py +123 -0
- tools/cloudforge/cd_hub/hub_controller.py +143 -0
- tools/cloudforge/cd_hub/pipeline_bridge.py +30 -0
- tools/cloudforge/cd_hub/rollback_engine.py +29 -0
- tools/cloudforge/cd_hub/spoke_agent.py +51 -0
- tools/cloudforge/compliance/__init__.py +2 -0
- tools/cloudforge/compliance/ato_accelerator.py +272 -0
- tools/cloudforge/compliance/control_inheritor.py +127 -0
- tools/cloudforge/compliance/evidence_generator.py +129 -0
- tools/cloudforge/compliance/poam_bridge.py +41 -0
- tools/cloudforge/compliance/ssp_bridge.py +52 -0
- tools/cloudforge/compliance/stig_bridge.py +41 -0
- tools/cloudforge/container_forge/__init__.py +2 -0
- tools/cloudforge/container_forge/bigbang_renderer.py +85 -0
- tools/cloudforge/container_forge/hardener.py +169 -0
- tools/cloudforge/container_forge/image_scanner_bridge.py +33 -0
- tools/cloudforge/container_forge/runtime_policy.py +87 -0
- tools/cloudforge/container_forge/sbom_bridge.py +42 -0
- tools/cloudforge/finops/__init__.py +2 -0
- tools/cloudforge/finops/anomaly_detector.py +78 -0
- tools/cloudforge/finops/budget_tracker.py +96 -0
- tools/cloudforge/finops/chargeback.py +69 -0
- tools/cloudforge/finops/cost_collector.py +141 -0
- tools/cloudforge/finops/optimizer.py +55 -0
- tools/cloudforge/hybrid/__init__.py +2 -0
- tools/cloudforge/hybrid/connection_manager.py +141 -0
- tools/cloudforge/hybrid/dns_federator.py +56 -0
- tools/cloudforge/hybrid/health_monitor.py +108 -0
- tools/cloudforge/hybrid/identity_federator.py +53 -0
- tools/cloudforge/hybrid/network_bridge.py +68 -0
- tools/cloudforge/hybrid/topology_manager.py +147 -0
- tools/cloudforge/hybrid/workload_abstractor.py +92 -0
- tools/cloudforge/iac/__init__.py +2 -0
- tools/cloudforge/iac/drift_detector.py +154 -0
- tools/cloudforge/iac/module_library.py +265 -0
- tools/cloudforge/iac/opentofu_adapter.py +89 -0
- tools/cloudforge/iac/pulumi_renderer.py +292 -0
- tools/cloudforge/iac/state_backend.py +146 -0
- tools/cloudforge/iac/terraform_renderer.py +626 -0
- tools/cloudforge/landing_zone/__init__.py +2 -0
- tools/cloudforge/landing_zone/blueprint_loader.py +98 -0
- tools/cloudforge/landing_zone/blueprint_validator.py +113 -0
- tools/cloudforge/landing_zone/zone_provisioner.py +306 -0
- tools/cloudforge/landing_zone/zone_state.py +143 -0
- tools/cloudforge/mbse_thread/__init__.py +2 -0
- tools/cloudforge/mbse_thread/ato_thread_weaver.py +111 -0
- tools/cloudforge/mbse_thread/control_tracer.py +68 -0
- tools/cloudforge/mbse_thread/system_boundary.py +83 -0
- tools/cloudforge/metastore/__init__.py +2 -0
- tools/cloudforge/metastore/dependency_graph.py +202 -0
- tools/cloudforge/metastore/discovery.py +192 -0
- tools/cloudforge/metastore/registry.py +185 -0
- tools/cloudforge/metastore/rto_tracker.py +92 -0
- tools/cloudforge/metastore/runbook_linker.py +82 -0
- tools/cloudforge/migration/__init__.py +2 -0
- tools/cloudforge/migration/assessor.py +187 -0
- tools/cloudforge/migration/cutover_orchestrator.py +117 -0
- tools/cloudforge/migration/databridge_bridge.py +92 -0
- tools/cloudforge/migration/planner.py +98 -0
- tools/cloudforge/migration/risk_scorer.py +97 -0
- tools/cloudforge/migration/validation_runner.py +45 -0
- tools/cloudforge/migration/workload_inventory.py +107 -0
- tools/cloudforge/provider.py +319 -0
- tools/cloudforge/providers/__init__.py +2 -0
- tools/cloudforge/providers/aws_commercial.py +92 -0
- tools/cloudforge/providers/aws_govcloud.py +229 -0
- tools/cloudforge/providers/aws_secret.py +83 -0
- tools/cloudforge/providers/azure_commercial.py +80 -0
- tools/cloudforge/providers/azure_gov.py +91 -0
- tools/cloudforge/providers/azure_secret.py +71 -0
- tools/cloudforge/providers/gcp.py +102 -0
- tools/cloudforge/providers/oci.py +102 -0
- tools/cloudforge/registry.py +140 -0
- tools/cloudforge/runbooks/__init__.py +2 -0
- tools/cloudforge/runbooks/ai_generator.py +119 -0
- tools/cloudforge/runbooks/dag_validator.py +219 -0
- tools/cloudforge/runbooks/engine.py +470 -0
- tools/cloudforge/runbooks/models.py +99 -0
- tools/cloudforge/runbooks/snippet_library.py +158 -0
- tools/cloudforge/runbooks/template_loader.py +122 -0
- tools/cloudforge/runbooks/visualization.py +108 -0
- tools/cloudforge/siem/__init__.py +2 -0
- tools/cloudforge/siem/alert_rules.py +86 -0
- tools/cloudforge/siem/correlation_engine.py +61 -0
- tools/cloudforge/siem/log_aggregator.py +113 -0
- tools/cloudforge/siem/siem_dashboard_data.py +28 -0
- tools/cloudforge/supply_chain/__init__.py +2 -0
- tools/cloudforge/supply_chain/bridge.py +33 -0
- tools/cloudforge/supply_chain/iac_dependency_scanner.py +36 -0
- tools/cloudforge/supply_chain/provider_trust_scorer.py +54 -0
- tools/compat/__init__.py +21 -0
- tools/compat/cli_harmonizer.py +251 -0
- tools/compat/datetime_utils.py +18 -0
- tools/compat/db_utils.py +190 -0
- tools/compat/platform_utils.py +123 -0
- tools/compliance/__init__.py +1 -0
- tools/compliance/accountability_manager.py +391 -0
- tools/compliance/ai_accountability_audit.py +287 -0
- tools/compliance/ai_impact_assessor.py +267 -0
- tools/compliance/ai_incident_response.py +295 -0
- tools/compliance/ai_inventory_manager.py +233 -0
- tools/compliance/ai_reassessment_scheduler.py +250 -0
- tools/compliance/ai_transparency_audit.py +247 -0
- tools/compliance/atlas_assessor.py +276 -0
- tools/compliance/atlas_report_generator.py +1199 -0
- tools/compliance/base_assessor.py +591 -0
- tools/compliance/cato_live_engine.py +607 -0
- tools/compliance/cato_monitor.py +1371 -0
- tools/compliance/cato_scheduler.py +698 -0
- tools/compliance/cjis_assessor.py +76 -0
- tools/compliance/classification_manager.py +1340 -0
- tools/compliance/cmmc_assessor.py +1478 -0
- tools/compliance/cmmc_report_generator.py +1087 -0
- tools/compliance/compliance_detector.py +452 -0
- tools/compliance/compliance_exporter.py +418 -0
- tools/compliance/compliance_status.py +810 -0
- tools/compliance/control_mapper.py +488 -0
- tools/compliance/crosswalk_engine.py +1208 -0
- tools/compliance/cssp_assessor.py +1032 -0
- tools/compliance/cssp_evidence_collector.py +716 -0
- tools/compliance/cssp_report_generator.py +1103 -0
- tools/compliance/cui_marker.py +387 -0
- tools/compliance/diagram_validator.py +599 -0
- tools/compliance/emass/__init__.py +2 -0
- tools/compliance/emass/emass_client.py +822 -0
- tools/compliance/emass/emass_export.py +758 -0
- tools/compliance/emass/emass_sync.py +807 -0
- tools/compliance/eu_ai_act_classifier.py +193 -0
- tools/compliance/evidence_collector.py +459 -0
- tools/compliance/fairness_assessor.py +310 -0
- tools/compliance/fedramp_20x_ksi_emitter.py +692 -0
- tools/compliance/fedramp_assessor.py +1795 -0
- tools/compliance/fedramp_authorization_packager.py +137 -0
- tools/compliance/fedramp_ksi_generator.py +349 -0
- tools/compliance/fedramp_report_generator.py +1115 -0
- tools/compliance/fips199_categorizer.py +869 -0
- tools/compliance/fips200_validator.py +304 -0
- tools/compliance/firmware_sbom.py +646 -0
- tools/compliance/gao_ai_assessor.py +228 -0
- tools/compliance/gao_evidence_builder.py +302 -0
- tools/compliance/hipaa_assessor.py +78 -0
- tools/compliance/hitrust_assessor.py +49 -0
- tools/compliance/incident_response_plan.py +705 -0
- tools/compliance/inheritance_engine.py +693 -0
- tools/compliance/iso27001_assessor.py +92 -0
- tools/compliance/iso42001_assessor.py +114 -0
- tools/compliance/ivv_assessor.py +2314 -0
- tools/compliance/ivv_report_generator.py +1649 -0
- tools/compliance/model_card_generator.py +291 -0
- tools/compliance/mosa_assessor.py +117 -0
- tools/compliance/multi_regime_assessor.py +441 -0
- tools/compliance/narrative_generator.py +1012 -0
- tools/compliance/narrative_quality_gate.py +701 -0
- tools/compliance/narrative_workflow.py +814 -0
- tools/compliance/nist_800_207_assessor.py +191 -0
- tools/compliance/nist_ai_600_1_assessor.py +185 -0
- tools/compliance/nist_ai_rmf_assessor.py +110 -0
- tools/compliance/nist_lookup.py +244 -0
- tools/compliance/omb_m25_21_assessor.py +225 -0
- tools/compliance/omb_m26_04_assessor.py +185 -0
- tools/compliance/oscal_catalog_adapter.py +395 -0
- tools/compliance/oscal_generator.py +2157 -0
- tools/compliance/oscal_tools.py +1182 -0
- tools/compliance/oscal_validator.py +692 -0
- tools/compliance/owasp_agentic_assessor.py +227 -0
- tools/compliance/owasp_asi_assessor.py +197 -0
- tools/compliance/owasp_llm_assessor.py +245 -0
- tools/compliance/pci_dss_assessor.py +80 -0
- tools/compliance/pi_compliance_tracker.py +1447 -0
- tools/compliance/poam_generator.py +388 -0
- tools/compliance/resolve_marking.py +272 -0
- tools/compliance/sbd_assessor.py +2070 -0
- tools/compliance/sbd_report_generator.py +1223 -0
- tools/compliance/sbom_generator.py +993 -0
- tools/compliance/siem_config_generator.py +661 -0
- tools/compliance/slsa_attestation_generator.py +479 -0
- tools/compliance/soc2_assessor.py +77 -0
- tools/compliance/ssp_generator.py +556 -0
- tools/compliance/stig_checker.py +712 -0
- tools/compliance/swft_evidence_bundler.py +326 -0
- tools/compliance/system_card_generator.py +303 -0
- tools/compliance/template_exchange.py +513 -0
- tools/compliance/traceability_matrix.py +1268 -0
- tools/compliance/universal_classification_manager.py +1159 -0
- tools/compliance/xacta/__init__.py +2 -0
- tools/compliance/xacta/xacta_client.py +438 -0
- tools/compliance/xacta/xacta_export.py +546 -0
- tools/compliance/xacta/xacta_sync.py +322 -0
- tools/compliance/xai_assessor.py +231 -0
- tools/core/__init__.py +2 -0
- tools/core/circuit_breaker.py +353 -0
- tools/core/compliance_sidecar.py +344 -0
- tools/core/container.py +110 -0
- tools/core/errors.py +256 -0
- tools/core/feature_flags.py +311 -0
- tools/core/task_dlq.py +350 -0
- tools/dashboard/__init__.py +2 -0
- tools/dashboard/app.py +6288 -0
- tools/dashboard/templates/agent_evolution.html +287 -0
- tools/dashboard/templates/agents/list.html +71 -0
- tools/dashboard/templates/agents.html +132 -0
- tools/dashboard/templates/architecture.html +289 -0
- tools/dashboard/templates/ato_simulator.html +170 -0
- tools/dashboard/templates/audit_engine.html +844 -0
- tools/dashboard/templates/base.html +236 -0
- tools/dashboard/templates/cato_live.html +116 -0
- tools/dashboard/templates/cloudforge.html +195 -0
- tools/dashboard/templates/cloudforge_finops.html +111 -0
- tools/dashboard/templates/cloudforge_hybrid.html +122 -0
- tools/dashboard/templates/cloudforge_metastore.html +234 -0
- tools/dashboard/templates/cloudforge_migration.html +87 -0
- tools/dashboard/templates/cloudforge_runbooks.html +201 -0
- tools/dashboard/templates/cloudforge_siem.html +94 -0
- tools/dashboard/templates/compliance_accel.html +292 -0
- tools/dashboard/templates/crashes.html +122 -0
- tools/dashboard/templates/databridge.html +305 -0
- tools/dashboard/templates/databridge_analytics.html +195 -0
- tools/dashboard/templates/databridge_mapping.html +345 -0
- tools/dashboard/templates/databridge_messaging.html +321 -0
- tools/dashboard/templates/decisions.html +258 -0
- tools/dashboard/templates/devices.html +151 -0
- tools/dashboard/templates/devsecops_maturity.html +278 -0
- tools/dashboard/templates/edge_ai.html +128 -0
- tools/dashboard/templates/firmware.html +120 -0
- tools/dashboard/templates/firmware_sbom.html +193 -0
- tools/dashboard/templates/forge_hub.html +196 -0
- tools/dashboard/templates/forge_studio.html +379 -0
- tools/dashboard/templates/forge_studio_analytics.html +360 -0
- tools/dashboard/templates/forge_studio_builder.html +1637 -0
- tools/dashboard/templates/forge_studio_compliance.html +310 -0
- tools/dashboard/templates/forge_studio_deploy.html +573 -0
- tools/dashboard/templates/forge_studio_enterprise.html +888 -0
- tools/dashboard/templates/forge_studio_marketplace.html +502 -0
- tools/dashboard/templates/forge_studio_workflow.html +696 -0
- tools/dashboard/templates/golden_path.html +175 -0
- tools/dashboard/templates/govcon.html +280 -0
- tools/dashboard/templates/harness.html +148 -0
- tools/dashboard/templates/index.html +207 -0
- tools/dashboard/templates/intelligence.html +336 -0
- tools/dashboard/templates/knowledge/index.html +190 -0
- tools/dashboard/templates/knowledge_graph.html +739 -0
- tools/dashboard/templates/login.html +51 -0
- tools/dashboard/templates/marketplace.html +336 -0
- tools/dashboard/templates/marketplace_admin.html +247 -0
- tools/dashboard/templates/missions.html +403 -0
- tools/dashboard/templates/narratives.html +154 -0
- tools/dashboard/templates/pr_intelligence.html +151 -0
- tools/dashboard/templates/proposals/detail.html +300 -0
- tools/dashboard/templates/proposals/list.html +52 -0
- tools/dashboard/templates/proposals/sam_detail.html +132 -0
- tools/dashboard/templates/proposals/section_detail.html +375 -0
- tools/dashboard/templates/research.html +222 -0
- tools/dashboard/templates/resilience.html +300 -0
- tools/dashboard/templates/scorecard.html +162 -0
- tools/dashboard/templates/simulator.html +131 -0
- tools/dashboard/templates/template_exchange.html +147 -0
- tools/dashboard/templates/thread_heatmap.html +151 -0
- tools/dashboard/templates/threat_model.html +195 -0
- tools/dashboard/templates/vsm.html +141 -0
- tools/dashboard/templates/writeguard.html +277 -0
- tools/databridge/__init__.py +5 -0
- tools/databridge/agent/__init__.py +2 -0
- tools/databridge/agent/daemon.py +227 -0
- tools/databridge/agent/tunnel.py +101 -0
- tools/databridge/agent/ws_relay.py +91 -0
- tools/databridge/analytics.py +167 -0
- tools/databridge/arrow_pipeline.py +327 -0
- tools/databridge/connection_manager.py +424 -0
- tools/databridge/connector.py +331 -0
- tools/databridge/connectors/__init__.py +2 -0
- tools/databridge/connectors/argocd_connector.py +160 -0
- tools/databridge/connectors/avro_connector.py +203 -0
- tools/databridge/connectors/azure_blob.py +63 -0
- tools/databridge/connectors/cdc_connector.py +205 -0
- tools/databridge/connectors/csv_connector.py +172 -0
- tools/databridge/connectors/datadog_connector.py +153 -0
- tools/databridge/connectors/discord_messaging.py +215 -0
- tools/databridge/connectors/dynamics365.py +151 -0
- tools/databridge/connectors/elasticsearch_connector.py +145 -0
- tools/databridge/connectors/email_base.py +114 -0
- tools/databridge/connectors/excel_connector.py +175 -0
- tools/databridge/connectors/fsspec_base.py +300 -0
- tools/databridge/connectors/gcs.py +53 -0
- tools/databridge/connectors/github_connector.py +138 -0
- tools/databridge/connectors/gitlab_connector.py +132 -0
- tools/databridge/connectors/gmail_connector.py +182 -0
- tools/databridge/connectors/hdfs.py +57 -0
- tools/databridge/connectors/health_base.py +401 -0
- tools/databridge/connectors/hubspot.py +124 -0
- tools/databridge/connectors/imap_connector.py +171 -0
- tools/databridge/connectors/jenkins_connector.py +138 -0
- tools/databridge/connectors/jira_connector.py +86 -0
- tools/databridge/connectors/json_connector.py +184 -0
- tools/databridge/connectors/kafka_connector.py +246 -0
- tools/databridge/connectors/kinesis_connector.py +238 -0
- tools/databridge/connectors/local_fs.py +30 -0
- tools/databridge/connectors/matrix.py +197 -0
- tools/databridge/connectors/mattermost_messaging.py +184 -0
- tools/databridge/connectors/messaging_base.py +172 -0
- tools/databridge/connectors/mssql.py +63 -0
- tools/databridge/connectors/mysql.py +57 -0
- tools/databridge/connectors/netsuite.py +170 -0
- tools/databridge/connectors/o365_mail.py +196 -0
- tools/databridge/connectors/oracle.py +65 -0
- tools/databridge/connectors/pagerduty_connector.py +162 -0
- tools/databridge/connectors/parquet_connector.py +131 -0
- tools/databridge/connectors/postgresql.py +58 -0
- tools/databridge/connectors/s3.py +65 -0
- tools/databridge/connectors/saas_base.py +198 -0
- tools/databridge/connectors/salesforce.py +126 -0
- tools/databridge/connectors/sap.py +89 -0
- tools/databridge/connectors/servicenow.py +60 -0
- tools/databridge/connectors/signal_messaging.py +150 -0
- tools/databridge/connectors/slack_messaging.py +203 -0
- tools/databridge/connectors/smtp_connector.py +126 -0
- tools/databridge/connectors/soap_base.py +258 -0
- tools/databridge/connectors/splunk_connector.py +171 -0
- tools/databridge/connectors/sql_base.py +310 -0
- tools/databridge/connectors/sqlite_connector.py +76 -0
- tools/databridge/connectors/teams.py +148 -0
- tools/databridge/connectors/telegram.py +192 -0
- tools/databridge/connectors/whatsapp.py +137 -0
- tools/databridge/data_profiler.py +99 -0
- tools/databridge/forge/__init__.py +6 -0
- tools/databridge/forge/base_selector.py +150 -0
- tools/databridge/forge/code_generator.py +206 -0
- tools/databridge/forge/community_hub.py +539 -0
- tools/databridge/forge/forge_agent.py +306 -0
- tools/databridge/forge/import_handler.py +133 -0
- tools/databridge/forge/integration_tester.py +127 -0
- tools/databridge/forge/marketplace_publisher.py +164 -0
- tools/databridge/forge/promoter.py +159 -0
- tools/databridge/forge/sandbox_manager.py +257 -0
- tools/databridge/forge/spec_parser.py +358 -0
- tools/databridge/forge/static_validator.py +363 -0
- tools/databridge/forge/templates/__init__.py +591 -0
- tools/databridge/format_converter.py +188 -0
- tools/databridge/mapping_engine.py +348 -0
- tools/databridge/messaging/__init__.py +5 -0
- tools/databridge/messaging/agent_bridge.py +254 -0
- tools/databridge/messaging/message_envelope.py +111 -0
- tools/databridge/messaging/message_logger.py +204 -0
- tools/databridge/messaging/messaging_daemon.py +326 -0
- tools/databridge/messaging/oauth2_manager.py +411 -0
- tools/databridge/pii_detector.py +221 -0
- tools/databridge/registry.py +352 -0
- tools/databridge/relay_server.py +105 -0
- tools/databridge/scale/__init__.py +16 -0
- tools/databridge/scale/backpressure.py +134 -0
- tools/databridge/scale/chunked_pipeline.py +169 -0
- tools/databridge/scale/connection_pool.py +293 -0
- tools/databridge/scale/engine.py +492 -0
- tools/databridge/scale/worker_pool.py +140 -0
- tools/databridge/scale/write_batcher.py +250 -0
- tools/databridge/schema_engine.py +324 -0
- tools/databridge/stream_manager.py +225 -0
- tools/databridge/sync_engine.py +411 -0
- tools/databridge/transforms.py +302 -0
- tools/db/__init__.py +1 -0
- tools/db/backup.py +312 -0
- tools/db/backup_manager.py +832 -0
- tools/db/init_icdev_db.py +7753 -0
- tools/db/init_sparkpilot_db.py +431 -0
- tools/db/migrate.py +177 -0
- tools/db/migrate_innovation_audit.py +165 -0
- tools/db/migration_runner.py +548 -0
- tools/db/migrations/001_baseline/meta.json +9 -0
- tools/db/migrations/001_baseline/up.py +67 -0
- tools/db/migrations/002_memory_enhancements/down.sql +8 -0
- tools/db/migrations/002_memory_enhancements/meta.json +9 -0
- tools/db/migrations/002_memory_enhancements/up.py +119 -0
- tools/db/migrations/003_dev_profiles/meta.json +8 -0
- tools/db/migrations/003_dev_profiles/up.py +93 -0
- tools/db/migrations/004_innovation_engine/down.py +19 -0
- tools/db/migrations/004_innovation_engine/up.py +227 -0
- tools/db/migrations/005_phase_37_ai_security/down.py +19 -0
- tools/db/migrations/005_phase_37_ai_security/up.py +257 -0
- tools/db/migrations/006_phase_36_evolution/down.py +21 -0
- tools/db/migrations/006_phase_36_evolution/up.py +323 -0
- tools/db/migrations/007_phase_38_cloud/down.py +14 -0
- tools/db/migrations/007_phase_38_cloud/up.py +110 -0
- tools/db/migrations/008_phase36_37_integration/up.py +55 -0
- tools/db/migrations/__init__.py +2 -0
- tools/db/pg_migrate.py +642 -0
- tools/db/storage.py +1080 -0
- tools/decisions/__init__.py +2 -0
- tools/decisions/dmn_engine.py +695 -0
- tools/devsecops/__init__.py +2 -0
- tools/devsecops/attestation_manager.py +449 -0
- tools/devsecops/network_segmentation_generator.py +604 -0
- tools/devsecops/pdp_config_generator.py +1246 -0
- tools/devsecops/pipeline_security_generator.py +475 -0
- tools/devsecops/policy_generator.py +644 -0
- tools/devsecops/profile_manager.py +374 -0
- tools/devsecops/service_mesh_generator.py +1063 -0
- tools/devsecops/zta_maturity_scorer.py +355 -0
- tools/devsecops/zta_terraform_generator.py +1301 -0
- tools/edge_ai/__init__.py +2 -0
- tools/edge_ai/model_manager.py +200 -0
- tools/embedded/__init__.py +2 -0
- tools/embedded/cmake_generator.py +318 -0
- tools/embedded/crash_analyzer.py +191 -0
- tools/embedded/nl_to_firmware.py +277 -0
- tools/events/__init__.py +1 -0
- tools/events/event_bus.py +199 -0
- tools/finetune/pair_generator.py +832 -0
- tools/fleet/__init__.py +2 -0
- tools/fleet/device_registry.py +148 -0
- tools/fleet/ota_manager.py +153 -0
- tools/forge_studio/__init__.py +13 -0
- tools/forge_studio/analytics/__init__.py +0 -0
- tools/forge_studio/analytics/process_miner.py +383 -0
- tools/forge_studio/audit.py +183 -0
- tools/forge_studio/blueprint/__init__.py +2 -0
- tools/forge_studio/blueprint/build_tracker.py +317 -0
- tools/forge_studio/blueprint/export_engine.py +441 -0
- tools/forge_studio/blueprint/parent_client.py +335 -0
- tools/forge_studio/catalog/__init__.py +2 -0
- tools/forge_studio/catalog/component_registry.py +176 -0
- tools/forge_studio/catalog/schema_validator.py +193 -0
- tools/forge_studio/compliance/__init__.py +1 -0
- tools/forge_studio/compliance/compliance_wiring.py +554 -0
- tools/forge_studio/deploy/__init__.py +1 -0
- tools/forge_studio/deploy/airgap_packager.py +466 -0
- tools/forge_studio/deploy/deploy_engine.py +1792 -0
- tools/forge_studio/deploy/env_manager.py +431 -0
- tools/forge_studio/eject/__init__.py +2 -0
- tools/forge_studio/eject/docker_compose_generator.py +237 -0
- tools/forge_studio/eject/eject_engine.py +230 -0
- tools/forge_studio/eject/expo_scaffolder.py +303 -0
- tools/forge_studio/eject/nextjs_scaffolder.py +338 -0
- tools/forge_studio/enterprise/__init__.py +0 -0
- tools/forge_studio/enterprise/custom_frameworks.py +826 -0
- tools/forge_studio/enterprise/hardening_engine.py +1530 -0
- tools/forge_studio/enterprise/sso_manager.py +718 -0
- tools/forge_studio/enterprise/whitelabel_engine.py +887 -0
- tools/forge_studio/formula/__init__.py +0 -0
- tools/forge_studio/formula/expression_engine.py +562 -0
- tools/forge_studio/formula/formula_registry.py +265 -0
- tools/forge_studio/generator/__init__.py +2 -0
- tools/forge_studio/generator/app_generator.py +584 -0
- tools/forge_studio/generator/complexity_detector.py +368 -0
- tools/forge_studio/generator/prompt_templates.py +104 -0
- tools/forge_studio/generator/spec_builder.py +192 -0
- tools/forge_studio/intake_bridge.py +898 -0
- tools/forge_studio/marketplace/__init__.py +0 -0
- tools/forge_studio/marketplace/component_hub.py +428 -0
- tools/forge_studio/models.py +369 -0
- tools/forge_studio/renderer/__init__.py +2 -0
- tools/forge_studio/renderer/json_render_engine.py +623 -0
- tools/forge_studio/renderer/layout_engine.py +214 -0
- tools/forge_studio/renderer/rn_component_map.py +182 -0
- tools/forge_studio/supabase/__init__.py +2 -0
- tools/forge_studio/supabase/auth_generator.py +283 -0
- tools/forge_studio/supabase/migration_generator.py +93 -0
- tools/forge_studio/supabase/schema_generator.py +281 -0
- tools/forge_studio/tenant_manager.py +387 -0
- tools/forge_studio/workflow/__init__.py +2 -0
- tools/forge_studio/workflow/bpmn_adapter.py +489 -0
- tools/govcon/draft_orchestrator.py +1151 -0
- tools/govcon/engine_enrichment.py +373 -0
- tools/govcon/knowledge_base.py +487 -0
- tools/govcon/knowledge_ingestion.py +510 -0
- tools/govcon/sam_scanner.py +754 -0
- tools/harness/__init__.py +6 -0
- tools/harness/exit_criteria_evaluator.py +231 -0
- tools/harness/maturity_assessor.py +347 -0
- tools/harness/scaffold_harness.py +416 -0
- tools/harness/trace_analyzer.py +281 -0
- tools/infra/__init__.py +1 -0
- tools/infra/ansible_generator.py +867 -0
- tools/infra/dockerfile_generator.py +359 -0
- tools/infra/infra_status.py +384 -0
- tools/infra/ironbank_metadata_generator.py +403 -0
- tools/infra/k8s_generator.py +1000 -0
- tools/infra/pipeline_generator.py +830 -0
- tools/infra/rollback.py +389 -0
- tools/infra/terraform_generator.py +1140 -0
- tools/infra/terraform_generator_azure.py +1252 -0
- tools/infra/terraform_generator_gcp.py +951 -0
- tools/infra/terraform_generator_ibm.py +359 -0
- tools/infra/terraform_generator_oci.py +918 -0
- tools/infra/terraform_generator_onprem.py +318 -0
- tools/knowledge/__init__.py +1 -0
- tools/knowledge/knowledge_ingest.py +281 -0
- tools/knowledge/pattern_detector.py +681 -0
- tools/knowledge/recommendation_engine.py +449 -0
- tools/knowledge/self_heal_analyzer.py +492 -0
- tools/knowledge_graph/__init__.py +2 -0
- tools/knowledge_graph/graph_rag.py +498 -0
- tools/knowledge_graph/ingester.py +406 -0
- tools/knowledge_graph/insight_generator.py +369 -0
- tools/knowledge_graph/text_network.py +832 -0
- tools/llm/__init__.py +72 -0
- tools/llm/anthropic_provider.py +170 -0
- tools/llm/azure_openai_provider.py +338 -0
- tools/llm/bedrock_provider.py +315 -0
- tools/llm/embedding_provider.py +438 -0
- tools/llm/gemini_provider.py +381 -0
- tools/llm/ibm_watsonx_provider.py +231 -0
- tools/llm/oci_genai_provider.py +462 -0
- tools/llm/ollama_provider.py +350 -0
- tools/llm/openai_provider.py +225 -0
- tools/llm/prompt_registry.py +447 -0
- tools/llm/provider.py +355 -0
- tools/llm/provider_sdk.py +175 -0
- tools/llm/router.py +1124 -0
- tools/llm/semantic_cache.py +394 -0
- tools/llm/vertex_ai_provider.py +374 -0
- tools/maintenance/__init__.py +2 -0
- tools/maintenance/dependency_scanner.py +1016 -0
- tools/maintenance/maintenance_auditor.py +804 -0
- tools/maintenance/remediation_engine.py +957 -0
- tools/maintenance/vulnerability_checker.py +978 -0
- tools/manifest.md +1066 -0
- tools/marketplace/asset_installer.py +639 -0
- tools/marketplace/feedback_validator.py +359 -0
- tools/marketplace/license_client.py +458 -0
- tools/marketplace/module_crypto.py +544 -0
- tools/marketplace/module_runtime.py +236 -0
- tools/marketplace/token_store.py +264 -0
- tools/mbse/__init__.py +3 -0
- tools/mbse/des_assessor.py +1173 -0
- tools/mbse/des_report_generator.py +787 -0
- tools/mbse/diagram_extractor.py +792 -0
- tools/mbse/digital_thread.py +1650 -0
- tools/mbse/model_code_generator.py +1115 -0
- tools/mbse/model_control_mapper.py +410 -0
- tools/mbse/pi_model_tracker.py +1079 -0
- tools/mbse/reqif_parser.py +1468 -0
- tools/mbse/sync_engine.py +1789 -0
- tools/mbse/thread_heatmap.py +445 -0
- tools/mbse/xmi_parser.py +1558 -0
- tools/mcp/builder_server.py +64 -0
- tools/mcp/compliance_server.py +64 -0
- tools/mcp/connector_forge_server.py +155 -0
- tools/mcp/core_server.py +64 -0
- tools/mcp/devsecops_server.py +11 -0
- tools/mcp/devsecops_zta_server.py +64 -0
- tools/mcp/knowledge_server.py +64 -0
- tools/mcp/monitor_server.py +64 -0
- tools/mcp/ops_server.py +300 -0
- tools/mcp/requirements_analyst_server.py +64 -0
- tools/mcp/requirements_server.py +11 -0
- tools/mcp/security_server.py +64 -0
- tools/mcp/simulation_server.py +64 -0
- tools/mcp/supply_chain_server.py +64 -0
- tools/mcp/tool_registry.py +299 -0
- tools/memory/__init__.py +2 -0
- tools/memory/auto_capture.py +346 -0
- tools/memory/embed_memory.py +157 -0
- tools/memory/history_compressor.py +334 -0
- tools/memory/hybrid_search.py +235 -0
- tools/memory/maintenance_cron.py +288 -0
- tools/memory/memory_consolidation.py +439 -0
- tools/memory/memory_db.py +132 -0
- tools/memory/memory_read.py +101 -0
- tools/memory/memory_write.py +221 -0
- tools/memory/semantic_search.py +138 -0
- tools/memory/time_decay.py +434 -0
- tools/missions/__init__.py +2 -0
- tools/missions/mission_engine.py +459 -0
- tools/monitor/__init__.py +1 -0
- tools/monitor/alert_correlator.py +486 -0
- tools/monitor/auto_resolver.py +603 -0
- tools/monitor/health_checker.py +507 -0
- tools/monitor/heartbeat_daemon.py +779 -0
- tools/monitor/log_analyzer.py +507 -0
- tools/monitor/metric_collector.py +484 -0
- tools/mosa/__init__.py +10 -0
- tools/mosa/icd_generator.py +358 -0
- tools/mosa/modular_design_analyzer.py +682 -0
- tools/mosa/mosa_code_enforcer.py +348 -0
- tools/mosa/tsp_generator.py +265 -0
- tools/observability/__init__.py +100 -0
- tools/observability/genai_attributes.py +88 -0
- tools/observability/instrumentation.py +140 -0
- tools/observability/mlflow_exporter.py +193 -0
- tools/observability/otel_tracer.py +168 -0
- tools/observability/provenance/__init__.py +3 -0
- tools/observability/provenance/prov_recorder.py +322 -0
- tools/observability/shap/__init__.py +3 -0
- tools/observability/shap/agent_shap.py +274 -0
- tools/observability/sqlite_tracer.py +360 -0
- tools/observability/trace_context.py +205 -0
- tools/observability/tracer.py +230 -0
- tools/orchestration/__init__.py +1 -0
- tools/orchestration/peer_channels.py +254 -0
- tools/orchestration/saga_coordinator.py +390 -0
- tools/project/__init__.py +1 -0
- tools/project/manifest_loader.py +418 -0
- tools/project/project_create.py +350 -0
- tools/project/project_list.py +171 -0
- tools/project/project_scaffold.py +1715 -0
- tools/project/project_status.py +478 -0
- tools/project/session_context_builder.py +752 -0
- tools/project/validate_manifest.py +54 -0
- tools/rag/corrective_rag.py +582 -0
- tools/rag/source_registry.py +482 -0
- tools/requirements/__init__.py +1 -0
- tools/requirements/ai_governance_scorer.py +207 -0
- tools/requirements/boundary_analyzer.py +1281 -0
- tools/requirements/clarification_engine.py +605 -0
- tools/requirements/complexity_scorer.py +369 -0
- tools/requirements/consistency_analyzer.py +789 -0
- tools/requirements/constitution_manager.py +592 -0
- tools/requirements/decomposition_engine.py +764 -0
- tools/requirements/document_extractor.py +1002 -0
- tools/requirements/elicitation_techniques.py +508 -0
- tools/requirements/gap_detector.py +260 -0
- tools/requirements/intake_engine.py +2175 -0
- tools/requirements/prd_generator.py +839 -0
- tools/requirements/prd_validator.py +584 -0
- tools/requirements/readiness_scorer.py +302 -0
- tools/requirements/spec_organizer.py +1015 -0
- tools/requirements/spec_quality_checker.py +1083 -0
- tools/requirements/traceability_builder.py +566 -0
- tools/research/__init__.py +3 -0
- tools/research/academic_scanner.py +130 -0
- tools/research/build_buy_analyzer.py +229 -0
- tools/research/challenge_scorer.py +280 -0
- tools/research/community_scanner.py +174 -0
- tools/research/cross_engine_bridge.py +124 -0
- tools/research/dossier_generator.py +305 -0
- tools/research/landscape_scanner.py +315 -0
- tools/research/regulatory_scanner.py +248 -0
- tools/research/research_manager.py +469 -0
- tools/research/source_scanner.py +150 -0
- tools/research/vertical_loader.py +118 -0
- tools/saas/__init__.py +0 -0
- tools/saas/licensing/__init__.py +0 -0
- tools/saas/licensing/license_validator.py +345 -0
- tools/scaffold/__init__.py +2 -0
- tools/scaffold/golden_path.py +504 -0
- tools/security/__init__.py +1 -0
- tools/security/agent_output_validator.py +330 -0
- tools/security/agent_trust_scorer.py +652 -0
- tools/security/ai_bom_generator.py +718 -0
- tools/security/ai_telemetry_logger.py +469 -0
- tools/security/atlas_red_team.py +541 -0
- tools/security/code_pattern_scanner.py +382 -0
- tools/security/confabulation_detector.py +265 -0
- tools/security/container_scanner.py +489 -0
- tools/security/dependency_auditor.py +942 -0
- tools/security/endpoint_security_scanner.py +626 -0
- tools/security/mcp_tool_authorizer.py +242 -0
- tools/security/output_verifier.py +427 -0
- tools/security/prompt_injection_detector.py +737 -0
- tools/security/sast_runner.py +946 -0
- tools/security/secret_detector.py +376 -0
- tools/security/threat_modeler.py +678 -0
- tools/security/tool_chain_validator.py +357 -0
- tools/security/vuln_scanner.py +536 -0
- tools/simulation/__init__.py +2 -0
- tools/simulation/ato_simulator.py +517 -0
- tools/simulation/coa_generator.py +1539 -0
- tools/simulation/monte_carlo.py +745 -0
- tools/simulation/scenario_manager.py +1060 -0
- tools/simulation/simulation_engine.py +1091 -0
- tools/simulator/__init__.py +2 -0
- tools/simulator/sim_runner.py +272 -0
- tools/supply_chain/__init__.py +2 -0
- tools/supply_chain/cve_triager.py +690 -0
- tools/supply_chain/dependency_graph.py +630 -0
- tools/supply_chain/isa_manager.py +526 -0
- tools/supply_chain/scrm_assessor.py +531 -0
- tools/supply_chain/slsa_verifier.py +473 -0
- tools/testing/__init__.py +2 -0
- tools/testing/acceptance_validator.py +411 -0
- tools/testing/api_surface_extractor.py +749 -0
- tools/testing/claude_dir_validator.py +831 -0
- tools/testing/data_types.py +199 -0
- tools/testing/e2e_runner.py +715 -0
- tools/testing/fuzz_cli.py +306 -0
- tools/testing/health_check.py +483 -0
- tools/testing/platform_check.py +143 -0
- tools/testing/production_audit.py +1836 -0
- tools/testing/production_remediate.py +803 -0
- tools/testing/screenshot_validator.py +538 -0
- tools/testing/smoke_test.py +283 -0
- tools/testing/test_agent_models.py +117 -0
- tools/testing/test_orchestrator.py +957 -0
- tools/testing/utils.py +229 -0
- tools/writeguard/__init__.py +1 -0
- tools/writeguard/main.py +1 -0
- tools/writing/__init__.py +7 -0
- tools/writing/ai_content_detector.py +316 -0
- tools/writing/analysis_engine.py +454 -0
- tools/writing/batch_analyzer.py +276 -0
- tools/writing/coherence_analyzer.py +221 -0
- tools/writing/govcon_bridge.py +509 -0
- tools/writing/grammar_checker.py +270 -0
- tools/writing/plagiarism_detector.py +106 -0
- tools/writing/readability_scorer.py +201 -0
- tools/writing/rewriter.py +96 -0
- tools/writing/signal_registrar.py +167 -0
- tools/writing/snippet_manager.py +276 -0
- tools/writing/style_enforcer.py +220 -0
- tools/writing/style_guide_manager.py +438 -0
- tools/writing/tone_profiler.py +168 -0
|
@@ -0,0 +1,1236 @@
|
|
|
1
|
+
# AI System Architecture Patterns Research Report (2024-2026)
|
|
2
|
+
## Applicable to ICDEV: Multi-Agent Compliance Automation Platform for DoD/Federal Programs
|
|
3
|
+
|
|
4
|
+
**Date:** 2026-03-08
|
|
5
|
+
**Classification:** CUI // SP-CTI
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Table of Contents
|
|
10
|
+
|
|
11
|
+
1. [Multi-Agent System (MAS) Architecture Patterns](#1-multi-agent-system-mas-architecture-patterns)
|
|
12
|
+
2. [RAG (Retrieval-Augmented Generation) Architecture](#2-rag-retrieval-augmented-generation-architecture)
|
|
13
|
+
3. [LLM Orchestration Patterns](#3-llm-orchestration-patterns)
|
|
14
|
+
4. [AI Safety & Governance Architecture](#4-ai-safety--governance-architecture)
|
|
15
|
+
5. [Edge-Cloud AI Architecture](#5-edge-cloud-ai-architecture)
|
|
16
|
+
6. [Compliance-as-Code Architecture](#6-compliance-as-code-architecture)
|
|
17
|
+
7. [Summary: Top 10 Architecture Recommendations](#summary-top-10-architecture-recommendations-for-icdev)
|
|
18
|
+
8. [Sources](#sources)
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 1. Multi-Agent System (MAS) Architecture Patterns
|
|
23
|
+
|
|
24
|
+
### 1.1 Google A2A (Agent-to-Agent) Protocol
|
|
25
|
+
|
|
26
|
+
The A2A protocol, launched by Google in April 2025 and now governed by the Linux Foundation, has become the emerging standard for inter-agent communication. It has support from 50+ technology partners including Atlassian, Salesforce, SAP, ServiceNow, and Langchain. The protocol is built on HTTP, SSE, and JSON-RPC 2.0.
|
|
27
|
+
|
|
28
|
+
**Core Capabilities:**
|
|
29
|
+
|
|
30
|
+
- **Agent Cards**: JSON descriptors published at `/.well-known/agent.json` advertising capabilities, endpoints, authentication requirements, and access policies. These are exchanged during agent handshake processes, allowing autonomous entities to negotiate collaboration terms before executing tasks.
|
|
31
|
+
- **Task Lifecycle**: Defined states (submitted, working, input-required, completed, failed) with streaming updates via Server-Sent Events.
|
|
32
|
+
- **Capability Discovery**: Agents query one another to identify which tools, actions, or processes are best suited for a request.
|
|
33
|
+
- **User Experience Negotiation**: Adapts to different UI capabilities across agents.
|
|
34
|
+
|
|
35
|
+
**V0.2 Specification Updates (Late 2025):**
|
|
36
|
+
|
|
37
|
+
- Stateless interaction mode for simpler development scenarios where session management is not needed.
|
|
38
|
+
- Standardized authentication based on an OpenAPI-like schema ensuring clear communication of authentication requirements across agents.
|
|
39
|
+
- gRPC transport support alongside HTTP for lower-latency scenarios.
|
|
40
|
+
- Security card signing for verifiable agent identity.
|
|
41
|
+
- Extended client-side support in the Python SDK.
|
|
42
|
+
|
|
43
|
+
**Governance:** In 2025, A2A was donated to the Linux Foundation as the open-source Agent2Agent project. Under Linux Foundation governance, A2A remains vendor-neutral with inclusive contributions and a focus on extensibility, security, and real-world usability across industries.
|
|
44
|
+
|
|
45
|
+
**ICDEV Applicability:** ICDEV already uses Agent Cards and JSON-RPC 2.0 over mTLS for its 12-agent architecture. The current implementation predates the formal spec. Recommended actions:
|
|
46
|
+
|
|
47
|
+
- Migrate Agent Cards from the current custom format to the standardized v0.2 JSON schema with `authentication`, `capabilities`, and `skills` fields.
|
|
48
|
+
- Add gRPC support alongside existing HTTP+mTLS for lower-latency intra-cluster communication between the Orchestrator, Builder, and Compliance agents.
|
|
49
|
+
- Implement the formal task lifecycle state machine to replace ad-hoc task status tracking in agent_tasks table.
|
|
50
|
+
- Register ICDEV agents with the Linux Foundation A2A registry for ecosystem discoverability.
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
### 1.2 Anthropic MCP (Model Context Protocol)
|
|
55
|
+
|
|
56
|
+
MCP has reached massive adoption: 97+ million monthly SDK downloads across all languages and 10,000+ production MCP servers by December 2025. The architecture draws from the Language Server Protocol (LSP), using JSON-RPC 2.0 messages over various transports (STDIO, HTTP) for stateful client-server conversations.
|
|
57
|
+
|
|
58
|
+
**November 2025 Spec Revision (Major Update):**
|
|
59
|
+
|
|
60
|
+
- **Asynchronous operations** for long-running tools.
|
|
61
|
+
- **Stateless mode** alongside the original stateful sessions.
|
|
62
|
+
- **Server identity and authentication** -- critical for enterprise and federal use cases.
|
|
63
|
+
- **Official community-driven registry** for discovering MCP servers.
|
|
64
|
+
|
|
65
|
+
**December 2025:** Anthropic donated MCP to the newly formed Agentic AI Foundation (AAIF) under the Linux Foundation.
|
|
66
|
+
|
|
67
|
+
**Critical Production Pattern -- Code Execution with MCP:** Most MCP clients load all tool definitions upfront directly into context, but agents scale significantly better by writing code to call tools instead. Code execution with MCP enables agents to use context more efficiently by:
|
|
68
|
+
|
|
69
|
+
- Loading tools on demand rather than injecting all definitions.
|
|
70
|
+
- Filtering data before it reaches the model.
|
|
71
|
+
- Executing complex logic in a single step.
|
|
72
|
+
|
|
73
|
+
**ICDEV Applicability:** ICDEV runs 12 MCP servers exposing 80+ tools. Current architecture injects all tool definitions into context. Recommended actions:
|
|
74
|
+
|
|
75
|
+
- Implement lazy tool loading in the Orchestrator -- load tool definitions on-demand based on the declared session purpose rather than injecting all 80+ tools.
|
|
76
|
+
- Add MCP server identity verification using the new spec's authentication primitives, aligning with ICDEV's IL4 security posture.
|
|
77
|
+
- Evaluate publishing ICDEV's compliance MCP servers to the AAIF registry as discoverable compliance tooling for the federal ecosystem.
|
|
78
|
+
- Adopt the async operations spec for long-running tools like Monte Carlo simulations and SBOM generation.
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
### 1.3 A2A + MCP Complementary Architecture
|
|
83
|
+
|
|
84
|
+
The industry consensus is that MCP and A2A are complementary, not competing. MCP is for capability/context injection into a single agent. A2A is for coordination between autonomous agents. The mental model: A2A handles coordination between autonomous actors, while MCP handles capability/context injection into a single actor.
|
|
85
|
+
|
|
86
|
+
**Architecture Diagram (C4 Context Level):**
|
|
87
|
+
|
|
88
|
+
```
|
|
89
|
+
System Context: ICDEV Multi-Agent Platform
|
|
90
|
+
|
|
91
|
+
[External User / Operator]
|
|
92
|
+
|
|
|
93
|
+
v
|
|
94
|
+
[ICDEV Orchestrator Agent (Port 9443)]
|
|
95
|
+
|
|
|
96
|
+
|-- A2A Protocol (JSON-RPC 2.0, mTLS, Agent Cards) -->
|
|
97
|
+
| |
|
|
98
|
+
| |-- [Compliance Agent (9446)]
|
|
99
|
+
| | |-- MCP (stdio) --> ssp_generate, stig_check, sbom_generate,
|
|
100
|
+
| | | control_map, nist_lookup, cui_mark, crosswalk
|
|
101
|
+
| |
|
|
102
|
+
| |-- [Security Agent (9447)]
|
|
103
|
+
| | |-- MCP (stdio) --> sast_scan, dep_audit, secret_detect,
|
|
104
|
+
| | | container_scan, prompt_injection_detect
|
|
105
|
+
| |
|
|
106
|
+
| |-- [Builder Agent (9445)]
|
|
107
|
+
| | |-- MCP (stdio) --> scaffold, generate_code, write_tests,
|
|
108
|
+
| | | run_tests, lint, format
|
|
109
|
+
| |
|
|
110
|
+
| |-- [Requirements Agent (9453)]
|
|
111
|
+
| | |-- MCP (stdio) --> create_intake, process_turn, detect_gaps,
|
|
112
|
+
| | | score_readiness, decompose_requirements
|
|
113
|
+
| |
|
|
114
|
+
| |-- [Architect Agent (9444)]
|
|
115
|
+
| | |-- MCP (stdio) --> design_system, decompose, interface_contract
|
|
116
|
+
| |
|
|
117
|
+
| |-- [Devsecops_ZTA Agent (9457)]
|
|
118
|
+
| | |-- MCP (stdio) --> zta_maturity_score, pipeline_security_generate,
|
|
119
|
+
| | | policy_generate, service_mesh_generate
|
|
120
|
+
| |
|
|
121
|
+
| |-- [Simulation Agent (9455)]
|
|
122
|
+
| | |-- MCP (stdio) --> create_scenario, run_simulation,
|
|
123
|
+
| | | run_monte_carlo, generate_coas
|
|
124
|
+
| |
|
|
125
|
+
| |-- [Supply Chain Agent (9454)]
|
|
126
|
+
| | |-- MCP (stdio) --> build_dependency_graph, assess_scrm,
|
|
127
|
+
| | | triage_cve, manage_isa
|
|
128
|
+
| |
|
|
129
|
+
| |-- [Connector Forge Agent (9458)]
|
|
130
|
+
| | |-- MCP (stdio) --> forge_from_spec, forge_validate,
|
|
131
|
+
| | | forge_promote, forge_publish
|
|
132
|
+
| |
|
|
133
|
+
| |-- [Knowledge Agent (9449)]
|
|
134
|
+
| | |-- MCP (stdio) --> search_knowledge, add_pattern,
|
|
135
|
+
| | | get_recommendations, self_heal
|
|
136
|
+
| |
|
|
137
|
+
| |-- [Monitor Agent (9450)]
|
|
138
|
+
| |-- MCP (stdio) --> log_analyze, health_check,
|
|
139
|
+
| metrics_query, alert_manage
|
|
140
|
+
|
|
|
141
|
+
|-- A2A Protocol --> [Ops MCP Server (18 tools)]
|
|
142
|
+
|-- runbook_list, runbook_execute, metastore_list_apps,
|
|
143
|
+
| metastore_dependencies, ops_query_zones, ops_query_siem, ...
|
|
144
|
+
|
|
145
|
+
External Systems:
|
|
146
|
+
[AWS GovCloud (us-gov-west-1)] <-- Bedrock, SageMaker, S3
|
|
147
|
+
[PostgreSQL (Supabase)] <-- Primary DB backend
|
|
148
|
+
[Ollama (Local)] <-- qwen3.5, phi4-reasoning, llava:13b
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
### 1.4 Agent Topology Patterns
|
|
154
|
+
|
|
155
|
+
Research from 2025 identifies three dominant patterns with a strong trend toward hybridization.
|
|
156
|
+
|
|
157
|
+
**Supervisor/Orchestrator Pattern (ICDEV's current architecture):**
|
|
158
|
+
|
|
159
|
+
- A central "boss" agent delegates to "worker" agents with private workspaces. Only final outputs are shared upward.
|
|
160
|
+
- The Supervisor owns orchestration logic, decides agent order, allocates information budgets, and synthesizes partial results.
|
|
161
|
+
- Strengths: Clear control flow, deterministic routing, complete audit trail, straightforward debugging.
|
|
162
|
+
- Weaknesses: Single point of failure, bottleneck at high fan-out, every sub-agent reports through the same chain.
|
|
163
|
+
|
|
164
|
+
**Swarm/Decentralized Pattern:**
|
|
165
|
+
|
|
166
|
+
- Each agent runs its own sense-decide-act loop. Communication is local. Global behavior emerges from repeated local updates across the swarm.
|
|
167
|
+
- Decentralized control allows large populations. Failure of some agents degrades performance gradually instead of collapsing the system.
|
|
168
|
+
- Agents influence each other by sharing partial results, proposing next steps, or negotiating responsibilities.
|
|
169
|
+
- Requires strong convergence mechanisms and clear rules about shared state and termination.
|
|
170
|
+
- Strengths: Fault tolerance, scalability, resilience.
|
|
171
|
+
- Weaknesses: Harder to audit, convergence not guaranteed, difficult to reason about emergent behavior.
|
|
172
|
+
|
|
173
|
+
**Hierarchical/Layered Pattern:**
|
|
174
|
+
|
|
175
|
+
- Three canonical layers: Strategy (leader/orchestrator), Planning (subtask decomposition), Execution (specialized workers).
|
|
176
|
+
- Static hierarchies simplify mental models but struggle as task complexity and agent quantity grow.
|
|
177
|
+
- The Puppeteer framework (Dang et al., 2025) uses reinforcement-learned orchestration to dynamically decide which agent to invoke next and can skip branches that add little value -- departing from static tree structures.
|
|
178
|
+
|
|
179
|
+
**Hybrid Trend (2025-2026):**
|
|
180
|
+
|
|
181
|
+
Sun et al. (2025) identify "hybridization of hierarchical and decentralized mechanisms" as the crucial strategy for scalability while maintaining adaptability. Production systems increasingly combine patterns: hierarchical control within each agent group, coordinated through a swarm layer across groups.
|
|
182
|
+
|
|
183
|
+
**ICDEV Applicability:** The current supervisor pattern is correct for compliance workloads where audit trail and determinism are required (NIST AU controls). Recommended hybrid extension:
|
|
184
|
+
|
|
185
|
+
- Keep the Orchestrator as supervisor for compliance/security workflows (audit trail mandatory).
|
|
186
|
+
- Add a swarm coordination layer for simulation and analytics agents (Monte Carlo, DORA metrics, scorecard computation) where parallel independent execution is natural and graceful degradation is acceptable.
|
|
187
|
+
- Implement Puppeteer-style dynamic branch skipping in the ATLAS workflow -- avoid running all 5 phases when only specific phases are needed (e.g., skip Architect phase for minor code changes that only need Assemble + Stress_test).
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
### 1.5 LangGraph State Machine Patterns
|
|
192
|
+
|
|
193
|
+
LangGraph models agent workflows as state machine graphs where nodes are processing steps and edges define control flow. It is battle-tested by companies including Uber, LinkedIn, and Klarna.
|
|
194
|
+
|
|
195
|
+
**Core Architectural Concepts:**
|
|
196
|
+
|
|
197
|
+
- **Directed graph**: Nodes are processing functions, edges define transitions. Supports cycles (iterative loops), conditional routing, and parallel branches.
|
|
198
|
+
- **Centralized state**: A shared state object accessible to all nodes for reading and updating. State is first-class, not an afterthought.
|
|
199
|
+
- **Conditional branching**: Edges evaluate current state to determine next node. Enables dynamic workflow routing based on intermediate results.
|
|
200
|
+
- **Persistent checkpointing**: State is serialized at each node, enabling time-travel debugging, workflow resumption after interruption, and rollback to prior states with adjusted parameters.
|
|
201
|
+
- **Parallel execution**: Independent nodes run simultaneously. LangGraph ensures synchronization so downstream nodes wait until all parallel branches complete.
|
|
202
|
+
|
|
203
|
+
**Workflow Patterns:**
|
|
204
|
+
|
|
205
|
+
- Sequential: Linear A -> B -> C pipelines.
|
|
206
|
+
- Fan-out/Fan-in: Parallel execution with synchronization barrier.
|
|
207
|
+
- Cyclic: Iterative refinement loops (agent retries until quality threshold met).
|
|
208
|
+
- Conditional: Route to different subgraphs based on classification or state evaluation.
|
|
209
|
+
- Human-in-the-loop: Pause execution at designated nodes, wait for human input, resume.
|
|
210
|
+
|
|
211
|
+
**ICDEV Applicability:** ICDEV's ATLAS workflow and TDD cycle are natural state machine candidates:
|
|
212
|
+
|
|
213
|
+
- Model ATLAS phases (M-Model -> Architect -> Trace -> Link -> Assemble -> Stress_test) as explicit state graph nodes with conditional edges (skip M-Model if no SysML/ReqIF files detected).
|
|
214
|
+
- Add persistent checkpointing at each ATLAS phase boundary for workflow resumability -- currently sessions break if interrupted mid-workflow.
|
|
215
|
+
- Model TDD as a cyclic graph: RED (write failing test) -> GREEN (make test pass) -> REFACTOR (clean up) -> evaluate (more tests needed?) -> RED or DONE.
|
|
216
|
+
- Enable parallel branches within Assemble phase: unit tests, BDD tests, SAST scans, and dependency audits can run concurrently with a synchronization barrier before Stress_test.
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
### 1.6 Microsoft AutoGen and CrewAI Patterns
|
|
221
|
+
|
|
222
|
+
**AutoGen (now Microsoft Agent Framework):**
|
|
223
|
+
|
|
224
|
+
- Treats complex workflows as dialogues among multiple agents. Each agent can send and receive messages to drive tasks forward.
|
|
225
|
+
- Supports sequential (linear), concurrent (parallel), and conversational (open-ended dialogue) patterns.
|
|
226
|
+
- In October 2025, Microsoft merged AutoGen with Semantic Kernel into a unified Microsoft Agent Framework, with general availability targeting Q1 2026 with production SLAs, multi-language support (C#, Python, Java), and deep Azure integration.
|
|
227
|
+
|
|
228
|
+
**CrewAI:**
|
|
229
|
+
|
|
230
|
+
- Role-based model inspired by organizational structures. Each agent has a clearly defined responsibility.
|
|
231
|
+
- Excels at linear or parallel task execution with role-based agents.
|
|
232
|
+
- Best for production workflows with clear role specialization.
|
|
233
|
+
|
|
234
|
+
**Selection Guidance for ICDEV:**
|
|
235
|
+
|
|
236
|
+
- ICDEV's architecture most closely resembles the supervisor/orchestrator model. LangGraph's state machine approach would add formal workflow modeling.
|
|
237
|
+
- CrewAI's role-based model maps well to ICDEV's domain-specific agents (Compliance, Security, Builder each have clear roles).
|
|
238
|
+
- AutoGen's conversational pattern is relevant for RICOAS requirements intake sessions where multi-turn dialogue drives requirements elicitation.
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
## 2. RAG (Retrieval-Augmented Generation) Architecture
|
|
243
|
+
|
|
244
|
+
### 2.1 Advanced RAG Patterns
|
|
245
|
+
|
|
246
|
+
Three patterns have matured beyond research into production readiness in 2025-2026:
|
|
247
|
+
|
|
248
|
+
**Corrective RAG (CRAG):**
|
|
249
|
+
|
|
250
|
+
- Adds a lightweight retrieval evaluator that assesses the quality of retrieved documents before generation.
|
|
251
|
+
- Three corrective paths: (1) use documents as-is if high confidence, (2) refine query and re-retrieve if ambiguous, (3) fall back to web/broader search if documents are irrelevant.
|
|
252
|
+
- The evaluator enables the system to adaptively respond to incorrect, ambiguous, or irrelevant information, ensuring generated content is more accurate and reliable.
|
|
253
|
+
- Reduces hallucination by 30-40% in benchmarks.
|
|
254
|
+
|
|
255
|
+
**Self-RAG:**
|
|
256
|
+
|
|
257
|
+
- The model generates "reflection tokens" that dynamically determine: (a) whether external retrieval is needed, (b) whether retrieved content is relevant, (c) whether the generated response is faithful to the sources.
|
|
258
|
+
- Evaluation is baked into the model through special tokens, not applied as a separate post-processing step.
|
|
259
|
+
- RAG-EVO (EPIA 2025) extended Self-RAG with evolutionary learning and persistent vector memory, achieving 92.6% composite accuracy against Self-RAG, HyDE, and ReAct baselines.
|
|
260
|
+
|
|
261
|
+
**Adaptive RAG:**
|
|
262
|
+
|
|
263
|
+
- A trained classifier (originally T5-large in Jeong et al., 2024) routes queries into three complexity tiers:
|
|
264
|
+
- Simple: Direct retrieval from knowledge base.
|
|
265
|
+
- Moderate: Query decomposition into sub-queries, each retrieved independently.
|
|
266
|
+
- Complex: Multi-hop reasoning with parametric knowledge augmentation.
|
|
267
|
+
- By 2026, this router pattern is considered "table stakes" -- every production RAG system should have query routing.
|
|
268
|
+
|
|
269
|
+
**A-RAG Framework (February 2026, arXiv:2602.03442):**
|
|
270
|
+
|
|
271
|
+
- Exposes keyword, semantic, and chunk-level retrieval as agent tools directly accessible to the LLM.
|
|
272
|
+
- The agent selects which retrieval strategy to use per query.
|
|
273
|
+
- Improves QA accuracy by 5-13% over flat retrieval approaches.
|
|
274
|
+
|
|
275
|
+
**Agentic RAG (2025 trend):**
|
|
276
|
+
|
|
277
|
+
- The LLM acts as an agent that can plan retrieval strategies, evaluate results, and iterate.
|
|
278
|
+
- Combines tool use (retrieval as a tool) with self-reflection (evaluate retrieval quality) and planning (multi-step retrieval strategies).
|
|
279
|
+
- Self-correcting: if initial retrieval fails, the agent reformulates queries, tries different sources, or synthesizes from partial results.
|
|
280
|
+
|
|
281
|
+
**ICDEV Applicability:** ICDEV already implements hybrid search (0.7 * BM25 + 0.3 * semantic) via `tools/memory/hybrid_search.py`. The next evolution:
|
|
282
|
+
|
|
283
|
+
- Implement Corrective RAG for compliance document retrieval -- add an evaluator that checks if retrieved NIST controls actually match query intent before generating SSP narratives. This is critical because control numbering (e.g., AC-2 vs AC-2(1)) can lead to subtly wrong retrievals.
|
|
284
|
+
- Add Adaptive RAG routing in the RAG pipeline: simple control lookups go direct, cross-framework queries use decomposition (break "What does implementing AC-2 require across FedRAMP and CMMC?" into sub-queries per framework), novel compliance questions use multi-hop with crosswalk engine.
|
|
285
|
+
- Expose retrieval strategies as tools (A-RAG pattern) so the LLM router can select the optimal strategy per query rather than always running the same hybrid search.
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
### 2.2 GraphRAG for Compliance Knowledge
|
|
290
|
+
|
|
291
|
+
GraphRAG combines knowledge graph traversal with vector retrieval, providing both semantic understanding via vector similarity and symbolic reasoning via graph structure.
|
|
292
|
+
|
|
293
|
+
**Architecture:**
|
|
294
|
+
|
|
295
|
+
- A vector index and a graph database work in tandem. The vector index retrieves relevant text passages. The graph database retrieves structured facts and relationships. Both feed into the LLM's context window.
|
|
296
|
+
- The knowledge graph can act as a direct context source and/or annotate and filter text fragments for retrieval.
|
|
297
|
+
|
|
298
|
+
**Construction Approaches:**
|
|
299
|
+
|
|
300
|
+
- **Top-Down**: Define ontology first (entities, relationship types, constraints), then extract from documents into the ontology. Best for structured domains like compliance frameworks where the schema is well-known.
|
|
301
|
+
- **Bottom-Up**: Extract entities and relations from documents using NER and RE, then cluster into topic communities. Best for unstructured content.
|
|
302
|
+
- **Hybrid**: Combine both. Use top-down for the compliance framework structure, bottom-up for evidence documents.
|
|
303
|
+
|
|
304
|
+
**Key Implementations (2025):**
|
|
305
|
+
|
|
306
|
+
- **Microsoft GraphRAG**: Open-source, uses community detection to create hierarchical summaries of document corpora.
|
|
307
|
+
- **Graphiti (Zep AI)**: Framework for AI agents needing real-time, evolving memory. Updates knowledge graphs incrementally as new information arrives. Uses Neo4j for storage. Suited for long-running agents.
|
|
308
|
+
- **AWS Bedrock Knowledge Bases**: Supports GraphRAG with managed ingestion into Neptune.
|
|
309
|
+
- **Azure Cognitive Search**: Integrates with graph databases.
|
|
310
|
+
|
|
311
|
+
**ICDEV Applicability:** ICDEV's crosswalk engine (mapping NIST 800-53 -> FedRAMP -> CMMC -> 800-171 -> CISA SbD) is conceptually a knowledge graph stored as SQL adjacency lists (D27). The digital thread (requirements -> design -> code -> tests -> evidence) is another natural graph.
|
|
312
|
+
|
|
313
|
+
Recommended actions:
|
|
314
|
+
|
|
315
|
+
- Model the control crosswalk as a formal knowledge graph with typed relationships: `implements`, `inherits`, `partially_satisfies`, `supersedes`, `maps_to`. This enables transitive queries that SQL joins handle poorly (e.g., "What CMMC practices are transitively satisfied by implementing AC-2 through the FedRAMP inheritance chain?").
|
|
316
|
+
- Use GraphRAG for compliance queries where relationship traversal matters more than text similarity.
|
|
317
|
+
- Adopt the Graphiti pattern for the cATO Live Engine -- incrementally update the compliance knowledge graph as new evidence arrives rather than rebuilding from scratch.
|
|
318
|
+
- The digital thread heatmap (`thread_heatmap.py`) would benefit from graph-based orphan detection instead of the current N x M matrix approach.
|
|
319
|
+
|
|
320
|
+
---
|
|
321
|
+
|
|
322
|
+
### 2.3 Chunking Strategies for Compliance Documents
|
|
323
|
+
|
|
324
|
+
Research shows dramatic variation in chunking effectiveness depending on strategy:
|
|
325
|
+
|
|
326
|
+
**Benchmarks (2025-2026):**
|
|
327
|
+
|
|
328
|
+
- **Adaptive chunking** aligned to logical topic boundaries: 87% accuracy vs 13% for fixed-size baselines (clinical decision support study, November 2025).
|
|
329
|
+
- **Recursive 512-token splitting**: 69% accuracy in academic benchmarks (Vecta, February 2026, across 50 papers and 7 strategies).
|
|
330
|
+
- **Semantic chunking**: Only 54% accuracy due to producing fragments averaging 43 tokens -- too small to carry sufficient context.
|
|
331
|
+
|
|
332
|
+
**Emerging Best Practices:**
|
|
333
|
+
|
|
334
|
+
- **Section-aware chunking**: Split on document headings, sections, and subsections rather than token counts. Compliance documents (SSPs, STIGs, NIST SPs) have well-defined section structures.
|
|
335
|
+
- **Parent-child chunk relationships**: Maintain hierarchy so a retrieved chunk can pull its parent section for additional context when needed.
|
|
336
|
+
- **Proposition-based chunking**: Decompose text into atomic propositions (single facts), then group related propositions. Good for dense regulatory text.
|
|
337
|
+
- **Domain-specific strategies**: Legal documents split by headings and subsections. Medical literature by sentence boundaries or key concepts. Compliance documents should split by control family, individual control, and implementation statement.
|
|
338
|
+
|
|
339
|
+
**ICDEV Applicability:** For compliance documents (SSPs, STIGs, NIST 800-53, FedRAMP baselines):
|
|
340
|
+
|
|
341
|
+
- Implement section-aware chunking that splits on control boundaries. Each NIST 800-53 control has a well-defined structure (title, description, supplemental guidance, control enhancements) that should be preserved as a single chunk.
|
|
342
|
+
- Maintain parent-child relationships: control family -> control -> enhancement. When AC-2(1) is retrieved, the parent AC-2 context should be available.
|
|
343
|
+
- For OSCAL documents, chunk at the control/assessment-result level since these are natural semantic units with defined XML/JSON structure.
|
|
344
|
+
- Avoid semantic chunking for compliance content -- the short fragment problem (43-token average) destroys compliance context.
|
|
345
|
+
|
|
346
|
+
---
|
|
347
|
+
|
|
348
|
+
### 2.4 RAG Evaluation with RAGAS
|
|
349
|
+
|
|
350
|
+
RAGAS (Retrieval Augmented Generation Assessment) provides reference-free evaluation of RAG pipelines.
|
|
351
|
+
|
|
352
|
+
**Core Metrics:**
|
|
353
|
+
|
|
354
|
+
- **Context Relevancy**: Are the retrieved documents relevant to the query?
|
|
355
|
+
- **Context Recall**: Did retrieval capture all necessary information?
|
|
356
|
+
- **Faithfulness**: Is the generated response supported by the retrieved context (no hallucination)?
|
|
357
|
+
- **Answer Relevancy**: Does the response actually answer the question asked?
|
|
358
|
+
|
|
359
|
+
These four metrics compose into a single RAGAs score.
|
|
360
|
+
|
|
361
|
+
**Architecture:** The RAGAS framework follows a modular design: Document Processing -> Knowledge Graph Engine -> Transformation Pipeline -> Query Synthesis Engine -> Evaluation Metrics Engine.
|
|
362
|
+
|
|
363
|
+
**ICDEV Applicability:**
|
|
364
|
+
|
|
365
|
+
- Implement RAGAS evaluation as a quality gate in the compliance narrative workflow (`tools/compliance/narrative_workflow.py`). After generating an AI narrative for a control, score faithfulness against the source NIST control text before entering the approval queue. This adds quantitative quality assurance to the existing draft -> pending_review -> approved/rejected workflow.
|
|
366
|
+
- Use context_relevancy scoring to validate that the hybrid search (BM25 + semantic) is retrieving the correct controls before narrative generation.
|
|
367
|
+
- Track RAGAs scores over time per control family to identify which compliance areas have the weakest retrieval quality and need chunking or embedding improvements.
|
|
368
|
+
|
|
369
|
+
---
|
|
370
|
+
|
|
371
|
+
### 2.5 Embedding Model Selection
|
|
372
|
+
|
|
373
|
+
Key considerations for embedding model selection in compliance/federal contexts:
|
|
374
|
+
|
|
375
|
+
- **Accuracy**: The embedding model must accurately represent compliance domain concepts. General-purpose embeddings may conflate similar but legally distinct terms (e.g., "authorization" vs "authentication" have very different compliance implications).
|
|
376
|
+
- **Dimensionality vs. performance**: Higher dimensions capture more nuance but increase storage and search cost. ICDEV uses text-embedding-3-small (1536 dims) which is a reasonable balance.
|
|
377
|
+
- **Fine-tuning**: Domain-specific fine-tuning on compliance corpora can significantly improve retrieval quality for specialized vocabularies.
|
|
378
|
+
- **Air-gap considerations**: For IL4+ environments, embedding models must be deployable locally. ICDEV's Ollama-based architecture supports this.
|
|
379
|
+
|
|
380
|
+
**ICDEV Applicability:**
|
|
381
|
+
|
|
382
|
+
- Evaluate fine-tuning text-embedding-3-small on a corpus of NIST 800-53 controls, FedRAMP SSP language, and STIG content to improve retrieval precision for compliance-specific queries.
|
|
383
|
+
- Consider adding a second embedding model optimized for code (for digital thread code-to-requirement tracing) alongside the compliance-optimized model.
|
|
384
|
+
|
|
385
|
+
---
|
|
386
|
+
|
|
387
|
+
## 3. LLM Orchestration Patterns
|
|
388
|
+
|
|
389
|
+
### 3.1 Router Patterns
|
|
390
|
+
|
|
391
|
+
ICDEV's 4-tier routing architecture (Planner -> Worker -> Scanner -> Default) is well-validated by industry patterns:
|
|
392
|
+
|
|
393
|
+
**Industry Router Patterns:**
|
|
394
|
+
|
|
395
|
+
- **Complexity-based routing**: Route simple queries to small/fast models, complex queries to capable models. ICDEV already does this with its tier system.
|
|
396
|
+
- **Budget-aware routing**: Track token spend per request type. Dynamically downgrade model tier when approaching budget limits. One implementation achieved 47% cost reduction while maintaining quality.
|
|
397
|
+
- **Health-aware routing**: Probe model availability before routing, fall back to alternatives on failure. ICDEV's router already implements this with the fallback chain (qwen3.5 -> phi4-reasoning -> claude-sonnet).
|
|
398
|
+
- **Quality-aware routing**: Route based on required output quality. Compliance narratives need high quality (Claude). Log summaries need speed (qwen3.5).
|
|
399
|
+
- **Latency-aware routing**: For real-time interactions, route to fastest available model regardless of capability.
|
|
400
|
+
|
|
401
|
+
**ICDEV Applicability:** Add budget-aware routing as a fifth routing dimension:
|
|
402
|
+
|
|
403
|
+
- Track cumulative token spend per project and per session in the audit trail (aligns with NIST AU-3).
|
|
404
|
+
- Define per-project token budgets in `args/llm_config.yaml`.
|
|
405
|
+
- When a project approaches its budget ceiling, automatically shift Worker-tier tasks to Scanner-tier (qwen3.5-only) and reduce Planner-tier usage.
|
|
406
|
+
- Emit budget utilization metrics to the Monitor agent for alerting.
|
|
407
|
+
|
|
408
|
+
---
|
|
409
|
+
|
|
410
|
+
### 3.2 Semantic Caching
|
|
411
|
+
|
|
412
|
+
Multi-tier caching has become the 2025 standard for LLM cost optimization:
|
|
413
|
+
|
|
414
|
+
**Tier 1 -- Exact Match Cache:**
|
|
415
|
+
|
|
416
|
+
- Sub-millisecond latency.
|
|
417
|
+
- Handles identical queries (same prompt, same parameters).
|
|
418
|
+
- Simple hash-based lookup.
|
|
419
|
+
- Effective for repetitive operations like control lookups.
|
|
420
|
+
|
|
421
|
+
**Tier 2 -- Semantic Cache:**
|
|
422
|
+
|
|
423
|
+
- Converts queries to vector embeddings.
|
|
424
|
+
- Searches for semantically similar cached queries using vector search.
|
|
425
|
+
- Returns cached responses if similarity exceeds a configurable threshold.
|
|
426
|
+
- Redis LangCache achieves up to 73% cost reduction in high-repetition workloads.
|
|
427
|
+
- Cache hits return in milliseconds versus seconds for fresh LLM inference.
|
|
428
|
+
|
|
429
|
+
**Tier 3 -- Session Context Cache:**
|
|
430
|
+
|
|
431
|
+
- Maintains conversation state efficiently.
|
|
432
|
+
- Avoids re-sending full conversation history on each turn.
|
|
433
|
+
- Reduces token consumption for multi-turn interactions.
|
|
434
|
+
|
|
435
|
+
**Production Results:**
|
|
436
|
+
|
|
437
|
+
- Organizations report 40-60% cost reductions with systematic caching.
|
|
438
|
+
- One implementation achieved 47% LLM spend reduction using semantic cache + budget-aware routing while keeping quality flat.
|
|
439
|
+
- 15-30% cost reductions are typical even with conservative caching strategies.
|
|
440
|
+
|
|
441
|
+
**ICDEV Applicability:** Implement semantic caching in `tools/llm/router.py`:
|
|
442
|
+
|
|
443
|
+
- Cache compliance lookups (NIST control queries, crosswalk results) -- these are the most repetitive queries in the system. The same AC-2 control description is retrieved dozens of times across projects.
|
|
444
|
+
- Use ICDEV's existing embedding infrastructure (text-embedding-3-small, already generating embeddings for memory entries) to embed cache keys.
|
|
445
|
+
- Store cache entries in a dedicated database table with TTL: 30 days for compliance data (controls rarely change), 7 days for code analysis results, 1 day for dynamic content.
|
|
446
|
+
- Expected impact: 40-60% token reduction for compliance workloads.
|
|
447
|
+
- Implementation note: Cache invalidation on NIST SP updates or framework version changes must clear affected entries.
|
|
448
|
+
|
|
449
|
+
---
|
|
450
|
+
|
|
451
|
+
### 3.3 Prompt Versioning and A/B Testing
|
|
452
|
+
|
|
453
|
+
Production prompt management in 2025 requires infrastructure that treats prompts as first-class artifacts:
|
|
454
|
+
|
|
455
|
+
**Core Requirements:**
|
|
456
|
+
|
|
457
|
+
- **Version storage with atomic updates**: Every prompt change is versioned. Rollback is instant.
|
|
458
|
+
- **Environment separation**: dev, staging, prod environments with promotion gates.
|
|
459
|
+
- **A/B testing infrastructure**: Compare prompt versions on real traffic with quality scoring. Route percentages of traffic to candidate prompts.
|
|
460
|
+
- **Performance tracking**: Latency, cost, token usage, and evaluation metrics per prompt version.
|
|
461
|
+
- **Collaborative editing**: Product managers and engineers iterate together on prompts.
|
|
462
|
+
|
|
463
|
+
**Key Insight:** The non-deterministic nature of LLMs makes prompt versioning fundamentally different from code versioning. You cannot run unit tests and be confident of identical output. You need statistical evaluation across many samples.
|
|
464
|
+
|
|
465
|
+
**A/B Testing Variables:**
|
|
466
|
+
|
|
467
|
+
- System instruction content.
|
|
468
|
+
- Context window composition (RAG retrieval strategy).
|
|
469
|
+
- Model parameters (temperature, top-p).
|
|
470
|
+
- Model selection (different models for same prompt).
|
|
471
|
+
|
|
472
|
+
**Leading Platforms (2025):**
|
|
473
|
+
|
|
474
|
+
- **PromptLayer**: Visual prompt management with registry-based approach. Edit, A/B test, and deploy prompts through dashboard without code changes.
|
|
475
|
+
- **Langfuse**: Observability-first. Labels prompt versions (prod-a, prod-b) with automatic performance metric tracking.
|
|
476
|
+
- **Braintrust**: Development infrastructure connecting versioning to evaluation with staged deployment.
|
|
477
|
+
|
|
478
|
+
**ICDEV Applicability:** ICDEV's `hardprompts/` directory contains reusable LLM instruction templates but lacks versioning:
|
|
479
|
+
|
|
480
|
+
- Add SHA-256 content hashing to hard prompts (mirrors D-INV-5 template provenance pattern).
|
|
481
|
+
- Store prompt versions in the database with performance metrics (faithfulness score, cost, latency, user acceptance rate).
|
|
482
|
+
- Implement A/B testing for compliance narrative prompts: route 10% of narrative generation to a candidate prompt, compare RAGAS faithfulness scores against the production prompt, promote if statistically significant improvement.
|
|
483
|
+
- Track prompt lineage in the audit trail for NIST AU compliance.
|
|
484
|
+
|
|
485
|
+
---
|
|
486
|
+
|
|
487
|
+
### 3.4 Fallback Chains with Health Checking
|
|
488
|
+
|
|
489
|
+
ICDEV's existing fallback chain (qwen3.5 -> phi4-reasoning -> claude-sonnet) follows industry best practices:
|
|
490
|
+
|
|
491
|
+
**Pattern Elements:**
|
|
492
|
+
|
|
493
|
+
- **Availability probing**: Check model health before routing. ICDEV's router already probes Ollama availability.
|
|
494
|
+
- **Graceful degradation**: If preferred model is unavailable, fall back to next-best rather than failing.
|
|
495
|
+
- **Circuit breaker**: After N consecutive failures, temporarily remove a model from the chain and retry periodically.
|
|
496
|
+
- **Latency budgets**: If a model exceeds its latency SLA, treat as unavailable and fall back.
|
|
497
|
+
|
|
498
|
+
**ICDEV Enhancement:** Add circuit breaker logic to the router. Currently, if Ollama is down, every request attempts Ollama before falling back, adding unnecessary latency. A circuit breaker would skip Ollama for 60 seconds after 3 consecutive failures, then probe again.
|
|
499
|
+
|
|
500
|
+
---
|
|
501
|
+
|
|
502
|
+
### 3.5 GovCloud Cost Optimization
|
|
503
|
+
|
|
504
|
+
**AWS Bedrock in GovCloud (2025-2026):**
|
|
505
|
+
|
|
506
|
+
- Anthropic Claude and Meta Llama models now have **FedRAMP High and DoD IL-4/5 authorization** in AWS GovCloud (us-gov-west-1) -- the first cloud provider to achieve this.
|
|
507
|
+
- Amazon invested $50B in government-only AI cloud infrastructure.
|
|
508
|
+
- New data centers breaking ground in 2026 will add 1.3 GW of AI compute capacity across Top Secret, Secret, and GovCloud regions.
|
|
509
|
+
|
|
510
|
+
**Pricing Tiers:**
|
|
511
|
+
|
|
512
|
+
- Standard: Pay-per-use, highest per-token cost.
|
|
513
|
+
- Flex: Lower cost for flexible scheduling.
|
|
514
|
+
- Priority: Guaranteed throughput.
|
|
515
|
+
- Reserved: Committed usage with significant discount.
|
|
516
|
+
|
|
517
|
+
**Cost Optimization Strategies for Federal:**
|
|
518
|
+
|
|
519
|
+
- **Reserved pricing** for predictable Bedrock Claude usage (ICDEV's tier2 model).
|
|
520
|
+
- **Maximize local Ollama** for Scanner-tier work -- zero cloud cost for qwen3.5, phi4-reasoning, llava:13b workloads.
|
|
521
|
+
- **Token budget management** per project aligned to DoD budget cycles.
|
|
522
|
+
- **Cost allocation tags** (AWS Flexible Cost Allocation, announced January 2026 for GovCloud) to track AI spend per program/contract.
|
|
523
|
+
|
|
524
|
+
**ICDEV Applicability:**
|
|
525
|
+
|
|
526
|
+
- Validate that Scanner-tier routing is being fully utilized -- every query that can run on qwen3.5 locally should never reach Bedrock.
|
|
527
|
+
- Use Reserved pricing for Bedrock Claude if monthly usage exceeds the break-even threshold.
|
|
528
|
+
- Implement per-agent token consumption monitoring to identify which agents drive the most cloud LLM cost (likely Compliance and Requirements agents due to narrative generation and intake sessions).
|
|
529
|
+
- Leverage AWS Flexible Cost Allocation tags to attribute AI costs to specific DoD programs/contracts.
|
|
530
|
+
|
|
531
|
+
---
|
|
532
|
+
|
|
533
|
+
## 4. AI Safety & Governance Architecture
|
|
534
|
+
|
|
535
|
+
### 4.1 NIST AI RMF Implementation Patterns
|
|
536
|
+
|
|
537
|
+
The NIST AI Risk Management Framework (AI RMF 1.0) defines four interconnected functions designed to be implemented iteratively throughout an AI system's lifecycle:
|
|
538
|
+
|
|
539
|
+
**GOVERN:**
|
|
540
|
+
|
|
541
|
+
- Establish governance structures, policies, roles, and responsibilities for AI risk management.
|
|
542
|
+
- Define organizational risk tolerance and acceptable AI use policies.
|
|
543
|
+
- Ensure accountability mechanisms and oversight processes.
|
|
544
|
+
|
|
545
|
+
**MAP:**
|
|
546
|
+
|
|
547
|
+
- Identify system context: purpose, stakeholders, deployment environment.
|
|
548
|
+
- Catalog data sources, dependencies, and third-party components.
|
|
549
|
+
- Assess potential impacts and affected populations.
|
|
550
|
+
- Map AI system capabilities and limitations.
|
|
551
|
+
|
|
552
|
+
**MEASURE:**
|
|
553
|
+
|
|
554
|
+
- Monitor performance, trustworthiness, risks, and outcomes continuously.
|
|
555
|
+
- Implement metrics for fairness, accuracy, robustness, and transparency.
|
|
556
|
+
- Track model drift and degradation over time.
|
|
557
|
+
- Conduct adversarial testing and red teaming.
|
|
558
|
+
|
|
559
|
+
**MANAGE:**
|
|
560
|
+
|
|
561
|
+
- Prioritize, mitigate, and continuously monitor AI risks.
|
|
562
|
+
- Manage third-party and supply chain risks.
|
|
563
|
+
- Implement incident response procedures.
|
|
564
|
+
- Maintain documentation and audit trails.
|
|
565
|
+
|
|
566
|
+
**2025-2026 Developments:**
|
|
567
|
+
|
|
568
|
+
- NIST expected to release RMF 1.1 guidance addenda with expanded profiles and more granular evaluation methodologies through 2026.
|
|
569
|
+
- Sector regulators (FTC, FDA, SEC, DoD, CFPB, EEOC) increasingly reference AI RMF in their expectations.
|
|
570
|
+
- Agentic AI systems require adapted frameworks for planning, tool use, and multi-step actions -- the original RMF was designed for traditional ML systems.
|
|
571
|
+
- Cross-border regulatory alignment is driving convergence between NIST AI RMF and EU AI Act requirements.
|
|
572
|
+
|
|
573
|
+
**ICDEV AI RMF Mapping:**
|
|
574
|
+
|
|
575
|
+
```
|
|
576
|
+
GOVERN Layer (ICDEV Implementation):
|
|
577
|
+
- Policy Engine: args/sbd_gates.yaml, policy_generator.py
|
|
578
|
+
- Role-based Access: agent_trust_scorer.py, tool_chain_validator.py
|
|
579
|
+
- Audit Trail: append-only tables (NIST AU compliance)
|
|
580
|
+
- Session Purpose: session_purpose.py (declared intent per session)
|
|
581
|
+
- Dispatcher Mode: dispatcher_mode.py (Orchestrator restricted to delegation)
|
|
582
|
+
|
|
583
|
+
MAP Layer (ICDEV Implementation):
|
|
584
|
+
- AI BOM: ai_bom_generator.py (component inventory)
|
|
585
|
+
- System/Model Cards: ai_transparency goal workflow
|
|
586
|
+
- Dependency Graph: supply_chain/dependency_graph.py
|
|
587
|
+
- Stakeholder Impact: boundary_analyzer.py (4-tier ATO impact)
|
|
588
|
+
|
|
589
|
+
MEASURE Layer (ICDEV Implementation):
|
|
590
|
+
- ATLAS Assessment: atlas_assessor.py, atlas_red_team.py
|
|
591
|
+
- OWASP Assessment: owasp_llm_assessor.py, owasp_agentic_assessor.py
|
|
592
|
+
- Agent Attribution: agent_shap.py (Monte Carlo Shapley values)
|
|
593
|
+
- XAI Assessment: xai_assessor.py (10 compliance checks)
|
|
594
|
+
- Code Quality: code_analyzer.py (cyclomatic/cognitive complexity)
|
|
595
|
+
|
|
596
|
+
MANAGE Layer (ICDEV Implementation):
|
|
597
|
+
- Prompt Injection Defense: prompt_injection_detector.py (5 categories)
|
|
598
|
+
- AI Telemetry: ai_telemetry_logger.py (SHA-256 hashed, privacy-preserving)
|
|
599
|
+
- Tool Chain Validation: tool_chain_validator.py
|
|
600
|
+
- Continuous Monitoring: cato_live_engine.py
|
|
601
|
+
- Incident Response: crash_analyzer.py, self_heal pattern
|
|
602
|
+
```
|
|
603
|
+
|
|
604
|
+
**ICDEV Applicability:** ICDEV already implements most AI RMF functions. Formalize the mapping:
|
|
605
|
+
|
|
606
|
+
- Add `ai_rmf` as a framework key in the crosswalk engine (alongside `cisa_sbd`, `nist_800_53`, etc.) so running ICDEV's existing AI security tools auto-populates AI RMF compliance status.
|
|
607
|
+
- Create an explicit AI RMF subcategory-to-tool mapping table. This allows ICDEV to generate AI RMF compliance reports automatically.
|
|
608
|
+
- Address the agentic AI gap: current AI RMF guidance does not fully address multi-agent systems. Document ICDEV's agentic controls (dispatcher mode, tool chain validation, trust scoring) as supplementary measures.
|
|
609
|
+
|
|
610
|
+
---
|
|
611
|
+
|
|
612
|
+
### 4.2 AI Bill of Materials (AI BOM)
|
|
613
|
+
|
|
614
|
+
**Converging Standards:**
|
|
615
|
+
|
|
616
|
+
- **SPDX 3.0.1**: The technical backbone for AI-BOMs. AI and Dataset Profiles capture architecture, data sources, licensing, and provenance in a machine-readable, interoperable format.
|
|
617
|
+
- **CycloneDX 1.6 ML-BOM**: Introduces AI entities and component types for model and dataset metadata exchange.
|
|
618
|
+
- Both standards enable organizations to catalog model parameters, dataset sources, environment details, training methodologies, and dependency chains.
|
|
619
|
+
|
|
620
|
+
**AI BOM Components:**
|
|
621
|
+
|
|
622
|
+
- Model architecture and version.
|
|
623
|
+
- Training data sources and provenance.
|
|
624
|
+
- Software dependencies and library versions.
|
|
625
|
+
- Hardware requirements and deployment environment.
|
|
626
|
+
- Configuration files and hyperparameters.
|
|
627
|
+
- Licensing and IP obligations.
|
|
628
|
+
- Ethical considerations and bias assessments.
|
|
629
|
+
- Performance benchmarks and limitations.
|
|
630
|
+
|
|
631
|
+
**Automation Patterns:**
|
|
632
|
+
|
|
633
|
+
- Integrate AI BOM generation into CI/CD and MLOps pipelines.
|
|
634
|
+
- Use pipeline scripts to extract metadata from AI components during runtime.
|
|
635
|
+
- Every new model version or retraining cycle automatically updates the AI BOM without human intervention.
|
|
636
|
+
- Automated AI BOM generation catalogs every AI asset (models, datasets, dependencies) deployed across the organization.
|
|
637
|
+
|
|
638
|
+
**ICDEV Applicability:** ICDEV's `ai_bom_generator.py` exists. Enhancements:
|
|
639
|
+
|
|
640
|
+
- Output in CycloneDX 1.6 ML-BOM format (aligns with D-INV-45 firmware SBOM using CycloneDX 1.5 and D-INV-46 VEX using CSAF 2.0).
|
|
641
|
+
- Auto-trigger AI BOM regeneration on: Ollama model updates, Bedrock model version changes, OTA model deployments to fleet devices.
|
|
642
|
+
- Include the full Ollama model inventory (qwen3.5:latest, phi4-reasoning:latest, llava:13b, gemma3:latest, etc.) with version hashes and sizes.
|
|
643
|
+
- Track training data provenance for any fine-tuned models (ft_pair_generator.py output).
|
|
644
|
+
- Generate separate AI BOMs per deployment tier (Tier 0 browser, Tier 1 MCU, Tier 2 edge, Tier 3 cloud) since each tier has different model inventories.
|
|
645
|
+
|
|
646
|
+
---
|
|
647
|
+
|
|
648
|
+
### 4.3 Model Cards and System Cards Automation
|
|
649
|
+
|
|
650
|
+
**Model Cards:**
|
|
651
|
+
|
|
652
|
+
- Standardized documentation of a model's purpose, performance metrics, limitations, ethical considerations, and intended use cases.
|
|
653
|
+
- Should be auto-generated from training metadata and evaluation results.
|
|
654
|
+
- Must include: model details, intended use, factors (demographic, environmental), metrics, evaluation data, ethical considerations, caveats.
|
|
655
|
+
|
|
656
|
+
**System Cards:**
|
|
657
|
+
|
|
658
|
+
- Broader than model cards -- document the entire AI system including multiple models, data pipelines, human oversight mechanisms, and deployment context.
|
|
659
|
+
- Critical for multi-agent systems like ICDEV where the system behavior emerges from agent interactions, not any single model.
|
|
660
|
+
|
|
661
|
+
**ICDEV Applicability:** ICDEV has `goals/ai_transparency.md` covering model/system cards. Enhance with:
|
|
662
|
+
|
|
663
|
+
- Auto-generate model cards from the LLM router configuration (each model in `args/llm_config.yaml` gets a card).
|
|
664
|
+
- Auto-generate a system card for the ICDEV platform that documents: agent topology, MCP tool inventory, routing decisions, compliance framework coverage, and human oversight mechanisms (narrative approval workflow, dispatcher mode).
|
|
665
|
+
- Include system card in OSCAL SSP output for FedRAMP 20x machine-readable packages.
|
|
666
|
+
|
|
667
|
+
---
|
|
668
|
+
|
|
669
|
+
### 4.4 Prompt Injection Defense Architecture
|
|
670
|
+
|
|
671
|
+
Research from late 2025 demonstrates that a combined defense framework reduces successful attack rates from **73.2% to 8.7%** while maintaining 94.3% of baseline task performance.
|
|
672
|
+
|
|
673
|
+
**Three-Layer Defense Architecture:**
|
|
674
|
+
|
|
675
|
+
**Layer 1 -- Input Validation (Content Filtering):**
|
|
676
|
+
|
|
677
|
+
- Embedding-based analysis to detect injection patterns.
|
|
678
|
+
- Content filtering catches obvious injection attempts.
|
|
679
|
+
- Alone, reduces attack success to 41.0% -- necessary but insufficient.
|
|
680
|
+
- Must cover all data sources: user input, RAG retrieved content, tool outputs, external API responses.
|
|
681
|
+
|
|
682
|
+
**Layer 2 -- Context Isolation (Guardrails):**
|
|
683
|
+
|
|
684
|
+
- Clear delimiters marking retrieved content with explicit directives to treat delimited text as reference data only.
|
|
685
|
+
- System instructions with explicit precedence markers (system > user).
|
|
686
|
+
- Structured prompts that separate instructions from data.
|
|
687
|
+
- Goal-lock mechanisms: once a task purpose is declared, reject instructions that deviate.
|
|
688
|
+
|
|
689
|
+
**Layer 3 -- Output Verification (Response Validation):**
|
|
690
|
+
|
|
691
|
+
- Multi-stage output validation before responses reach users.
|
|
692
|
+
- Check for leaked system prompts, tool credentials, or internal state.
|
|
693
|
+
- Verify response alignment with declared task purpose.
|
|
694
|
+
- Detect data exfiltration attempts (responses containing sensitive data patterns).
|
|
695
|
+
|
|
696
|
+
**Agentic AI Considerations (Critical for ICDEV):**
|
|
697
|
+
|
|
698
|
+
- Agentic systems amplify prompt injection risks because compromised agents can use tools, access data, and influence other agents.
|
|
699
|
+
- Required controls: input validation on ALL data sources (not just user input), goal-lock mechanisms, tool sandboxing with minimal privileges, strategic human-in-the-loop approval for high-impact actions.
|
|
700
|
+
- Prevention -- not detection -- is the only viable defense for AI systems.
|
|
701
|
+
|
|
702
|
+
**ICDEV Applicability:** ICDEV's `prompt_injection_detector.py` (5 detection categories) covers Layer 1. Strengthen the architecture:
|
|
703
|
+
|
|
704
|
+
- **Layer 2 -- Context Isolation**: Add explicit delimiter markers in MCP tool responses so the LLM can distinguish tool output from user input. Implement goal-lock in the Orchestrator -- once session purpose is declared via `session_purpose.py`, reject tool invocations that deviate from the declared intent.
|
|
705
|
+
- **Layer 3 -- Output Verification**: Add post-generation validation in the LLM router that checks responses for leaked system prompts, tool credentials, database connection strings, or internal state. Flag responses containing classification markings above the session's declared impact level.
|
|
706
|
+
- **Agentic Controls**: The dispatcher mode (`dispatcher_mode.py`) already restricts the Orchestrator to delegation-only. Extend this pattern to all agents: each agent should have a declared capability boundary and reject tool invocations outside that boundary.
|
|
707
|
+
|
|
708
|
+
---
|
|
709
|
+
|
|
710
|
+
### 4.5 Explainability Pipelines
|
|
711
|
+
|
|
712
|
+
**SHAP (SHapley Additive exPlanations):**
|
|
713
|
+
|
|
714
|
+
- Provides both global (which features matter overall) and local (why this specific prediction) explanations.
|
|
715
|
+
- Based on Shapley values from cooperative game theory -- mathematically guaranteed unique solution.
|
|
716
|
+
- Reproducible: running SHAP twice on the same data yields identical results.
|
|
717
|
+
- Generates multiple visualization types: summary plots, dependence plots, force plots, waterfall plots.
|
|
718
|
+
- Drawback: Computationally expensive for large models. Can be prohibitive at production scale.
|
|
719
|
+
|
|
720
|
+
**LIME (Local Interpretable Model-agnostic Explanations):**
|
|
721
|
+
|
|
722
|
+
- Creates local linear approximations around individual predictions.
|
|
723
|
+
- Universally applicable to any model (model-agnostic).
|
|
724
|
+
- Faster than SHAP for individual explanations.
|
|
725
|
+
- Drawback: Non-deterministic. Random sampling means running LIME twice may yield different explanations. Only local explanations (no global view).
|
|
726
|
+
|
|
727
|
+
**Attention Visualization:**
|
|
728
|
+
|
|
729
|
+
- Transformer self-attention weights show token-to-token "attention" relationships.
|
|
730
|
+
- Useful for quick sanity checks and catching obvious failures.
|
|
731
|
+
- Not ground truth for model reasoning -- attention captures one mechanism in a complex system, not the full reasoning process.
|
|
732
|
+
|
|
733
|
+
**Production Scaling Concerns:**
|
|
734
|
+
|
|
735
|
+
- Some XAI methods that work on small examples become computationally prohibitive at scale.
|
|
736
|
+
- Production systems need to explain thousands or millions of decisions.
|
|
737
|
+
- Caching and batching of explanations is essential.
|
|
738
|
+
- Regulatory pressure increasing: EU AI Act requires high-risk AI system deployers to explain decision logic.
|
|
739
|
+
|
|
740
|
+
**ICDEV Applicability:** ICDEV's `agent_shap.py` uses Monte Carlo Shapley values for tool attribution -- the right approach. Enhancements:
|
|
741
|
+
|
|
742
|
+
- Add batch SHAP computation for compliance narratives. Run attribution analysis on all AI-generated narratives in a batch to identify which tools/controls most influenced each narrative.
|
|
743
|
+
- Cache SHAP results per control family. Compliance queries within the same family will have similar attribution patterns, reducing recomputation.
|
|
744
|
+
- Integrate SHAP results into the XAI assessment report for NIST AI RMF MEASURE function compliance.
|
|
745
|
+
- For the Orchestrator's routing decisions, generate SHAP explanations for why specific agents were selected for a task -- this supports the GOVERN function (accountability).
|
|
746
|
+
|
|
747
|
+
---
|
|
748
|
+
|
|
749
|
+
## 5. Edge-Cloud AI Architecture
|
|
750
|
+
|
|
751
|
+
### 5.1 TinyML Deployment Patterns
|
|
752
|
+
|
|
753
|
+
The convergence of TinyML and federated learning is the dominant 2025 trend for edge AI:
|
|
754
|
+
|
|
755
|
+
**Federated TinyML Architecture:**
|
|
756
|
+
|
|
757
|
+
- Devices collaboratively improve models while keeping data local -- critical for DoD data sensitivity.
|
|
758
|
+
- A novel FL-IoT framework combines: OTA model updates, LoRa-based distributed communication, lossless data compression to reduce transmission cost.
|
|
759
|
+
- Architecture: Raspberry Pi-based aggregation nodes (Tier 2 edge gateways) coordinate microcontroller-based IoT clients (Tier 1 devices).
|
|
760
|
+
- Privacy-preserving by design: only model gradients/updates are transmitted, never raw data.
|
|
761
|
+
|
|
762
|
+
**Compression Pipeline (2025 Standard):**
|
|
763
|
+
|
|
764
|
+
Three-stage pipeline has become standard practice:
|
|
765
|
+
|
|
766
|
+
1. **Pruning**: Remove redundant weights/neurons. Structured pruning removes entire channels; unstructured pruning removes individual weights.
|
|
767
|
+
2. **Quantization**: Reduce numeric precision. 4-bit quantization reduces memory 75-90% with minimal accuracy loss. 2-bit k-means quantization emerging for extreme compression.
|
|
768
|
+
3. **Knowledge Distillation**: Train a smaller "student" model to mimic a larger "teacher" model's behavior.
|
|
769
|
+
|
|
770
|
+
**Production Results:**
|
|
771
|
+
|
|
772
|
+
- Hybrid pruning-quantization pipeline: 75% model size reduction, 50% power consumption reduction, 97% accuracy retention.
|
|
773
|
+
- 4-bit quantization: Up to 90% memory footprint reduction.
|
|
774
|
+
- Mid-term trend: Hybrid pipelines become standard. Long-term: Models trained natively for compression from initialization.
|
|
775
|
+
|
|
776
|
+
**ICDEV Applicability:** SparkPilot already supports TFLite Micro on Tier 1 devices. Enhancements:
|
|
777
|
+
|
|
778
|
+
- Add a standard compression pipeline to the model deployment workflow in `edge_ai/model_manager.py`: quantize -> validate accuracy -> package -> deploy.
|
|
779
|
+
- Include compression metadata in firmware SBOM (original size, compressed size, quantization level, accuracy delta).
|
|
780
|
+
- Support multiple quantization levels per device class: 8-bit for ESP32-S3 (512KB RAM), 4-bit for RPi Pico (264KB RAM).
|
|
781
|
+
|
|
782
|
+
---
|
|
783
|
+
|
|
784
|
+
### 5.2 Federated Learning for Fleet Devices
|
|
785
|
+
|
|
786
|
+
**Architecture Pattern:**
|
|
787
|
+
|
|
788
|
+
```
|
|
789
|
+
C4 Container Diagram -- Federated Learning Architecture:
|
|
790
|
+
|
|
791
|
+
[Fleet Devices (Tier 1: ESP32/STM32)]
|
|
792
|
+
|-- Local training on device-specific data
|
|
793
|
+
|-- Compute model gradient updates locally
|
|
794
|
+
|-- Send only gradient updates (NOT raw data) to aggregator
|
|
795
|
+
|
|
|
796
|
+
v (LoRa / MQTT / WiFi)
|
|
797
|
+
|
|
798
|
+
[Edge Gateway / Aggregation Node (Tier 2: RPi/Jetson)]
|
|
799
|
+
|-- Receive gradient updates from N fleet devices
|
|
800
|
+
|-- Run federated averaging (FedAvg) or FedProx
|
|
801
|
+
|-- Produce updated global model
|
|
802
|
+
|-- Validate updated model against holdout test set
|
|
803
|
+
|-- If accuracy meets threshold:
|
|
804
|
+
| Push updated model to fleet via OTA (canary -> full)
|
|
805
|
+
|-- If accuracy degrades:
|
|
806
|
+
| Rollback to previous global model
|
|
807
|
+
|-- Report aggregation metrics to cloud
|
|
808
|
+
|
|
|
809
|
+
v (HTTPS / mTLS)
|
|
810
|
+
|
|
811
|
+
[Cloud (Tier 3: AWS GovCloud)]
|
|
812
|
+
|-- Cross-cluster federated aggregation (if multiple edge gateways)
|
|
813
|
+
|-- Global model versioning and storage
|
|
814
|
+
|-- Compliance monitoring and audit trail
|
|
815
|
+
|-- Model performance dashboards
|
|
816
|
+
```
|
|
817
|
+
|
|
818
|
+
**Key Challenges:**
|
|
819
|
+
|
|
820
|
+
- Heterogeneous data across fleet devices (non-IID data distribution).
|
|
821
|
+
- Communication efficiency on bandwidth-constrained links (LoRa: ~50 kbps).
|
|
822
|
+
- Security of gradient updates (gradient inversion attacks can reconstruct training data).
|
|
823
|
+
- Convergence guarantees with unreliable device connectivity.
|
|
824
|
+
|
|
825
|
+
**ICDEV Applicability:**
|
|
826
|
+
|
|
827
|
+
- Add a federated learning coordinator at the Edge Gateway tier. Use FedAvg for homogeneous fleet segments, FedProx for heterogeneous segments.
|
|
828
|
+
- Integrate with existing OTA manager for model distribution after federated training rounds.
|
|
829
|
+
- Add differential privacy to gradient updates before transmission to prevent gradient inversion attacks (critical for DoD data sensitivity).
|
|
830
|
+
- Log federated training rounds in the audit trail with participant counts, convergence metrics, and accuracy deltas.
|
|
831
|
+
|
|
832
|
+
---
|
|
833
|
+
|
|
834
|
+
### 5.3 Split Inference Architecture
|
|
835
|
+
|
|
836
|
+
**Pattern:** Partition a neural network across edge and cloud tiers based on computational requirements and latency constraints.
|
|
837
|
+
|
|
838
|
+
```
|
|
839
|
+
C4 Component Diagram -- Split Inference:
|
|
840
|
+
|
|
841
|
+
[IoT Device (Tier 1)]
|
|
842
|
+
Components:
|
|
843
|
+
- TFLite Micro Runtime
|
|
844
|
+
- Early Network Layers (feature extraction, convolutions)
|
|
845
|
+
- Confidence Evaluator
|
|
846
|
+
|
|
847
|
+
Flow:
|
|
848
|
+
1. Run sensor input through early layers
|
|
849
|
+
2. Evaluate confidence of intermediate representation
|
|
850
|
+
3. If confidence > threshold (e.g., 0.85):
|
|
851
|
+
-> Complete inference locally
|
|
852
|
+
-> Report result + confidence to gateway
|
|
853
|
+
4. If confidence < threshold:
|
|
854
|
+
-> Send intermediate features to edge gateway
|
|
855
|
+
-> Receive refined result from gateway
|
|
856
|
+
|
|
857
|
+
[Edge Gateway (Tier 2)]
|
|
858
|
+
Components:
|
|
859
|
+
- Later Network Layers (classification, refinement)
|
|
860
|
+
- Local LLM (llama.cpp, ~7B params)
|
|
861
|
+
- Multi-agent Coordinator
|
|
862
|
+
- Inference Cache
|
|
863
|
+
|
|
864
|
+
Flow:
|
|
865
|
+
1. Receive intermediate features from device
|
|
866
|
+
2. Complete inference through later layers
|
|
867
|
+
3. If still uncertain: forward to cloud
|
|
868
|
+
4. Cache results for similar future queries
|
|
869
|
+
|
|
870
|
+
[Cloud (Tier 3)]
|
|
871
|
+
Components:
|
|
872
|
+
- Full Model (no size constraints)
|
|
873
|
+
- Training Pipeline
|
|
874
|
+
- Model Versioning
|
|
875
|
+
- Compliance Monitoring
|
|
876
|
+
```
|
|
877
|
+
|
|
878
|
+
**Benefits:**
|
|
879
|
+
|
|
880
|
+
- Reduces latency for high-confidence predictions (local inference in milliseconds).
|
|
881
|
+
- Reduces bandwidth (intermediate features are smaller than raw sensor data).
|
|
882
|
+
- Enables privacy (raw data stays on device).
|
|
883
|
+
- Graceful degradation (device can still operate if gateway/cloud is unreachable).
|
|
884
|
+
|
|
885
|
+
**ICDEV Applicability:**
|
|
886
|
+
|
|
887
|
+
- Add inference confidence threshold configuration to TinyML model deployment in `edge_ai/model_manager.py`.
|
|
888
|
+
- Route low-confidence inferences to edge gateway for refinement.
|
|
889
|
+
- Track split inference ratios (local vs. offloaded) in inference telemetry for fleet health monitoring.
|
|
890
|
+
- Use split ratios as a fleet health metric: if a device suddenly offloads most inferences, it may indicate sensor degradation or model drift.
|
|
891
|
+
|
|
892
|
+
---
|
|
893
|
+
|
|
894
|
+
### 5.4 OTA Model Updates with Rollback
|
|
895
|
+
|
|
896
|
+
**Production Patterns:**
|
|
897
|
+
|
|
898
|
+
**Signed Model Packages:**
|
|
899
|
+
|
|
900
|
+
- Cryptographic signature verification before deployment.
|
|
901
|
+
- Model hash included in device attestation.
|
|
902
|
+
- Reject unsigned or tampered packages at the device level.
|
|
903
|
+
|
|
904
|
+
**Staged Rollouts (ICDEV already has this via ota_manager.py):**
|
|
905
|
+
|
|
906
|
+
- Canary deployment: Deploy to 10% of fleet, monitor for 72 hours.
|
|
907
|
+
- Broader rollout: If canary passes accuracy and stability thresholds, deploy to remaining fleet.
|
|
908
|
+
- Automatic rollback: If accuracy degrades beyond threshold during canary, revert to previous model.
|
|
909
|
+
|
|
910
|
+
**A/B Model Testing:**
|
|
911
|
+
|
|
912
|
+
- Run old and new models simultaneously on a subset of devices.
|
|
913
|
+
- Compare inference accuracy, latency, power consumption, and crash rates.
|
|
914
|
+
- Promote winning model to full fleet.
|
|
915
|
+
|
|
916
|
+
**MCUboot Integration:**
|
|
917
|
+
|
|
918
|
+
- Hardware-level rollback to previous firmware/model partition on crash.
|
|
919
|
+
- ICDEV's crash_analyzer.py already detects crash patterns with a 72-hour stability window.
|
|
920
|
+
|
|
921
|
+
**ICDEV Enhancements:**
|
|
922
|
+
|
|
923
|
+
- Add model version pinning per device group -- allow different fleet segments to run different model versions for A/B testing.
|
|
924
|
+
- Include model hashes in firmware SBOM (`firmware_sbom.py`) for supply chain traceability.
|
|
925
|
+
- Add differential OTA: transmit only model weight deltas rather than full models to reduce bandwidth on constrained links.
|
|
926
|
+
- Track model provenance: which training data version, which federated round, which compression pipeline produced each deployed model.
|
|
927
|
+
|
|
928
|
+
---
|
|
929
|
+
|
|
930
|
+
## 6. Compliance-as-Code Architecture
|
|
931
|
+
|
|
932
|
+
### 6.1 OSCAL Ecosystem (2025-2026)
|
|
933
|
+
|
|
934
|
+
The Open Security Controls Assessment Language (OSCAL) is the NIST-led standard for machine-readable security compliance data. Available in XML, JSON, and YAML.
|
|
935
|
+
|
|
936
|
+
**OSCAL Models:**
|
|
937
|
+
|
|
938
|
+
- **Catalog**: Defines security controls (e.g., NIST 800-53 Rev 5 catalog).
|
|
939
|
+
- **Profile**: Selects and tailors controls for a specific baseline (e.g., FedRAMP Moderate).
|
|
940
|
+
- **System Security Plan (SSP)**: Documents how a system implements selected controls.
|
|
941
|
+
- **Security Assessment Plan (SAP)**: Defines assessment procedures.
|
|
942
|
+
- **Security Assessment Results (SAR)**: Records assessment findings.
|
|
943
|
+
- **Plan of Action & Milestones (POA&M)**: Tracks remediation of findings.
|
|
944
|
+
- **Component Definition**: Describes reusable security components and their control implementations.
|
|
945
|
+
|
|
946
|
+
**2025-2026 Developments:**
|
|
947
|
+
|
|
948
|
+
- OSCAL adoption is expanding rapidly in both government and private sector.
|
|
949
|
+
- Tool ecosystem growing: OSCAL validators, generators, converters, and CI/CD integrations.
|
|
950
|
+
- NIST is seeking tool developers and vendors to implement OSCAL in commercial and open-source offerings.
|
|
951
|
+
- **January 2026 (RFC-0024): Machine-readable OSCAL packages mandated for ALL FedRAMP providers** -- not just 20x participants.
|
|
952
|
+
|
|
953
|
+
**ICDEV Applicability:** ICDEV's `oscal_generator.py` already produces SSP, SAR, and POA&M in OSCAL format. Enhancements:
|
|
954
|
+
|
|
955
|
+
- Add Component Definition generation for ICDEV platform controls (reusable across child applications).
|
|
956
|
+
- Generate OSCAL Profiles that document ICDEV's tailored baselines per impact level (IL2, IL4, IL5).
|
|
957
|
+
- Validate generated OSCAL against NIST schemas before output (automated quality gate).
|
|
958
|
+
- Ensure all OSCAL outputs include FedRAMP 20x metadata extensions for machine-readable package compatibility.
|
|
959
|
+
|
|
960
|
+
---
|
|
961
|
+
|
|
962
|
+
### 6.2 FedRAMP 20x: The Compliance Revolution
|
|
963
|
+
|
|
964
|
+
FedRAMP 20x, announced March 24, 2025, represents the biggest shift in federal cloud compliance since FedRAMP's inception. It replaces manual documentation with automated validation and continuous monitoring.
|
|
965
|
+
|
|
966
|
+
**Core Principles:**
|
|
967
|
+
|
|
968
|
+
- Shift from documentation-based compliance to engineering-based assurance.
|
|
969
|
+
- Automate validation of at least 80% of security requirements.
|
|
970
|
+
- Replace screenshots and lengthy narratives with machine-readable evidence.
|
|
971
|
+
- Continuous posture reporting instead of point-in-time assessments.
|
|
972
|
+
|
|
973
|
+
**Key Security Indicators (KSIs):**
|
|
974
|
+
|
|
975
|
+
- Machine-readable security signals that CSPs continuously emit.
|
|
976
|
+
- Examples: vulnerability scan results, configuration compliance checks, access control events, encryption status, patch currency.
|
|
977
|
+
- KSIs are validated automatically, not by human reviewers.
|
|
978
|
+
|
|
979
|
+
**Timeline and Results:**
|
|
980
|
+
|
|
981
|
+
- Phase 1 (Completed Sept 2025): 20x Low Pilot. 26 submissions, 12 pilot authorizations.
|
|
982
|
+
- Phase 2 (Active through March 31, 2026): 20x Moderate Pilot. Limited to 13 participants.
|
|
983
|
+
- Phase 3 (FY26 Q3-Q4): Formalize all 20x Low and Moderate requirements. Open for wide-scale adoption.
|
|
984
|
+
- Phase 4 (FY27 Q1-Q2): Pilot for 20x High authorizations.
|
|
985
|
+
- January 13, 2026: RFC-0024 mandates machine-readable packages for ALL FedRAMP providers.
|
|
986
|
+
|
|
987
|
+
**Authorization Speed:** Participants in the first pilot achieved full authorization in as little as **3 months**, compared to 18+ months for the traditional process. Organizations using automation achieve authorization in approximately 6 months on average.
|
|
988
|
+
|
|
989
|
+
**ICDEV Applicability -- High Priority:**
|
|
990
|
+
|
|
991
|
+
```
|
|
992
|
+
C4 Container Diagram -- ICDEV FedRAMP 20x Architecture:
|
|
993
|
+
|
|
994
|
+
[ICDEV Compliance Engine]
|
|
995
|
+
|
|
|
996
|
+
|-- [Evidence Collectors] (automated, continuous)
|
|
997
|
+
| |-- SAST results --> security/sast_runner.py
|
|
998
|
+
| |-- Dependency audit --> security/dependency_auditor.py
|
|
999
|
+
| |-- Container scan --> security/container_scanner.py
|
|
1000
|
+
| |-- STIG checks --> compliance/stig_checker.py
|
|
1001
|
+
| |-- AI telemetry --> security/ai_telemetry_logger.py
|
|
1002
|
+
| |-- ZTA maturity --> devsecops/zta_maturity_scorer.py
|
|
1003
|
+
| |-- Agent trust scores --> security/agent_trust_scorer.py
|
|
1004
|
+
| |-- Code quality metrics --> analysis/code_analyzer.py
|
|
1005
|
+
|
|
|
1006
|
+
|-- [OSCAL Generator] (compliance/oscal_generator.py)
|
|
1007
|
+
| |-- SSP (System Security Plan) -- OSCAL JSON
|
|
1008
|
+
| |-- SAR (Security Assessment Results) -- OSCAL JSON
|
|
1009
|
+
| |-- POA&M -- OSCAL JSON
|
|
1010
|
+
| |-- Component Definitions -- OSCAL JSON
|
|
1011
|
+
|
|
|
1012
|
+
|-- [cATO Live Engine] (compliance/cato_live_engine.py)
|
|
1013
|
+
| |-- Incremental per-control assessment-results (D-INV-1)
|
|
1014
|
+
| |-- Evidence freshness tracking: current<=30d, stale<=90d, expired>90d
|
|
1015
|
+
| |-- Real-time compliance posture dashboard
|
|
1016
|
+
| |-- Timeline of control status changes
|
|
1017
|
+
|
|
|
1018
|
+
|-- [FedRAMP 20x KSI Emitter] (NEW -- recommended)
|
|
1019
|
+
| |-- Transform cATO evidence streams into KSI format
|
|
1020
|
+
| |-- Machine-readable JSON output per KSI category
|
|
1021
|
+
| |-- Automated validation endpoint for 3PAO
|
|
1022
|
+
| |-- Continuous posture reporting to FedRAMP
|
|
1023
|
+
|
|
|
1024
|
+
|-- [Control Inheritance Engine]
|
|
1025
|
+
| |-- Crosswalk: NIST 800-53 -> FedRAMP -> CMMC -> 800-171 -> CISA SbD
|
|
1026
|
+
| |-- AWS shared responsibility model (46+ inherited controls)
|
|
1027
|
+
| |-- ICDEV platform controls (implemented by tools)
|
|
1028
|
+
| |-- Child app controls (inherited via Golden Path scaffolder)
|
|
1029
|
+
|
|
|
1030
|
+
|-- [Narrative Workflow] (compliance/narrative_workflow.py)
|
|
1031
|
+
|-- AI-generated control narratives
|
|
1032
|
+
|-- Two-tier LLM: qwen3.5 drafts, Claude reviews
|
|
1033
|
+
|-- Approval workflow: draft -> pending_review -> approved/rejected
|
|
1034
|
+
|-- RAGAS faithfulness scoring (NEW -- recommended)
|
|
1035
|
+
```
|
|
1036
|
+
|
|
1037
|
+
**Specific Recommendations:**
|
|
1038
|
+
|
|
1039
|
+
1. Build a **KSI emitter** that translates cATO evidence streams into FedRAMP 20x Key Security Indicator format. This positions ICDEV-built applications for 3-month authorization cycles.
|
|
1040
|
+
2. Ensure all evidence collectors output **timestamped, machine-readable OSCAL assessment-results** (not human-readable reports).
|
|
1041
|
+
3. Add **automated OSCAL schema validation** as a quality gate before any compliance output is published.
|
|
1042
|
+
4. Formalize the **control inheritance chain** in OSCAL Component Definitions: AWS GovCloud baseline (46+ controls) -> ICDEV platform controls -> child application controls.
|
|
1043
|
+
|
|
1044
|
+
---
|
|
1045
|
+
|
|
1046
|
+
### 6.3 Continuous Monitoring Architecture
|
|
1047
|
+
|
|
1048
|
+
FedRAMP 20x shifts compliance from periodic assessment to continuous assurance:
|
|
1049
|
+
|
|
1050
|
+
**Evidence Collection Automation Patterns:**
|
|
1051
|
+
|
|
1052
|
+
- **Pipeline-integrated evidence**: Security scans, dependency audits, and STIG checks run as CI/CD pipeline stages. Results are automatically formatted as OSCAL assessment-results and stored.
|
|
1053
|
+
- **Configuration drift detection**: Continuous comparison of actual system configuration against declared security baselines. ICDEV's `sync_engine.py` (drift detection for MBSE) is a conceptual model that can be extended.
|
|
1054
|
+
- **Event-driven evidence**: Security events (access control changes, vulnerability discoveries, patch deployments) trigger immediate evidence generation rather than waiting for scheduled scans.
|
|
1055
|
+
- **Evidence freshness**: Track the age of each piece of evidence. FedRAMP 20x expects continuous evidence streams, not stale documents. ICDEV's cATO engine already tracks freshness (current <= 30d, stale <= 90d, expired > 90d).
|
|
1056
|
+
|
|
1057
|
+
**Continuous Monitoring Architecture Pattern:**
|
|
1058
|
+
|
|
1059
|
+
```
|
|
1060
|
+
Event Sources:
|
|
1061
|
+
Git commits --> PR Intelligence (pr_intelligence.py)
|
|
1062
|
+
Container builds --> Container Scanner (container_scanner.py)
|
|
1063
|
+
Dependency updates --> Dependency Auditor (dependency_auditor.py)
|
|
1064
|
+
Config changes --> STIG Checker (stig_checker.py)
|
|
1065
|
+
Access events --> Audit Trail (append-only)
|
|
1066
|
+
Model updates --> AI BOM Generator (ai_bom_generator.py)
|
|
1067
|
+
|
|
1068
|
+
All events flow to:
|
|
1069
|
+
--> cATO Live Engine (incremental OSCAL assessment-results)
|
|
1070
|
+
--> Evidence Store (timestamped, immutable)
|
|
1071
|
+
--> KSI Emitter (machine-readable FedRAMP 20x format)
|
|
1072
|
+
--> Dashboard (real-time posture visualization)
|
|
1073
|
+
--> Alerting (stale evidence, failed controls, expired exceptions)
|
|
1074
|
+
```
|
|
1075
|
+
|
|
1076
|
+
---
|
|
1077
|
+
|
|
1078
|
+
### 6.4 Control Inheritance Models
|
|
1079
|
+
|
|
1080
|
+
**AWS Shared Responsibility Model:**
|
|
1081
|
+
|
|
1082
|
+
- AWS provides 46+ pre-implemented security controls for GovCloud customers.
|
|
1083
|
+
- **IaaS controls** (physical security, network infrastructure): Fully inherited from AWS.
|
|
1084
|
+
- **PaaS controls** (OS hardening, runtime patching): Shared responsibility.
|
|
1085
|
+
- **Application controls** (access management, audit logging, encryption at rest/transit): Customer responsibility.
|
|
1086
|
+
|
|
1087
|
+
**Platform-to-Application Inheritance:**
|
|
1088
|
+
|
|
1089
|
+
- ICDEV platform implements security controls that child applications inherit.
|
|
1090
|
+
- Golden Path scaffolder (`golden_path.py`) already generates SECURITY.md, .well-known/security.txt, and args/sbd_gates.yaml for child apps (D-SBD-5).
|
|
1091
|
+
- Control inheritance should be documented in OSCAL Component Definitions so inheriting applications can reference ICDEV's implementations.
|
|
1092
|
+
|
|
1093
|
+
**Three-Tier Inheritance Chain:**
|
|
1094
|
+
|
|
1095
|
+
```
|
|
1096
|
+
Tier 1: AWS GovCloud (CSP Controls)
|
|
1097
|
+
- Physical security (PE-*)
|
|
1098
|
+
- Network infrastructure (SC-7 partial)
|
|
1099
|
+
- Hypervisor isolation (SC-39)
|
|
1100
|
+
- 46+ controls fully inherited
|
|
1101
|
+
|
|
|
1102
|
+
v (documented in OSCAL Component Definition)
|
|
1103
|
+
|
|
1104
|
+
Tier 2: ICDEV Platform (Platform Controls)
|
|
1105
|
+
- Access control (AC-2, AC-3, AC-6)
|
|
1106
|
+
- Audit logging (AU-2, AU-3, AU-6, AU-12)
|
|
1107
|
+
- Configuration management (CM-2, CM-6)
|
|
1108
|
+
- Identification/authentication (IA-2, IA-5)
|
|
1109
|
+
- System integrity (SI-2, SI-3, SI-4)
|
|
1110
|
+
- Implemented by ICDEV tools, tested by STIG checker
|
|
1111
|
+
|
|
|
1112
|
+
v (inherited via Golden Path scaffolder)
|
|
1113
|
+
|
|
1114
|
+
Tier 3: Child Applications (Application Controls)
|
|
1115
|
+
- Application-specific access rules
|
|
1116
|
+
- Custom audit events
|
|
1117
|
+
- Data-specific encryption
|
|
1118
|
+
- Application SBOM
|
|
1119
|
+
- Inherit platform controls, implement application-specific controls
|
|
1120
|
+
```
|
|
1121
|
+
|
|
1122
|
+
**ICDEV Applicability:**
|
|
1123
|
+
|
|
1124
|
+
- Document the full inheritance chain in OSCAL Component Definitions.
|
|
1125
|
+
- Each tier should declare which controls are "fully inherited," "shared," or "application-specific."
|
|
1126
|
+
- The crosswalk engine should auto-populate inheritance status when generating SSPs for child applications.
|
|
1127
|
+
- Track inherited control verification: even inherited controls need periodic evidence that the inheriting system is correctly configured to receive the inheritance (e.g., child app is actually deployed in GovCloud, not commercial AWS).
|
|
1128
|
+
|
|
1129
|
+
---
|
|
1130
|
+
|
|
1131
|
+
## Summary: Top 10 Architecture Recommendations for ICDEV
|
|
1132
|
+
|
|
1133
|
+
| Priority | Recommendation | Effort | Impact | ICDEV Architecture Decision |
|
|
1134
|
+
|----------|---------------|--------|--------|-----------------------------|
|
|
1135
|
+
| 1 | **FedRAMP 20x KSI emitter** -- transform cATO evidence streams into KSI format for 3-month authorizations | Medium | Critical | Extends D-INV-1, D-INV-2 |
|
|
1136
|
+
| 2 | **Semantic caching in LLM router** -- cache compliance lookups for 40-60% token cost reduction | Medium | High | Extends router.py, new cache table |
|
|
1137
|
+
| 3 | **Corrective RAG for compliance retrieval** -- evaluate retrieval quality before narrative generation to reduce hallucination | Medium | High | Extends hybrid_search.py, narrative_workflow.py |
|
|
1138
|
+
| 4 | **A2A v0.2 Agent Card migration** -- adopt Linux Foundation standard for ecosystem interoperability | Low | Medium | Updates existing Agent Cards |
|
|
1139
|
+
| 5 | **Lazy MCP tool loading** -- load tools on-demand per session purpose instead of all 80+ tools | Low | Medium | Optimizes context window usage |
|
|
1140
|
+
| 6 | **Budget-aware routing** -- per-project token spending limits with automatic tier downgrade | Low | Medium | Extends llm_config.yaml, router.py |
|
|
1141
|
+
| 7 | **GraphRAG for crosswalk engine** -- enable transitive control relationship queries across frameworks | High | High | Extends crosswalk_engine.py |
|
|
1142
|
+
| 8 | **Output verification gate** -- post-generation validation for prompt injection defense (Layer 3) | Medium | High | New gate in router.py |
|
|
1143
|
+
| 9 | **Federated learning coordinator** -- privacy-preserving fleet model improvement without centralizing data | High | Medium | New component in fleet/ |
|
|
1144
|
+
| 10 | **AI RMF crosswalk** -- map existing ICDEV tools to NIST AI RMF subcategories automatically | Low | Medium | Extends crosswalk_engine.py |
|
|
1145
|
+
|
|
1146
|
+
---
|
|
1147
|
+
|
|
1148
|
+
## Sources
|
|
1149
|
+
|
|
1150
|
+
**Multi-Agent Systems:**
|
|
1151
|
+
- [Google A2A Protocol Announcement](https://developers.googleblog.com/en/a2a-a-new-era-of-agent-interoperability/)
|
|
1152
|
+
- [A2A Protocol Upgrades](https://cloud.google.com/blog/products/ai-machine-learning/agent2agent-protocol-is-getting-an-upgrade)
|
|
1153
|
+
- [A2A at Google I/O](https://developers.googleblog.com/agents-adk-agent-engine-a2a-enhancements-google-io/)
|
|
1154
|
+
- [Linux Foundation A2A Project](https://www.linuxfoundation.org/press/linux-foundation-launches-the-agent2agent-protocol-project-to-enable-secure-intelligent-communication-between-ai-agents)
|
|
1155
|
+
- [A2A GitHub Repository](https://github.com/a2aproject/A2A)
|
|
1156
|
+
- [IBM: What Is A2A Protocol](https://www.ibm.com/think/topics/agent2agent-protocol)
|
|
1157
|
+
- [MCP Specification (2025-11-25)](https://modelcontextprotocol.io/specification/2025-11-25)
|
|
1158
|
+
- [Anthropic MCP Announcement](https://www.anthropic.com/news/model-context-protocol)
|
|
1159
|
+
- [A Year of MCP Review](https://www.pento.ai/blog/a-year-of-mcp-2025-review)
|
|
1160
|
+
- [MCP Enterprise Adoption Guide](https://guptadeepak.com/the-complete-guide-to-model-context-protocol-mcp-enterprise-adoption-market-trends-and-implementation-strategies/)
|
|
1161
|
+
- [Anthropic: Code Execution with MCP](https://www.anthropic.com/engineering/code-execution-with-mcp)
|
|
1162
|
+
- [MCP Architecture 2026](https://onereach.ai/blog/what-to-know-about-model-context-protocol/)
|
|
1163
|
+
- [CrewAI vs LangGraph vs AutoGen](https://www.datacamp.com/tutorial/crewai-vs-langgraph-vs-autogen)
|
|
1164
|
+
- [AutoGen Multi-Agent Patterns](https://sparkco.ai/blog/deep-dive-into-autogen-multi-agent-patterns-2025)
|
|
1165
|
+
- [AI Agent Frameworks 2025](https://www.getmaxim.ai/articles/top-5-ai-agent-frameworks-in-2025-a-practical-guide-for-ai-builders/)
|
|
1166
|
+
- [Agent Framework Landscape 2025](https://medium.com/@hieutrantrung.it/the-ai-agent-framework-landscape-in-2025-what-changed-and-what-matters-3cd9b07ef2c3)
|
|
1167
|
+
- [Agent Swarm vs Workflows vs LangGraph](https://blog.softmaxdata.com/agent-architectures-compared/)
|
|
1168
|
+
- [Taxonomy of Hierarchical MAS](https://arxiv.org/html/2508.12683)
|
|
1169
|
+
- [Top 5 Agent Architectures Compared](https://www.marktechpost.com/2025/11/15/comparing-the-top-5-ai-agent-architectures-in-2025-hierarchical-swarm-meta-learning-modular-evolutionary/)
|
|
1170
|
+
- [Supervisor-Style MAS](https://towardsai.net/p/machine-learning/supervisor-style-the-king-of-multi-agent-systems)
|
|
1171
|
+
- [AWS Multi-Agent Patterns](https://aws.amazon.com/blogs/machine-learning/multi-agent-collaboration-patterns-with-strands-agents-and-amazon-nova/)
|
|
1172
|
+
- [Survey of Agent Interoperability Protocols](https://arxiv.org/html/2505.02279v1)
|
|
1173
|
+
- [MCP vs A2A](https://www.clarifai.com/blog/mcp-vs-a2a-clearly-explained)
|
|
1174
|
+
- [Agent Card Protocol](https://www.agentcard.net/)
|
|
1175
|
+
- [AWS Open Protocols for Interoperability](https://aws.amazon.com/blogs/opensource/open-protocols-for-agent-interoperability-part-1-inter-agent-communication-on-mcp/)
|
|
1176
|
+
- [LangGraph State Graphs](https://vanducng.dev/2025/05/29/LangGraph-State-Graphs-for-Agentic-Workflows/)
|
|
1177
|
+
- [LangGraph Architecture Guide 2025](https://latenode.com/blog/ai-frameworks-technical-infrastructure/langgraph-multi-agent-orchestration/langgraph-ai-framework-2025-complete-architecture-guide-multi-agent-orchestration-analysis)
|
|
1178
|
+
- [LangGraph State Management](https://medium.com/@bharatraj1918/langgraph-state-management-part-1-how-langgraph-manages-state-for-multi-agent-workflows-da64d352c43b)
|
|
1179
|
+
|
|
1180
|
+
**RAG Architecture:**
|
|
1181
|
+
- [Advanced RAG Techniques - Pinecone](https://www.pinecone.io/learn/advanced-rag-techniques/)
|
|
1182
|
+
- [14 Types of RAG](https://www.meilisearch.com/blog/rag-types)
|
|
1183
|
+
- [RAG Techniques Repository](https://github.com/NirDiamant/RAG_Techniques)
|
|
1184
|
+
- [Agentic RAG Survey](https://github.com/asinghcsu/AgenticRAG-Survey)
|
|
1185
|
+
- [Agentic RAG: Self-Correcting Retrieval](https://www.letsdatascience.com/blog/agentic-rag-self-correcting-retrieval)
|
|
1186
|
+
- [GraphRAG Concepts](https://graphrag.com/concepts/intro-to-graphrag/)
|
|
1187
|
+
- [Microsoft GraphRAG](https://microsoft.github.io/graphrag/)
|
|
1188
|
+
- [Neo4j Advanced RAG](https://neo4j.com/blog/genai/advanced-rag-techniques/)
|
|
1189
|
+
- [Knowledge Graph RAG on Databricks](https://www.databricks.com/blog/building-improving-and-deploying-knowledge-graph-rag-systems-databricks)
|
|
1190
|
+
- [Chunking Strategies 2025](https://www.firecrawl.dev/blog/best-chunking-strategies-rag)
|
|
1191
|
+
- [RAGAS Documentation](https://docs.ragas.io/)
|
|
1192
|
+
- [RAG Evaluation Guide - Qdrant](https://qdrant.tech/blog/rag-evaluation-guide/)
|
|
1193
|
+
|
|
1194
|
+
**LLM Orchestration:**
|
|
1195
|
+
- [LLM Token Optimization - Redis](https://redis.io/blog/llm-token-optimization-speed-up-apps/)
|
|
1196
|
+
- [LLM Cost Optimization Guide](https://ai.koombea.com/blog/llm-cost-optimization)
|
|
1197
|
+
- [47% Cost Reduction with Caching](https://medium.com/@duckweave/how-i-cut-llm-spend-47-with-smarter-caching-35451224d089)
|
|
1198
|
+
- [AWS: Optimize LLM Costs](https://aws.amazon.com/blogs/database/optimize-llm-response-costs-and-latency-with-effective-caching/)
|
|
1199
|
+
- [GPTCache](https://github.com/zilliztech/GPTCache)
|
|
1200
|
+
- [Prompt Versioning Tools 2025](https://www.braintrust.dev/articles/best-prompt-versioning-tools-2025)
|
|
1201
|
+
- [A/B Testing LLM Prompts - Langfuse](https://langfuse.com/docs/prompt-management/features/a-b-testing)
|
|
1202
|
+
- [Prompt Versioning Best Practices](https://www.getmaxim.ai/articles/prompt-versioning-and-its-best-practices-2025/)
|
|
1203
|
+
- [Bedrock FedRAMP High / DoD IL-4/5](https://aws.amazon.com/blogs/publicsector/accelerating-government-innovation-amazon-bedrock-models-get-fedramp-high-and-dod-il-4-5-approval-in-aws-govcloud-us/)
|
|
1204
|
+
- [Azure vs AWS GovCloud 2026](https://vso-inc.com/azure-government-cloud-vs-aws-govcloud-a-2026-cost-and-capability-comparison-for-defense-contractors-2/)
|
|
1205
|
+
- [Amazon $50B Government AI Cloud](https://fedscoop.com/amazon-50-billion-ai-supercomputing-infrastructure-agencies/)
|
|
1206
|
+
|
|
1207
|
+
**AI Safety & Governance:**
|
|
1208
|
+
- [NIST AI Risk Management Framework](https://www.nist.gov/itl/ai-risk-management-framework)
|
|
1209
|
+
- [NIST AI RMF 2025 Updates](https://www.ispartnersllc.com/blog/nist-ai-rmf-2025-updates-what-you-need-to-know-about-the-latest-framework-changes/)
|
|
1210
|
+
- [AI BOM - Wiz](https://www.wiz.io/academy/ai-security/ai-bom-ai-bill-of-materials)
|
|
1211
|
+
- [AI BOM Systematizing - arXiv](https://www.arxiv.org/pdf/2511.12668)
|
|
1212
|
+
- [AI BOM Transparency](https://noma.security/blog/securing-ai-systems-through-transparency-the-critical-role-of-ai-bills-of-materials/)
|
|
1213
|
+
- [Securing LLM Agents - arXiv](https://arxiv.org/pdf/2506.08837)
|
|
1214
|
+
- [CSA: AI Prompt Guardrails](https://cloudsecurityalliance.org/blog/2025/12/10/how-to-build-ai-prompt-guardrails-an-in-depth-guide-for-securing-enterprise-genai)
|
|
1215
|
+
- [OWASP Prompt Injection Prevention](https://cheatsheetseries.owasp.org/cheatsheets/LLM_Prompt_Injection_Prevention_Cheat_Sheet.html)
|
|
1216
|
+
- [AI Agent Security Benchmark](https://arxiv.org/html/2511.15759v1)
|
|
1217
|
+
- [XAI: SHAP and LIME](https://arxiv.org/html/2305.02012v3)
|
|
1218
|
+
- [XAI 2025 Guide](https://tensorblue.com/blog/explainable-ai-xai-shap-lime-model-interpretability-2025)
|
|
1219
|
+
|
|
1220
|
+
**Edge-Cloud AI:**
|
|
1221
|
+
- [Federated Learning and TinyML](https://www.sciencedirect.com/science/article/pii/S2405959525000839)
|
|
1222
|
+
- [Advancing TinyML in IoT](https://www.mdpi.com/1999-5903/17/6/257)
|
|
1223
|
+
- [TinyML and Edge AI 2025](https://www.nexentron.com/blog/tinyml-edge-ai-microcontrollers-2025)
|
|
1224
|
+
- [AI Model Compression 2025](https://tensorblue.com/blog/ai-model-compression-pruning-quantization-knowledge-distillation-2025)
|
|
1225
|
+
- [Edge LLM Deployment 2025](https://medium.com/@kodekx-solutions/edge-llm-deployment-on-small-devices-the-2025-guide-2eafb7c59d07)
|
|
1226
|
+
|
|
1227
|
+
**Compliance-as-Code:**
|
|
1228
|
+
- [OSCAL - NIST](https://pages.nist.gov/OSCAL/)
|
|
1229
|
+
- [FedRAMP Automation](https://automate.fedramp.gov/about/)
|
|
1230
|
+
- [OSCAL and FedRAMP 2026](https://www.ignyteplatform.com/blog/fedramp/oscal-and-fedramp-automation/)
|
|
1231
|
+
- [FedRAMP 20x Requirements Guide 2026](https://www.workstreet.com/blog/fedramp-20x-requirements)
|
|
1232
|
+
- [FedRAMP 20x Phases and Timeline](https://pretorin.com/blog/fedramp-20x-phases-timeline/)
|
|
1233
|
+
- [AWS: Prepare for FedRAMP 20x](https://aws.amazon.com/blogs/publicsector/prepare-for-fedramp-20x-with-aws-automation-and-validation/)
|
|
1234
|
+
- [FedRAMP 20x GRC Automation](https://www.telos.com/blog/2026/01/13/fedramp-20x-how-automation-is-transforming-federal-cloud-authorization/)
|
|
1235
|
+
- [FedRAMP 20x Predictions 2026](https://360advanced.com/the-future-of-federal-cloud-security-5-predictions-for-fedramp-20x-in-2026/)
|
|
1236
|
+
- [FedRAMP 20x in 2026](https://lazarusalliance.com/fedramp-20x-in-2026/)
|