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
goals/security_scan.md
ADDED
|
@@ -0,0 +1,381 @@
|
|
|
1
|
+
# Goal: Comprehensive Security Scanning
|
|
2
|
+
|
|
3
|
+
## Description
|
|
4
|
+
|
|
5
|
+
Run a full security scanning pipeline covering static analysis (SAST), dependency auditing, secret detection, and container scanning. Enforce quality gates that block deployment if critical findings exist. Generate a consolidated security report.
|
|
6
|
+
|
|
7
|
+
**Why this matters:** A single undetected vulnerability in a government system can be a national security incident. Defense-in-depth means layering multiple scanners — no single tool catches everything. This workflow runs them all and aggregates results.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Prerequisites
|
|
12
|
+
|
|
13
|
+
- [ ] Project initialized (`goals/init_project.md` completed)
|
|
14
|
+
- [ ] Project has source code to scan
|
|
15
|
+
- [ ] Scanner tools installed or available: bandit, pip-audit/npm-audit, detect-secrets, trivy
|
|
16
|
+
- [ ] Container image built (for container scanning) — optional if no containers
|
|
17
|
+
- [ ] `memory/MEMORY.md` loaded (session context)
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Quality Gates
|
|
22
|
+
|
|
23
|
+
These gates MUST pass for the project to proceed to deployment:
|
|
24
|
+
|
|
25
|
+
| Gate | Threshold | Blocks Deployment? |
|
|
26
|
+
|------|-----------|-------------------|
|
|
27
|
+
| Critical vulnerabilities | 0 | YES |
|
|
28
|
+
| High vulnerabilities (SAST) | 0 | YES |
|
|
29
|
+
| Detected secrets | 0 | YES |
|
|
30
|
+
| CAT1 STIG findings | 0 | YES |
|
|
31
|
+
| High dependency vulns | 0 | YES |
|
|
32
|
+
| Medium dependency vulns | <= 5 with documented POAM | NO (with POAM) |
|
|
33
|
+
| Low findings | Unlimited | NO |
|
|
34
|
+
|
|
35
|
+
**No exceptions without Authorizing Official written approval.**
|
|
36
|
+
|
|
37
|
+
### Security Scanning Pipeline
|
|
38
|
+
|
|
39
|
+
```mermaid
|
|
40
|
+
flowchart TB
|
|
41
|
+
START(["Start\nSecurity Scan"])
|
|
42
|
+
SAST["Step 1: SAST\nbandit / eslint-security\nStatic code analysis"]
|
|
43
|
+
G1{"Gate 1\n0 Critical\n0 High?"}
|
|
44
|
+
DEP["Step 2: Dependency Audit\npip-audit / npm audit\nCVE vulnerability check"]
|
|
45
|
+
G2{"Gate 2\n0 Critical\n0 High?"}
|
|
46
|
+
SEC["Step 3: Secret Detection\ndetect-secrets\nAPI keys, passwords, tokens"]
|
|
47
|
+
G3{"Gate 3\n0 Secrets?"}
|
|
48
|
+
CON["Step 4: Container Scan\ntrivy\nOS + app vulns, misconfig"]
|
|
49
|
+
G4{"Gate 4\n0 Critical\n0 High?"}
|
|
50
|
+
REPORT["Step 6: Consolidated\nSecurity Report"]
|
|
51
|
+
AUDIT["Step 7: Audit Trail\nLog results to DB"]
|
|
52
|
+
BLOCKED(["BLOCKED\nRemediate findings\nbefore deployment"])
|
|
53
|
+
|
|
54
|
+
START --> SAST --> G1
|
|
55
|
+
G1 -->|PASS| DEP
|
|
56
|
+
G1 -->|FAIL| BLOCKED
|
|
57
|
+
DEP --> G2
|
|
58
|
+
G2 -->|PASS| SEC
|
|
59
|
+
G2 -->|FAIL| BLOCKED
|
|
60
|
+
SEC --> G3
|
|
61
|
+
G3 -->|PASS| CON
|
|
62
|
+
G3 -->|FAIL| BLOCKED
|
|
63
|
+
CON --> G4
|
|
64
|
+
G4 -->|PASS| REPORT
|
|
65
|
+
G4 -->|FAIL| BLOCKED
|
|
66
|
+
REPORT --> AUDIT
|
|
67
|
+
BLOCKED -.->|After fix| START
|
|
68
|
+
|
|
69
|
+
style START fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
70
|
+
style SAST fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
71
|
+
style DEP fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
72
|
+
style SEC fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
73
|
+
style CON fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
74
|
+
style G1 fill:#3a3a1a,stroke:#ffc107,color:#e0e0e0
|
|
75
|
+
style G2 fill:#3a3a1a,stroke:#ffc107,color:#e0e0e0
|
|
76
|
+
style G3 fill:#3a3a1a,stroke:#ffc107,color:#e0e0e0
|
|
77
|
+
style G4 fill:#3a3a1a,stroke:#ffc107,color:#e0e0e0
|
|
78
|
+
style REPORT fill:#1a3a2d,stroke:#28a745,color:#e0e0e0
|
|
79
|
+
style AUDIT fill:#1a3a2d,stroke:#28a745,color:#e0e0e0
|
|
80
|
+
style BLOCKED fill:#3a1a1a,stroke:#dc3545,color:#e0e0e0
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## Process
|
|
86
|
+
|
|
87
|
+
### Step 1: Run Static Application Security Testing (SAST)
|
|
88
|
+
|
|
89
|
+
**Tool:** `python tools/security/sast_runner.py --project <name> --report --gate`
|
|
90
|
+
|
|
91
|
+
**Expected output:**
|
|
92
|
+
```
|
|
93
|
+
SAST scan complete: projects/<name>/security/scan-results/sast_report.json
|
|
94
|
+
|
|
95
|
+
Scanner: bandit (Python) / eslint-security (JavaScript)
|
|
96
|
+
Files scanned: <count>
|
|
97
|
+
Time elapsed: <seconds>s
|
|
98
|
+
|
|
99
|
+
Findings:
|
|
100
|
+
- CRITICAL: <count>
|
|
101
|
+
- HIGH: <count>
|
|
102
|
+
- MEDIUM: <count>
|
|
103
|
+
- LOW: <count>
|
|
104
|
+
Total: <count>
|
|
105
|
+
|
|
106
|
+
Top findings:
|
|
107
|
+
1. [HIGH] B608: SQL injection via string formatting (src/db.py:42)
|
|
108
|
+
2. [MEDIUM] B105: Hardcoded password string (src/config.py:15)
|
|
109
|
+
3. [LOW] B101: Use of assert in production code (src/utils.py:88)
|
|
110
|
+
|
|
111
|
+
Gate status: <PASS | FAIL — <count> critical/high findings>
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
**Error handling:**
|
|
115
|
+
- Scanner not installed → provide installation command, fail gracefully
|
|
116
|
+
- No source files found → warn, skip SAST (may be infra-only project)
|
|
117
|
+
- Scanner timeout → increase timeout, retry once
|
|
118
|
+
- False positives → document with `# nosec` comment + justification in POAM
|
|
119
|
+
|
|
120
|
+
**Verify:** Report file exists and is valid JSON. Gate correctly evaluates critical/high counts.
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
### Step 2: Run Dependency Audit
|
|
125
|
+
|
|
126
|
+
**Tool:** `python tools/security/dependency_auditor.py --project <name> --report --gate`
|
|
127
|
+
|
|
128
|
+
**Expected output:**
|
|
129
|
+
```
|
|
130
|
+
Dependency audit complete: projects/<name>/security/scan-results/dependency_report.json
|
|
131
|
+
|
|
132
|
+
Scanner: pip-audit (Python) / npm audit (JavaScript)
|
|
133
|
+
Dependencies scanned: <count> (direct: <count>, transitive: <count>)
|
|
134
|
+
|
|
135
|
+
Vulnerabilities found:
|
|
136
|
+
- CRITICAL: <count>
|
|
137
|
+
- HIGH: <count>
|
|
138
|
+
- MEDIUM: <count>
|
|
139
|
+
- LOW: <count>
|
|
140
|
+
Total: <count>
|
|
141
|
+
|
|
142
|
+
Details:
|
|
143
|
+
1. [CRITICAL] CVE-2024-XXXXX: requests 2.28.0 — SSRF vulnerability
|
|
144
|
+
Fix: upgrade to requests >= 2.31.0
|
|
145
|
+
2. [HIGH] CVE-2024-YYYYY: cryptography 38.0.0 — key extraction
|
|
146
|
+
Fix: upgrade to cryptography >= 41.0.0
|
|
147
|
+
|
|
148
|
+
Gate status: <PASS | FAIL — <count> critical/high vulnerabilities>
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
**Error handling:**
|
|
152
|
+
- No requirements.txt/package.json → cannot audit, fail with instructions
|
|
153
|
+
- pip-audit not installed → `pip install pip-audit`
|
|
154
|
+
- Network error (needed for CVE database) → use cached DB if available, warn about staleness
|
|
155
|
+
- Vulnerability has no fix available → document in POAM with "vendor dependency" status
|
|
156
|
+
|
|
157
|
+
**Verify:** All direct dependencies scanned. CVE IDs link to valid entries.
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
### Step 3: Run Secret Detection
|
|
162
|
+
|
|
163
|
+
**Tool:** `python tools/security/secret_detector.py --project <name> --report --gate`
|
|
164
|
+
|
|
165
|
+
**Expected output:**
|
|
166
|
+
```
|
|
167
|
+
Secret detection complete: projects/<name>/security/scan-results/secrets_report.json
|
|
168
|
+
|
|
169
|
+
Scanner: detect-secrets
|
|
170
|
+
Files scanned: <count>
|
|
171
|
+
Excluded: <count> (binary, generated)
|
|
172
|
+
|
|
173
|
+
Secrets detected:
|
|
174
|
+
- API keys: <count>
|
|
175
|
+
- Passwords: <count>
|
|
176
|
+
- Private keys: <count>
|
|
177
|
+
- Tokens: <count>
|
|
178
|
+
- Connection strings: <count>
|
|
179
|
+
Total: <count>
|
|
180
|
+
|
|
181
|
+
Details:
|
|
182
|
+
1. [SECRET] AWS Access Key ID found in src/config.py:23
|
|
183
|
+
2. [SECRET] Database password in .env.example:5
|
|
184
|
+
3. [SECRET] JWT secret in tests/conftest.py:12
|
|
185
|
+
|
|
186
|
+
Gate status: <PASS | FAIL — <count> secrets detected>
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
**CRITICAL: Gate threshold is ZERO. Any detected secret is a gate failure.**
|
|
190
|
+
|
|
191
|
+
**Immediate actions if secrets found:**
|
|
192
|
+
1. Rotate the compromised credential IMMEDIATELY
|
|
193
|
+
2. Remove from source code
|
|
194
|
+
3. Add to `.gitignore` / `.secrets.baseline`
|
|
195
|
+
4. Verify git history does not contain the secret (use `git filter-branch` or BFG Repo Cleaner)
|
|
196
|
+
5. Document the incident in the audit trail
|
|
197
|
+
|
|
198
|
+
**Error handling:**
|
|
199
|
+
- detect-secrets not installed → `pip install detect-secrets`
|
|
200
|
+
- Baseline file missing → generate with `detect-secrets scan > .secrets.baseline`
|
|
201
|
+
- False positive → add to `.secrets.baseline` with justification comment
|
|
202
|
+
- Secret in git history → this is a separate remediation task, flag it
|
|
203
|
+
|
|
204
|
+
**Verify:** Zero secrets in current codebase. Baseline file documents any allowed patterns.
|
|
205
|
+
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
### Step 4: Run Container Scanning
|
|
209
|
+
|
|
210
|
+
**Tool:** `python tools/security/container_scanner.py --project <name> --image "<image:tag>"`
|
|
211
|
+
|
|
212
|
+
**Expected output:**
|
|
213
|
+
```
|
|
214
|
+
Container scan complete: projects/<name>/security/scan-results/container_report.json
|
|
215
|
+
|
|
216
|
+
Scanner: trivy
|
|
217
|
+
Image: <image:tag>
|
|
218
|
+
OS: <detected OS>
|
|
219
|
+
Packages: <count>
|
|
220
|
+
|
|
221
|
+
Vulnerabilities:
|
|
222
|
+
- CRITICAL: <count>
|
|
223
|
+
- HIGH: <count>
|
|
224
|
+
- MEDIUM: <count>
|
|
225
|
+
- LOW: <count>
|
|
226
|
+
- UNKNOWN: <count>
|
|
227
|
+
Total: <count>
|
|
228
|
+
|
|
229
|
+
Misconfigurations:
|
|
230
|
+
- Running as root: <yes/no>
|
|
231
|
+
- Secrets in image: <count>
|
|
232
|
+
- Writable filesystem: <yes/no>
|
|
233
|
+
|
|
234
|
+
Gate status: <PASS | FAIL — <reason>>
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
**Skip conditions:**
|
|
238
|
+
- No Dockerfile in project → skip container scanning, log as "N/A"
|
|
239
|
+
- Image not built yet → attempt `docker build`, or skip with warning
|
|
240
|
+
|
|
241
|
+
**Error handling:**
|
|
242
|
+
- Docker not running → warn, skip container scan
|
|
243
|
+
- trivy not installed → provide installation instructions
|
|
244
|
+
- Image too large (> 2GB) → warn about scan time, proceed
|
|
245
|
+
- Network needed for vuln DB → use cached DB if available
|
|
246
|
+
|
|
247
|
+
**Verify:** Scan covers both OS packages and application dependencies. No root user in production images.
|
|
248
|
+
|
|
249
|
+
---
|
|
250
|
+
|
|
251
|
+
### Step 5: Check Quality Gates (Aggregate)
|
|
252
|
+
|
|
253
|
+
**Action:** Evaluate ALL scan results against the quality gates defined above.
|
|
254
|
+
|
|
255
|
+
```
|
|
256
|
+
=== SECURITY GATE CHECK ===
|
|
257
|
+
|
|
258
|
+
Gate 1: Critical vulnerabilities = 0 [PASS/FAIL]
|
|
259
|
+
Gate 2: High SAST findings = 0 [PASS/FAIL]
|
|
260
|
+
Gate 3: Detected secrets = 0 [PASS/FAIL]
|
|
261
|
+
Gate 4: High dependency vulns = 0 [PASS/FAIL]
|
|
262
|
+
Gate 5: Container critical/high = 0 [PASS/FAIL] (or N/A)
|
|
263
|
+
|
|
264
|
+
Overall: <ALL GATES PASS | BLOCKED — gates X, Y failed>
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
**If ANY gate fails:**
|
|
268
|
+
1. Do NOT proceed to deployment
|
|
269
|
+
2. Document all failures
|
|
270
|
+
3. Create POAM entries for each finding
|
|
271
|
+
4. Notify the user with specific remediation steps
|
|
272
|
+
5. Re-run scans after fixes to verify
|
|
273
|
+
|
|
274
|
+
**If ALL gates pass:**
|
|
275
|
+
1. Generate consolidated report (Step 6)
|
|
276
|
+
2. Mark security scan as "complete" in project status
|
|
277
|
+
3. Proceed to compliance workflow or deployment
|
|
278
|
+
|
|
279
|
+
---
|
|
280
|
+
|
|
281
|
+
### Step 6: Generate Consolidated Security Report
|
|
282
|
+
|
|
283
|
+
**Action:** Combine all scan results into a single report.
|
|
284
|
+
|
|
285
|
+
**Output format:**
|
|
286
|
+
```
|
|
287
|
+
=== CONSOLIDATED SECURITY REPORT ===
|
|
288
|
+
Project: <name>
|
|
289
|
+
Date: <YYYY-MM-DD>
|
|
290
|
+
Classification: CUI
|
|
291
|
+
|
|
292
|
+
SCAN SUMMARY:
|
|
293
|
+
SAST: <count> findings (<count> critical, <count> high)
|
|
294
|
+
Dependencies: <count> vulnerabilities
|
|
295
|
+
Secrets: <count> detected
|
|
296
|
+
Container: <count> vulnerabilities
|
|
297
|
+
|
|
298
|
+
GATE STATUS: <PASS | FAIL>
|
|
299
|
+
|
|
300
|
+
FINDINGS BY SEVERITY:
|
|
301
|
+
Critical: <total across all scanners>
|
|
302
|
+
High: <total>
|
|
303
|
+
Medium: <total>
|
|
304
|
+
Low: <total>
|
|
305
|
+
|
|
306
|
+
TOP RISKS:
|
|
307
|
+
1. <Most critical finding with remediation>
|
|
308
|
+
2. <Second most critical>
|
|
309
|
+
3. <Third most critical>
|
|
310
|
+
|
|
311
|
+
RECOMMENDATIONS:
|
|
312
|
+
- <Actionable recommendation 1>
|
|
313
|
+
- <Actionable recommendation 2>
|
|
314
|
+
|
|
315
|
+
NEXT STEPS:
|
|
316
|
+
- [ ] Remediate critical/high findings
|
|
317
|
+
- [ ] Re-run scans after remediation
|
|
318
|
+
- [ ] Update POAM with findings
|
|
319
|
+
- [ ] Schedule next scan: <date + 30 days>
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
---
|
|
323
|
+
|
|
324
|
+
### Step 7: Log to Audit Trail
|
|
325
|
+
|
|
326
|
+
**Tool:** `python tools/audit/audit_logger.py --event "security_scan_complete" --actor "orchestrator" --action "scan" --project <name>`
|
|
327
|
+
|
|
328
|
+
**Tool:** `python tools/memory/memory_write.py --content "Security scan complete for <name>. Gate: <PASS|FAIL>. Critical: <count>, High: <count>, Secrets: <count>" --type event --importance 8`
|
|
329
|
+
|
|
330
|
+
---
|
|
331
|
+
|
|
332
|
+
## Success Criteria
|
|
333
|
+
|
|
334
|
+
- [ ] SAST scan completed with results documented
|
|
335
|
+
- [ ] Dependency audit completed with all CVEs identified
|
|
336
|
+
- [ ] Secret detection completed with 0 secrets in codebase
|
|
337
|
+
- [ ] Container scan completed (or marked N/A if no containers)
|
|
338
|
+
- [ ] All quality gates evaluated
|
|
339
|
+
- [ ] Gate failures documented with remediation plans
|
|
340
|
+
- [ ] Consolidated report generated
|
|
341
|
+
- [ ] Audit trail entry logged
|
|
342
|
+
|
|
343
|
+
---
|
|
344
|
+
|
|
345
|
+
## Edge Cases & Notes
|
|
346
|
+
|
|
347
|
+
1. **Scanner disagreements:** Different scanners may classify the same finding at different severities. Use the HIGHEST severity when aggregating.
|
|
348
|
+
2. **False positive management:** Maintain a `.security-exceptions.yaml` file documenting accepted false positives with justification and reviewer approval.
|
|
349
|
+
3. **Air-gapped environments:** Some scanners need network access for CVE databases. Pre-download and cache vulnerability databases for offline use.
|
|
350
|
+
4. **Scan frequency:** Run on every commit (CI/CD), full scan weekly, and before any deployment.
|
|
351
|
+
5. **Zero-day response:** If a new CVE affects a dependency, trigger an emergency scan even outside the normal schedule.
|
|
352
|
+
6. **License scanning:** SBOM generation (compliance workflow) also checks licenses. GPL in proprietary code is a legal risk, not a security risk — route to legal review.
|
|
353
|
+
7. **Scan performance:** Full scans can be slow. For CI/CD, consider incremental scanning (only changed files) for SAST, full scan for dependencies.
|
|
354
|
+
|
|
355
|
+
---
|
|
356
|
+
|
|
357
|
+
## GOTCHA Layer Mapping
|
|
358
|
+
|
|
359
|
+
| Step | GOTCHA Layer | Component |
|
|
360
|
+
|------|-------------|-----------|
|
|
361
|
+
| Run SAST | Tools | sast_runner.py |
|
|
362
|
+
| Dependency audit | Tools | dependency_auditor.py |
|
|
363
|
+
| Secret detection | Tools | secret_detector.py |
|
|
364
|
+
| Container scan | Tools | container_scanner.py |
|
|
365
|
+
| Gate evaluation | Orchestration | AI (you) |
|
|
366
|
+
| Scanner config | Args | scanner settings |
|
|
367
|
+
| CVE references | Context | vulnerability databases |
|
|
368
|
+
|
|
369
|
+
---
|
|
370
|
+
|
|
371
|
+
## Related Files
|
|
372
|
+
|
|
373
|
+
- **Tools:** `tools/security/sast_runner.py`, `tools/security/dependency_auditor.py`, `tools/security/secret_detector.py`, `tools/security/container_scanner.py`
|
|
374
|
+
- **Feeds into:** `goals/compliance_workflow.md` (POAM generation), `goals/deploy_workflow.md` (gate check)
|
|
375
|
+
- **Database:** `data/icdev.db` (security_findings table)
|
|
376
|
+
|
|
377
|
+
---
|
|
378
|
+
|
|
379
|
+
## Changelog
|
|
380
|
+
|
|
381
|
+
- 2026-02-14: Initial creation
|
goals/self_healing.md
ADDED
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
# Goal: Self-Healing System
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Detect production issues automatically, match against known patterns, and remediate with appropriate confidence thresholds. Implements a feedback loop where successful fixes increase pattern confidence over time, creating an ever-improving knowledge base.
|
|
5
|
+
|
|
6
|
+
## Trigger
|
|
7
|
+
- Monitoring detects anomaly or error pattern
|
|
8
|
+
- `/icdev-monitor --self-heal` skill invoked
|
|
9
|
+
- CI/CD pipeline failure
|
|
10
|
+
- Alert threshold exceeded
|
|
11
|
+
|
|
12
|
+
## Inputs
|
|
13
|
+
- Error logs, metrics, or alert data
|
|
14
|
+
- Knowledge base patterns (`data/icdev.db` → `knowledge_patterns` table)
|
|
15
|
+
- Self-healing configuration (`args/monitoring_config.yaml`)
|
|
16
|
+
- Rate limit state (`self_healing_events` table)
|
|
17
|
+
|
|
18
|
+
## Process
|
|
19
|
+
|
|
20
|
+
### Step 1: Detect Issue
|
|
21
|
+
**Tools:** `tools/monitor/log_analyzer.py`, `tools/monitor/metric_collector.py`, `tools/monitor/alert_correlator.py`
|
|
22
|
+
- Parse logs for error patterns
|
|
23
|
+
- Check metrics against thresholds
|
|
24
|
+
- Correlate related alerts into single root cause
|
|
25
|
+
|
|
26
|
+
### Step 2: Match Against Knowledge Base
|
|
27
|
+
**Tool:** `tools/knowledge/pattern_detector.py`
|
|
28
|
+
- Search knowledge_patterns table for matching patterns
|
|
29
|
+
- Use statistical matching: BM25 keyword + frequency analysis + time correlation
|
|
30
|
+
- Return matched patterns with confidence scores
|
|
31
|
+
|
|
32
|
+
### Step 3: Analyze Root Cause
|
|
33
|
+
**Tool:** `tools/knowledge/self_heal_analyzer.py`
|
|
34
|
+
- If pattern match found: use pattern's known root cause
|
|
35
|
+
- If no match: use Bedrock LLM for root cause analysis (when available)
|
|
36
|
+
- Determine severity and impact scope
|
|
37
|
+
|
|
38
|
+
### Step 4: Decision Engine
|
|
39
|
+
Apply confidence thresholds:
|
|
40
|
+
|
|
41
|
+
| Confidence | Auto-Healable | Action |
|
|
42
|
+
|------------|---------------|--------|
|
|
43
|
+
| >= 0.7 | Yes | Auto-remediate immediately |
|
|
44
|
+
| >= 0.7 | No | Suggest fix, require approval |
|
|
45
|
+
| 0.3 - 0.7 | Any | Suggest fix, require approval |
|
|
46
|
+
| < 0.3 | Any | Escalate with full context |
|
|
47
|
+
|
|
48
|
+
### Step 5: Rate Limiting
|
|
49
|
+
Before executing any self-heal action:
|
|
50
|
+
- Check `self_healing_events` table for recent actions
|
|
51
|
+
- **Max 5 self-heal actions per hour** (configurable)
|
|
52
|
+
- **10-minute cooldown** between identical actions on same target
|
|
53
|
+
- If rate limited: queue action for later execution
|
|
54
|
+
|
|
55
|
+
### Step 6: Execute Remediation (if approved)
|
|
56
|
+
**Tool:** `tools/knowledge/self_heal_analyzer.py` → `trigger_self_heal()`
|
|
57
|
+
- Apply the pattern's documented solution
|
|
58
|
+
- Common actions:
|
|
59
|
+
- Restart service
|
|
60
|
+
- Scale up replicas
|
|
61
|
+
- Clear cache
|
|
62
|
+
- Rollback deployment
|
|
63
|
+
- Apply configuration fix
|
|
64
|
+
- Update dependency
|
|
65
|
+
|
|
66
|
+
### Step 7: Verify Fix
|
|
67
|
+
- Re-run health checks after remediation
|
|
68
|
+
- Confirm error pattern is no longer active
|
|
69
|
+
- Measure resolution time
|
|
70
|
+
|
|
71
|
+
### Step 8: Feedback Loop
|
|
72
|
+
- **Success:** Increment pattern `use_count`, increase `confidence` by 0.05 (max 1.0)
|
|
73
|
+
- **Failure:** Decrease `confidence` by 0.1, log failure reason
|
|
74
|
+
- Record event in `self_healing_events` with status
|
|
75
|
+
|
|
76
|
+
### Step 9: Audit Trail
|
|
77
|
+
**Tool:** `tools/audit/audit_logger.py`
|
|
78
|
+
- Record: event_type=self_heal.{auto|suggested|escalated}
|
|
79
|
+
- Include: pattern_id, confidence, action_taken, result
|
|
80
|
+
- **NIST Controls:** IR-4 (Incident Handling), IR-5 (Incident Monitoring), SI-5 (Security Alerts)
|
|
81
|
+
|
|
82
|
+
## Outputs
|
|
83
|
+
- Detection report (what was found)
|
|
84
|
+
- Pattern match results (known/unknown)
|
|
85
|
+
- Action taken or suggested
|
|
86
|
+
- Verification results
|
|
87
|
+
- Audit trail entry
|
|
88
|
+
|
|
89
|
+
## Configuration (monitoring_config.yaml)
|
|
90
|
+
```yaml
|
|
91
|
+
self_healing:
|
|
92
|
+
enabled: true
|
|
93
|
+
auto_heal_confidence_threshold: 0.7
|
|
94
|
+
suggest_fix_threshold: 0.3
|
|
95
|
+
max_actions_per_hour: 5
|
|
96
|
+
cooldown_minutes: 10
|
|
97
|
+
require_approval_for:
|
|
98
|
+
- deployment.rollback
|
|
99
|
+
- infrastructure.scale
|
|
100
|
+
- database.failover
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Pattern Learning
|
|
104
|
+
The knowledge base grows through:
|
|
105
|
+
1. **Manual addition:** Developer adds pattern via `/icdev-knowledge add`
|
|
106
|
+
2. **Failure analysis:** When failures are analyzed, new patterns are suggested
|
|
107
|
+
3. **Successful fixes:** Confirmed fixes become high-confidence patterns
|
|
108
|
+
4. **Cross-project learning:** Patterns from one project benefit all projects
|
|
109
|
+
|
|
110
|
+
## Edge Cases
|
|
111
|
+
- Cascading failures: detect and prevent remediation loops (max 3 retries per pattern per incident)
|
|
112
|
+
- Multiple simultaneous issues: prioritize by severity, handle sequentially
|
|
113
|
+
- Unknown patterns: always escalate, never auto-fix
|
|
114
|
+
- Infrastructure-level issues: require explicit approval regardless of confidence
|
|
115
|
+
- Rate limit exceeded: queue with priority, notify operations team
|
|
116
|
+
|
|
117
|
+
## Related Goals
|
|
118
|
+
- `monitoring.md` — Log analysis and metric collection
|
|
119
|
+
- `deploy_workflow.md` — Deployment and rollback
|
|
120
|
+
- `security_scan.md` — Security pattern detection
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
# Goal: Digital Program Twin Simulation (RICOAS Phase 3)
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Run 6-dimension what-if simulations to predict impact of requirements on architecture, compliance, supply chain, schedule, cost, and risk. Generate and compare COAs. Use Monte Carlo for probabilistic schedule/cost estimation.
|
|
5
|
+
|
|
6
|
+
## When to Use
|
|
7
|
+
- Before committing to a set of requirements, simulate their impact
|
|
8
|
+
- Compare multiple COAs side-by-side across all dimensions
|
|
9
|
+
- Need Monte Carlo estimation for schedule or cost confidence levels
|
|
10
|
+
- Scenario planning — "what if we add/remove these requirements?"
|
|
11
|
+
- RED-tier requirements need alternative COA generation
|
|
12
|
+
|
|
13
|
+
## Workflow
|
|
14
|
+
|
|
15
|
+
### What-If Simulation
|
|
16
|
+
1. Create scenario: `create_scenario` with modifications (add/remove requirements, change architecture)
|
|
17
|
+
2. Run simulation: `run_simulation` — computes baseline vs simulated across 6 dimensions
|
|
18
|
+
3. Review results: architecture impact, compliance delta, supply chain changes, schedule estimate, cost projection, risk score
|
|
19
|
+
4. Fork scenario for variations: `manage_scenarios` action=fork
|
|
20
|
+
|
|
21
|
+
### Monte Carlo Estimation
|
|
22
|
+
1. Run Monte Carlo: `run_monte_carlo` with dimension (schedule/cost/risk) and iterations
|
|
23
|
+
2. Review percentiles: P10 (optimistic), P50 (likely), P80 (management reserve), P90 (conservative)
|
|
24
|
+
3. Use histogram and CDF data for inline visualization
|
|
25
|
+
|
|
26
|
+
### COA Generation & Selection
|
|
27
|
+
1. Generate 3 COAs: `generate_coas` — Speed, Balanced, Comprehensive
|
|
28
|
+
2. Optionally simulate each COA: `generate_coas` with simulate=true
|
|
29
|
+
3. Compare COAs: `compare_coas` — side-by-side across all dimensions
|
|
30
|
+
4. For RED items: `generate_alternative_coa` — within-boundary alternatives
|
|
31
|
+
5. Present to customer: formatted comparison with recommendation (Balanced by default)
|
|
32
|
+
6. Customer selects: `select_coa` — records selection with rationale
|
|
33
|
+
|
|
34
|
+
### Simulation Pipeline Flowchart
|
|
35
|
+
|
|
36
|
+
```mermaid
|
|
37
|
+
flowchart TD
|
|
38
|
+
A["Create Scenario"] --> B["Run Simulation"]
|
|
39
|
+
|
|
40
|
+
subgraph SIM["6 Simulation Dimensions"]
|
|
41
|
+
direction TB
|
|
42
|
+
S1["Architecture Impact"]
|
|
43
|
+
S2["Compliance Delta"]
|
|
44
|
+
S3["Supply Chain Changes"]
|
|
45
|
+
S4["Schedule Estimate"]
|
|
46
|
+
S5["Cost Projection"]
|
|
47
|
+
S6["Risk Score"]
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
B --> SIM
|
|
51
|
+
SIM --> C["Monte Carlo Estimation"]
|
|
52
|
+
C --> D["P50 / P80 / P90 Estimates"]
|
|
53
|
+
D --> E["Generate 3 COAs"]
|
|
54
|
+
|
|
55
|
+
subgraph COA["COA Options"]
|
|
56
|
+
direction LR
|
|
57
|
+
C1["Speed COA\nMVP, 1-2 PIs\nHigher Risk"]
|
|
58
|
+
C2["Balanced COA\n P1+P2, 2-3 PIs\nModerate Risk"]
|
|
59
|
+
C3["Comprehensive COA\nFull Scope, 3-5 PIs\nLowest Risk"]
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
E --> COA
|
|
63
|
+
COA --> F["Compare COAs"]
|
|
64
|
+
F --> G["Customer Selects COA"]
|
|
65
|
+
G --> H["Record Selection + Rationale"]
|
|
66
|
+
|
|
67
|
+
style A fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
68
|
+
style B fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
69
|
+
style SIM fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
70
|
+
style S1 fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
71
|
+
style S2 fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
72
|
+
style S3 fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
73
|
+
style S4 fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
74
|
+
style S5 fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
75
|
+
style S6 fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
76
|
+
style C fill:#3a3a1a,stroke:#ffc107,color:#e0e0e0
|
|
77
|
+
style D fill:#1a3a2d,stroke:#28a745,color:#e0e0e0
|
|
78
|
+
style E fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
79
|
+
style COA fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
80
|
+
style C1 fill:#3a1a1a,stroke:#dc3545,color:#e0e0e0
|
|
81
|
+
style C2 fill:#3a2a1a,stroke:#e8590c,color:#e0e0e0
|
|
82
|
+
style C3 fill:#1a3a2d,stroke:#28a745,color:#e0e0e0
|
|
83
|
+
style F fill:#3a3a1a,stroke:#ffc107,color:#e0e0e0
|
|
84
|
+
style G fill:#1a3a5c,stroke:#4a90d9,color:#e0e0e0
|
|
85
|
+
style H fill:#1a3a2d,stroke:#28a745,color:#e0e0e0
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
### 6 Simulation Dimensions
|
|
89
|
+
| Dimension | Metrics | Data Sources |
|
|
90
|
+
|-----------|---------|-------------|
|
|
91
|
+
| Architecture | Component count, coupling, API surface, data flow complexity | SysML elements, digital thread |
|
|
92
|
+
| Compliance | Control coverage delta, POAM projection, boundary tier | project_controls, crosswalk, SSP |
|
|
93
|
+
| Supply Chain | New dependencies, vendor risk, SBOM delta, ISA changes | dependency graph, vendors, ISAs |
|
|
94
|
+
| Schedule | PERT estimates, Monte Carlo confidence, critical path | SAFe decomposition, risk events |
|
|
95
|
+
| Cost | T-shirt roll-up, vendor licensing, infra delta | ricoas_config cost models |
|
|
96
|
+
| Risk | Compound risk score, risk interaction, mitigation effectiveness | risk register, Monte Carlo |
|
|
97
|
+
|
|
98
|
+
## Tools Used
|
|
99
|
+
| Tool | Purpose |
|
|
100
|
+
|------|---------|
|
|
101
|
+
| tools/simulation/simulation_engine.py | 6-dimension simulation core |
|
|
102
|
+
| tools/simulation/monte_carlo.py | PERT/Monte Carlo estimation |
|
|
103
|
+
| tools/simulation/coa_generator.py | 3 COAs + RED alternatives |
|
|
104
|
+
| tools/simulation/scenario_manager.py | Fork, compare, export scenarios |
|
|
105
|
+
| tools/mcp/simulation_server.py | MCP server (8 tools) |
|
|
106
|
+
|
|
107
|
+
## Edge Cases
|
|
108
|
+
- Zero requirements in session → return empty simulation with warning
|
|
109
|
+
- Monte Carlo with < 100 iterations → warn about low confidence
|
|
110
|
+
- All requirements GREEN → skip boundary dimension
|
|
111
|
+
- COA selection without simulation → warn, allow anyway
|