soloforge 1.2.8 → 1.2.9
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.
- package/README.md +105 -321
- package/dist/adapters/claude_code/claude_md.d.ts +5 -0
- package/dist/adapters/claude_code/claude_md.d.ts.map +1 -1
- package/dist/adapters/claude_code/claude_md.js +6 -0
- package/dist/adapters/claude_code/claude_md.js.map +1 -1
- package/dist/adapters/claude_code/hooks.d.ts +4 -0
- package/dist/adapters/claude_code/hooks.d.ts.map +1 -1
- package/dist/adapters/claude_code/hooks.js +5 -0
- package/dist/adapters/claude_code/hooks.js.map +1 -1
- package/dist/adapters/claude_code/server.d.ts.map +1 -1
- package/dist/adapters/claude_code/server.js +9 -21
- package/dist/adapters/claude_code/server.js.map +1 -1
- package/dist/adapters/claude_code/tools.d.ts +5 -0
- package/dist/adapters/claude_code/tools.d.ts.map +1 -1
- package/dist/adapters/claude_code/tools.js +619 -205
- package/dist/adapters/claude_code/tools.js.map +1 -1
- package/dist/adapters/codex/codex_config.d.ts +9 -0
- package/dist/adapters/codex/codex_config.d.ts.map +1 -1
- package/dist/adapters/codex/codex_config.js +11 -3
- package/dist/adapters/codex/codex_config.js.map +1 -1
- package/dist/adapters/codex/codex_rules.d.ts +5 -0
- package/dist/adapters/codex/codex_rules.d.ts.map +1 -1
- package/dist/adapters/codex/codex_rules.js +8 -1
- package/dist/adapters/codex/codex_rules.js.map +1 -1
- package/dist/adapters/shared/workflow_template.d.ts +5 -0
- package/dist/adapters/shared/workflow_template.d.ts.map +1 -1
- package/dist/adapters/shared/workflow_template.js +32 -79
- package/dist/adapters/shared/workflow_template.js.map +1 -1
- package/dist/adapters/trae/trae_config.d.ts +4 -0
- package/dist/adapters/trae/trae_config.d.ts.map +1 -1
- package/dist/adapters/trae/trae_config.js +5 -7
- package/dist/adapters/trae/trae_config.js.map +1 -1
- package/dist/adapters/trae/trae_rules.d.ts +5 -0
- package/dist/adapters/trae/trae_rules.d.ts.map +1 -1
- package/dist/adapters/trae/trae_rules.js +7 -1
- package/dist/adapters/trae/trae_rules.js.map +1 -1
- package/dist/bin/config_commands.d.ts +33 -0
- package/dist/bin/config_commands.d.ts.map +1 -0
- package/dist/bin/config_commands.js +222 -0
- package/dist/bin/config_commands.js.map +1 -0
- package/dist/bin/soloforge.js +609 -119
- package/dist/bin/soloforge.js.map +1 -1
- package/dist/engine/artifact_contract_registry.d.ts +138 -0
- package/dist/engine/artifact_contract_registry.d.ts.map +1 -0
- package/dist/engine/artifact_contract_registry.js +427 -0
- package/dist/engine/artifact_contract_registry.js.map +1 -0
- package/dist/engine/audit_pool.d.ts +40 -0
- package/dist/engine/audit_pool.d.ts.map +1 -1
- package/dist/engine/audit_pool.js +37 -1
- package/dist/engine/audit_pool.js.map +1 -1
- package/dist/engine/audit_sampler.d.ts +5 -0
- package/dist/engine/audit_sampler.d.ts.map +1 -1
- package/dist/engine/audit_sampler.js +6 -0
- package/dist/engine/audit_sampler.js.map +1 -1
- package/dist/engine/audit_verifier.d.ts.map +1 -1
- package/dist/engine/audit_verifier.js +5 -1
- package/dist/engine/audit_verifier.js.map +1 -1
- package/dist/engine/batch1_manifest.d.ts +61 -0
- package/dist/engine/batch1_manifest.d.ts.map +1 -0
- package/dist/engine/batch1_manifest.js +220 -0
- package/dist/engine/batch1_manifest.js.map +1 -0
- package/dist/engine/batch1_reality_gate.d.ts +40 -0
- package/dist/engine/batch1_reality_gate.d.ts.map +1 -0
- package/dist/engine/batch1_reality_gate.js +290 -0
- package/dist/engine/batch1_reality_gate.js.map +1 -0
- package/dist/engine/batch1_scenario_registry.d.ts +62 -0
- package/dist/engine/batch1_scenario_registry.d.ts.map +1 -0
- package/dist/engine/batch1_scenario_registry.js +392 -0
- package/dist/engine/batch1_scenario_registry.js.map +1 -0
- package/dist/engine/batch1_scenario_runners.d.ts +42 -0
- package/dist/engine/batch1_scenario_runners.d.ts.map +1 -0
- package/dist/engine/batch1_scenario_runners.js +292 -0
- package/dist/engine/batch1_scenario_runners.js.map +1 -0
- package/dist/engine/capability_action_advisor.d.ts +3 -0
- package/dist/engine/capability_action_advisor.d.ts.map +1 -1
- package/dist/engine/capability_action_advisor.js +10 -0
- package/dist/engine/capability_action_advisor.js.map +1 -1
- package/dist/engine/capability_registry.d.ts +21 -0
- package/dist/engine/capability_registry.d.ts.map +1 -1
- package/dist/engine/capability_registry.js +113 -0
- package/dist/engine/capability_registry.js.map +1 -1
- package/dist/engine/capability_state_store.d.ts +63 -0
- package/dist/engine/capability_state_store.d.ts.map +1 -1
- package/dist/engine/capability_state_store.js +49 -1
- package/dist/engine/capability_state_store.js.map +1 -1
- package/dist/engine/change_coordinator.d.ts.map +1 -1
- package/dist/engine/change_coordinator.js +5 -4
- package/dist/engine/change_coordinator.js.map +1 -1
- package/dist/engine/classifier.d.ts +15 -5
- package/dist/engine/classifier.d.ts.map +1 -1
- package/dist/engine/classifier.js +70 -69
- package/dist/engine/classifier.js.map +1 -1
- package/dist/engine/code_reviewer.d.ts +14 -0
- package/dist/engine/code_reviewer.d.ts.map +1 -1
- package/dist/engine/code_reviewer.js +109 -10
- package/dist/engine/code_reviewer.js.map +1 -1
- package/dist/engine/cognitive_anchor.d.ts +14 -0
- package/dist/engine/cognitive_anchor.d.ts.map +1 -1
- package/dist/engine/cognitive_anchor.js +26 -2
- package/dist/engine/cognitive_anchor.js.map +1 -1
- package/dist/engine/command_execution_contract.d.ts +226 -0
- package/dist/engine/command_execution_contract.d.ts.map +1 -0
- package/dist/engine/command_execution_contract.js +571 -0
- package/dist/engine/command_execution_contract.js.map +1 -0
- package/dist/engine/confidence_scorer.d.ts.map +1 -1
- package/dist/engine/confidence_scorer.js +1 -0
- package/dist/engine/confidence_scorer.js.map +1 -1
- package/dist/engine/config_precedence_contract.d.ts +269 -0
- package/dist/engine/config_precedence_contract.d.ts.map +1 -0
- package/dist/engine/config_precedence_contract.js +948 -0
- package/dist/engine/config_precedence_contract.js.map +1 -0
- package/dist/engine/conflict_gate.d.ts +13 -0
- package/dist/engine/conflict_gate.d.ts.map +1 -1
- package/dist/engine/conflict_gate.js +20 -2
- package/dist/engine/conflict_gate.js.map +1 -1
- package/dist/engine/consumable_asset_registry.d.ts +46 -0
- package/dist/engine/consumable_asset_registry.d.ts.map +1 -0
- package/dist/engine/consumable_asset_registry.js +758 -0
- package/dist/engine/consumable_asset_registry.js.map +1 -0
- package/dist/engine/contract_guard.d.ts +4 -0
- package/dist/engine/contract_guard.d.ts.map +1 -1
- package/dist/engine/contract_guard.js +15 -7
- package/dist/engine/contract_guard.js.map +1 -1
- package/dist/engine/convention_detector.d.ts.map +1 -1
- package/dist/engine/convention_detector.js +5 -2
- package/dist/engine/convention_detector.js.map +1 -1
- package/dist/engine/core_engineering_principles.d.ts +155 -0
- package/dist/engine/core_engineering_principles.d.ts.map +1 -0
- package/dist/engine/core_engineering_principles.js +426 -0
- package/dist/engine/core_engineering_principles.js.map +1 -0
- package/dist/engine/debt_reporter.d.ts.map +1 -1
- package/dist/engine/debt_reporter.js +3 -1
- package/dist/engine/debt_reporter.js.map +1 -1
- package/dist/engine/debt_tracker.d.ts.map +1 -1
- package/dist/engine/debt_tracker.js +9 -3
- package/dist/engine/debt_tracker.js.map +1 -1
- package/dist/engine/debugger.d.ts.map +1 -1
- package/dist/engine/debugger.js +2 -0
- package/dist/engine/debugger.js.map +1 -1
- package/dist/engine/decision_contract.d.ts +11 -2
- package/dist/engine/decision_contract.d.ts.map +1 -1
- package/dist/engine/decision_contract.js +17 -2
- package/dist/engine/decision_contract.js.map +1 -1
- package/dist/engine/delivery.d.ts +7 -0
- package/dist/engine/delivery.d.ts.map +1 -1
- package/dist/engine/delivery.js +89 -36
- package/dist/engine/delivery.js.map +1 -1
- package/dist/engine/dependency_scanner.d.ts.map +1 -1
- package/dist/engine/dependency_scanner.js +14 -9
- package/dist/engine/dependency_scanner.js.map +1 -1
- package/dist/engine/developer_sovereignty.d.ts.map +1 -1
- package/dist/engine/developer_sovereignty.js +8 -2
- package/dist/engine/developer_sovereignty.js.map +1 -1
- package/dist/engine/diff_ownership.d.ts.map +1 -1
- package/dist/engine/diff_ownership.js +8 -0
- package/dist/engine/diff_ownership.js.map +1 -1
- package/dist/engine/diff_ownership_store.d.ts +26 -10
- package/dist/engine/diff_ownership_store.d.ts.map +1 -1
- package/dist/engine/diff_ownership_store.js +47 -20
- package/dist/engine/diff_ownership_store.js.map +1 -1
- package/dist/engine/dual_layer_mechanism_registry.d.ts +66 -0
- package/dist/engine/dual_layer_mechanism_registry.d.ts.map +1 -0
- package/dist/engine/dual_layer_mechanism_registry.js +1077 -0
- package/dist/engine/dual_layer_mechanism_registry.js.map +1 -0
- package/dist/engine/escape_report.d.ts +50 -0
- package/dist/engine/escape_report.d.ts.map +1 -1
- package/dist/engine/escape_report.js +38 -0
- package/dist/engine/escape_report.js.map +1 -1
- package/dist/engine/evolver.d.ts.map +1 -1
- package/dist/engine/evolver.js +12 -2
- package/dist/engine/evolver.js.map +1 -1
- package/dist/engine/exploration.d.ts.map +1 -1
- package/dist/engine/exploration.js +87 -0
- package/dist/engine/exploration.js.map +1 -1
- package/dist/engine/failure_classifier.d.ts.map +1 -1
- package/dist/engine/failure_classifier.js +8 -0
- package/dist/engine/failure_classifier.js.map +1 -1
- package/dist/engine/feasibility_checker.d.ts +8 -0
- package/dist/engine/feasibility_checker.d.ts.map +1 -1
- package/dist/engine/feasibility_checker.js +12 -0
- package/dist/engine/feasibility_checker.js.map +1 -1
- package/dist/engine/git_deps.d.ts +4 -1
- package/dist/engine/git_deps.d.ts.map +1 -1
- package/dist/engine/git_deps.js +5 -1
- package/dist/engine/git_deps.js.map +1 -1
- package/dist/engine/governance_report.d.ts +57 -1
- package/dist/engine/governance_report.d.ts.map +1 -1
- package/dist/engine/governance_report.js +91 -1
- package/dist/engine/governance_report.js.map +1 -1
- package/dist/engine/impact_analyzer.d.ts.map +1 -1
- package/dist/engine/impact_analyzer.js +5 -1
- package/dist/engine/impact_analyzer.js.map +1 -1
- package/dist/engine/implementation_roadmap_registry.d.ts +105 -0
- package/dist/engine/implementation_roadmap_registry.d.ts.map +1 -0
- package/dist/engine/implementation_roadmap_registry.js +813 -0
- package/dist/engine/implementation_roadmap_registry.js.map +1 -0
- package/dist/engine/input_material_contract_registry.d.ts +185 -0
- package/dist/engine/input_material_contract_registry.d.ts.map +1 -0
- package/dist/engine/input_material_contract_registry.js +563 -0
- package/dist/engine/input_material_contract_registry.js.map +1 -0
- package/dist/engine/intent_expander.d.ts +8 -27
- package/dist/engine/intent_expander.d.ts.map +1 -1
- package/dist/engine/intent_expander.js +1170 -139
- package/dist/engine/intent_expander.js.map +1 -1
- package/dist/engine/intent_router.d.ts +82 -0
- package/dist/engine/intent_router.d.ts.map +1 -0
- package/dist/engine/intent_router.js +458 -0
- package/dist/engine/intent_router.js.map +1 -0
- package/dist/engine/io_controller.d.ts.map +1 -1
- package/dist/engine/io_controller.js +25 -13
- package/dist/engine/io_controller.js.map +1 -1
- package/dist/engine/java_quality_guard.d.ts.map +1 -1
- package/dist/engine/java_quality_guard.js +8 -4
- package/dist/engine/java_quality_guard.js.map +1 -1
- package/dist/engine/job_manager.d.ts +35 -0
- package/dist/engine/job_manager.d.ts.map +1 -1
- package/dist/engine/job_manager.js +53 -9
- package/dist/engine/job_manager.js.map +1 -1
- package/dist/engine/knowledge_config_loader.d.ts +12 -1
- package/dist/engine/knowledge_config_loader.d.ts.map +1 -1
- package/dist/engine/knowledge_config_loader.js +50 -10
- package/dist/engine/knowledge_config_loader.js.map +1 -1
- package/dist/engine/knowledge_injection_boundary.d.ts +56 -0
- package/dist/engine/knowledge_injection_boundary.d.ts.map +1 -0
- package/dist/engine/knowledge_injection_boundary.js +561 -0
- package/dist/engine/knowledge_injection_boundary.js.map +1 -0
- package/dist/engine/knowledge_manager.d.ts +73 -0
- package/dist/engine/knowledge_manager.d.ts.map +1 -1
- package/dist/engine/knowledge_manager.js +163 -21
- package/dist/engine/knowledge_manager.js.map +1 -1
- package/dist/engine/knowledge_sovereignty.d.ts +1 -0
- package/dist/engine/knowledge_sovereignty.d.ts.map +1 -1
- package/dist/engine/knowledge_sovereignty.js +8 -3
- package/dist/engine/knowledge_sovereignty.js.map +1 -1
- package/dist/engine/llm_gateway.d.ts +74 -3
- package/dist/engine/llm_gateway.d.ts.map +1 -1
- package/dist/engine/llm_gateway.js +75 -4
- package/dist/engine/llm_gateway.js.map +1 -1
- package/dist/engine/main_path_integration_contract.d.ts +383 -0
- package/dist/engine/main_path_integration_contract.d.ts.map +1 -0
- package/dist/engine/main_path_integration_contract.js +1581 -0
- package/dist/engine/main_path_integration_contract.js.map +1 -0
- package/dist/engine/mechanism_contract_registry.d.ts +59 -0
- package/dist/engine/mechanism_contract_registry.d.ts.map +1 -0
- package/dist/engine/mechanism_contract_registry.js +484 -0
- package/dist/engine/mechanism_contract_registry.js.map +1 -0
- package/dist/engine/migration_guard.d.ts.map +1 -1
- package/dist/engine/migration_guard.js +24 -15
- package/dist/engine/migration_guard.js.map +1 -1
- package/dist/engine/mutation_audit.d.ts +10 -0
- package/dist/engine/mutation_audit.d.ts.map +1 -1
- package/dist/engine/mutation_audit.js +19 -2
- package/dist/engine/mutation_audit.js.map +1 -1
- package/dist/engine/observability.d.ts.map +1 -1
- package/dist/engine/observability.js +17 -6
- package/dist/engine/observability.js.map +1 -1
- package/dist/engine/onboarding.d.ts.map +1 -1
- package/dist/engine/onboarding.js +20 -4
- package/dist/engine/onboarding.js.map +1 -1
- package/dist/engine/policy_drift_detector.d.ts +6 -0
- package/dist/engine/policy_drift_detector.d.ts.map +1 -1
- package/dist/engine/policy_drift_detector.js +16 -0
- package/dist/engine/policy_drift_detector.js.map +1 -1
- package/dist/engine/privacy_secret_contract.d.ts +320 -0
- package/dist/engine/privacy_secret_contract.d.ts.map +1 -0
- package/dist/engine/privacy_secret_contract.js +874 -0
- package/dist/engine/privacy_secret_contract.js.map +1 -0
- package/dist/engine/regression_matrix.d.ts +21 -8
- package/dist/engine/regression_matrix.d.ts.map +1 -1
- package/dist/engine/regression_matrix.js +37 -8
- package/dist/engine/regression_matrix.js.map +1 -1
- package/dist/engine/risk_sampler.d.ts +6 -0
- package/dist/engine/risk_sampler.d.ts.map +1 -1
- package/dist/engine/risk_sampler.js +9 -0
- package/dist/engine/risk_sampler.js.map +1 -1
- package/dist/engine/runtime_safety.d.ts.map +1 -1
- package/dist/engine/runtime_safety.js +7 -3
- package/dist/engine/runtime_safety.js.map +1 -1
- package/dist/engine/scaffolder.d.ts.map +1 -1
- package/dist/engine/scaffolder.js +7 -1
- package/dist/engine/scaffolder.js.map +1 -1
- package/dist/engine/scope_controller.d.ts.map +1 -1
- package/dist/engine/scope_controller.js +12 -1
- package/dist/engine/scope_controller.js.map +1 -1
- package/dist/engine/scope_lease.d.ts +43 -0
- package/dist/engine/scope_lease.d.ts.map +1 -1
- package/dist/engine/scope_lease.js +44 -0
- package/dist/engine/scope_lease.js.map +1 -1
- package/dist/engine/semantic_evidence.d.ts +6 -0
- package/dist/engine/semantic_evidence.d.ts.map +1 -1
- package/dist/engine/semantic_evidence.js +9 -0
- package/dist/engine/semantic_evidence.js.map +1 -1
- package/dist/engine/task_context.d.ts +36 -1
- package/dist/engine/task_context.d.ts.map +1 -1
- package/dist/engine/task_context.js +252 -13
- package/dist/engine/task_context.js.map +1 -1
- package/dist/engine/task_planner.d.ts.map +1 -1
- package/dist/engine/task_planner.js +13 -3
- package/dist/engine/task_planner.js.map +1 -1
- package/dist/engine/team_awareness.d.ts.map +1 -1
- package/dist/engine/team_awareness.js +8 -7
- package/dist/engine/team_awareness.js.map +1 -1
- package/dist/engine/template_mechanism_auditor.d.ts +93 -0
- package/dist/engine/template_mechanism_auditor.d.ts.map +1 -0
- package/dist/engine/template_mechanism_auditor.js +622 -0
- package/dist/engine/template_mechanism_auditor.js.map +1 -0
- package/dist/engine/test_generator.d.ts.map +1 -1
- package/dist/engine/test_generator.js +6 -0
- package/dist/engine/test_generator.js.map +1 -1
- package/dist/engine/test_quality.d.ts +6 -0
- package/dist/engine/test_quality.d.ts.map +1 -1
- package/dist/engine/test_quality.js +26 -10
- package/dist/engine/test_quality.js.map +1 -1
- package/dist/engine/tool_invocation_contract_registry.d.ts +136 -0
- package/dist/engine/tool_invocation_contract_registry.d.ts.map +1 -0
- package/dist/engine/tool_invocation_contract_registry.js +731 -0
- package/dist/engine/tool_invocation_contract_registry.js.map +1 -0
- package/dist/engine/traceability.d.ts +3 -0
- package/dist/engine/traceability.d.ts.map +1 -1
- package/dist/engine/traceability.js +12 -4
- package/dist/engine/traceability.js.map +1 -1
- package/dist/engine/user_feedback_contract.d.ts +162 -0
- package/dist/engine/user_feedback_contract.d.ts.map +1 -0
- package/dist/engine/user_feedback_contract.js +356 -0
- package/dist/engine/user_feedback_contract.js.map +1 -0
- package/dist/engine/verifier.d.ts +6 -1
- package/dist/engine/verifier.d.ts.map +1 -1
- package/dist/engine/verifier.js +114 -1
- package/dist/engine/verifier.js.map +1 -1
- package/dist/engine/workflow_contract_registry.d.ts +70 -0
- package/dist/engine/workflow_contract_registry.d.ts.map +1 -0
- package/dist/engine/workflow_contract_registry.js +501 -0
- package/dist/engine/workflow_contract_registry.js.map +1 -0
- package/dist/engine/workspace_resumer.d.ts.map +1 -1
- package/dist/engine/workspace_resumer.js +8 -0
- package/dist/engine/workspace_resumer.js.map +1 -1
- package/dist/engine/zero_config_init.d.ts +67 -2
- package/dist/engine/zero_config_init.d.ts.map +1 -1
- package/dist/engine/zero_config_init.js +410 -28
- package/dist/engine/zero_config_init.js.map +1 -1
- package/dist/git/operations.d.ts +101 -0
- package/dist/git/operations.d.ts.map +1 -1
- package/dist/git/operations.js +125 -9
- package/dist/git/operations.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +16 -5
- package/dist/index.js.map +1 -1
- package/dist/knowledge/conflict_detector.d.ts +6 -0
- package/dist/knowledge/conflict_detector.d.ts.map +1 -1
- package/dist/knowledge/conflict_detector.js +7 -0
- package/dist/knowledge/conflict_detector.js.map +1 -1
- package/dist/knowledge/health_checker.d.ts +16 -0
- package/dist/knowledge/health_checker.d.ts.map +1 -1
- package/dist/knowledge/health_checker.js +24 -1
- package/dist/knowledge/health_checker.js.map +1 -1
- package/dist/knowledge/index_manager.d.ts +140 -2
- package/dist/knowledge/index_manager.d.ts.map +1 -1
- package/dist/knowledge/index_manager.js +186 -26
- package/dist/knowledge/index_manager.js.map +1 -1
- package/dist/knowledge/loader.d.ts +8 -1
- package/dist/knowledge/loader.d.ts.map +1 -1
- package/dist/knowledge/loader.js +56 -2
- package/dist/knowledge/loader.js.map +1 -1
- package/dist/knowledge/writer.d.ts +49 -1
- package/dist/knowledge/writer.d.ts.map +1 -1
- package/dist/knowledge/writer.js +55 -1
- package/dist/knowledge/writer.js.map +1 -1
- package/dist/types.d.ts +255 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/logger.d.ts +3 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +29 -0
- package/dist/utils/logger.js.map +1 -0
- package/package.json +7 -7
- package/templates/knowledge/checklists//344/270/273/351/223/276/350/267/257/346/216/245/345/205/245/351/252/214/346/224/266/346/270/205/345/215/225.md +16 -0
- package/templates/knowledge/checklists//345/267/245/344/275/234/346/265/201/351/252/214/346/224/266/346/270/205/345/215/225.md +17 -0
- package/templates/knowledge/checklists//346/240/270/345/277/203/345/267/245/347/250/213/346/211/247/350/241/214/351/252/214/346/224/266/346/270/205/345/215/225.md +43 -0
- package/templates/knowledge/checklists//347/237/245/350/257/206/346/263/250/345/205/245/351/252/214/346/224/266/346/270/205/345/215/225.md +17 -0
- package/templates/knowledge/checklists//351/232/220/347/247/201/345/256/241/346/237/245/346/270/205/345/215/225.md +15 -0
- package/templates/knowledge/checklists//351/252/214/350/257/201/351/252/214/346/224/266/346/270/205/345/215/225.md +16 -0
- package/templates/knowledge/patterns/core//345/206/263/347/255/226/347/275/221/345/205/263.md +1 -0
- package/templates/knowledge/procedures//344/270/273/351/223/276/350/267/257/346/216/245/345/205/245/351/252/214/350/257/201/346/265/201/347/250/213.md +23 -0
- package/templates/knowledge/procedures//345/221/275/344/273/244/346/211/247/350/241/214/346/265/201/347/250/213.md +19 -0
- package/templates/knowledge/procedures//345/267/245/345/205/267/350/260/203/347/224/250/346/265/201/347/250/213.md +15 -0
- package/templates/knowledge/procedures//346/204/217/345/233/276/350/267/257/347/224/261/346/265/201/347/250/213.md +15 -0
- package/templates/knowledge/procedures//346/272/220/347/240/201/345/216/237/345/236/213/344/272/244/344/273/230/346/265/201/347/250/213.md +1 -1
- package/templates/knowledge/procedures//347/274/226/347/240/201/345/211/215/346/276/204/346/270/205/346/265/201/347/250/213.md +53 -0
- package/templates/knowledge/rules//344/272/247/347/211/251/345/245/221/347/272/246/350/247/204/345/210/231.md +21 -0
- package/templates/knowledge/rules//345/221/275/344/273/244/346/211/247/350/241/214/350/247/204/345/210/231.md +25 -0
- package/templates/knowledge/rules//345/267/245/344/275/234/346/265/201/345/245/221/347/272/246/350/247/204/345/210/231.md +20 -0
- package/templates/knowledge/rules//345/267/245/345/205/267/350/260/203/347/224/250/350/247/204/345/210/231.md +25 -0
- package/templates/knowledge/rules//346/204/217/345/233/276/350/267/257/347/224/261/350/247/204/345/210/231.md +26 -0
- package/templates/knowledge/rules//346/211/247/350/241/214/345/256/210/345/215/253/350/257/204/344/274/260/350/247/204/345/210/231.md +24 -0
- package/templates/knowledge/rules//346/225/217/346/204/237/344/277/241/346/201/257/345/244/204/347/220/206/350/247/204/345/210/231.md +20 -0
- package/templates/knowledge/rules//346/240/270/345/277/203/345/267/245/347/250/213/346/211/247/350/241/214/345/216/237/345/210/231.md +125 -0
- package/templates/knowledge/rules//346/263/250/345/206/214/350/241/250/345/237/272/347/241/200/350/256/276/346/226/275/350/247/204/345/210/231.md +26 -0
- package/templates/knowledge/rules//347/224/250/346/210/267/345/217/215/351/246/210/345/245/221/347/272/246/350/247/204/345/210/231.md +22 -0
- package/templates/knowledge/rules//347/237/245/350/257/206/346/263/250/345/205/245/350/276/271/347/225/214/350/247/204/345/210/231.md +25 -0
- package/templates/knowledge/rules//350/276/223/345/205/245/346/235/220/346/226/231/345/245/221/347/272/246/350/247/204/345/210/231.md +27 -0
- package/templates/knowledge/rules//351/205/215/347/275/256/344/274/230/345/205/210/347/272/247/350/247/204/345/210/231.md +22 -0
- package/templates/knowledge/rules//351/230/262/345/255/244/345/262/233/345/256/236/347/216/260/350/247/204/345/210/231.md +24 -0
- package/templates/knowledge/rules//351/233/266/351/205/215/347/275/256/345/210/235/345/247/213/345/214/226/350/247/204/345/210/231.md +28 -0
- package/templates/knowledge/rules//351/252/214/350/257/201/345/245/221/347/272/246/350/247/204/345/210/231.md +25 -0
- package/templates/knowledge/templates/{review_summary.md → /345/256/241/346/237/245/346/221/230/350/246/201.md} +1 -1
- package/templates/config.yaml +0 -53
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
* 治理健康报告 — 汇总 audit pool、escape reports、capability action decisions、sample decisions。
|
|
3
3
|
* P2-5+P2-6 范围: 只读报告,不改状态。
|
|
4
4
|
*/
|
|
5
|
+
import { validateArtifactContracts } from "./artifact_contract_registry.js";
|
|
6
|
+
import { validateConfigPrecedence } from "./config_precedence_contract.js";
|
|
5
7
|
function deepCopyRule(rule) {
|
|
6
8
|
return { ...rule };
|
|
7
9
|
}
|
|
@@ -18,7 +20,32 @@ function deepCopySummary(summary) {
|
|
|
18
20
|
action: deepCopyDecision(summary.action),
|
|
19
21
|
};
|
|
20
22
|
}
|
|
21
|
-
|
|
23
|
+
/**
|
|
24
|
+
* 生成治理健康报告。
|
|
25
|
+
* 汇总审计池、逃逸报告、能力决策和抽样决策的统计数据,识别危险策略和降级候选。
|
|
26
|
+
* 支持双层机制、制品契约、配置优先级契约和核心原则的治理检查。
|
|
27
|
+
* @param auditStats - 审计池统计数据
|
|
28
|
+
* @param auditItems - 审计条目列表
|
|
29
|
+
* @param escapeReports - 逃逸报告列表
|
|
30
|
+
* @param escapeStats - 逃逸报告统计数据
|
|
31
|
+
* @param decisions - 能力动作决策列表
|
|
32
|
+
* @param now - 报告生成时间(可选,默认当前时间)
|
|
33
|
+
* @param sampleDecisions - 抽样决策列表(可选)
|
|
34
|
+
* @param dualLayerFindings - 双层机制发现列表(可选)
|
|
35
|
+
* @param dualLayerMechanismCount - 双层机制总数(可选)
|
|
36
|
+
* @param artifacts - 输出制品列表(可选,用于制品契约检查)
|
|
37
|
+
* @param configReports - 配置解析报告列表(可选)
|
|
38
|
+
* @param configEntries - 配置优先级证据条目列表(可选)
|
|
39
|
+
* @param corePrinciples - 核心原则遵循性报告列表(可选)
|
|
40
|
+
* @returns 完整的治理健康报告
|
|
41
|
+
*/
|
|
42
|
+
/**
|
|
43
|
+
* 生成治理健康报告。
|
|
44
|
+
* @param options - 报告选项,包含审计池和能力状态存储
|
|
45
|
+
* @returns 治理报告,包含任务统计、逃逸分析和降级建议
|
|
46
|
+
*/
|
|
47
|
+
export function generateReport(auditStats, auditItems, escapeReports, escapeStats, decisions, now, sampleDecisions, dualLayerFindings, dualLayerMechanismCount, artifacts, configReports, configEntries, corePrinciples) {
|
|
48
|
+
console.error("[soloForge] 治理报告: 生成治理健康报告");
|
|
22
49
|
const nonFPReports = escapeReports.filter((r) => r.failure_type !== "false_positive");
|
|
23
50
|
const fpReports = escapeReports.filter((r) => r.failure_type === "false_positive");
|
|
24
51
|
const sampledCount = sampleDecisions
|
|
@@ -38,11 +65,13 @@ export function generateReport(auditStats, auditItems, escapeReports, escapeStat
|
|
|
38
65
|
});
|
|
39
66
|
}
|
|
40
67
|
// Danger policies: any policy with escapes and a non-keep action
|
|
68
|
+
console.error("[soloForge] 治理报告: 识别危险策略,总决策数=" + decisions.length);
|
|
41
69
|
const dangerPolicies = [...policyMap.values()]
|
|
42
70
|
.filter((p) => p.escape_count > 0 && p.action.recommended_action !== "keep")
|
|
43
71
|
.sort((a, b) => b.escape_count - a.escape_count)
|
|
44
72
|
.map(deepCopySummary);
|
|
45
73
|
// Downgrade candidates: action is downgrade or disable
|
|
74
|
+
console.error("[soloForge] 治理报告: 识别降级候选策略");
|
|
46
75
|
const downgradeCandidates = [...policyMap.values()]
|
|
47
76
|
.filter((p) => p.action.recommended_action === "downgrade" || p.action.recommended_action === "disable")
|
|
48
77
|
.sort((a, b) => {
|
|
@@ -51,6 +80,7 @@ export function generateReport(auditStats, auditItems, escapeReports, escapeStat
|
|
|
51
80
|
})
|
|
52
81
|
.map(deepCopySummary);
|
|
53
82
|
// Top fixes: non-FP escape reports sorted by due_date, capped at 5
|
|
83
|
+
console.error("[soloForge] 治理报告: 整理 top fixes,非误报逃逸数=" + nonFPReports.length);
|
|
54
84
|
const topFixes = nonFPReports
|
|
55
85
|
.slice()
|
|
56
86
|
.sort((a, b) => a.due_date.localeCompare(b.due_date))
|
|
@@ -63,6 +93,62 @@ export function generateReport(auditStats, auditItems, escapeReports, escapeStat
|
|
|
63
93
|
owner: r.owner,
|
|
64
94
|
due_date: r.due_date,
|
|
65
95
|
}));
|
|
96
|
+
// Dual-layer mechanism summary
|
|
97
|
+
if (dualLayerFindings)
|
|
98
|
+
console.error("[soloForge] 治理报告: 双层机制发现数=" + dualLayerFindings.length);
|
|
99
|
+
const dlHardFails = (dualLayerFindings ?? []).filter((f) => f.severity === "hard_fail");
|
|
100
|
+
const dlAdvisory = (dualLayerFindings ?? []).filter((f) => f.severity === "advisory");
|
|
101
|
+
const dlSummary = dualLayerFindings
|
|
102
|
+
? {
|
|
103
|
+
total_mechanisms: dualLayerMechanismCount ?? 0,
|
|
104
|
+
dual_layer_enforced_count: (dualLayerMechanismCount ?? 0) - dlHardFails.length,
|
|
105
|
+
hard_fail_count: dlHardFails.length,
|
|
106
|
+
advisory_count: dlAdvisory.length,
|
|
107
|
+
findings: [...dualLayerFindings],
|
|
108
|
+
}
|
|
109
|
+
: undefined;
|
|
110
|
+
// Artifact governance
|
|
111
|
+
if (artifacts && artifacts.length > 0)
|
|
112
|
+
console.error("[soloForge] 治理报告: 检查制品契约,制品数=" + artifacts.length);
|
|
113
|
+
let artifactGovernance;
|
|
114
|
+
if (artifacts && artifacts.length > 0) {
|
|
115
|
+
const findings = validateArtifactContracts(artifacts);
|
|
116
|
+
artifactGovernance = {
|
|
117
|
+
artifact_count: artifacts.length,
|
|
118
|
+
hard_fail_count: findings.filter(f => f.severity === "hard_fail").length,
|
|
119
|
+
advisory_count: findings.filter(f => f.severity === "advisory").length,
|
|
120
|
+
findings,
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
// Config precedence governance
|
|
124
|
+
if (configReports && configReports.length > 0)
|
|
125
|
+
console.error("[soloForge] 治理报告: 检查配置优先级契约,报告数=" + configReports.length);
|
|
126
|
+
let configPrecedenceGovernance;
|
|
127
|
+
if (configReports && configReports.length > 0) {
|
|
128
|
+
const cpFindings = validateConfigPrecedence(configReports, configEntries ?? []);
|
|
129
|
+
configPrecedenceGovernance = {
|
|
130
|
+
hard_fail_count: cpFindings.filter(f => f.severity === "hard_fail").length,
|
|
131
|
+
advisory_count: cpFindings.filter(f => f.severity === "advisory").length,
|
|
132
|
+
findings: cpFindings,
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
// Core principles governance
|
|
136
|
+
if (corePrinciples && corePrinciples.length > 0)
|
|
137
|
+
console.error("[soloForge] 治理报告: 检查核心原则遵循性,报告数=" + corePrinciples.length);
|
|
138
|
+
let corePrinciplesGovernance;
|
|
139
|
+
if (corePrinciples && corePrinciples.length > 0) {
|
|
140
|
+
// Merge all reports into a summary
|
|
141
|
+
const latestReport = corePrinciples[corePrinciples.length - 1];
|
|
142
|
+
corePrinciplesGovernance = {
|
|
143
|
+
task_level: latestReport.task_level,
|
|
144
|
+
overall_passed: corePrinciples.every(r => r.overall_passed),
|
|
145
|
+
principles: latestReport.principles.map(p => ({
|
|
146
|
+
principle_id: p.principle_id,
|
|
147
|
+
status: p.status,
|
|
148
|
+
findings: p.findings,
|
|
149
|
+
})),
|
|
150
|
+
};
|
|
151
|
+
}
|
|
66
152
|
return {
|
|
67
153
|
generated_at: (now ?? new Date()).toISOString(),
|
|
68
154
|
total_tasks: auditStats.total,
|
|
@@ -74,6 +160,10 @@ export function generateReport(auditStats, auditItems, escapeReports, escapeStat
|
|
|
74
160
|
danger_policies: dangerPolicies,
|
|
75
161
|
downgrade_candidates: downgradeCandidates,
|
|
76
162
|
top_fixes: topFixes,
|
|
163
|
+
dual_layer_summary: dlSummary,
|
|
164
|
+
artifact_governance: artifactGovernance,
|
|
165
|
+
config_precedence_governance: configPrecedenceGovernance,
|
|
166
|
+
core_principles_governance: corePrinciplesGovernance,
|
|
77
167
|
};
|
|
78
168
|
}
|
|
79
169
|
//# sourceMappingURL=governance_report.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"governance_report.js","sourceRoot":"","sources":["../../src/engine/governance_report.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"governance_report.js","sourceRoot":"","sources":["../../src/engine/governance_report.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"impact_analyzer.d.ts","sourceRoot":"","sources":["../../src/engine/impact_analyzer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAc,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjH;;;;;;;;GAQG;AAEH,eAAe;AACf,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,EAAE,YAAY,CAAC;IACxB,MAAM,EAAE,aAAa,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC,
|
|
1
|
+
{"version":3,"file":"impact_analyzer.d.ts","sourceRoot":"","sources":["../../src/engine/impact_analyzer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAc,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjH;;;;;;;;GAQG;AAEH,eAAe;AACf,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,EAAE,YAAY,CAAC;IACxB,MAAM,EAAE,aAAa,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAuD5F"}
|
|
@@ -8,6 +8,7 @@ import path from "node:path";
|
|
|
8
8
|
* @returns 影响分析结果,包含受影响文件列表、越界文件和建议
|
|
9
9
|
*/
|
|
10
10
|
export async function analyzeImpact(input) {
|
|
11
|
+
console.error("[soloForge] 影响分析: analyzeImpact() 开始执行");
|
|
11
12
|
const { intent, classification, expansion, config, projectPath } = input;
|
|
12
13
|
// 提取业务实体名
|
|
13
14
|
const entities = extractEntities(intent);
|
|
@@ -25,11 +26,13 @@ export async function analyzeImpact(input) {
|
|
|
25
26
|
}
|
|
26
27
|
// 在受影响仓库中搜索相关文件
|
|
27
28
|
const affectedFiles = await searchAffectedFiles(entities, classification.affected_repos, config, projectPath);
|
|
29
|
+
console.error("[soloForge] 影响分析: 搜索到受影响文件", affectedFiles.length, "个");
|
|
28
30
|
// 对比声明范围
|
|
29
31
|
const declaredScope = expansion.scope.allowed_paths;
|
|
30
32
|
const outOfScope = affectedFiles.filter((f) => !isPathInScope(f.path, declaredScope));
|
|
31
33
|
const scopeSufficient = outOfScope.length === 0;
|
|
32
34
|
const recommendation = deriveRecommendation(outOfScope);
|
|
35
|
+
console.error("[soloForge] 影响分析: 作用域" + (scopeSufficient ? "充分" : "不足") + ",建议: " + recommendation + ",越界文件: " + outOfScope.length);
|
|
33
36
|
const expandSuggestion = recommendation === "expand_scope"
|
|
34
37
|
? deduplicatePaths(outOfScope.map((f) => path.dirname(f.path)))
|
|
35
38
|
: undefined;
|
|
@@ -95,7 +98,8 @@ async function searchAffectedFiles(entities, affectedRepos, config, projectPath)
|
|
|
95
98
|
try {
|
|
96
99
|
files = await listFilesRecursive(repoPath);
|
|
97
100
|
}
|
|
98
|
-
catch {
|
|
101
|
+
catch (e) {
|
|
102
|
+
console.error("[soloForge] 影响分析: 仓库文件列表获取失败 —", e);
|
|
99
103
|
continue;
|
|
100
104
|
}
|
|
101
105
|
for (const filePath of files) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"impact_analyzer.js","sourceRoot":"","sources":["../../src/engine/impact_analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAsB7B;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAAyB;
|
|
1
|
+
{"version":3,"file":"impact_analyzer.js","sourceRoot":"","sources":["../../src/engine/impact_analyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Implementation Roadmap Contract 的落地注册表。
|
|
3
|
+
*
|
|
4
|
+
* 将 42 个追踪问题映射到 4 个实施批次(P0-P3),
|
|
5
|
+
* 提供查询、校验和跨注册表一致性检查能力。
|
|
6
|
+
*/
|
|
7
|
+
export type ProblemStatus = "completed" | "in_progress" | "planned" | "not_started";
|
|
8
|
+
export type ProblemPriority = "pre_completed" | "P0" | "P1" | "P2" | "P3";
|
|
9
|
+
export interface ProblemEntry {
|
|
10
|
+
id: string;
|
|
11
|
+
label: string;
|
|
12
|
+
title: string;
|
|
13
|
+
status: ProblemStatus;
|
|
14
|
+
priority: ProblemPriority;
|
|
15
|
+
batch_id: string | null;
|
|
16
|
+
completion_evidence?: string;
|
|
17
|
+
related_mechanism_ids: string[];
|
|
18
|
+
related_capability_ids: string[];
|
|
19
|
+
owner_module: string | null;
|
|
20
|
+
test_files: string[];
|
|
21
|
+
memo_section: string;
|
|
22
|
+
}
|
|
23
|
+
export interface ImplementationBatch {
|
|
24
|
+
batch_id: string;
|
|
25
|
+
priority: "P0" | "P1" | "P2" | "P3";
|
|
26
|
+
goal: string;
|
|
27
|
+
included_problem_ids: string[];
|
|
28
|
+
depends_on_batch_ids: string[];
|
|
29
|
+
depends_on_pre_completed: string[];
|
|
30
|
+
deliverables: string[];
|
|
31
|
+
acceptance_criteria: string[];
|
|
32
|
+
not_in_scope: string[];
|
|
33
|
+
}
|
|
34
|
+
export interface RoadmapGovernanceFinding {
|
|
35
|
+
severity: "hard_fail" | "advisory";
|
|
36
|
+
subject_id: string;
|
|
37
|
+
field: string;
|
|
38
|
+
message: string;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* 列出所有问题条目。
|
|
42
|
+
* @returns 所有问题条目的克隆副本列表
|
|
43
|
+
*/
|
|
44
|
+
export declare function listAllProblems(): ProblemEntry[];
|
|
45
|
+
/**
|
|
46
|
+
* 根据问题 ID 查找问题条目。
|
|
47
|
+
* @param id - 问题 ID(如 "problem-1")
|
|
48
|
+
* @returns 匹配的问题条目克隆副本,未找到则返回 undefined
|
|
49
|
+
*/
|
|
50
|
+
export declare function findProblemById(id: string): ProblemEntry | undefined;
|
|
51
|
+
/**
|
|
52
|
+
* 根据状态列出问题条目。
|
|
53
|
+
* @param status - 问题状态(completed / in_progress / planned / not_started)
|
|
54
|
+
* @returns 符合条件的问题条目克隆副本列表
|
|
55
|
+
*/
|
|
56
|
+
export declare function listProblemsByStatus(status: ProblemStatus): ProblemEntry[];
|
|
57
|
+
/**
|
|
58
|
+
* 根据批次 ID 列出问题条目。
|
|
59
|
+
* @param batchId - 批次 ID(如 "batch-1")
|
|
60
|
+
* @returns 属于该批次的问题条目克隆副本列表
|
|
61
|
+
*/
|
|
62
|
+
export declare function listProblemsByBatch(batchId: string): ProblemEntry[];
|
|
63
|
+
/**
|
|
64
|
+
* 列出所有实施批次。
|
|
65
|
+
* @returns 所有实施批次的克隆副本列表
|
|
66
|
+
*/
|
|
67
|
+
export declare function listBatches(): ImplementationBatch[];
|
|
68
|
+
/**
|
|
69
|
+
* 根据批次 ID 查找实施批次。
|
|
70
|
+
* @param id - 批次 ID(如 "batch-1")
|
|
71
|
+
* @returns 匹配的实施批次克隆副本,未找到则返回 undefined
|
|
72
|
+
*/
|
|
73
|
+
export declare function findBatchById(id: string): ImplementationBatch | undefined;
|
|
74
|
+
/**
|
|
75
|
+
* 获取指定批次的所有依赖批次 ID(递归)。
|
|
76
|
+
* @param batchId - 批次 ID
|
|
77
|
+
* @returns 所有直接和间接依赖的批次 ID 列表
|
|
78
|
+
*/
|
|
79
|
+
export declare function getBatchDependencies(batchId: string): string[];
|
|
80
|
+
/**
|
|
81
|
+
* 检查指定批次是否全部完成。
|
|
82
|
+
* @param batchId - 批次 ID
|
|
83
|
+
* @returns 批次中所有问题是否均已标记为 completed
|
|
84
|
+
*/
|
|
85
|
+
export declare function isBatchComplete(batchId: string): boolean;
|
|
86
|
+
/**
|
|
87
|
+
* 获取各状态问题的数量汇总。
|
|
88
|
+
* @returns 各状态对应的问题数量映射
|
|
89
|
+
*/
|
|
90
|
+
export declare function getProblemStatusSummary(): Record<ProblemStatus, number>;
|
|
91
|
+
/**
|
|
92
|
+
* 获取各优先级问题的数量汇总。
|
|
93
|
+
* @returns 各优先级对应的问题数量映射
|
|
94
|
+
*/
|
|
95
|
+
export declare function getProblemPrioritySummary(): Record<ProblemPriority, number>;
|
|
96
|
+
/**
|
|
97
|
+
* 校验实施路线图的一致性和完整性。
|
|
98
|
+
* @description 检查问题/批次唯一性、已完成问题的完成证据、前置完成规范集、
|
|
99
|
+
* 批次引用完整性、双向一致性等。
|
|
100
|
+
* @param problems - 待校验的问题列表,默认使用内置数据
|
|
101
|
+
* @param batches - 待校验的批次列表,默认使用内置数据
|
|
102
|
+
* @returns 治理发现列表(hard_fail 为硬性错误,advisory 为建议项)
|
|
103
|
+
*/
|
|
104
|
+
export declare function validateImplementationRoadmap(problems?: readonly ProblemEntry[], batches?: readonly ImplementationBatch[]): RoadmapGovernanceFinding[];
|
|
105
|
+
//# sourceMappingURL=implementation_roadmap_registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"implementation_roadmap_registry.d.ts","sourceRoot":"","sources":["../../src/engine/implementation_roadmap_registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,MAAM,aAAa,GACrB,WAAW,GACX,aAAa,GACb,SAAS,GACT,aAAa,CAAC;AAElB,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE1E,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,WAAW,GAAG,UAAU,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AA+iBD;;;GAGG;AACH,wBAAgB,eAAe,IAAI,YAAY,EAAE,CAGhD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAIpE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,EAAE,CAG1E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,EAAE,CAGnE;AAID;;;GAGG;AACH,wBAAgB,WAAW,IAAI,mBAAmB,EAAE,CAGnD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAIzE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAc9D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAQxD;AAID;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAKvE;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAK3E;AAID;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,GAAE,SAAS,YAAY,EAAoB,EACnD,OAAO,GAAE,SAAS,mBAAmB,EAA2B,GAC/D,wBAAwB,EAAE,CA+I5B"}
|