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,68 @@
|
|
|
1
|
+
# [TEMPLATE: CUI // SP-CTI]
|
|
2
|
+
# Goal: Multi-Agent Orchestration
|
|
3
|
+
|
|
4
|
+
## Purpose
|
|
5
|
+
Execute complex tasks using parallel multi-agent collaboration with domain authority enforcement, cross-agent memory, and structured reasoning.
|
|
6
|
+
|
|
7
|
+
## When to Use
|
|
8
|
+
- Tasks requiring multiple agent specializations (e.g., build + test + security + compliance)
|
|
9
|
+
- Tasks where domain experts should review/veto output (security review of code, compliance review of artifacts)
|
|
10
|
+
- Large tasks that benefit from parallel execution
|
|
11
|
+
|
|
12
|
+
## Workflow
|
|
13
|
+
|
|
14
|
+
### Step 1: Task Decomposition
|
|
15
|
+
- Tool: `tools/agent/team_orchestrator.py --decompose`
|
|
16
|
+
- Input: Task description, project_id
|
|
17
|
+
- Output: Workflow with DAG of subtasks
|
|
18
|
+
- Uses BedrockClient with structured output for intelligent decomposition
|
|
19
|
+
- Fallback: sequential decomposition if Bedrock unavailable
|
|
20
|
+
|
|
21
|
+
### Step 2: Authority Check
|
|
22
|
+
- Tool: `tools/agent/authority.py`
|
|
23
|
+
- Check which domain authorities need to review the workflow output
|
|
24
|
+
- Pre-register required veto checkpoints
|
|
25
|
+
|
|
26
|
+
### Step 3: Memory Injection
|
|
27
|
+
- Tool: `tools/agent/agent_memory.py --inject`
|
|
28
|
+
- Load relevant agent memories for each subtask agent
|
|
29
|
+
- Inject as system prompt context
|
|
30
|
+
|
|
31
|
+
### Step 4: Parallel Execution
|
|
32
|
+
- Tool: `tools/agent/team_orchestrator.py --execute`
|
|
33
|
+
- Execute subtasks respecting DAG dependencies
|
|
34
|
+
- Independent subtasks run in parallel via ThreadPoolExecutor
|
|
35
|
+
- Each subtask dispatched via A2A protocol
|
|
36
|
+
|
|
37
|
+
### Step 5: Collaboration Patterns
|
|
38
|
+
- Tool: `tools/agent/collaboration.py`
|
|
39
|
+
- Apply reviewer_pattern for security/compliance review
|
|
40
|
+
- Apply veto_pattern for domain authority enforcement
|
|
41
|
+
- Apply debate_pattern for architectural decisions
|
|
42
|
+
|
|
43
|
+
### Step 6: Result Aggregation
|
|
44
|
+
- Collect all subtask outputs
|
|
45
|
+
- Record collaboration outcomes
|
|
46
|
+
- Store lessons learned in agent memory
|
|
47
|
+
- Generate final workflow report
|
|
48
|
+
|
|
49
|
+
## Architecture Decisions
|
|
50
|
+
- D36: boto3 + ThreadPoolExecutor (no asyncio)
|
|
51
|
+
- D37: Model fallback chain (Opus 4.6 -> Sonnet 4.5 -> Sonnet 3.5)
|
|
52
|
+
- D40: graphlib.TopologicalSorter for DAG
|
|
53
|
+
- D41: SQLite mailbox with HMAC signing
|
|
54
|
+
- D42: YAML authority matrix
|
|
55
|
+
- D43: Project-scoped agent memory
|
|
56
|
+
|
|
57
|
+
## Edge Cases
|
|
58
|
+
- If Bedrock is unavailable: fall back to sequential execution with CLI
|
|
59
|
+
- If an agent is stale: skill_router finds alternative or escalates
|
|
60
|
+
- If a hard veto is issued: workflow pauses, creates approval_workflow entry
|
|
61
|
+
- If a subtask fails: mark workflow as partially_completed, continue other branches
|
|
62
|
+
|
|
63
|
+
## Success Criteria
|
|
64
|
+
- All subtasks completed (or explicitly handled failures)
|
|
65
|
+
- All required domain authority reviews passed
|
|
66
|
+
- Collaboration history recorded
|
|
67
|
+
- Token usage tracked
|
|
68
|
+
- Audit trail complete
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
# [TEMPLATE: CUI // SP-CTI]
|
|
2
|
+
# Observability, Traceability & Explainable AI Goal (Phase 46)
|
|
3
|
+
|
|
4
|
+
## Purpose
|
|
5
|
+
Provide full observability into SPARKPILOT's 15-agent architecture through distributed tracing,
|
|
6
|
+
artifact provenance, and explainable AI. Operators can see inside agent runs, trace tool call
|
|
7
|
+
chains, understand why agents chose specific tools, and demonstrate explainability for ATO compliance.
|
|
8
|
+
|
|
9
|
+
Maps to: NIST AI RMF MEASURE 2.5/2.7/2.8, DoD RAI "Traceable" principle, ISO 42001.
|
|
10
|
+
|
|
11
|
+
## Trigger
|
|
12
|
+
- Automatically active — SQLiteTracer is the default (zero-config, air-gap safe)
|
|
13
|
+
- OTelTracer activates when `ICDEV_MLFLOW_TRACKING_URI` is set
|
|
14
|
+
- XAI assessment triggered via `/sparkpilot-trace` skill or `xai_assess` MCP tool
|
|
15
|
+
|
|
16
|
+
## Workflow
|
|
17
|
+
|
|
18
|
+
### 1. Tracing Infrastructure
|
|
19
|
+
Pluggable tracer abstraction (D280):
|
|
20
|
+
- `NullTracer` — fallback when nothing configured
|
|
21
|
+
- `SQLiteTracer` — writes spans to `otel_spans` table (air-gapped default)
|
|
22
|
+
- `OTelTracer` — wraps OpenTelemetry SDK for production (optional)
|
|
23
|
+
- `ProxyTracer` — Haystack-pattern proxy for lazy initialization
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
# Check which tracer is active
|
|
27
|
+
python -c "from tools.observability import get_tracer; print(type(get_tracer()).__name__)"
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
### 2. Auto-Instrumentation
|
|
31
|
+
Three instrumentation points cover the entire system:
|
|
32
|
+
- **MCP base_server.py** (D284) — wraps `_handle_tools_call()`, auto-instruments all 15 MCP servers
|
|
33
|
+
- **LLM router** (D286) — GenAI semantic conventions on every LLM call
|
|
34
|
+
- **A2A protocol** (D285) — W3C traceparent propagation in JSON-RPC metadata
|
|
35
|
+
|
|
36
|
+
Content tracing is gated by `ICDEV_CONTENT_TRACING_ENABLED` (D282):
|
|
37
|
+
- SHA-256 hashes always recorded
|
|
38
|
+
- Plaintext only when explicitly opted in
|
|
39
|
+
|
|
40
|
+
### 3. W3C Traceparent Propagation
|
|
41
|
+
Extends D149 correlation ID to W3C `traceparent` format (D281):
|
|
42
|
+
- `agent_client.py` injects traceparent into A2A metadata
|
|
43
|
+
- `agent_server.py` extracts traceparent and restores trace context
|
|
44
|
+
- Creates linked cross-agent span hierarchies
|
|
45
|
+
|
|
46
|
+
### 4. Provenance Tracking (PROV-AGENT)
|
|
47
|
+
W3C PROV standard provenance in 3 append-only tables (D287):
|
|
48
|
+
- `prov_entities` — prompts, responses, documents, code, reports
|
|
49
|
+
- `prov_activities` — tool invocations, LLM calls, decisions, reviews
|
|
50
|
+
- `prov_relations` — wasGeneratedBy, used, wasInformedBy, wasDerivedFrom, wasAttributedTo
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
# Query provenance lineage
|
|
54
|
+
python tools/observability/provenance/prov_query.py --project-id proj-123 --lineage --json
|
|
55
|
+
|
|
56
|
+
# Export as PROV-JSON
|
|
57
|
+
python tools/observability/provenance/prov_export.py --project-id proj-123 --json
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### 5. AgentSHAP Tool Attribution
|
|
61
|
+
Monte Carlo Shapley value analysis for tool importance (D288):
|
|
62
|
+
- Model-agnostic, stdlib `random` for sampling (air-gap safe)
|
|
63
|
+
- 0.945 consistency per arXiv:2512.12597
|
|
64
|
+
- Deterministic complement to CoT (Oxford study confirms CoT is NOT reliable explainability)
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
# Run SHAP analysis on a trace
|
|
68
|
+
python tools/observability/shap/agent_shap.py --trace-id <id> --iterations 1000 --json
|
|
69
|
+
|
|
70
|
+
# Analyze last N traces for a project
|
|
71
|
+
python tools/observability/shap/agent_shap.py --project-id proj-123 --last-n 10 --json
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### 6. XAI Compliance Assessment
|
|
75
|
+
10 automated checks via BaseAssessor pattern (D289):
|
|
76
|
+
- XAI-001: Tracing active
|
|
77
|
+
- XAI-002: MCP instrumentation enabled
|
|
78
|
+
- XAI-003: A2A distributed tracing active
|
|
79
|
+
- XAI-004: Provenance graph populated
|
|
80
|
+
- XAI-005: Content tracing policy documented
|
|
81
|
+
- XAI-006: SHAP analysis recent (within 30 days)
|
|
82
|
+
- XAI-007: Decision rationale recorded
|
|
83
|
+
- XAI-008: Trace retention configured
|
|
84
|
+
- XAI-009: AI telemetry active
|
|
85
|
+
- XAI-010: Agent trust scoring active
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
# Run XAI assessment
|
|
89
|
+
python tools/compliance/xai_assessor.py --project-id proj-123 --json
|
|
90
|
+
|
|
91
|
+
# Gate evaluation
|
|
92
|
+
python tools/compliance/xai_assessor.py --project-id proj-123 --gate
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### 7. Dashboard Visibility
|
|
96
|
+
Three new dashboard pages:
|
|
97
|
+
- `/traces` — Trace explorer: stat grid, trace list, span waterfall SVG
|
|
98
|
+
- `/provenance` — Provenance viewer: entity/activity tables, lineage query, PROV-JSON export
|
|
99
|
+
- `/xai` — XAI dashboard: assessment runner, coverage gauge, SHAP bar chart
|
|
100
|
+
|
|
101
|
+
### 8. MCP Server
|
|
102
|
+
`sparkpilot-observability` MCP server provides 6 tools + 2 resources:
|
|
103
|
+
- `trace_query` — Query traces and spans
|
|
104
|
+
- `trace_summary` — Aggregate trace statistics
|
|
105
|
+
- `prov_lineage` — Query provenance lineage
|
|
106
|
+
- `prov_export` — Export PROV-JSON
|
|
107
|
+
- `shap_analyze` — Run AgentSHAP analysis
|
|
108
|
+
- `xai_assess` — Run XAI compliance assessment
|
|
109
|
+
- `observability://config` — Current configuration
|
|
110
|
+
- `observability://stats` — Live statistics
|
|
111
|
+
|
|
112
|
+
## Tools Used
|
|
113
|
+
| Tool | Purpose |
|
|
114
|
+
|------|---------|
|
|
115
|
+
| `tools/observability/tracer.py` | Span/Tracer ABCs, NullTracer, ProxyTracer, content tag gating |
|
|
116
|
+
| `tools/observability/sqlite_tracer.py` | SQLite span writer (air-gapped default) |
|
|
117
|
+
| `tools/observability/otel_tracer.py` | OpenTelemetry SDK wrapper (optional) |
|
|
118
|
+
| `tools/observability/trace_context.py` | W3C traceparent parse/generate, contextvars propagation |
|
|
119
|
+
| `tools/observability/genai_attributes.py` | OTel GenAI semantic convention constants |
|
|
120
|
+
| `tools/observability/instrumentation.py` | `@traced()` decorator for auto-span creation |
|
|
121
|
+
| `tools/observability/mlflow_exporter.py` | Batch export SQLite spans to MLflow REST API |
|
|
122
|
+
| `tools/observability/provenance/prov_recorder.py` | Entity/Activity/Relation recording, span callbacks |
|
|
123
|
+
| `tools/observability/provenance/prov_query.py` | Lineage queries (backward/forward) |
|
|
124
|
+
| `tools/observability/provenance/prov_export.py` | PROV-JSON export |
|
|
125
|
+
| `tools/observability/shap/agent_shap.py` | Monte Carlo Shapley value computation |
|
|
126
|
+
| `tools/observability/shap/shap_reporter.py` | Report generation (JSON/markdown) |
|
|
127
|
+
| `tools/compliance/xai_assessor.py` | XAI compliance assessor (10 auto-checks) |
|
|
128
|
+
| `tools/mcp/observability_server.py` | MCP server (6 tools, 2 resources) |
|
|
129
|
+
| `tools/dashboard/api/traces.py` | Flask API Blueprint (traces, provenance, XAI) |
|
|
130
|
+
|
|
131
|
+
## Args
|
|
132
|
+
- `args/observability_tracing_config.yaml` — Tracer backend, sampling, retention, content policy, PROV/SHAP settings (D290)
|
|
133
|
+
- `args/security_gates.yaml` — `observability_xai` gate (blocking + warning conditions)
|
|
134
|
+
|
|
135
|
+
## Context
|
|
136
|
+
- `context/compliance/xai_requirements.json` — XAI requirements catalog (NIST AI RMF + DoD RAI + ISO 42001)
|
|
137
|
+
|
|
138
|
+
## Success Criteria
|
|
139
|
+
- Every MCP tool call produces a trace span in `otel_spans`
|
|
140
|
+
- A2A cross-agent calls have linked parent-child span hierarchies
|
|
141
|
+
- Provenance graph populated with entities and activities for project artifacts
|
|
142
|
+
- SHAP analysis produces deterministic Shapley values for tool attribution
|
|
143
|
+
- XAI assessment covers all 10 checks with valid statuses
|
|
144
|
+
- Dashboard pages render trace waterfall, provenance lineage, and SHAP bar chart
|
|
145
|
+
- Content tracing respects `ICDEV_CONTENT_TRACING_ENABLED` (never leaks plaintext in CUI mode)
|
|
146
|
+
- `observability_xai` security gate blocks on: tracing not active, provenance empty, XAI not assessed
|
|
147
|
+
|
|
148
|
+
## Edge Cases
|
|
149
|
+
- Database not initialized → SQLiteTracer creates `otel_spans` table on first write
|
|
150
|
+
- OpenTelemetry not installed → graceful fallback to SQLiteTracer (D280)
|
|
151
|
+
- MLflow unreachable → spans buffered in SQLite, exported when connectivity restored
|
|
152
|
+
- Content tracing off → SHA-256 hashes recorded, plaintext fields null
|
|
153
|
+
- No SHAP data → XAI-006 returns `not_satisfied`, warning in gate
|
|
154
|
+
- Provenance query cycles → max_depth parameter prevents infinite recursion
|
|
@@ -0,0 +1,395 @@
|
|
|
1
|
+
# [TEMPLATE: CUI // SP-CTI]
|
|
2
|
+
|
|
3
|
+
# Goal: OWASP Agentic AI Security (Phase 45)
|
|
4
|
+
|
|
5
|
+
## Standards
|
|
6
|
+
|
|
7
|
+
- OWASP Agentic AI Threats v1.1
|
|
8
|
+
- OWASP Securing Agentic Applications v1.0
|
|
9
|
+
- OWASP MCP Security Guide v1.0
|
|
10
|
+
- NIST 800-53 Rev 5: RA-3 (Risk Assessment), SA-11 (Developer Testing), SI-4 (System Monitoring), AU-6 (Audit Record Review)
|
|
11
|
+
|
|
12
|
+
## Purpose
|
|
13
|
+
|
|
14
|
+
Close 8 security gaps identified from OWASP agentic AI security analysis that are not covered by Phase 37 (MITRE ATLAS Integration). Phase 37 addresses static AI threats (prompt injection, model poisoning, supply chain attacks). This goal addresses **runtime agentic behavior** -- behavioral drift, tool chain abuse, output safety, dynamic trust, per-tool authorization, behavioral red teaming, and formal threat modeling.
|
|
15
|
+
|
|
16
|
+
**Why this matters:** Agentic AI systems introduce risks beyond traditional LLM threats. Agents make autonomous decisions, chain tool calls, produce outputs that flow into downstream systems, and evolve behavior over time. OWASP's agentic AI guidance specifically targets these emergent risks: an agent that passes all Phase 37 static checks can still drift into unsafe behavior at runtime, abuse tool chains in unexpected sequences, or leak classified data in generated outputs.
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## When to Use
|
|
21
|
+
|
|
22
|
+
- After Phase 37 (MITRE ATLAS Integration) is complete and operational
|
|
23
|
+
- When adding new agents or MCP servers to the SPARKPILOT multi-agent system
|
|
24
|
+
- Before ATO submission for systems that include agentic AI components
|
|
25
|
+
- After security incidents involving unexpected agent behavior or output
|
|
26
|
+
- When child applications (Phase 36) report anomalous behavioral patterns
|
|
27
|
+
- During DevSecOps maturity assessment (Phase 24) for agentic systems
|
|
28
|
+
- When configuring Zero Trust policies (Phase 25) for agent-to-agent communication
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Prerequisites
|
|
33
|
+
|
|
34
|
+
- [ ] Phase 37 complete (prompt injection detection, AI telemetry, ATLAS assessment operational)
|
|
35
|
+
- [ ] SPARKPILOT database initialized (`python tools/db/init_icdev_db.py`)
|
|
36
|
+
- [ ] Configuration: `args/owasp_agentic_config.yaml` (behavioral drift, tool chain, output validation, trust scoring, MCP authorization settings)
|
|
37
|
+
- [ ] Threat catalog: `context/compliance/owasp_agentic_threats.json` (OWASP T1-T17 threat definitions)
|
|
38
|
+
- [ ] Security gates configured: `args/security_gates.yaml` (owasp_agentic section)
|
|
39
|
+
- [ ] AI telemetry active (`ai_telemetry` table populated with baseline data)
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Workflow
|
|
44
|
+
|
|
45
|
+
### Step 1: Behavioral Drift Detection (Gap 1)
|
|
46
|
+
|
|
47
|
+
Monitor agent behavior against statistical baselines and alert when agents deviate from established operational patterns.
|
|
48
|
+
|
|
49
|
+
**Tool:** `tools/security/ai_telemetry_logger.py --drift`
|
|
50
|
+
|
|
51
|
+
**Config:** `args/owasp_agentic_config.yaml` -> `behavioral_drift`
|
|
52
|
+
|
|
53
|
+
**How it works:**
|
|
54
|
+
- Reads from `ai_telemetry` table to build per-agent behavioral baselines (tool call frequency, token volume, error rate, latency distribution)
|
|
55
|
+
- Computes z-score for each metric against a rolling 7-day window
|
|
56
|
+
- Z-score > 2.0 (configurable) triggers drift alert; z-score > 3.0 triggers ISSO notification
|
|
57
|
+
|
|
58
|
+
**CLI:**
|
|
59
|
+
```bash
|
|
60
|
+
python tools/security/ai_telemetry_logger.py --drift --project-id "proj-123" --json
|
|
61
|
+
python tools/security/ai_telemetry_logger.py --drift --agent-id "builder-agent" --window-days 14 --json
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**Output:** Drift events stored in `ai_telemetry` table with `event_type: behavioral_drift` (append-only, D6).
|
|
65
|
+
|
|
66
|
+
**ADR:** D257 -- Behavioral drift uses z-score statistical detection on existing telemetry data (no additional data collection, air-gap safe, deterministic)
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
### Step 2: Tool Chain Validation (Gap 2)
|
|
71
|
+
|
|
72
|
+
Validate that agent tool call sequences follow declared rules and detect unauthorized or anomalous tool chain patterns.
|
|
73
|
+
|
|
74
|
+
**Tool:** `tools/security/tool_chain_validator.py`
|
|
75
|
+
|
|
76
|
+
**Config:** `args/owasp_agentic_config.yaml` -> `tool_chain`
|
|
77
|
+
|
|
78
|
+
**What it validates:**
|
|
79
|
+
|
|
80
|
+
| Rule Type | Example | Action |
|
|
81
|
+
|-----------|---------|--------|
|
|
82
|
+
| Sequence enforcement | `scaffold` must precede `generate_code` | Block if violated |
|
|
83
|
+
| Forbidden sequences | `sast_runner` -> `rollback` (SAST bypass) | Block + alert ISSO |
|
|
84
|
+
| Rate limits | Max 50 tool calls per agent per minute | Throttle + warn |
|
|
85
|
+
| Depth limits | Max 10 chained tool calls per request | Block at limit |
|
|
86
|
+
|
|
87
|
+
**How it works:**
|
|
88
|
+
- Declarative YAML rules define allowed/forbidden tool sequences
|
|
89
|
+
- Sliding window tracks per-agent tool call history
|
|
90
|
+
- Violations written to `tool_chain_events` table (append-only, D6)
|
|
91
|
+
|
|
92
|
+
**CLI:**
|
|
93
|
+
```bash
|
|
94
|
+
python tools/security/tool_chain_validator.py --validate --project-id "proj-123" --json
|
|
95
|
+
python tools/security/tool_chain_validator.py --rules --json # Show configured rules
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
**ADR:** D258 -- Tool chain validation uses declarative YAML rules (D26 pattern), no LLM required, air-gap safe
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
### Step 3: Output Content Safety (Gap 3)
|
|
103
|
+
|
|
104
|
+
Validate agent-generated outputs for classification leaks, toxic content, and policy violations before delivery to users or downstream systems.
|
|
105
|
+
|
|
106
|
+
**Tool:** `tools/security/agent_output_validator.py`
|
|
107
|
+
|
|
108
|
+
**Config:** `args/owasp_agentic_config.yaml` -> `output_validation`
|
|
109
|
+
|
|
110
|
+
**What it checks:**
|
|
111
|
+
|
|
112
|
+
| Check | Description | Severity |
|
|
113
|
+
|-------|-------------|----------|
|
|
114
|
+
| Classification leak | CUI/SECRET content in unclassified output | Blocking |
|
|
115
|
+
| PII detection | SSN, email, phone patterns in output | Blocking |
|
|
116
|
+
| Prompt echo | System prompt or instructions leaked in output | Warning |
|
|
117
|
+
| Hallucination markers | Confidence qualifiers without evidence | Warning |
|
|
118
|
+
| Harmful content | Patterns matching unsafe instructions | Blocking |
|
|
119
|
+
|
|
120
|
+
**How it works:**
|
|
121
|
+
- Regex-based pattern matching for classification markers and PII (deterministic, air-gap safe)
|
|
122
|
+
- Classification leak detection compares output classification against channel max IL (extends D135 response filter)
|
|
123
|
+
- Violations written to `agent_output_violations` table (append-only, D6)
|
|
124
|
+
|
|
125
|
+
**CLI:**
|
|
126
|
+
```bash
|
|
127
|
+
python tools/security/agent_output_validator.py --validate --text "output text" --classification CUI --json
|
|
128
|
+
python tools/security/agent_output_validator.py --scan --project-id "proj-123" --json
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
**ADR:** D259 -- Output validation uses regex patterns and classification comparison (deterministic, no LLM, extends D135 response filter pattern)
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
### Step 4: Formal Threat Model (Gap 4)
|
|
136
|
+
|
|
137
|
+
Maintain a living STRIDE + OWASP agentic threat model for the SPARKPILOT multi-agent system.
|
|
138
|
+
|
|
139
|
+
**Goal:** `goals/agentic_threat_model.md`
|
|
140
|
+
|
|
141
|
+
**What it covers:**
|
|
142
|
+
- STRIDE analysis (Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service, Elevation of Privilege) applied to all 15 agents
|
|
143
|
+
- OWASP Agentic AI Threats T1-T17 mapped to SPARKPILOT agent architecture
|
|
144
|
+
- Attack surface inventory: MCP servers, A2A protocol, dashboard endpoints, remote gateway channels
|
|
145
|
+
- Review cadence: quarterly, or after adding new agents/MCP servers
|
|
146
|
+
|
|
147
|
+
**CLI:**
|
|
148
|
+
```bash
|
|
149
|
+
# Threat model is a goal document, not a tool -- reviewed and updated manually
|
|
150
|
+
# Validation of threat model freshness:
|
|
151
|
+
python tools/compliance/owasp_agentic_assessor.py --project-id "proj-123" --check-threat-model --json
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
**ADR:** D263 -- Threat model is a living document (not auto-generated) with quarterly review cadence; machine-checkable freshness via last-reviewed timestamp
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
### Step 5: Dynamic Trust Scoring (Gap 5)
|
|
159
|
+
|
|
160
|
+
Assign and maintain per-agent trust scores that decay on violations and recover on clean operation.
|
|
161
|
+
|
|
162
|
+
**Tool:** `tools/security/agent_trust_scorer.py`
|
|
163
|
+
|
|
164
|
+
**Config:** `args/owasp_agentic_config.yaml` -> `trust_scoring`
|
|
165
|
+
|
|
166
|
+
**Trust levels:**
|
|
167
|
+
|
|
168
|
+
| Level | Score Range | Permissions |
|
|
169
|
+
|-------|------------|-------------|
|
|
170
|
+
| Untrusted | < 0.30 | Read-only, no tool execution, ISSO alert |
|
|
171
|
+
| Degraded | 0.30 - 0.49 | Restricted tool set, all actions logged |
|
|
172
|
+
| Cautious | 0.50 - 0.69 | Normal tools, enhanced monitoring |
|
|
173
|
+
| Normal | >= 0.70 | Full permissions per role |
|
|
174
|
+
|
|
175
|
+
**Score dynamics:**
|
|
176
|
+
- Exponential decay on violation: `score = score * decay_factor` (default 0.8 per violation)
|
|
177
|
+
- Linear recovery on clean operation: `score = min(1.0, score + recovery_rate)` (default +0.01 per clean hour)
|
|
178
|
+
- Trust scores stored in `agent_trust_scores` table (append-only, D6)
|
|
179
|
+
|
|
180
|
+
**CLI:**
|
|
181
|
+
```bash
|
|
182
|
+
python tools/security/agent_trust_scorer.py --score --agent-id "builder-agent" --json
|
|
183
|
+
python tools/security/agent_trust_scorer.py --all --json
|
|
184
|
+
python tools/security/agent_trust_scorer.py --history --agent-id "builder-agent" --json
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
**ADR:** D260 -- Dynamic trust uses exponential decay + linear recovery (deterministic, no LLM, consistent with self-healing confidence scoring pattern)
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
### Step 6: MCP Per-Tool Authorization (Gap 6)
|
|
192
|
+
|
|
193
|
+
Enforce role-based access control at the individual MCP tool level, not just at the server level.
|
|
194
|
+
|
|
195
|
+
**Tool:** `tools/security/mcp_tool_authorizer.py`
|
|
196
|
+
|
|
197
|
+
**Config:** `args/owasp_agentic_config.yaml` -> `mcp_authorization`
|
|
198
|
+
|
|
199
|
+
**Role-to-tool matrix (extends D172 dashboard RBAC):**
|
|
200
|
+
|
|
201
|
+
| Role | Allowed Tools | Denied Tools |
|
|
202
|
+
|------|--------------|--------------|
|
|
203
|
+
| admin | All tools | None |
|
|
204
|
+
| pm | project_*, task_*, search_* | terraform_*, deploy_*, rollback |
|
|
205
|
+
| developer | scaffold, generate_code, write_tests, run_tests, lint | terraform_apply, rollback, ssp_generate |
|
|
206
|
+
| isso | ssp_generate, stig_check, sbom_generate, control_map | generate_code, terraform_apply |
|
|
207
|
+
| co | project_status, search_knowledge | All write operations |
|
|
208
|
+
|
|
209
|
+
**How it works:**
|
|
210
|
+
- Authorization matrix stored in YAML (D26 pattern)
|
|
211
|
+
- Checked at MCP request dispatch before tool execution
|
|
212
|
+
- Denied calls logged to audit trail with requester identity and denied tool
|
|
213
|
+
|
|
214
|
+
**CLI:**
|
|
215
|
+
```bash
|
|
216
|
+
python tools/security/mcp_tool_authorizer.py --check --role developer --tool terraform_apply --json
|
|
217
|
+
python tools/security/mcp_tool_authorizer.py --matrix --json # Show full authorization matrix
|
|
218
|
+
python tools/security/mcp_tool_authorizer.py --audit --json # Show recent denials
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
**ADR:** D261 -- Per-tool authorization uses declarative YAML matrix (D26 pattern), checked at dispatch, extends existing RBAC (D172)
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
### Step 7: Behavioral Red Teaming (Gap 7)
|
|
226
|
+
|
|
227
|
+
Conduct adversarial testing targeting agentic behavior patterns (not just LLM responses). Extends Phase 37 red teaming (D219) with 6 behavioral techniques.
|
|
228
|
+
|
|
229
|
+
**Tool:** `tools/security/atlas_red_team.py --behavioral`
|
|
230
|
+
|
|
231
|
+
**Behavioral red team techniques:**
|
|
232
|
+
|
|
233
|
+
| ID | Technique | What It Tests |
|
|
234
|
+
|----|-----------|---------------|
|
|
235
|
+
| BRT-001 | Goal Hijacking | Agent pursues attacker-defined goal instead of assigned task |
|
|
236
|
+
| BRT-002 | Tool Chain Manipulation | Agent executes forbidden tool sequences via indirect prompting |
|
|
237
|
+
| BRT-003 | Privilege Escalation | Agent attempts to invoke tools above its trust/role level |
|
|
238
|
+
| BRT-004 | Memory Poisoning | Adversarial content injected into agent memory/context |
|
|
239
|
+
| BRT-005 | Cascading Failure | Single agent failure propagates through A2A communication |
|
|
240
|
+
| BRT-006 | Output Weaponization | Agent generates outputs designed to exploit downstream consumers |
|
|
241
|
+
|
|
242
|
+
**Safety:** Behavioral red teaming is **opt-in only** (D219 pattern). Static checks only -- no actual exploitation. Runs against test fixtures, never production.
|
|
243
|
+
|
|
244
|
+
**CLI:**
|
|
245
|
+
```bash
|
|
246
|
+
python tools/security/atlas_red_team.py --behavioral --project-id "proj-123" --json
|
|
247
|
+
python tools/security/atlas_red_team.py --behavioral --technique BRT-003 --project-id "proj-123" --json
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
**Output:** Findings stored in `atlas_red_team_results` table (append-only, D6) with technique, severity, evidence, remediation.
|
|
251
|
+
|
|
252
|
+
**ADR:** D262 -- Behavioral red teaming uses static analysis checks (not live exploitation), opt-in only (D219), extends existing red team infrastructure
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
### Step 8: OWASP Agentic Assessment (Gap 8)
|
|
257
|
+
|
|
258
|
+
Comprehensive assessment against OWASP Agentic AI Threats v1.1 using BaseAssessor pattern with crosswalk to NIST 800-53.
|
|
259
|
+
|
|
260
|
+
**Tool:** `tools/compliance/owasp_agentic_assessor.py`
|
|
261
|
+
|
|
262
|
+
**Catalog:** `context/compliance/owasp_agentic_threats.json` (17 threats: T1-T17)
|
|
263
|
+
|
|
264
|
+
**17 automated checks:**
|
|
265
|
+
- T1 (Unauthorized Actions) -- agent trust scoring active, per-tool authorization enforced
|
|
266
|
+
- T2 (Excessive Autonomy) -- tool chain depth limits configured, human-in-the-loop gates present
|
|
267
|
+
- T3 (Insufficient Monitoring) -- AI telemetry active, behavioral drift detection enabled
|
|
268
|
+
- T4 (Prompt Injection) -- prompt injection detector operational (delegates to Phase 37)
|
|
269
|
+
- T5 (Insecure Output) -- output content safety validator active
|
|
270
|
+
- T6-T17 -- additional checks mapped to OWASP agentic threat taxonomy
|
|
271
|
+
|
|
272
|
+
**Crosswalk:** Through NIST 800-53 US hub (D111) via RA-3, SA-11, SI-4, AU-6.
|
|
273
|
+
|
|
274
|
+
**CLI:**
|
|
275
|
+
```bash
|
|
276
|
+
python tools/compliance/owasp_agentic_assessor.py --project-id "proj-123" --json
|
|
277
|
+
python tools/compliance/owasp_agentic_assessor.py --project-id "proj-123" --gate
|
|
278
|
+
python tools/compliance/owasp_agentic_assessor.py --project-id "proj-123" --check-threat-model --json
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
**Output:** Assessment results stored in `owasp_agentic_assessments` table (append-only, D6). Gate evaluation via `--gate` flag.
|
|
282
|
+
|
|
283
|
+
**ADR:** D264 -- OWASP Agentic assessor uses BaseAssessor pattern (D116) with 17 automated checks; crosswalks through NIST 800-53 US hub (D111)
|
|
284
|
+
|
|
285
|
+
---
|
|
286
|
+
|
|
287
|
+
## Security Gates
|
|
288
|
+
|
|
289
|
+
| Gate | Condition | Severity |
|
|
290
|
+
|------|-----------|----------|
|
|
291
|
+
| `behavioral_drift_unmonitored` | Behavioral drift detection not active | Blocking |
|
|
292
|
+
| `tool_chain_validation_disabled` | Tool chain validation rules not configured | Blocking |
|
|
293
|
+
| `output_safety_not_enforced` | Output content safety validator not active | Blocking |
|
|
294
|
+
| `agent_trust_scoring_disabled` | Dynamic trust scoring not enabled | Blocking |
|
|
295
|
+
| `mcp_authorization_missing` | Per-tool MCP authorization not configured | Blocking |
|
|
296
|
+
| `threat_model_expired` | Formal threat model not reviewed in 90 days | Blocking |
|
|
297
|
+
| `owasp_agentic_critical_gap` | Critical OWASP agentic threat unmitigated | Blocking |
|
|
298
|
+
| `behavioral_red_team_not_run` | IL5+ project without behavioral red team results | Warning |
|
|
299
|
+
| `trust_score_below_threshold` | Any agent trust score below 0.50 | Warning |
|
|
300
|
+
| `tool_chain_violations_detected` | Tool chain violations in last 24 hours | Warning |
|
|
301
|
+
|
|
302
|
+
---
|
|
303
|
+
|
|
304
|
+
## Integration Points
|
|
305
|
+
|
|
306
|
+
| Phase | Integration | How |
|
|
307
|
+
|-------|------------|-----|
|
|
308
|
+
| Phase 37 (ATLAS) | Extends prompt injection, telemetry, red teaming | Steps 1, 3, 7 build on Phase 37 tools; OWASP agentic crosswalks through same NIST US hub |
|
|
309
|
+
| Phase 36 (Evolutionary Intelligence) | Trust scoring for child apps | Child-reported behaviors factor into parent trust scoring; genome propagation requires trust >= 0.70 |
|
|
310
|
+
| Phase 24 (DevSecOps) | Pipeline security | Tool chain validation integrated into DevSecOps pipeline stages; output validation as post-generation gate |
|
|
311
|
+
| Phase 25 (ZTA) | Zero Trust per-tool auth | MCP per-tool authorization extends ZTA 7-pillar model (User Identity + Device Security pillars) |
|
|
312
|
+
| Phase 28 (Remote Gateway) | Remote command trust | Gateway commands factor into agent trust scoring; untrusted agents cannot receive remote commands |
|
|
313
|
+
|
|
314
|
+
---
|
|
315
|
+
|
|
316
|
+
## Troubleshooting
|
|
317
|
+
|
|
318
|
+
**Behavioral drift alerts firing on normal workload changes:**
|
|
319
|
+
```bash
|
|
320
|
+
# Increase z-score threshold or extend baseline window
|
|
321
|
+
# Edit args/owasp_agentic_config.yaml -> behavioral_drift.z_score_threshold: 3.0
|
|
322
|
+
# Or extend window: behavioral_drift.baseline_window_days: 14
|
|
323
|
+
python tools/security/ai_telemetry_logger.py --drift --agent-id "builder-agent" --window-days 14 --json
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
**Tool chain validation blocking legitimate sequences:**
|
|
327
|
+
```bash
|
|
328
|
+
# Add the sequence to allowed rules
|
|
329
|
+
# Edit args/owasp_agentic_config.yaml -> tool_chain.allowed_sequences
|
|
330
|
+
python tools/security/tool_chain_validator.py --rules --json # Review current rules
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
**Agent trust score stuck at low value:**
|
|
334
|
+
```bash
|
|
335
|
+
# Check violation history, then verify clean operation period
|
|
336
|
+
python tools/security/agent_trust_scorer.py --history --agent-id "builder-agent" --json
|
|
337
|
+
# Manual trust reset requires ISSO approval (logged to audit trail)
|
|
338
|
+
python tools/security/agent_trust_scorer.py --reset --agent-id "builder-agent" --approved-by "isso@mil" --json
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
**OWASP agentic assessment showing gaps after Phase 37 is complete:**
|
|
342
|
+
```bash
|
|
343
|
+
# Phase 45 covers runtime gaps not addressed by Phase 37 static checks
|
|
344
|
+
# Run the full assessment to see which specific gaps remain
|
|
345
|
+
python tools/compliance/owasp_agentic_assessor.py --project-id "proj-123" --json
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
---
|
|
349
|
+
|
|
350
|
+
## Architecture Decisions
|
|
351
|
+
|
|
352
|
+
| ID | Decision | Rationale |
|
|
353
|
+
|----|----------|-----------|
|
|
354
|
+
| D257 | Z-score behavioral drift on existing telemetry | No additional data collection; air-gap safe; deterministic statistical detection |
|
|
355
|
+
| D258 | Declarative YAML tool chain rules (D26 pattern) | Add/remove rules without code changes; auditable; air-gap safe |
|
|
356
|
+
| D259 | Regex-based output validation (extends D135) | Deterministic; no LLM required; consistent with response filter pattern |
|
|
357
|
+
| D260 | Exponential decay + linear recovery for trust | Penalizes violations quickly, rewards clean operation gradually; consistent with self-healing confidence |
|
|
358
|
+
| D261 | Per-tool YAML authorization matrix (D26 + D172) | Extends existing RBAC; declarative; no code changes to add roles/tools |
|
|
359
|
+
| D262 | Static behavioral red team checks (D219 pattern) | Opt-in only; no live exploitation; extends existing red team infrastructure |
|
|
360
|
+
| D263 | Living threat model with machine-checkable freshness | Human-authored for accuracy; automated staleness check for enforcement |
|
|
361
|
+
| D264 | OWASP Agentic assessor via BaseAssessor (D116) | Consistent pattern; crosswalk integration; gate evaluation; ~60 LOC per framework |
|
|
362
|
+
|
|
363
|
+
---
|
|
364
|
+
|
|
365
|
+
## GOTCHA Layer Mapping
|
|
366
|
+
|
|
367
|
+
| Step | GOTCHA Layer | Component |
|
|
368
|
+
|------|-------------|-----------|
|
|
369
|
+
| Behavioral Drift Detection | Tools | `ai_telemetry_logger.py --drift` |
|
|
370
|
+
| Tool Chain Validation | Tools | `tool_chain_validator.py` |
|
|
371
|
+
| Output Content Safety | Tools | `agent_output_validator.py` |
|
|
372
|
+
| Formal Threat Model | Goals | `agentic_threat_model.md` |
|
|
373
|
+
| Dynamic Trust Scoring | Tools | `agent_trust_scorer.py` |
|
|
374
|
+
| MCP Per-Tool Authorization | Tools | `mcp_tool_authorizer.py` |
|
|
375
|
+
| Behavioral Red Teaming | Tools | `atlas_red_team.py --behavioral` |
|
|
376
|
+
| OWASP Agentic Assessment | Tools | `owasp_agentic_assessor.py` |
|
|
377
|
+
| Agentic security config | Args | `args/owasp_agentic_config.yaml` |
|
|
378
|
+
| Threat catalog | Context | `context/compliance/owasp_agentic_threats.json` |
|
|
379
|
+
| Gate thresholds | Args | `args/security_gates.yaml` (owasp_agentic section) |
|
|
380
|
+
|
|
381
|
+
---
|
|
382
|
+
|
|
383
|
+
## Related Files
|
|
384
|
+
|
|
385
|
+
- **Goals:** `goals/atlas_integration.md` (Phase 37 -- prerequisite), `goals/evolutionary_intelligence.md` (Phase 36 -- trust integration), `goals/devsecops_workflow.md` (Phase 24 -- pipeline integration), `goals/zero_trust_architecture.md` (Phase 25 -- ZTA integration), `goals/agentic_threat_model.md` (threat model document)
|
|
386
|
+
- **Tools:** `tools/security/` (ai_telemetry_logger, tool_chain_validator, agent_output_validator, agent_trust_scorer, mcp_tool_authorizer, atlas_red_team), `tools/compliance/` (owasp_agentic_assessor)
|
|
387
|
+
- **Args:** `args/owasp_agentic_config.yaml`, `args/security_gates.yaml` (owasp_agentic section)
|
|
388
|
+
- **Context:** `context/compliance/owasp_agentic_threats.json`
|
|
389
|
+
- **Tests:** `tests/test_tool_chain_validator.py`, `tests/test_agent_output_validator.py`, `tests/test_agent_trust_scorer.py`, `tests/test_mcp_tool_authorizer.py`, `tests/test_owasp_agentic_assessor.py`
|
|
390
|
+
|
|
391
|
+
---
|
|
392
|
+
|
|
393
|
+
## Changelog
|
|
394
|
+
|
|
395
|
+
- 2026-02-22: Initial creation -- OWASP Agentic AI Security goal (Phase 45) with 8-step workflow closing gaps identified from OWASP agentic AI analysis: behavioral drift detection (D257), tool chain validation (D258), output content safety (D259), formal threat model (D263), dynamic trust scoring (D260), MCP per-tool authorization (D261), behavioral red teaming (D262), OWASP agentic assessment (D264). Cross-integrates with Phases 24, 25, 36, 37.
|