soloforge 1.4.16 → 1.5.0
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 +76 -3
- package/dist/adapters/claude_code/claude_md.d.ts +1 -1
- package/dist/adapters/claude_code/claude_md.d.ts.map +1 -1
- package/dist/adapters/claude_code/claude_md.js.map +1 -1
- package/dist/adapters/claude_code/pre_prompt_contract.d.ts +4 -59
- package/dist/adapters/claude_code/pre_prompt_contract.d.ts.map +1 -1
- package/dist/adapters/claude_code/pre_prompt_contract.js +3 -111
- package/dist/adapters/claude_code/pre_prompt_contract.js.map +1 -1
- package/dist/adapters/claude_code/server.d.ts +1 -1
- package/dist/adapters/claude_code/server.d.ts.map +1 -1
- package/dist/adapters/claude_code/server.js.map +1 -1
- package/dist/adapters/claude_code/tools.d.ts +1 -1
- package/dist/adapters/claude_code/tools.d.ts.map +1 -1
- package/dist/adapters/claude_code/tools.js +65 -46
- package/dist/adapters/claude_code/tools.js.map +1 -1
- package/dist/adapters/codex/codex_rules.d.ts +1 -1
- package/dist/adapters/codex/codex_rules.d.ts.map +1 -1
- package/dist/adapters/codex/codex_rules.js +1 -24
- package/dist/adapters/codex/codex_rules.js.map +1 -1
- package/dist/adapters/shared/workflow_template.d.ts +8 -12
- package/dist/adapters/shared/workflow_template.d.ts.map +1 -1
- package/dist/adapters/shared/workflow_template.js +16 -78
- package/dist/adapters/shared/workflow_template.js.map +1 -1
- package/dist/adapters/trae/trae_rules.d.ts +1 -1
- package/dist/adapters/trae/trae_rules.d.ts.map +1 -1
- package/dist/adapters/trae/trae_rules.js +1 -10
- package/dist/adapters/trae/trae_rules.js.map +1 -1
- package/dist/bin/soloforge.d.ts.map +1 -1
- package/dist/bin/soloforge.js +53 -100
- package/dist/bin/soloforge.js.map +1 -1
- package/dist/engine/asset_manifest.d.ts.map +1 -1
- package/dist/engine/asset_manifest.js +118 -120
- package/dist/engine/asset_manifest.js.map +1 -1
- package/dist/engine/audit_pool.js.map +1 -1
- package/dist/engine/capability_registry.js +25 -25
- package/dist/engine/capability_registry.js.map +1 -1
- package/dist/engine/capability_state_store.js.map +1 -1
- package/dist/engine/change_coordinator.d.ts +1 -1
- package/dist/engine/change_coordinator.d.ts.map +1 -1
- package/dist/engine/change_coordinator.js.map +1 -1
- package/dist/engine/classifier.d.ts +1 -1
- package/dist/engine/classifier.d.ts.map +1 -1
- package/dist/engine/classifier.js +1 -1
- package/dist/engine/classifier.js.map +1 -1
- package/dist/engine/code_reviewer.d.ts +1 -1
- package/dist/engine/code_reviewer.d.ts.map +1 -1
- package/dist/engine/code_reviewer.js +1 -1
- package/dist/engine/code_reviewer.js.map +1 -1
- package/dist/engine/confidence_scorer.d.ts +1 -1
- package/dist/engine/confidence_scorer.d.ts.map +1 -1
- package/dist/engine/config_auto_repair.js.map +1 -1
- package/dist/engine/config_precedence_contract.js.map +1 -1
- package/dist/engine/consumable_asset_registry.d.ts +1 -1
- package/dist/engine/consumable_asset_registry.d.ts.map +1 -1
- package/dist/engine/consumable_asset_registry.js +236 -126
- package/dist/engine/consumable_asset_registry.js.map +1 -1
- package/dist/engine/consumption_trace_store.d.ts +40 -6
- package/dist/engine/consumption_trace_store.d.ts.map +1 -1
- package/dist/engine/consumption_trace_store.js +90 -47
- package/dist/engine/consumption_trace_store.js.map +1 -1
- package/dist/engine/contract_guard.d.ts +1 -1
- package/dist/engine/contract_guard.d.ts.map +1 -1
- package/dist/engine/contract_guard.js +9 -8
- package/dist/engine/contract_guard.js.map +1 -1
- package/dist/engine/contract_registry.d.ts.map +1 -1
- package/dist/engine/contract_registry.js +9 -11
- package/dist/engine/contract_registry.js.map +1 -1
- package/dist/engine/control_plane_contract.d.ts.map +1 -1
- package/dist/engine/control_plane_contract.js +7 -3
- package/dist/engine/control_plane_contract.js.map +1 -1
- package/dist/engine/convention_detector.js.map +1 -1
- package/dist/engine/core_engineering_principles.d.ts +1 -1
- package/dist/engine/core_engineering_principles.d.ts.map +1 -1
- package/dist/engine/core_engineering_principles.js +6 -6
- package/dist/engine/core_engineering_principles.js.map +1 -1
- package/dist/engine/core_experience_principle.d.ts +2 -2
- package/dist/engine/core_experience_principle.d.ts.map +1 -1
- package/dist/engine/core_experience_principle.js +4 -4
- package/dist/engine/core_experience_principle.js.map +1 -1
- package/dist/engine/debt_reporter.d.ts +1 -1
- package/dist/engine/debt_reporter.d.ts.map +1 -1
- package/dist/engine/debt_tracker.d.ts +1 -1
- package/dist/engine/debt_tracker.d.ts.map +1 -1
- package/dist/engine/debt_tracker.js.map +1 -1
- package/dist/engine/debugger.d.ts +1 -1
- package/dist/engine/debugger.d.ts.map +1 -1
- package/dist/engine/delivery.d.ts +1 -1
- package/dist/engine/delivery.d.ts.map +1 -1
- package/dist/engine/delivery.js.map +1 -1
- package/dist/engine/delivery_readiness.d.ts +2 -2
- package/dist/engine/delivery_readiness.d.ts.map +1 -1
- package/dist/engine/delivery_readiness.js.map +1 -1
- package/dist/engine/dependency_scanner.d.ts +1 -1
- package/dist/engine/dependency_scanner.d.ts.map +1 -1
- package/dist/engine/design_lifecycle_contract.js +2 -2
- package/dist/engine/design_lifecycle_contract.js.map +1 -1
- package/dist/engine/developer_sovereignty.d.ts +1 -1
- package/dist/engine/developer_sovereignty.d.ts.map +1 -1
- package/dist/engine/developer_sovereignty.js.map +1 -1
- package/dist/engine/diff_ownership_store.js.map +1 -1
- package/dist/engine/dual_layer_mechanism_registry.d.ts +1 -1
- package/dist/engine/dual_layer_mechanism_registry.d.ts.map +1 -1
- package/dist/engine/dual_layer_mechanism_registry.js +206 -84
- package/dist/engine/dual_layer_mechanism_registry.js.map +1 -1
- package/dist/engine/evolution_regression_gate.d.ts +2 -2
- package/dist/engine/evolution_regression_gate.js +3 -3
- package/dist/engine/evolution_regression_gate.js.map +1 -1
- package/dist/engine/evolver.d.ts +1 -1
- package/dist/engine/evolver.d.ts.map +1 -1
- package/dist/engine/evolver.js +1 -1
- package/dist/engine/evolver.js.map +1 -1
- package/dist/engine/expand_pipeline.d.ts +1 -1
- package/dist/engine/expand_pipeline.d.ts.map +1 -1
- package/dist/engine/explicit_asset_registry.d.ts.map +1 -1
- package/dist/engine/explicit_asset_registry.js +641 -268
- package/dist/engine/explicit_asset_registry.js.map +1 -1
- package/dist/engine/exploration.d.ts +1 -1
- package/dist/engine/exploration.d.ts.map +1 -1
- package/dist/engine/extension_platform_contracts.d.ts +2 -4
- package/dist/engine/extension_platform_contracts.d.ts.map +1 -1
- package/dist/engine/extension_platform_contracts.js +2 -3
- package/dist/engine/extension_platform_contracts.js.map +1 -1
- package/dist/engine/extension_scenario_registry.d.ts.map +1 -1
- package/dist/engine/extension_scenario_registry.js +5 -18
- package/dist/engine/extension_scenario_registry.js.map +1 -1
- package/dist/engine/failure_classifier.d.ts +1 -1
- package/dist/engine/failure_classifier.d.ts.map +1 -1
- package/dist/engine/feasibility_checker.d.ts +1 -1
- package/dist/engine/feasibility_checker.d.ts.map +1 -1
- package/dist/engine/foundation_scenario_registry.d.ts +3 -35
- package/dist/engine/foundation_scenario_registry.d.ts.map +1 -1
- package/dist/engine/foundation_scenario_registry.js +4 -181
- package/dist/engine/foundation_scenario_registry.js.map +1 -1
- package/dist/engine/foundation_scenario_runners.js +5 -5
- package/dist/engine/foundation_scenario_runners.js.map +1 -1
- package/dist/engine/gate_checks/checkAdapterLayerConsistency.d.ts +6 -0
- package/dist/engine/gate_checks/checkAdapterLayerConsistency.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkAdapterLayerConsistency.js +117 -0
- package/dist/engine/gate_checks/checkAdapterLayerConsistency.js.map +1 -0
- package/dist/engine/gate_checks/checkCodeObservability.d.ts +6 -0
- package/dist/engine/gate_checks/checkCodeObservability.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkCodeObservability.js +252 -0
- package/dist/engine/gate_checks/checkCodeObservability.js.map +1 -0
- package/dist/engine/gate_checks/checkCodeStyleEnforcement.d.ts +7 -0
- package/dist/engine/gate_checks/checkCodeStyleEnforcement.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkCodeStyleEnforcement.js +73 -0
- package/dist/engine/gate_checks/checkCodeStyleEnforcement.js.map +1 -0
- package/dist/engine/gate_checks/checkControlPlaneTrust.d.ts +9 -0
- package/dist/engine/gate_checks/checkControlPlaneTrust.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkControlPlaneTrust.js +111 -0
- package/dist/engine/gate_checks/checkControlPlaneTrust.js.map +1 -0
- package/dist/engine/gate_checks/checkCriticalProblemConsumption.d.ts +6 -0
- package/dist/engine/gate_checks/checkCriticalProblemConsumption.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkCriticalProblemConsumption.js +476 -0
- package/dist/engine/gate_checks/checkCriticalProblemConsumption.js.map +1 -0
- package/dist/engine/gate_checks/checkDependencyAudit.d.ts +6 -0
- package/dist/engine/gate_checks/checkDependencyAudit.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkDependencyAudit.js +40 -0
- package/dist/engine/gate_checks/checkDependencyAudit.js.map +1 -0
- package/dist/engine/gate_checks/checkDeprecatedCode.d.ts +6 -0
- package/dist/engine/gate_checks/checkDeprecatedCode.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkDeprecatedCode.js +262 -0
- package/dist/engine/gate_checks/checkDeprecatedCode.js.map +1 -0
- package/dist/engine/gate_checks/checkDiagnosticCentralization.d.ts +9 -0
- package/dist/engine/gate_checks/checkDiagnosticCentralization.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkDiagnosticCentralization.js +24 -0
- package/dist/engine/gate_checks/checkDiagnosticCentralization.js.map +1 -0
- package/dist/engine/gate_checks/checkDistFreshness.d.ts +6 -0
- package/dist/engine/gate_checks/checkDistFreshness.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkDistFreshness.js +57 -0
- package/dist/engine/gate_checks/checkDistFreshness.js.map +1 -0
- package/dist/engine/gate_checks/checkDualLayerSemantics.d.ts +6 -0
- package/dist/engine/gate_checks/checkDualLayerSemantics.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkDualLayerSemantics.js +88 -0
- package/dist/engine/gate_checks/checkDualLayerSemantics.js.map +1 -0
- package/dist/engine/gate_checks/checkImplementationContract.d.ts +6 -0
- package/dist/engine/gate_checks/checkImplementationContract.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkImplementationContract.js +90 -0
- package/dist/engine/gate_checks/checkImplementationContract.js.map +1 -0
- package/dist/engine/gate_checks/checkKnowledgeAssetSchemaP0.d.ts +6 -0
- package/dist/engine/gate_checks/checkKnowledgeAssetSchemaP0.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkKnowledgeAssetSchemaP0.js +30 -0
- package/dist/engine/gate_checks/checkKnowledgeAssetSchemaP0.js.map +1 -0
- package/dist/engine/gate_checks/checkKnowledgeLayer.d.ts +6 -0
- package/dist/engine/gate_checks/checkKnowledgeLayer.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkKnowledgeLayer.js +163 -0
- package/dist/engine/gate_checks/checkKnowledgeLayer.js.map +1 -0
- package/dist/engine/gate_checks/checkLongTermMechanization.d.ts +6 -0
- package/dist/engine/gate_checks/checkLongTermMechanization.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkLongTermMechanization.js +55 -0
- package/dist/engine/gate_checks/checkLongTermMechanization.js.map +1 -0
- package/dist/engine/gate_checks/checkMainlineConsumption.d.ts +6 -0
- package/dist/engine/gate_checks/checkMainlineConsumption.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkMainlineConsumption.js +312 -0
- package/dist/engine/gate_checks/checkMainlineConsumption.js.map +1 -0
- package/dist/engine/gate_checks/checkMechanismChain.d.ts +6 -0
- package/dist/engine/gate_checks/checkMechanismChain.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkMechanismChain.js +196 -0
- package/dist/engine/gate_checks/checkMechanismChain.js.map +1 -0
- package/dist/engine/gate_checks/checkMechanismIdentity.d.ts +6 -0
- package/dist/engine/gate_checks/checkMechanismIdentity.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkMechanismIdentity.js +125 -0
- package/dist/engine/gate_checks/checkMechanismIdentity.js.map +1 -0
- package/dist/engine/gate_checks/checkReleaseIssueDesignPath.d.ts +6 -0
- package/dist/engine/gate_checks/checkReleaseIssueDesignPath.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkReleaseIssueDesignPath.js +736 -0
- package/dist/engine/gate_checks/checkReleaseIssueDesignPath.js.map +1 -0
- package/dist/engine/gate_checks/checkStandardAssetCoverage.d.ts +6 -0
- package/dist/engine/gate_checks/checkStandardAssetCoverage.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkStandardAssetCoverage.js +34 -0
- package/dist/engine/gate_checks/checkStandardAssetCoverage.js.map +1 -0
- package/dist/engine/gate_checks/checkStateChainHealth.d.ts +6 -0
- package/dist/engine/gate_checks/checkStateChainHealth.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkStateChainHealth.js +147 -0
- package/dist/engine/gate_checks/checkStateChainHealth.js.map +1 -0
- package/dist/engine/gate_checks/checkTemplateKnowledgeHygiene.d.ts +10 -0
- package/dist/engine/gate_checks/checkTemplateKnowledgeHygiene.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkTemplateKnowledgeHygiene.js +314 -0
- package/dist/engine/gate_checks/checkTemplateKnowledgeHygiene.js.map +1 -0
- package/dist/engine/gate_checks/checkTestPollution.d.ts +6 -0
- package/dist/engine/gate_checks/checkTestPollution.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkTestPollution.js +67 -0
- package/dist/engine/gate_checks/checkTestPollution.js.map +1 -0
- package/dist/engine/gate_checks/checkWorkflowNavigation.d.ts +6 -0
- package/dist/engine/gate_checks/checkWorkflowNavigation.d.ts.map +1 -0
- package/dist/engine/gate_checks/checkWorkflowNavigation.js +168 -0
- package/dist/engine/gate_checks/checkWorkflowNavigation.js.map +1 -0
- package/dist/engine/gate_checks/helpers.d.ts +28 -0
- package/dist/engine/gate_checks/helpers.d.ts.map +1 -0
- package/dist/engine/gate_checks/helpers.js +91 -0
- package/dist/engine/gate_checks/helpers.js.map +1 -0
- package/dist/engine/gate_checks/types.d.ts +38 -0
- package/dist/engine/gate_checks/types.d.ts.map +1 -0
- package/dist/engine/gate_checks/types.js +5 -0
- package/dist/engine/gate_checks/types.js.map +1 -0
- package/dist/engine/governance_report.d.ts +1 -1
- package/dist/engine/governance_report.d.ts.map +1 -1
- package/dist/engine/helpers.d.ts +9 -0
- package/dist/engine/helpers.d.ts.map +1 -0
- package/dist/engine/helpers.js +13 -0
- package/dist/engine/helpers.js.map +1 -0
- package/dist/engine/hook_context_types.d.ts +66 -0
- package/dist/engine/hook_context_types.d.ts.map +1 -0
- package/dist/engine/hook_context_types.js +118 -0
- package/dist/engine/hook_context_types.js.map +1 -0
- package/dist/engine/impact_analyzer.d.ts +1 -1
- package/dist/engine/impact_analyzer.d.ts.map +1 -1
- package/dist/engine/impact_analyzer.js.map +1 -1
- package/dist/engine/input_material_extractor.d.ts.map +1 -1
- package/dist/engine/input_material_extractor.js +10 -9
- package/dist/engine/input_material_extractor.js.map +1 -1
- package/dist/engine/instruction_contract.d.ts +6 -0
- package/dist/engine/instruction_contract.d.ts.map +1 -1
- package/dist/engine/instruction_contract.js +2 -3
- package/dist/engine/instruction_contract.js.map +1 -1
- package/dist/engine/intent_expander.d.ts +10 -1
- package/dist/engine/intent_expander.d.ts.map +1 -1
- package/dist/engine/intent_expander.js +49 -9
- package/dist/engine/intent_expander.js.map +1 -1
- package/dist/engine/intent_router.d.ts +2 -0
- package/dist/engine/intent_router.d.ts.map +1 -1
- package/dist/engine/intent_router.js +1 -1
- package/dist/engine/intent_router.js.map +1 -1
- package/dist/engine/job_manager.js.map +1 -1
- package/dist/engine/knowledge_acceptance_registry.d.ts.map +1 -1
- package/dist/engine/knowledge_acceptance_registry.js +0 -10
- package/dist/engine/knowledge_acceptance_registry.js.map +1 -1
- package/dist/engine/knowledge_asset_consumer.d.ts +1 -1
- package/dist/engine/knowledge_asset_consumer.js +11 -11
- package/dist/engine/knowledge_asset_consumer.js.map +1 -1
- package/dist/engine/knowledge_asset_schema.d.ts +1 -1
- package/dist/engine/knowledge_asset_schema.js +1 -1
- package/dist/engine/knowledge_config_loader.d.ts.map +1 -1
- package/dist/engine/knowledge_config_loader.js +35 -4
- package/dist/engine/knowledge_config_loader.js.map +1 -1
- package/dist/engine/knowledge_injection_boundary.d.ts +1 -1
- package/dist/engine/knowledge_injection_boundary.d.ts.map +1 -1
- package/dist/engine/knowledge_injection_boundary.js +10 -4
- package/dist/engine/knowledge_injection_boundary.js.map +1 -1
- package/dist/engine/knowledge_manager.d.ts +1 -1
- package/dist/engine/knowledge_manager.d.ts.map +1 -1
- package/dist/engine/knowledge_scenario_registry.d.ts.map +1 -1
- package/dist/engine/knowledge_scenario_registry.js +0 -8
- package/dist/engine/knowledge_scenario_registry.js.map +1 -1
- package/dist/engine/knowledge_sovereignty.js.map +1 -1
- package/dist/engine/knowledge_template_contracts.d.ts +0 -1
- package/dist/engine/knowledge_template_contracts.d.ts.map +1 -1
- package/dist/engine/knowledge_template_contracts.js.map +1 -1
- package/dist/engine/legacy_type_migration.d.ts +63 -0
- package/dist/engine/legacy_type_migration.d.ts.map +1 -0
- package/dist/engine/legacy_type_migration.js +227 -0
- package/dist/engine/legacy_type_migration.js.map +1 -0
- package/dist/engine/lifecycle_knowledge_contract.d.ts +1 -1
- package/dist/engine/lifecycle_knowledge_contract.d.ts.map +1 -1
- package/dist/engine/local_docker_acceptance.js.map +1 -1
- package/dist/engine/log_governance.js +1 -1
- package/dist/engine/log_governance.js.map +1 -1
- package/dist/engine/main_path_integration_contract.js.map +1 -1
- package/dist/engine/mechanism_contract_registry.d.ts.map +1 -1
- package/dist/engine/mechanism_contract_registry.js +79 -14
- package/dist/engine/mechanism_contract_registry.js.map +1 -1
- package/dist/engine/mechanism_health_check.d.ts.map +1 -1
- package/dist/engine/mechanism_health_check.js +2 -3
- package/dist/engine/mechanism_health_check.js.map +1 -1
- package/dist/engine/migration_guard.d.ts +1 -1
- package/dist/engine/migration_guard.d.ts.map +1 -1
- package/dist/engine/mutation_audit.d.ts +1 -1
- package/dist/engine/mutation_audit.d.ts.map +1 -1
- package/dist/engine/next_action_planner.d.ts +1 -1
- package/dist/engine/next_action_planner.d.ts.map +1 -1
- package/dist/engine/next_action_planner.js +32 -36
- package/dist/engine/next_action_planner.js.map +1 -1
- package/dist/engine/observability.d.ts +1 -1
- package/dist/engine/observability.d.ts.map +1 -1
- package/dist/engine/observability.js.map +1 -1
- package/dist/engine/observed_consumption.d.ts.map +1 -1
- package/dist/engine/observed_consumption.js +5 -2
- package/dist/engine/observed_consumption.js.map +1 -1
- package/dist/engine/onboarding.d.ts +1 -1
- package/dist/engine/onboarding.d.ts.map +1 -1
- package/dist/engine/privacy_secret_contract.js +1 -1
- package/dist/engine/privacy_secret_contract.js.map +1 -1
- package/dist/engine/project_knowledge_contract.d.ts +1 -1
- package/dist/engine/project_knowledge_contract.d.ts.map +1 -1
- package/dist/engine/project_knowledge_contract.js +2 -1
- package/dist/engine/project_knowledge_contract.js.map +1 -1
- package/dist/engine/project_stage_detector.js.map +1 -1
- package/dist/engine/regression_matrix.js.map +1 -1
- package/dist/engine/release_issue_scenario_registry.d.ts +1 -3
- package/dist/engine/release_issue_scenario_registry.d.ts.map +1 -1
- package/dist/engine/release_issue_scenario_registry.js +7 -49
- package/dist/engine/release_issue_scenario_registry.js.map +1 -1
- package/dist/engine/release_readiness_gate.d.ts +25 -39
- package/dist/engine/release_readiness_gate.d.ts.map +1 -1
- package/dist/engine/release_readiness_gate.js +129 -3353
- package/dist/engine/release_readiness_gate.js.map +1 -1
- package/dist/engine/release_tool_harness.d.ts +2 -2
- package/dist/engine/release_tool_harness.d.ts.map +1 -1
- package/dist/engine/release_tool_harness.js +1 -1
- package/dist/engine/rollback_router.d.ts +35 -0
- package/dist/engine/rollback_router.d.ts.map +1 -0
- package/dist/engine/rollback_router.js +50 -0
- package/dist/engine/rollback_router.js.map +1 -0
- package/dist/engine/scaffolder.d.ts +1 -1
- package/dist/engine/scaffolder.d.ts.map +1 -1
- package/dist/engine/scope_controller.d.ts +1 -1
- package/dist/engine/scope_controller.d.ts.map +1 -1
- package/dist/engine/scope_controller.js +1 -1
- package/dist/engine/scope_controller.js.map +1 -1
- package/dist/engine/scope_resolver.d.ts +1 -1
- package/dist/engine/scope_resolver.d.ts.map +1 -1
- package/dist/engine/semantic_evidence.d.ts +1 -1
- package/dist/engine/semantic_evidence.d.ts.map +1 -1
- package/dist/engine/slice_executor.d.ts +79 -0
- package/dist/engine/slice_executor.d.ts.map +1 -0
- package/dist/engine/slice_executor.js +100 -0
- package/dist/engine/slice_executor.js.map +1 -0
- package/dist/engine/source_code_matcher.js +1 -1
- package/dist/engine/source_code_matcher.js.map +1 -1
- package/dist/engine/stage_gate_engine.d.ts +32 -0
- package/dist/engine/stage_gate_engine.d.ts.map +1 -0
- package/dist/engine/stage_gate_engine.js +105 -0
- package/dist/engine/stage_gate_engine.js.map +1 -0
- package/dist/engine/stale_current_task_detector.js.map +1 -1
- package/dist/engine/standard_asset_contract.d.ts +1 -1
- package/dist/engine/standard_asset_contract.d.ts.map +1 -1
- package/dist/engine/standard_asset_contract.js +7 -7
- package/dist/engine/standard_asset_contract.js.map +1 -1
- package/dist/engine/standard_asset_coverage.js +19 -19
- package/dist/engine/standard_asset_coverage.js.map +1 -1
- package/dist/engine/task_context.d.ts +6 -6
- package/dist/engine/task_context.d.ts.map +1 -1
- package/dist/engine/task_context.js +22 -20
- package/dist/engine/task_context.js.map +1 -1
- package/dist/engine/task_planner.d.ts +2 -2
- package/dist/engine/task_planner.d.ts.map +1 -1
- package/dist/engine/task_planner.js.map +1 -1
- package/dist/engine/task_stage_detector.d.ts +7 -1
- package/dist/engine/task_stage_detector.d.ts.map +1 -1
- package/dist/engine/task_stage_detector.js +82 -123
- package/dist/engine/task_stage_detector.js.map +1 -1
- package/dist/engine/team_awareness.d.ts +1 -1
- package/dist/engine/team_awareness.d.ts.map +1 -1
- package/dist/engine/team_awareness.js.map +1 -1
- package/dist/engine/template_asset_contract_registry.d.ts +2 -2
- package/dist/engine/template_asset_contract_registry.d.ts.map +1 -1
- package/dist/engine/template_asset_contract_registry.js +37 -10
- package/dist/engine/template_asset_contract_registry.js.map +1 -1
- package/dist/engine/template_asset_visibility.js +1 -1
- package/dist/engine/template_asset_visibility.js.map +1 -1
- package/dist/engine/template_init_sync.d.ts +29 -0
- package/dist/engine/template_init_sync.d.ts.map +1 -1
- package/dist/engine/template_init_sync.js +246 -69
- package/dist/engine/template_init_sync.js.map +1 -1
- package/dist/engine/template_manifest_io.d.ts +1 -1
- package/dist/engine/template_manifest_io.d.ts.map +1 -1
- package/dist/engine/template_manifest_io.js +13 -9
- package/dist/engine/template_manifest_io.js.map +1 -1
- package/dist/engine/template_mechanism_auditor.d.ts +1 -1
- package/dist/engine/template_mechanism_auditor.d.ts.map +1 -1
- package/dist/engine/template_mechanism_auditor.js +10 -10
- package/dist/engine/template_mechanism_auditor.js.map +1 -1
- package/dist/engine/test_generator.d.ts +1 -1
- package/dist/engine/test_generator.d.ts.map +1 -1
- package/dist/engine/test_quality.d.ts +1 -1
- package/dist/engine/test_quality.d.ts.map +1 -1
- package/dist/engine/tool_invocation_contract_registry.js +7 -7
- package/dist/engine/tool_invocation_contract_registry.js.map +1 -1
- package/dist/engine/traceability.d.ts +3 -3
- package/dist/engine/traceability.d.ts.map +1 -1
- package/dist/engine/traceability.js +1 -1
- package/dist/engine/traceability.js.map +1 -1
- package/dist/engine/user_feedback_contract.d.ts +1 -1
- package/dist/engine/user_feedback_contract.d.ts.map +1 -1
- package/dist/engine/user_feedback_contract.js +5 -5
- package/dist/engine/user_feedback_contract.js.map +1 -1
- package/dist/engine/verifier.d.ts +1 -1
- package/dist/engine/verifier.d.ts.map +1 -1
- package/dist/engine/verifier.js +1 -1
- package/dist/engine/verifier.js.map +1 -1
- package/dist/engine/workflow_contract_registry.d.ts +80 -42
- package/dist/engine/workflow_contract_registry.d.ts.map +1 -1
- package/dist/engine/workflow_contract_registry.js +341 -152
- package/dist/engine/workflow_contract_registry.js.map +1 -1
- package/dist/engine/workflow_navigation_contract.d.ts +17 -3
- package/dist/engine/workflow_navigation_contract.d.ts.map +1 -1
- package/dist/engine/workflow_navigation_contract.js +8 -16
- package/dist/engine/workflow_navigation_contract.js.map +1 -1
- package/dist/engine/workflow_rule_generator.d.ts +22 -0
- package/dist/engine/workflow_rule_generator.d.ts.map +1 -0
- package/dist/engine/workflow_rule_generator.js +83 -0
- package/dist/engine/workflow_rule_generator.js.map +1 -0
- package/dist/engine/zero_config_init.js.map +1 -1
- package/dist/knowledge/conflict_detector.d.ts +1 -1
- package/dist/knowledge/conflict_detector.d.ts.map +1 -1
- package/dist/knowledge/conflict_detector.js +2 -1
- package/dist/knowledge/conflict_detector.js.map +1 -1
- package/dist/knowledge/health_checker.d.ts +1 -1
- package/dist/knowledge/health_checker.d.ts.map +1 -1
- package/dist/knowledge/index_manager.d.ts +1 -1
- package/dist/knowledge/index_manager.d.ts.map +1 -1
- package/dist/knowledge/index_manager.js +7 -5
- package/dist/knowledge/index_manager.js.map +1 -1
- package/dist/knowledge/loader.d.ts +1 -1
- package/dist/knowledge/loader.d.ts.map +1 -1
- package/dist/knowledge/loader.js +7 -5
- package/dist/knowledge/loader.js.map +1 -1
- package/dist/knowledge/writer.d.ts +1 -1
- package/dist/knowledge/writer.d.ts.map +1 -1
- package/dist/types/analysis.d.ts +353 -0
- package/dist/types/analysis.d.ts.map +1 -0
- package/dist/types/analysis.js +2 -0
- package/dist/types/analysis.js.map +1 -0
- package/dist/types/base.d.ts +11 -0
- package/dist/types/base.d.ts.map +1 -0
- package/dist/{types.js → types/base.js} +1 -1
- package/dist/types/base.js.map +1 -0
- package/dist/types/config.d.ts +128 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +2 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/delivery.d.ts +261 -0
- package/dist/types/delivery.d.ts.map +1 -0
- package/dist/types/delivery.js +2 -0
- package/dist/types/delivery.js.map +1 -0
- package/dist/types/dual_layer.d.ts +97 -0
- package/dist/types/dual_layer.d.ts.map +1 -0
- package/dist/types/dual_layer.js +3 -0
- package/dist/types/dual_layer.js.map +1 -0
- package/dist/types/evidence.d.ts +41 -0
- package/dist/types/evidence.d.ts.map +1 -0
- package/dist/types/evidence.js +3 -0
- package/dist/types/evidence.js.map +1 -0
- package/dist/types/execution.d.ts +31 -0
- package/dist/types/execution.d.ts.map +1 -0
- package/dist/types/execution.js +3 -0
- package/dist/types/execution.js.map +1 -0
- package/dist/types/index.d.ts +13 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +13 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/knowledge.d.ts +105 -0
- package/dist/types/knowledge.d.ts.map +1 -0
- package/dist/types/knowledge.js +5 -0
- package/dist/types/knowledge.js.map +1 -0
- package/dist/types/phase.d.ts +50 -0
- package/dist/types/phase.d.ts.map +1 -0
- package/dist/types/phase.js +3 -0
- package/dist/types/phase.js.map +1 -0
- package/dist/types/pipeline.d.ts +353 -0
- package/dist/types/pipeline.d.ts.map +1 -0
- package/dist/types/pipeline.js +2 -0
- package/dist/types/pipeline.js.map +1 -0
- package/dist/types/review.d.ts +149 -0
- package/dist/types/review.d.ts.map +1 -0
- package/dist/types/review.js +2 -0
- package/dist/types/review.js.map +1 -0
- package/dist/types/task.d.ts +203 -0
- package/dist/types/task.d.ts.map +1 -0
- package/dist/types/task.js +2 -0
- package/dist/types/task.js.map +1 -0
- package/package.json +3 -6
- package/templates/artifacts/existing-system//344/270/200/351/224/256/345/274/200/345/205/263/351/205/215/347/275/256/346/250/241/347/211/210.json +24 -0
- package/templates/artifacts/existing-system//345/216/206/345/217/262/346/225/260/346/215/256/346/270/205/346/264/227/350/204/232/346/234/254/346/250/241/347/211/210.md +44 -0
- package/templates/artifacts/existing-system//345/216/206/345/217/262/351/201/227/347/225/231/351/233/267/345/214/272/346/270/205/345/215/225/346/250/241/347/211/210.md +43 -0
- package/templates/artifacts/existing-system//345/220/221/345/220/216/345/205/274/345/256/271/346/200/247/345/220/210/350/247/204/346/212/245/345/221/212/346/250/241/347/211/210.md +36 -0
- package/templates/artifacts/existing-system//345/242/236/351/207/217/350/276/271/347/225/214/347/225/214/345/256/232/346/226/207/346/241/243/346/250/241/347/211/210.md +36 -0
- package/templates/artifacts/existing-system//346/224/271/351/200/240/345/275/261/345/223/215/350/214/203/345/233/264/350/257/204/344/274/260/346/250/241/347/211/210.md +39 -0
- package/templates/artifacts/existing-system//346/225/260/346/215/256/350/241/200/347/274/230/345/233/276/346/250/241/347/211/210.md +36 -0
- package/templates/artifacts/existing-system//346/226/260/350/200/201/351/200/273/350/276/221/346/257/224/345/257/271/346/227/245/345/277/227/346/250/241/347/211/210.md +29 -0
- package/templates/artifacts/existing-system//347/264/247/346/200/245/345/233/236/346/273/232/346/211/213/345/206/214/346/250/241/347/211/210.md +38 -0
- package/templates/artifacts/existing-system//351/232/224/347/246/273/351/200/202/351/205/215/345/231/250/346/226/271/346/241/210/346/250/241/347/211/210.md +34 -0
- package/templates/artifacts/shared/ADR/346/250/241/347/211/210.md +41 -0
- package/templates/{knowledge/acceptance_templates → artifacts/shared}/API/346/216/245/345/217/243/350/247/204/346/240/274/346/226/207/346/241/243/346/250/241/347/211/210.md +25 -0
- package/templates/artifacts/shared//344/273/243/347/240/201/345/256/241/346/237/245/346/212/245/345/221/212/346/250/241/347/211/210.md +33 -0
- package/templates/artifacts/shared//345/210/207/347/211/207/350/256/241/345/210/222/346/250/241/347/211/210.md +45 -0
- package/templates/{knowledge/acceptance_templates → artifacts/shared}//345/216/237/345/236/213/350/257/264/346/230/216/346/250/241/347/211/210.md +2 -0
- package/templates/{knowledge/acceptance_templates → artifacts/shared}//346/236/266/346/236/204/350/256/276/350/256/241/346/250/241/347/211/210.md +7 -0
- package/templates/gates/existing-system/gate-/347/216/260/346/234/211/347/263/273/347/273/237/345/210/206/346/236/220.yaml +13 -0
- package/templates/gates/existing-system/gate-/347/274/226/347/240/201/344/270/216/345/215/225/345/205/203/346/265/213/350/257/225.yaml +18 -0
- package/templates/gates/existing-system/gate-/350/257/225/350/277/220/350/241/214.yaml +21 -0
- package/templates/gates/shared/gate-/344/273/273/345/212/241/350/247/204/345/210/222.yaml +18 -0
- package/templates/gates/shared/gate-/347/274/226/347/240/201/344/270/216/345/215/225/345/205/203/346/265/213/350/257/225.yaml +14 -0
- package/templates/{knowledge/rules//346/225/217/346/204/237/344/277/241/346/201/257/346/227/245/345/277/227 → internal/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 +42 -19
- package/templates/{knowledge → internal}/rules//346/274/224/350/277/233/345/233/236/345/275/222/351/227/250/346/216/247/350/247/204/345/210/231.md +2 -0
- package/templates/{knowledge/procedures → procedures}//346/236/266/346/236/204/350/256/276/350/256/241/345/267/245/344/275/234/346/265/201.md +1 -1
- package/templates/{knowledge/procedures → procedures}//347/264/247/346/200/245/344/277/256/345/244/215/346/265/201/346/260/264/347/272/277.md +1 -1
- package/templates/{knowledge/procedures → procedures}//350/260/203/350/257/225/346/216/222/346/237/245/346/265/201/347/250/213.md +1 -1
- package/templates/{knowledge/procedures → procedures}//351/252/214/346/224/266/346/265/213/350/257/225/350/247/204/345/210/222.md +1 -1
- package/templates/rules/existing-system//345/205/274/345/256/271/346/200/247/346/243/200/346/237/245/350/247/204/345/210/231.md +33 -0
- package/templates/rules/existing-system//350/200/246/345/220/210/346/243/200/346/265/213/350/247/204/345/210/231.md +35 -0
- package/templates/rules/existing-system//350/257/225/350/277/220/350/241/214/347/206/224/346/226/255/350/247/204/345/210/231.md +39 -0
- package/templates/rules/existing-system//351/230/262/345/276/241/346/200/247/347/274/226/347/240/201/350/247/204/345/210/231.md +35 -0
- package/templates/rules/existing-system//351/233/267/345/214/272/345/217/215/346/250/241/345/274/217/346/270/205/345/215/225.md +34 -0
- package/templates/rules/new-system//350/201/224/350/260/203/350/256/276/350/256/241/347/274/272/351/231/267/345/210/244/345/256/232/350/247/204/345/210/231.md +36 -0
- package/templates/rules/shared//344/270/200/350/207/264/346/200/247/346/240/241/351/252/214/350/247/204/345/210/231.md +21 -0
- package/templates/rules/shared//350/201/224/350/260/203/351/252/214/350/257/201/346/270/205/345/215/225.md +29 -0
- package/templates/rules/shared//350/246/206/347/233/226/347/216/207/346/240/207/345/207/206.md +26 -0
- package/dist/engine/deprecated_contract.d.ts +0 -21
- package/dist/engine/deprecated_contract.d.ts.map +0 -1
- package/dist/engine/deprecated_contract.js +0 -14
- package/dist/engine/deprecated_contract.js.map +0 -1
- package/dist/engine/historical_issue_mechanization_matrix.d.ts +0 -28
- package/dist/engine/historical_issue_mechanization_matrix.d.ts.map +0 -1
- package/dist/engine/historical_issue_mechanization_matrix.js +0 -134
- package/dist/engine/historical_issue_mechanization_matrix.js.map +0 -1
- package/dist/engine/implementation_roadmap_registry.d.ts +0 -105
- package/dist/engine/implementation_roadmap_registry.d.ts.map +0 -1
- package/dist/engine/implementation_roadmap_registry.js +0 -1340
- package/dist/engine/implementation_roadmap_registry.js.map +0 -1
- package/dist/engine/mechanism_family_registry.d.ts +0 -48
- package/dist/engine/mechanism_family_registry.d.ts.map +0 -1
- package/dist/engine/mechanism_family_registry.js +0 -197
- package/dist/engine/mechanism_family_registry.js.map +0 -1
- package/dist/engine/project_knowledge_system_regression_matrix.d.ts +0 -27
- package/dist/engine/project_knowledge_system_regression_matrix.d.ts.map +0 -1
- package/dist/engine/project_knowledge_system_regression_matrix.js +0 -295
- package/dist/engine/project_knowledge_system_regression_matrix.js.map +0 -1
- package/dist/engine/release_gate.d.ts +0 -29
- package/dist/engine/release_gate.d.ts.map +0 -1
- package/dist/engine/release_gate.js +0 -675
- package/dist/engine/release_gate.js.map +0 -1
- package/dist/types.d.ts +0 -1737
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- package/templates/knowledge/acceptance_templates//346/216/245/345/217/243/350/256/276/350/256/241/346/250/241/347/211/210.md +0 -82
- package/templates/knowledge/procedures//346/236/266/346/236/204/350/256/276/350/256/241/346/265/201/347/250/213.md +0 -57
- package/templates/knowledge/procedures//347/264/247/346/200/245/344/277/256/345/244/215/346/265/201/347/250/213.md +0 -60
- package/templates/knowledge/procedures//347/274/272/351/231/267/344/277/256/345/244/215/346/265/201/346/260/264/347/272/277.md +0 -55
- package/templates/knowledge/procedures//351/252/214/350/257/201/350/256/241/345/210/222/346/265/201/347/250/213.md +0 -59
- 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 +0 -56
- package/templates/knowledge/rules//346/274/224/350/277/233/345/233/236/345/275/222/350/247/204/345/210/231.md +0 -51
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}/Bug/345/210/206/346/236/220/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}/OOD/350/256/276/350/256/241/346/221/230/350/246/201/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}/POC/347/273/223/350/256/272/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//344/273/243/347/240/201/346/263/250/351/207/212/344/270/216/346/227/245/345/277/227/351/252/214/346/224/266/346/250/241/346/235/277.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//345/211/215/347/253/257/351/241/265/351/235/242/351/252/214/346/224/266/346/270/205/345/215/225.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//345/220/216/347/253/257API/351/252/214/346/224/266/346/270/205/345/215/225.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//345/220/216/347/253/257/345/256/236/347/216/260/351/252/214/346/224/266/346/270/205/345/215/225.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//345/256/211/345/205/250/345/256/241/350/256/241/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/templates → artifacts/shared}//345/256/241/346/237/245/346/221/230/350/246/201.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//346/200/247/350/203/275/345/210/206/346/236/220/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//346/212/200/346/234/257/351/200/211/345/236/213/351/252/214/346/224/266/346/270/205/345/215/225.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//346/216/245/345/217/243/345/257/271/346/216/245/346/226/271/346/241/210/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//346/225/205/351/232/234/345/244/215/347/233/230/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//346/225/260/346/215/256/345/272/223/345/217/230/346/233/264/346/226/271/346/241/210/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//346/225/260/346/215/256/345/272/223/345/217/230/346/233/264/351/252/214/346/224/266/346/270/205/345/215/225.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//346/225/260/346/215/256/345/272/223/350/256/276/350/256/241/346/226/207/346/241/243/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//346/265/213/350/257/225/350/256/241/345/210/222/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//350/256/276/350/256/241/344/270/200/350/207/264/346/200/247/351/252/214/346/224/266/346/212/245/345/221/212/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//350/257/246/347/273/206/350/256/276/350/256/241/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//350/277/201/347/247/273/350/257/204/344/274/260/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//351/200/232/347/224/250/350/264/250/351/207/217/351/252/214/346/224/266/346/270/205/345/215/225.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//351/207/215/346/236/204/346/226/271/346/241/210/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//351/234/200/346/261/202/345/210/206/346/236/220/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/acceptance_templates → artifacts/shared}//351/234/200/346/261/202/345/216/237/345/236/213/350/256/276/350/256/241/345/256/236/347/216/260/350/277/275/350/270/252/347/237/251/351/230/265/346/250/241/347/211/210.md" +0 -0
- /package/templates/{knowledge/checklists → 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" +0 -0
- /package/templates/{knowledge/checklists → checklists}//344/274/232/350/257/235/346/201/242/345/244/215.md" +0 -0
- /package/templates/{knowledge/checklists → checklists}//345/267/245/344/275/234/346/265/201/351/252/214/346/224/266/346/270/205/345/215/225.md" +0 -0
- /package/templates/{knowledge/checklists → 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" +0 -0
- /package/templates/{knowledge/checklists → 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" +0 -0
- /package/templates/{knowledge/checklists → checklists}//351/232/220/347/247/201/345/256/241/346/237/245/346/270/205/345/215/225.md" +0 -0
- /package/templates/{knowledge/checklists → checklists}//351/252/214/350/257/201/351/252/214/346/224/266/346/270/205/345/215/225.md" +0 -0
- /package/templates/{knowledge/domain → domain}//345/244/232/347/247/237/346/210/267.md" +0 -0
- /package/templates/{knowledge/domain → domain}//345/256/241/350/256/241/346/227/245/345/277/227.md" +0 -0
- /package/templates/{knowledge/domain → domain}//345/257/274/345/205/245/345/257/274/345/207/272/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge/domain → domain}//345/267/245/344/275/234/346/265/201/345/274/225/346/223/216.md" +0 -0
- /package/templates/{knowledge/domain → domain}//346/212/245/350/241/250/347/273/237/350/256/241.md" +0 -0
- /package/templates/{knowledge/domain → domain}//346/224/257/344/273/230/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge/domain → domain}//346/225/260/346/215/256/346/235/203/351/231/220.md" +0 -0
- /package/templates/{knowledge/domain → domain}//351/200/232/347/224/250/346/234/272/346/242/260/346/235/241/346/254/276.md" +0 -0
- /package/templates/{knowledge/domain → domain}//351/200/232/347/237/245/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}/Diff/345/275/222/345/261/236/350/277/275/350/270/252.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}/Java/350/264/250/351/207/217/351/227/250/347/246/201.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}/LLM/351/242/204/347/256/227/347/275/221/345/205/263.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//344/273/273/345/212/241/344/270/212/344/270/213/346/226/207/347/224/237/345/221/275/345/221/250/346/234/237.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//344/273/273/345/212/241/347/256/241/347/220/206/345/231/250.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//344/275/234/347/224/250/345/237/237/344/270/216/345/257/206/351/222/245/346/213/246/346/210/252.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//344/275/234/347/224/250/345/237/237/347/247/237/347/272/246.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//345/206/262/347/252/201/351/227/250/347/246/201.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//345/206/263/347/255/226/347/275/221/345/205/263.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//345/217/230/345/274/202/345/256/241/350/256/241.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//345/233/236/345/275/222/347/237/251/351/230/265.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//345/267/245/344/275/234/345/214/272/344/272/222/346/226/245/351/224/201.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//345/267/245/344/275/234/345/214/272/345/224/244/351/206/222.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//345/271/266/345/217/221/351/224/201.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//345/274/200/345/217/221/350/200/205/345/256/252/346/263/225.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//346/225/217/346/204/237/344/277/241/346/201/257/346/211/253/346/217/217.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//346/262/273/347/220/206/350/277/220/350/241/214/346/227/266/345/276/252/347/216/257.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//346/265/201/345/274/217/345/277/203/350/267/263.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//347/237/245/350/257/206/344/270/273/346/235/203.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//350/257/255/344/271/211/350/257/201/346/215/256.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//350/277/220/350/241/214/345/256/211/345/205/250/345/214/205.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//351/233/266/351/205/215/347/275/256/345/210/235/345/247/213/345/214/226.md" +0 -0
- /package/templates/{knowledge/patterns/core → internal/patterns}//351/252/214/350/257/201/345/221/275/344/273/244/347/224/237/346/210/220.md" +0 -0
- /package/templates/{knowledge → internal}/rules/OOD/344/270/216SOLID/350/256/276/350/256/241/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//344/272/247/347/211/251/345/245/221/347/272/246/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//344/273/243/347/240/201/346/263/250/351/207/212/344/270/216/346/227/245/345/277/227/345/245/221/347/272/246/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//344/273/273/345/212/241/344/270/212/344/270/213/346/226/207/347/224/237/345/221/275/345/221/250/346/234/237/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//345/220/216/347/253/257/345/256/236/347/216/260/345/267/245/347/250/213/345/245/221/347/272/246/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//345/221/275/344/273/244/346/211/247/350/241/214/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//345/267/245/344/275/234/346/265/201/345/245/221/347/272/246/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//345/267/245/344/275/234/346/265/201/345/257/274/350/210/252/345/245/221/347/272/246/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//345/267/245/344/275/234/346/265/201/346/250/241/346/235/277/345/214/205/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//345/267/245/345/205/267/350/260/203/347/224/250/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//346/204/217/345/233/276/350/267/257/347/224/261/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/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" +0 -0
- /package/templates/{knowledge → internal}/rules//346/211/251/345/261/225/347/224/237/345/221/275/345/221/250/346/234/237/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//346/212/200/346/234/257/345/206/263/347/255/226/344/270/273/346/235/203/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//346/226/275/345/267/245/346/214/207/344/273/244/345/245/221/347/272/246/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//346/227/245/345/277/227/346/262/273/347/220/206/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//346/234/272/345/210/266/350/207/252/346/262/273/347/220/206/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//346/236/266/346/236/204/345/206/263/347/255/226/347/240/224/350/256/250/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//346/240/207/345/207/206/350/265/204/344/272/247/350/246/206/347/233/226/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//346/240/270/345/277/203/344/275/223/351/252/214/345/216/237/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/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" +0 -0
- /package/templates/{knowledge → internal}/rules//346/250/241/346/235/277/350/265/204/344/272/247/345/217/257/350/247/201/346/200/247/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/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" +0 -0
- /package/templates/{knowledge → internal}/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" +0 -0
- /package/templates/{knowledge → internal}/rules//347/237/245/350/257/206/346/262/273/347/220/206/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/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" +0 -0
- /package/templates/{knowledge → internal}/rules//347/237/245/350/257/206/350/265/204/344/272/247/346/262/273/347/220/206/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//347/254/254/344/270/200/346/200/247/345/216/237/347/220/206/346/216/250/347/220/206/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//347/273/206/350/212/202/347/272/252/345/276/213/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//350/204/221/346/232/264/344/270/216/346/226/271/346/241/210/346/216/242/347/264/242/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//350/256/241/345/210/222/345/211/215/347/275/256/351/227/250/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//350/256/276/350/256/241/344/272/247/347/211/251/345/214/205/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//350/257/201/346/215/256/351/251/261/345/212/250/344/270/216/345/217/215/345/271/273/350/247/211/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//350/267/250/345/271/263/345/217/260/350/267/257/345/276/204/345/256/211/345/205/250/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/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" +0 -0
- /package/templates/{knowledge → internal}/rules//351/200/232/347/224/250/345/206/263/347/255/226/347/240/224/350/256/250/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//351/205/215/347/275/256/344/274/230/345/205/210/347/272/247/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//351/205/215/347/275/256/350/220/275/347/233/230/350/276/271/347/225/214/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//351/230/262/345/255/244/345/262/233/345/256/236/347/216/260/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/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" +0 -0
- /package/templates/{knowledge → internal}/rules//351/252/214/346/224/266/346/250/241/346/235/277/350/276/223/345/207/272/345/245/221/347/272/246/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge → internal}/rules//351/252/214/350/257/201/345/245/221/347/272/246/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}/OOD/350/256/276/350/256/241/345/267/245/344/275/234/346/265/201.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}/Schema/345/217/230/346/233/264/346/265/201/346/260/264/347/272/277.md" +0 -0
- /package/templates/{knowledge/procedures → 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" +0 -0
- /package/templates/{knowledge/procedures → procedures}//344/273/243/347/240/201/351/227/250/347/246/201/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//344/273/273/345/212/241/346/213/206/350/247/243/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//345/205/250/347/224/237/345/221/275/345/221/250/346/234/237/345/267/245/344/275/234/346/265/201/345/257/274/350/210/252.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//345/212/237/350/203/275/345/274/200/345/217/221/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//345/220/216/347/253/257/346/216/245/345/217/243/345/256/236/347/216/260/345/267/245/344/275/234/346/265/201.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//345/221/275/344/273/244/346/211/247/350/241/214/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//345/256/211/345/205/250/345/212/240/345/233/272/346/265/201/346/260/264/347/272/277.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//345/267/245/345/205/267/350/260/203/347/224/250/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//346/200/247/350/203/275/346/265/201/346/260/264/347/272/277.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//346/204/217/345/233/276/350/267/257/347/224/261/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//346/216/245/345/217/243/351/233/206/346/210/220/346/265/201/346/260/264/347/272/277.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//346/225/260/346/215/256/345/272/223/350/277/201/347/247/273/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//346/234/254/345/234/260/346/265/217/350/247/210/345/231/250/351/252/214/346/224/266/345/267/245/344/275/234/346/265/201.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//346/236/266/346/236/204/345/206/263/347/255/226/347/240/224/350/256/250/345/267/245/344/275/234/346/265/201.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//346/246/202/345/277/265/351/252/214/350/257/201/346/265/201/346/260/264/347/272/277.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//346/265/213/350/257/225/344/274/230/345/205/210/347/274/226/347/240/201/345/267/245/344/275/234/346/265/201.md" +0 -0
- /package/templates/{knowledge/procedures → 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" +0 -0
- /package/templates/{knowledge/procedures → procedures}//347/216/260/346/234/211/347/263/273/347/273/237/345/267/256/350/267/235/345/210/206/346/236/220/345/267/245/344/275/234/346/265/201.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//347/237/245/350/257/206/347/273/264/346/212/244/346/265/201/346/260/264/347/272/277.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//347/274/226/347/240/201/345/211/215/346/276/204/346/270/205/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//350/207/252/344/270/273/351/200/211/345/236/213/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//350/256/276/350/256/241/344/272/247/347/211/251/347/224/237/346/210/220/344/270/216/345/244/215/351/252/214/345/267/245/344/275/234/346/265/201.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//350/257/246/347/273/206/350/256/276/350/256/241/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//350/277/201/347/247/273/346/265/201/346/260/264/347/272/277.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//351/203/250/347/275/262/345/217/221/345/270/203/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//351/207/215/346/236/204/346/265/201/346/260/264/347/272/277.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//351/233/206/346/210/220/351/252/214/350/257/201/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/procedures → procedures}//351/234/200/346/261/202/346/276/204/346/270/205/346/265/201/347/250/213.md" +0 -0
- /package/templates/{knowledge/product_profiles → profiles}/b2b-internal.yaml +0 -0
- /package/templates/{knowledge/product_profiles → profiles}/b2c.yaml +0 -0
- /package/templates/{knowledge/product_profiles → profiles}/saas.yaml +0 -0
- /package/templates/{knowledge/review_rules → rules/shared}/SOLID/344/273/243/347/240/201/345/256/241/346/237/245/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge/review_rules → rules/shared}//344/272/244/344/273/230/345/256/214/345/244/207/346/200/247/345/256/241/346/237/245/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge/review → rules/shared}//344/273/243/347/240/201/345/217/257/347/273/264/346/212/244/346/200/247/344/270/216/345/217/257/350/247/202/346/265/213/346/200/247/345/256/241/346/237/245.md" +0 -0
- /package/templates/{knowledge/review_rules → rules/shared}//345/220/216/347/253/257/345/256/236/347/216/260/345/267/245/347/250/213/345/256/241/346/237/245/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge/review_rules → rules/shared}//345/256/211/345/205/250/345/256/241/346/237/245/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge/review_rules → rules/shared}//345/271/266/345/217/221/345/256/241/346/237/245/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge/review_rules → rules/shared}//346/200/247/350/203/275/345/256/241/346/237/245/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge/review_rules → rules/shared}//346/216/245/345/217/243/345/245/221/347/272/246/345/256/241/346/237/245/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge/review_rules → rules/shared}//346/236/266/346/236/204/345/256/241/346/237/245/350/247/204/345/210/231.md" +0 -0
- /package/templates/{knowledge/review_rules → rules/shared}//350/264/250/351/207/217/345/256/241/346/237/245/350/247/204/345/210/231.md" +0 -0
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* @param config - 项目配置
|
|
4
4
|
* @returns AGENTS.md 文件的文本内容
|
|
5
5
|
*/
|
|
6
|
-
export declare function generateCodexAgentsMd(config: import("../../types.js").ProjectConfig): string;
|
|
6
|
+
export declare function generateCodexAgentsMd(config: import("../../types/index.js").ProjectConfig): string;
|
|
7
7
|
//# sourceMappingURL=codex_rules.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex_rules.d.ts","sourceRoot":"","sources":["../../../src/adapters/codex/codex_rules.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"codex_rules.d.ts","sourceRoot":"","sources":["../../../src/adapters/codex/codex_rules.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,OAAO,sBAAsB,EAAE,aAAa,GAAG,MAAM,CAGlG"}
|
|
@@ -7,29 +7,6 @@ import { debug } from "../../engine/logger.js";
|
|
|
7
7
|
*/
|
|
8
8
|
export function generateCodexAgentsMd(config) {
|
|
9
9
|
debug("Codex规则", "生成 AGENTS.md");
|
|
10
|
-
return generateWorkflowRules(config)
|
|
11
|
-
|
|
12
|
-
## Codex App 使用说明
|
|
13
|
-
|
|
14
|
-
本项目的 SoloForge MCP Server 已在 \`.codex/config.toml\` 中配置,Hooks 已在 \`.codex/hooks.json\` 中配置。
|
|
15
|
-
|
|
16
|
-
### Codex 与 Claude Code 的差异
|
|
17
|
-
|
|
18
|
-
| 能力 | Claude Code | Codex App |
|
|
19
|
-
|------|------------|-----------|
|
|
20
|
-
| MCP 工具调用 | ✅ 原生支持 | ✅ 原生支持 |
|
|
21
|
-
| PreToolUse Hooks | ✅ .claude/settings.json | ✅ .codex/hooks.json |
|
|
22
|
-
| 浏览器验证 | ✅ Playwright MCP | ✅ Playwright MCP |
|
|
23
|
-
| Figma 设计集成 | 由宿主客户端自行配置 | 由宿主客户端自行配置 |
|
|
24
|
-
| 会话恢复 | sf_resume_workspace | sf_resume_workspace |
|
|
25
|
-
|
|
26
|
-
### Codex 特有注意事项
|
|
27
|
-
|
|
28
|
-
- **Hooks 匹配器**: Codex 使用 \`apply_patch\` 而非 \`Edit\`,已包含在 hooks matcher 中
|
|
29
|
-
- **MCP 配置格式**: TOML(.codex/config.toml),非 JSON
|
|
30
|
-
- **更新规则**: 运行 \`npx soloforge generate-codex\` 重新生成
|
|
31
|
-
- **多适配器共存**: 可同时使用 \`soloforge init --adapter all\` 生成 Claude Code + Trae + Codex 全部配置
|
|
32
|
-
- **Figma MCP**: SoloForge 默认不生成 Figma MCP;如需 Figma 能力,请在 Claude Code、Codex 或 Trae 中按宿主客户端官方方式单独配置
|
|
33
|
-
`;
|
|
10
|
+
return generateWorkflowRules(config);
|
|
34
11
|
}
|
|
35
12
|
//# sourceMappingURL=codex_rules.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex_rules.js","sourceRoot":"","sources":["../../../src/adapters/codex/codex_rules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,
|
|
1
|
+
{"version":3,"file":"codex_rules.js","sourceRoot":"","sources":["../../../src/adapters/codex/codex_rules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAoD;IACxF,KAAK,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACjC,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC"}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* 工作流模板 — 校验和管理与 re-export
|
|
3
|
+
*
|
|
4
|
+
* generateWorkflowRules 和 getWorkflowRuleMechanismIds 已移至 engine 层
|
|
5
|
+
* (workflow_rule_generator.ts),修正 engine→adapter 的依赖方向违规。
|
|
6
|
+
* 此文件保留校验和更新功能及向后兼容的 re-export。
|
|
7
|
+
*/
|
|
8
|
+
export { generateWorkflowRules, getWorkflowRuleMechanismIds, EMBEDDED_CHECKSUM } from "../../engine/workflow_rule_generator.js";
|
|
2
9
|
/**
|
|
3
10
|
* 计算所有权威规则资产的第一行非注释内容组合的 SHA256 校验和。
|
|
4
11
|
* 权威规则内容变化时校验和必然变化。
|
|
5
12
|
*/
|
|
6
13
|
export declare function computeAuthoritativeRulesChecksum(rootDir: string): string;
|
|
7
|
-
/**
|
|
8
|
-
* 提取 generateWorkflowRules 输出中所有 @sf-hard-rule 引用的机制 ID(去重)。
|
|
9
|
-
*/
|
|
10
|
-
export declare function getWorkflowRuleMechanismIds(): string[];
|
|
11
14
|
/**
|
|
12
15
|
* 校验工作流模板中每条 @sf-hard-rule 都能找到权威机制注册条目,
|
|
13
16
|
* 且其 template_layer 资产文件存在,且内容校验和与嵌入值一致。
|
|
@@ -24,11 +27,4 @@ export declare function validateWorkflowRuleSources(rootDir: string): {
|
|
|
24
27
|
* 更新嵌入校验和到源文件。由 CI 或开发者在确认权威规则变化后调用。
|
|
25
28
|
*/
|
|
26
29
|
export declare function updateEmbeddedChecksum(rootDir: string): string;
|
|
27
|
-
/**
|
|
28
|
-
* 生成工作流规则模板内容。
|
|
29
|
-
* 从 WORKFLOW_TEMPLATE_HARD_RULES 结构化清单循环渲染每条规则的 marker + user_instruction。
|
|
30
|
-
* @param config - 项目配置
|
|
31
|
-
* @returns 工作流规则文本
|
|
32
|
-
*/
|
|
33
|
-
export declare function generateWorkflowRules(config: ProjectConfig): string;
|
|
34
30
|
//# sourceMappingURL=workflow_template.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow_template.d.ts","sourceRoot":"","sources":["../../../src/adapters/shared/workflow_template.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"workflow_template.d.ts","sourceRoot":"","sources":["../../../src/adapters/shared/workflow_template.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH,OAAO,EAAE,qBAAqB,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAOhI;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAmBzE;AAMD;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG;IAC5D,KAAK,EAAE,OAAO,CAAC;IACf,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAiCA;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAY9D"}
|
|
@@ -1,48 +1,26 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* 工作流模板 — 校验和管理与 re-export
|
|
3
|
+
*
|
|
4
|
+
* generateWorkflowRules 和 getWorkflowRuleMechanismIds 已移至 engine 层
|
|
5
|
+
* (workflow_rule_generator.ts),修正 engine→adapter 的依赖方向违规。
|
|
6
|
+
* 此文件保留校验和更新功能及向后兼容的 re-export。
|
|
7
|
+
*/
|
|
2
8
|
import fs from "node:fs";
|
|
3
9
|
import path from "node:path";
|
|
4
10
|
import crypto from "node:crypto";
|
|
5
11
|
import { findLayerMapByMechanismId } from "../../engine/dual_layer_mechanism_registry.js";
|
|
6
|
-
import {
|
|
12
|
+
import { getWorkflowRuleMechanismIds as _getWorkflowRuleMechanismIds } from "../../engine/workflow_rule_generator.js";
|
|
13
|
+
// 从 engine 层 re-export 以保持向后兼容
|
|
14
|
+
export { generateWorkflowRules, getWorkflowRuleMechanismIds, EMBEDDED_CHECKSUM } from "../../engine/workflow_rule_generator.js";
|
|
7
15
|
const SF_HARD_RULE_RE = /@sf-hard-rule[^>]*mechanism=(\S+)/g;
|
|
8
|
-
/**
|
|
9
|
-
|
|
10
|
-
const rule = WORKFLOW_TEMPLATE_HARD_RULES.find(r => r.rule_id === ruleId);
|
|
11
|
-
if (!rule)
|
|
12
|
-
return `<!-- @sf-hard-rule id=${ruleId} MISSING_IN_MANIFEST -->`;
|
|
13
|
-
return `<!-- @sf-hard-rule id=${rule.rule_id} mechanism=${rule.mechanism_id} enforcement=${rule.enforcement_status} summary="${rule.rule_summary}" -->`;
|
|
14
|
-
}
|
|
15
|
-
/** 渲染一条规则的 marker + user_instruction */
|
|
16
|
-
function renderRule(ruleId) {
|
|
17
|
-
const rule = WORKFLOW_TEMPLATE_HARD_RULES.find(r => r.rule_id === ruleId);
|
|
18
|
-
const tag = hardRuleTag(ruleId);
|
|
19
|
-
const text = rule?.user_instruction ?? "";
|
|
20
|
-
if (text)
|
|
21
|
-
return `${tag}\n${text}`;
|
|
22
|
-
return tag;
|
|
23
|
-
}
|
|
24
|
-
/** 渲染一组规则(marker + user_instruction) */
|
|
25
|
-
function renderRules(ruleIds) {
|
|
26
|
-
return ruleIds.map(id => renderRule(id)).join("\n");
|
|
27
|
-
}
|
|
28
|
-
/** 工作流步骤定义: 每步包含标题和有序规则 ID */
|
|
29
|
-
const WORKFLOW_STEPS = [
|
|
30
|
-
{ title: "", rule_ids: ["wf-privacy-before-expand", "wf-knowledge-injection", "wf-core-principles"] },
|
|
31
|
-
{ title: "### 步骤 1: 分类", rule_ids: ["wf-classify-first"] },
|
|
32
|
-
{ title: "### 步骤 1.5: 入口裁决", rule_ids: ["wf-routing-gate", "wf-strategy-no-route"] },
|
|
33
|
-
{ title: "### 步骤 1.6: 多阶段拆解", rule_ids: ["wf-multi-stage-loop"] },
|
|
34
|
-
{ title: "### 步骤 2: 执行", rule_ids: ["wf-dispatch-by-route", "wf-command-contract", "wf-tool-contract", "wf-architecture-workshop-first", "wf-design-artifact-pack", "wf-standard-asset-contract", "wf-template-asset-visibility", "wf-code-observability"] },
|
|
35
|
-
{ title: "### 步骤 2.5: 导航", rule_ids: ["wf-navigation-contract"] },
|
|
36
|
-
{ title: "### 步骤 3: 验证", rule_ids: ["wf-verify-after-change", "wf-evidence-grounding"] },
|
|
37
|
-
{ title: "### 步骤 4: 学习", rule_ids: ["wf-learn-after-verify"] },
|
|
38
|
-
{ title: "### 步骤 5: 汇报", rule_ids: ["wf-no-auto-capability-change"] },
|
|
39
|
-
];
|
|
16
|
+
/** 当前嵌入的权威规则校验和 — 由 `npm run update-workflow-checksum` 更新。 */
|
|
17
|
+
const EMBEDDED_CHECKSUM = "a9250fa87acbf8ad";
|
|
40
18
|
/**
|
|
41
19
|
* 计算所有权威规则资产的第一行非注释内容组合的 SHA256 校验和。
|
|
42
20
|
* 权威规则内容变化时校验和必然变化。
|
|
43
21
|
*/
|
|
44
22
|
export function computeAuthoritativeRulesChecksum(rootDir) {
|
|
45
|
-
const mechanismIds =
|
|
23
|
+
const mechanismIds = _getWorkflowRuleMechanismIds();
|
|
46
24
|
const parts = [];
|
|
47
25
|
for (const mid of mechanismIds) {
|
|
48
26
|
const map = findLayerMapByMechanismId(mid);
|
|
@@ -61,24 +39,15 @@ export function computeAuthoritativeRulesChecksum(rootDir) {
|
|
|
61
39
|
}
|
|
62
40
|
return crypto.createHash("sha256").update(parts.join("\n")).digest("hex").substring(0, 16);
|
|
63
41
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
*/
|
|
67
|
-
export function getWorkflowRuleMechanismIds() {
|
|
68
|
-
const text = generateWorkflowRules({});
|
|
69
|
-
const ids = new Set();
|
|
70
|
-
let m;
|
|
71
|
-
while ((m = SF_HARD_RULE_RE.exec(text)) !== null) {
|
|
72
|
-
ids.add(m[1]);
|
|
73
|
-
}
|
|
74
|
-
return [...ids];
|
|
42
|
+
function getEmbeddedChecksum() {
|
|
43
|
+
return EMBEDDED_CHECKSUM;
|
|
75
44
|
}
|
|
76
45
|
/**
|
|
77
46
|
* 校验工作流模板中每条 @sf-hard-rule 都能找到权威机制注册条目,
|
|
78
47
|
* 且其 template_layer 资产文件存在,且内容校验和与嵌入值一致。
|
|
79
48
|
*/
|
|
80
49
|
export function validateWorkflowRuleSources(rootDir) {
|
|
81
|
-
const mechanismIds =
|
|
50
|
+
const mechanismIds = _getWorkflowRuleMechanismIds();
|
|
82
51
|
const missing_mechanisms = [];
|
|
83
52
|
const missing_assets = [];
|
|
84
53
|
for (const mid of mechanismIds) {
|
|
@@ -108,11 +77,6 @@ export function validateWorkflowRuleSources(rootDir) {
|
|
|
108
77
|
computed_checksum: computedChecksum,
|
|
109
78
|
};
|
|
110
79
|
}
|
|
111
|
-
/** 当前嵌入的权威规则校验和 — 由 `npm run update-workflow-checksum` 更新。 */
|
|
112
|
-
const EMBEDDED_CHECKSUM = "1329a153ea580993";
|
|
113
|
-
function getEmbeddedChecksum() {
|
|
114
|
-
return EMBEDDED_CHECKSUM;
|
|
115
|
-
}
|
|
116
80
|
/**
|
|
117
81
|
* 更新嵌入校验和到源文件。由 CI 或开发者在确认权威规则变化后调用。
|
|
118
82
|
*/
|
|
@@ -126,30 +90,4 @@ export function updateEmbeddedChecksum(rootDir) {
|
|
|
126
90
|
}
|
|
127
91
|
return newChecksum;
|
|
128
92
|
}
|
|
129
|
-
/**
|
|
130
|
-
* 生成工作流规则模板内容。
|
|
131
|
-
* 从 WORKFLOW_TEMPLATE_HARD_RULES 结构化清单循环渲染每条规则的 marker + user_instruction。
|
|
132
|
-
* @param config - 项目配置
|
|
133
|
-
* @returns 工作流规则文本
|
|
134
|
-
*/
|
|
135
|
-
export function generateWorkflowRules(config) {
|
|
136
|
-
debug("工作流模板", "生成工作流规则");
|
|
137
|
-
const header = `# SoloForge 集成规则
|
|
138
|
-
|
|
139
|
-
## 强制工作流
|
|
140
|
-
|
|
141
|
-
当收到开发指令时(非纯对话/提问),必须按以下顺序执行:`;
|
|
142
|
-
const sections = WORKFLOW_STEPS.map(step => {
|
|
143
|
-
const rulesText = renderRules(step.rule_ids);
|
|
144
|
-
if (step.title)
|
|
145
|
-
return `${step.title}\n${rulesText}`;
|
|
146
|
-
return rulesText;
|
|
147
|
-
}).join("\n\n");
|
|
148
|
-
const footer = `## 项目信息
|
|
149
|
-
|
|
150
|
-
项目事实以 config 配置及 tool 输出为准,不在模板中硬编码。
|
|
151
|
-
|
|
152
|
-
<!-- @sf-checksum: ${EMBEDDED_CHECKSUM} -->`;
|
|
153
|
-
return `${header}\n\n${sections}\n\n${footer}`;
|
|
154
|
-
}
|
|
155
93
|
//# sourceMappingURL=workflow_template.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow_template.js","sourceRoot":"","sources":["../../../src/adapters/shared/workflow_template.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"workflow_template.js","sourceRoot":"","sources":["../../../src/adapters/shared/workflow_template.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAE1F,OAAO,EAAE,2BAA2B,IAAI,4BAA4B,EAAE,MAAM,yCAAyC,CAAC;AAEtH,+BAA+B;AAC/B,OAAO,EAAE,qBAAqB,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAEhI,MAAM,eAAe,GAAG,oCAAoC,CAAC;AAE7D,8DAA8D;AAC9D,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;AAE7C;;;GAGG;AACH,MAAM,UAAU,iCAAiC,CAAC,OAAe;IAC/D,MAAM,YAAY,GAAG,4BAA4B,EAAE,CAAC;IACpD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,GAAG,EAAE,eAAe;YAAE,SAAS;QACpC,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAChD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;gBAAE,SAAS;YACvC,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACnD,uCAAuC;YACvC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YACrE,MAAM,IAAI,GAAG,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACrF,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC7F,CAAC;AAED,SAAS,mBAAmB;IAC1B,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAe;IAQzD,MAAM,YAAY,GAAG,4BAA4B,EAAE,CAAC;IACpD,MAAM,kBAAkB,GAAa,EAAE,CAAC;IACxC,MAAM,cAAc,GAAa,EAAE,CAAC;IAEpC,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7B,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC;YACxB,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC;gBACxC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;oBACnD,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,UAAU;IACV,MAAM,gBAAgB,GAAG,iCAAiC,CAAC,OAAO,CAAC,CAAC;IACpE,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,MAAM,gBAAgB,GAAG,gBAAgB,KAAK,gBAAgB,CAAC;IAE/D,OAAO;QACL,KAAK,EAAE,kBAAkB,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,gBAAgB;QAC1F,kBAAkB;QAClB,cAAc;QACd,iBAAiB,EAAE,gBAAgB;QACnC,iBAAiB,EAAE,gBAAgB;QACnC,iBAAiB,EAAE,gBAAgB;KACpC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAe;IACpD,MAAM,WAAW,GAAG,iCAAiC,CAAC,OAAO,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,sBAAsB,CAAC,CAAC;IACzF,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,IAAI,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACjD,OAAO,GAAG,OAAO,CAAC,OAAO,CACvB,oCAAoC,EACpC,8BAA8B,WAAW,IAAI,CAC9C,CAAC;QACF,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* @param config - 项目配置
|
|
4
4
|
* @returns 规则文本
|
|
5
5
|
*/
|
|
6
|
-
export declare function generateTraeRules(config: import("../../types.js").ProjectConfig): string;
|
|
6
|
+
export declare function generateTraeRules(config: import("../../types/index.js").ProjectConfig): string;
|
|
7
7
|
//# sourceMappingURL=trae_rules.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trae_rules.d.ts","sourceRoot":"","sources":["../../../src/adapters/trae/trae_rules.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"trae_rules.d.ts","sourceRoot":"","sources":["../../../src/adapters/trae/trae_rules.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,sBAAsB,EAAE,aAAa,GAAG,MAAM,CAG9F"}
|
|
@@ -7,15 +7,6 @@ import { debug } from "../../engine/logger.js";
|
|
|
7
7
|
*/
|
|
8
8
|
export function generateTraeRules(config) {
|
|
9
9
|
debug("Trae规则", "生成项目规则");
|
|
10
|
-
return generateWorkflowRules(config)
|
|
11
|
-
|
|
12
|
-
## Trae IDE 使用说明
|
|
13
|
-
|
|
14
|
-
本项目的 SoloForge MCP Server 已在 \`.trae/mcp.json\` 中配置。在 Trae IDE 中打开此项目后,AI 助手将自动加载 SoloForge 工具。
|
|
15
|
-
|
|
16
|
-
SoloForge 默认不生成 Figma MCP。若需要 Figma 能力,请在 Trae 中按官方 FigmaMCP/Figma AI Bridge 入口单独配置。
|
|
17
|
-
|
|
18
|
-
如需更新规则,运行: \`npx soloforge generate-trae\`
|
|
19
|
-
`;
|
|
10
|
+
return generateWorkflowRules(config);
|
|
20
11
|
}
|
|
21
12
|
//# sourceMappingURL=trae_rules.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trae_rules.js","sourceRoot":"","sources":["../../../src/adapters/trae/trae_rules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"trae_rules.js","sourceRoot":"","sources":["../../../src/adapters/trae/trae_rules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAoD;IACpF,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC1B,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"soloforge.d.ts","sourceRoot":"","sources":["../../src/bin/soloforge.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"soloforge.d.ts","sourceRoot":"","sources":["../../src/bin/soloforge.ts"],"names":[],"mappings":";AA8iCA,OAAO,EAAE,0BAA0B,EAAE,MAAM,gDAAgD,CAAC"}
|
package/dist/bin/soloforge.js
CHANGED
|
@@ -72,18 +72,6 @@ async function main() {
|
|
|
72
72
|
case "upgrade-design-artifacts":
|
|
73
73
|
await cmdUpgradeDesignArtifacts();
|
|
74
74
|
break;
|
|
75
|
-
case "validate-batch1":
|
|
76
|
-
userWarn("⚠️ validate-batch1 是历史施工命令,不代表正式发布通过。请使用 validate-release。");
|
|
77
|
-
await cmdValidateFoundation();
|
|
78
|
-
break;
|
|
79
|
-
case "validate-batch3":
|
|
80
|
-
userWarn("⚠️ validate-batch3 是历史施工命令,不代表正式发布通过。请使用 validate-release。");
|
|
81
|
-
await cmdValidateKnowledge();
|
|
82
|
-
break;
|
|
83
|
-
case "validate-batch5":
|
|
84
|
-
userWarn("⚠️ validate-batch5 是历史施工命令,不代表正式发布通过。请使用 validate-release。");
|
|
85
|
-
await cmdValidateReleaseGate();
|
|
86
|
-
break;
|
|
87
75
|
case "validate-release":
|
|
88
76
|
await cmdValidateReleaseGate();
|
|
89
77
|
break;
|
|
@@ -186,9 +174,6 @@ async function main() {
|
|
|
186
174
|
audit-project-knowledge 审计用户项目 .soloforge/knowledge 自定义规则承载与消费
|
|
187
175
|
upgrade-design-artifacts 生成存量设计资产升级计划(默认 dry-run,--apply --confirm 仅建立已归档迁移基线)
|
|
188
176
|
validate-release 验证发布门禁(契约、场景矩阵、消费 trace、双层机制、回归基线)
|
|
189
|
-
validate-batch1 [历史] 仅基础契约验证,不代表正式发布通过
|
|
190
|
-
validate-batch3 [历史] 仅知识模板验证,不代表正式发布通过
|
|
191
|
-
validate-batch5 [历史] 仅发布门禁验证,不代表正式发布通过
|
|
192
177
|
sync-templates 同步模板到项目(默认 dry-run,--apply 需 --confirm)
|
|
193
178
|
sync-adapters 同步适配器 Prompt(默认 dry-run,--apply 需 --confirm)
|
|
194
179
|
migrate 迁移项目 .soloforge/(默认 dry-run,--apply 需确认)
|
|
@@ -419,6 +404,12 @@ async function cmdInit() {
|
|
|
419
404
|
const adapter = getArgValue("--adapter") || "claude-code";
|
|
420
405
|
const projectPathArg = getArgValue("--project-path");
|
|
421
406
|
const projectPath = projectPathArg ? path.resolve(projectPathArg) : process.cwd();
|
|
407
|
+
const systemType = getArgValue("--system-type");
|
|
408
|
+
// 校验 --system-type
|
|
409
|
+
if (systemType && systemType !== "新系统" && systemType !== "老系统") {
|
|
410
|
+
userInfo("⚠️ --system-type 仅支持 '新系统' 或 '老系统'");
|
|
411
|
+
process.exit(1);
|
|
412
|
+
}
|
|
422
413
|
// 创建目录
|
|
423
414
|
const dirs = [
|
|
424
415
|
".soloforge/state",
|
|
@@ -429,11 +420,24 @@ async function cmdInit() {
|
|
|
429
420
|
".soloforge/knowledge/procedures",
|
|
430
421
|
".soloforge/knowledge/domain/backend",
|
|
431
422
|
".soloforge/knowledge/domain/frontend",
|
|
432
|
-
".soloforge/knowledge/
|
|
433
|
-
".soloforge/knowledge/
|
|
434
|
-
".soloforge/knowledge/
|
|
423
|
+
".soloforge/knowledge/internal/rules",
|
|
424
|
+
".soloforge/knowledge/internal/patterns",
|
|
425
|
+
".soloforge/knowledge/rules/shared",
|
|
426
|
+
".soloforge/knowledge/rules/new-system",
|
|
427
|
+
".soloforge/knowledge/rules/existing-system",
|
|
435
428
|
".soloforge/knowledge/checklists",
|
|
436
|
-
".soloforge/knowledge/
|
|
429
|
+
".soloforge/knowledge/artifacts/shared",
|
|
430
|
+
".soloforge/knowledge/artifacts/new-system",
|
|
431
|
+
".soloforge/knowledge/artifacts/existing-system",
|
|
432
|
+
".soloforge/knowledge/profiles",
|
|
433
|
+
".soloforge/templates/artifacts/shared",
|
|
434
|
+
".soloforge/templates/artifacts/new-system",
|
|
435
|
+
".soloforge/templates/artifacts/existing-system",
|
|
436
|
+
".soloforge/templates/rules/shared",
|
|
437
|
+
".soloforge/templates/rules/new-system",
|
|
438
|
+
".soloforge/templates/rules/existing-system",
|
|
439
|
+
".soloforge/templates/gates/shared",
|
|
440
|
+
".soloforge/templates/gates/existing-system",
|
|
437
441
|
".soloforge/staged",
|
|
438
442
|
];
|
|
439
443
|
for (const dir of dirs) {
|
|
@@ -487,6 +491,8 @@ async function cmdInit() {
|
|
|
487
491
|
// 复制模板 + 适配器配置(共享逻辑)
|
|
488
492
|
await copyGlobalPatterns(projectPath);
|
|
489
493
|
await copyKnowledgeTemplates(projectPath);
|
|
494
|
+
// 复制管线模板(shared + 系统专属)
|
|
495
|
+
await copyPipelineTemplates(projectPath, systemType);
|
|
490
496
|
// 确保 .gitignore 包含必要条目
|
|
491
497
|
ensureGitignore(projectPath);
|
|
492
498
|
userInfo(`\n✅ SoloForge 初始化完成 (适配器: ${adapter})。${adapter === "trae" ? "请打开 Trae IDE 开始使用。" :
|
|
@@ -523,6 +529,24 @@ async function copyKnowledgeTemplates(projectPath) {
|
|
|
523
529
|
userInfo(`✅ 知识模板: ${parts.join(",")}`);
|
|
524
530
|
}
|
|
525
531
|
}
|
|
532
|
+
async function copyPipelineTemplates(projectPath, systemType) {
|
|
533
|
+
const { copyPipelineTemplatesToProject } = await import("../engine/template_init_sync.js");
|
|
534
|
+
const templatesRoot = path.resolve(import.meta.dirname, "..", "..");
|
|
535
|
+
const result = await copyPipelineTemplatesToProject(templatesRoot, projectPath, systemType);
|
|
536
|
+
const parts = [];
|
|
537
|
+
if (result.copied > 0)
|
|
538
|
+
parts.push(`${result.copied} 个新增`);
|
|
539
|
+
if (result.updated > 0)
|
|
540
|
+
parts.push(`${result.updated} 个已更新`);
|
|
541
|
+
if (result.skipped_modified > 0)
|
|
542
|
+
parts.push(`${result.skipped_modified} 个已修改跳过`);
|
|
543
|
+
if (result.skipped_exists > 0)
|
|
544
|
+
parts.push(`${result.skipped_exists} 个已存在`);
|
|
545
|
+
const typeLabel = systemType ?? "全部";
|
|
546
|
+
if (parts.length > 0) {
|
|
547
|
+
userInfo(`✅ 管线模板 (${typeLabel}): ${parts.join(",")}`);
|
|
548
|
+
}
|
|
549
|
+
}
|
|
526
550
|
async function generateAdapterConfigs(projectPath, adapter) {
|
|
527
551
|
if (adapter === "claude-code" || adapter === "all") {
|
|
528
552
|
const mcpPath = path.join(projectPath, ".mcp.json");
|
|
@@ -784,13 +808,13 @@ async function evaluateImplementationWriteGate(projectPath, relativeFilePath) {
|
|
|
784
808
|
const currentTask = await manager.getCurrentTask();
|
|
785
809
|
const designPack = currentTask?.design_artifact_pack;
|
|
786
810
|
if (currentTask && ["classifying", "clarifying", "expanding"].includes(currentTask.status)) {
|
|
787
|
-
return `当前 SoloForge 任务仍处于 ${currentTask.status},说明分类、澄清或意图膨胀未闭合。不得绕过
|
|
811
|
+
return `当前 SoloForge 任务仍处于 ${currentTask.status},说明分类、澄清或意图膨胀未闭合。不得绕过 架构设计,不得取消/归档当前任务后改用 Bash/Edit/Write 直接写业务实现,也不得把 Bash 作为恢复路径。请先运行 soloforge next 查看阻断项;按返回的 auto_resolvable 或 recovery_command 补齐后重新 架构设计。只有 soloforge next 明确判定 current-task 陈旧且用户确认时,才可运行 sf_status action=archive_stale confirm=true;归档后仍必须重新 需求分析 → 架构设计 建立受控编码任务。`;
|
|
788
812
|
}
|
|
789
813
|
if (!currentTask && hasDesignArtifacts(projectPath)) {
|
|
790
|
-
return "检测到项目已有架构/详细/API/数据库设计产物,但当前没有受控 SoloForge 任务。不得绕过
|
|
814
|
+
return "检测到项目已有架构/详细/API/数据库设计产物,但当前没有受控 SoloForge 任务。不得绕过 需求分析/架构设计 直接写业务实现,不得改用 Bash/Edit/Write 先写代码再补验证;请先运行 soloforge next 或通过 MCP 建立编码任务。";
|
|
791
815
|
}
|
|
792
816
|
if (currentTask && !designPack && hasDesignArtifacts(projectPath)) {
|
|
793
|
-
return "检测到项目已有设计产物,但当前任务缺少 design_artifact_pack 复验状态。不得取消任务后直接写业务实现,不得改用 Bash 绕过;请先运行 soloforge audit-design-artifacts,并通过
|
|
817
|
+
return "检测到项目已有设计产物,但当前任务缺少 design_artifact_pack 复验状态。不得取消任务后直接写业务实现,不得改用 Bash 绕过;请先运行 soloforge audit-design-artifacts,并通过 架构设计/联调验证 绑定设计产物包。";
|
|
794
818
|
}
|
|
795
819
|
if (designPack && designPack.status !== "implementation_ready") {
|
|
796
820
|
return `设计产物包状态为 ${designPack.status},不得改用 Bash/Edit/Write 绕过设计复验;请先完善 docs/architecture、docs/traceability、docs/api/openapi 或 db/migration|migrations|schema|changelog 并通过复验,再写入业务实现`;
|
|
@@ -1366,25 +1390,6 @@ async function cmdValidateMechanisms() {
|
|
|
1366
1390
|
process.exit(1);
|
|
1367
1391
|
}
|
|
1368
1392
|
userInfo(`\n✅ 双层机制验证通过,${advisory.length} advisory findings`);
|
|
1369
|
-
// problem-15: 机制族实现一致性验证
|
|
1370
|
-
try {
|
|
1371
|
-
const { validateMechanismFamilies } = await import("../engine/mechanism_family_registry.js");
|
|
1372
|
-
const familyFindings = validateMechanismFamilies();
|
|
1373
|
-
const familyHardFails = familyFindings.filter((f) => f.severity === "hard_fail");
|
|
1374
|
-
if (familyHardFails.length > 0) {
|
|
1375
|
-
userInfo(`\n❌ 机制族验证失败 (${familyHardFails.length} hard_fail):`);
|
|
1376
|
-
for (const f of familyHardFails)
|
|
1377
|
-
userInfo(` - ${f.mechanism_id}: ${f.message_zh}`);
|
|
1378
|
-
process.exit(1);
|
|
1379
|
-
}
|
|
1380
|
-
else if (familyFindings.length > 0) {
|
|
1381
|
-
userInfo(`\n📊 机制族验证: ${familyFindings.length} advisory`);
|
|
1382
|
-
}
|
|
1383
|
-
}
|
|
1384
|
-
catch (e) {
|
|
1385
|
-
userError(`❌ 机制族验证异常: ${e.message}`);
|
|
1386
|
-
process.exit(1);
|
|
1387
|
-
}
|
|
1388
1393
|
// 审计摘要
|
|
1389
1394
|
try {
|
|
1390
1395
|
const { auditTemplateMechanisms } = await import("../engine/template_mechanism_auditor.js");
|
|
@@ -1664,7 +1669,6 @@ async function cmdUpgradeDesignArtifacts() {
|
|
|
1664
1669
|
async function cmdValidateKnowledge() {
|
|
1665
1670
|
debug("CLI", "执行 cmdValidateKnowledge");
|
|
1666
1671
|
const { validateContractRegistry } = await import("../engine/contract_registry.js");
|
|
1667
|
-
const { listProblemsByBatch } = await import("../engine/implementation_roadmap_registry.js");
|
|
1668
1672
|
const { runAllKnowledgeScenarios, extractReadmeCommands } = await import("../engine/knowledge_scenario_registry.js");
|
|
1669
1673
|
const { listKnowledgeIssueDetailAcceptances, validateKnowledgeIssueDetailAcceptance, } = await import("../engine/knowledge_acceptance_registry.js");
|
|
1670
1674
|
const isJson = args.includes("--json");
|
|
@@ -1692,9 +1696,6 @@ async function cmdValidateKnowledge() {
|
|
|
1692
1696
|
// 验证契约注册表
|
|
1693
1697
|
const contractFindings = validateContractRegistry(existingFiles);
|
|
1694
1698
|
const hardFails = contractFindings.filter((f) => f.severity === "hard_fail");
|
|
1695
|
-
// 验证 知识模板问题状态
|
|
1696
|
-
const knowledgeProblems = listProblemsByBatch("batch-3");
|
|
1697
|
-
const allImplemented = knowledgeProblems.every((p) => p.status === "implemented_verified");
|
|
1698
1699
|
// 读取真实 README 并提取命令
|
|
1699
1700
|
let readmeCommands;
|
|
1700
1701
|
try {
|
|
@@ -1710,8 +1711,6 @@ async function cmdValidateKnowledge() {
|
|
|
1710
1711
|
const acceptanceFindings = acceptances.flatMap((a) => validateKnowledgeIssueDetailAcceptance(a));
|
|
1711
1712
|
const acceptanceHardFails = acceptanceFindings.filter((f) => f.severity === "hard_fail");
|
|
1712
1713
|
const result = {
|
|
1713
|
-
knowledge_problems: knowledgeProblems.length,
|
|
1714
|
-
all_implemented_verified: allImplemented,
|
|
1715
1714
|
contract_hard_fails: hardFails.length,
|
|
1716
1715
|
issue_acceptances: acceptances.length,
|
|
1717
1716
|
acceptance_hard_fails: acceptanceHardFails.length,
|
|
@@ -1728,9 +1727,7 @@ async function cmdValidateKnowledge() {
|
|
|
1728
1727
|
userInfo(JSON.stringify(result, null, 2));
|
|
1729
1728
|
}
|
|
1730
1729
|
else {
|
|
1731
|
-
userInfo("═══
|
|
1732
|
-
userInfo(` 问题数: ${knowledgeProblems.length}`);
|
|
1733
|
-
userInfo(` 全部 implemented_verified: ${allImplemented ? "✓" : "✗"}`);
|
|
1730
|
+
userInfo("═══ 知识模板验证 ═══");
|
|
1734
1731
|
userInfo(` 契约 hard_fail: ${hardFails.length}`);
|
|
1735
1732
|
for (const f of hardFails) {
|
|
1736
1733
|
userInfo(` ✗ ${f.contract_id}: ${f.message_zh}`);
|
|
@@ -1750,10 +1747,10 @@ async function cmdValidateKnowledge() {
|
|
|
1750
1747
|
userInfo(` ✗ ${fl}`);
|
|
1751
1748
|
}
|
|
1752
1749
|
}
|
|
1753
|
-
const overallPass =
|
|
1754
|
-
userInfo(overallPass ? "\n✅
|
|
1750
|
+
const overallPass = hardFails.length === 0 && scenariosPass && acceptanceHardFails.length === 0;
|
|
1751
|
+
userInfo(overallPass ? "\n✅ 知识模板验证通过" : "\n❌ 知识模板验证失败");
|
|
1755
1752
|
}
|
|
1756
|
-
const overallPass =
|
|
1753
|
+
const overallPass = hardFails.length === 0 && scenariosPass && acceptanceHardFails.length === 0;
|
|
1757
1754
|
process.exit(overallPass ? 0 : 1);
|
|
1758
1755
|
}
|
|
1759
1756
|
async function cmdSyncTemplates() {
|
|
@@ -2168,7 +2165,7 @@ async function cmdValidateFoundation() {
|
|
|
2168
2165
|
debug("CLI", "执行 cmdValidateFoundation");
|
|
2169
2166
|
const { validateMechanismLayerMaps, listMechanismLayerMaps } = await import("../engine/dual_layer_mechanism_registry.js");
|
|
2170
2167
|
const { auditTemplateMechanisms } = await import("../engine/template_mechanism_auditor.js");
|
|
2171
|
-
const { validateFoundationScenarios
|
|
2168
|
+
const { validateFoundationScenarios } = await import("../engine/foundation_scenario_registry.js");
|
|
2172
2169
|
const cwd = process.cwd();
|
|
2173
2170
|
const maps = listMechanismLayerMaps();
|
|
2174
2171
|
const mechFindings = validateMechanismLayerMaps(maps, cwd);
|
|
@@ -2179,14 +2176,10 @@ async function cmdValidateFoundation() {
|
|
|
2179
2176
|
const allPass = scenarioResults.every((s) => s.status === "PASS");
|
|
2180
2177
|
const isJson = process.argv.includes("--json");
|
|
2181
2178
|
if (isJson) {
|
|
2182
|
-
const problemMatrix = validateFoundationProblemMatrix(cwd);
|
|
2183
|
-
const problemAllPass = problemMatrix.every((p) => Object.values(p.dimensions).every((d) => d.status === "PASS"));
|
|
2184
2179
|
userInfo(JSON.stringify({
|
|
2185
2180
|
mechanisms_pass: mechanismsPass,
|
|
2186
2181
|
audit_pass: auditPass,
|
|
2187
|
-
all_pass: allPass
|
|
2188
|
-
problem_matrix_count: problemMatrix.length,
|
|
2189
|
-
problem_matrix: problemMatrix,
|
|
2182
|
+
all_pass: allPass,
|
|
2190
2183
|
scenarios: scenarioResults,
|
|
2191
2184
|
}, null, 2));
|
|
2192
2185
|
}
|
|
@@ -2210,43 +2203,12 @@ async function cmdValidateFoundation() {
|
|
|
2210
2203
|
async function cmdValidateNewIssue() {
|
|
2211
2204
|
debug("CLI", "执行 cmdValidateNewIssue");
|
|
2212
2205
|
const title = getArgValue("--title") ?? "";
|
|
2213
|
-
const batchStr = getArgValue("--batch");
|
|
2214
|
-
const batch = batchStr ? parseInt(batchStr, 10) : 0;
|
|
2215
2206
|
const isJson = args.includes("--json");
|
|
2216
2207
|
if (!title) {
|
|
2217
2208
|
userError("❌ 错误: --title 必须提供");
|
|
2218
2209
|
process.exit(1);
|
|
2219
2210
|
}
|
|
2220
2211
|
const { performEvolutionGate, checkDuplicateIssue, createNewIssueRegressionGate, } = await import("../engine/evolution_regression_gate.js");
|
|
2221
|
-
// 从 implementation_roadmap_registry 加载真实已有问题
|
|
2222
|
-
const { listAllProblems } = await import("../engine/implementation_roadmap_registry.js");
|
|
2223
|
-
const allProblems = listAllProblems();
|
|
2224
|
-
// 精确重复检测: label 精确匹配(不子串),title 语义包含,id 精确匹配
|
|
2225
|
-
const lower = title.toLowerCase();
|
|
2226
|
-
const matchedProblemMap = new Map();
|
|
2227
|
-
for (const p of allProblems) {
|
|
2228
|
-
let matched = false;
|
|
2229
|
-
// id 精确匹配
|
|
2230
|
-
if (p.id.toLowerCase() === lower)
|
|
2231
|
-
matched = true;
|
|
2232
|
-
// label 精确匹配
|
|
2233
|
-
if (p.label.toLowerCase() === lower)
|
|
2234
|
-
matched = true;
|
|
2235
|
-
// label 前缀匹配: "问题四十二" 匹配 "问题四十二" 等
|
|
2236
|
-
if (p.label.toLowerCase().startsWith(lower + "("))
|
|
2237
|
-
matched = true;
|
|
2238
|
-
// 完整 title 的包含匹配(title 是长描述,子串匹配合理)
|
|
2239
|
-
if (lower.length >= 2 && p.title.toLowerCase().includes(lower))
|
|
2240
|
-
matched = true;
|
|
2241
|
-
// 输入包含完整 title(输入更长时)
|
|
2242
|
-
if (lower.length >= 4 && p.title.length >= 4 && lower.includes(p.title.toLowerCase()))
|
|
2243
|
-
matched = true;
|
|
2244
|
-
if (matched) {
|
|
2245
|
-
matchedProblemMap.set(p.id, { id: p.id, label: p.label, title: p.title });
|
|
2246
|
-
}
|
|
2247
|
-
}
|
|
2248
|
-
const deduplicatedIds = [...matchedProblemMap.keys()];
|
|
2249
|
-
const matchedDetails = [...matchedProblemMap.values()];
|
|
2250
2212
|
// 稳定 slug: 基于标题哈希而非 Date.now
|
|
2251
2213
|
const titleSlug = title
|
|
2252
2214
|
.toLowerCase()
|
|
@@ -2254,23 +2216,18 @@ async function cmdValidateNewIssue() {
|
|
|
2254
2216
|
.replace(/^-|-$/g, "")
|
|
2255
2217
|
.slice(0, 40);
|
|
2256
2218
|
const hashSuffix = crypto.createHash("sha256").update(title).digest("hex").slice(0, 8);
|
|
2257
|
-
const candidateId = `
|
|
2219
|
+
const candidateId = `issue-${titleSlug}-${hashSuffix}`;
|
|
2258
2220
|
const gate = createNewIssueRegressionGate({
|
|
2259
2221
|
issue_candidate_id: candidateId,
|
|
2260
2222
|
candidate_title: title,
|
|
2261
2223
|
});
|
|
2262
|
-
// 重复检测 — 写入去重后的 ID 列表
|
|
2263
|
-
gate.duplicate_check.possible_duplicates = deduplicatedIds;
|
|
2264
2224
|
// 演进门控
|
|
2265
2225
|
const result = performEvolutionGate(gate);
|
|
2266
2226
|
const output = {
|
|
2267
2227
|
title,
|
|
2268
|
-
batch,
|
|
2269
2228
|
candidate_id: candidateId,
|
|
2270
|
-
existing_issues_checked: allProblems.length,
|
|
2271
2229
|
duplicate_detected: gate.duplicate_check.possible_duplicates.length > 0,
|
|
2272
2230
|
duplicates: [...new Set(gate.duplicate_check.possible_duplicates)],
|
|
2273
|
-
matched_duplicate_details: matchedDetails,
|
|
2274
2231
|
gate_status: result.gate_status,
|
|
2275
2232
|
can_proceed: result.allowed,
|
|
2276
2233
|
reasons: result.reasons,
|
|
@@ -2280,12 +2237,8 @@ async function cmdValidateNewIssue() {
|
|
|
2280
2237
|
}
|
|
2281
2238
|
else {
|
|
2282
2239
|
userInfo(`需求演进检查: ${output.gate_status}`);
|
|
2283
|
-
userInfo(` 已检查 ${allProblems.length} 个已有功能记录`);
|
|
2284
2240
|
if (output.duplicate_detected) {
|
|
2285
2241
|
userInfo(` ⚠ 重复检测: 发现 ${output.duplicates.join(", ")}`);
|
|
2286
|
-
for (const d of matchedDetails) {
|
|
2287
|
-
userInfo(` - ${d.id}: ${d.label} — ${d.title}`);
|
|
2288
|
-
}
|
|
2289
2242
|
}
|
|
2290
2243
|
if (result.reasons.length > 0) {
|
|
2291
2244
|
userInfo(` 原因:`);
|