soloforge 1.1.40 → 1.1.42

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.
Files changed (156) hide show
  1. package/README.md +57 -0
  2. package/dist/adapters/shared/workflow_template.js +1 -1
  3. package/dist/bin/commands/check_write.d.ts +1 -1
  4. package/dist/bin/commands/check_write.d.ts.map +1 -1
  5. package/dist/bin/commands/check_write.js +13 -34
  6. package/dist/bin/commands/check_write.js.map +1 -1
  7. package/dist/bin/commands/modify.d.ts +2 -1
  8. package/dist/bin/commands/modify.d.ts.map +1 -1
  9. package/dist/bin/commands/modify.js +29 -15
  10. package/dist/bin/commands/modify.js.map +1 -1
  11. package/dist/bin/commands/review.d.ts +3 -2
  12. package/dist/bin/commands/review.d.ts.map +1 -1
  13. package/dist/bin/commands/review.js +179 -46
  14. package/dist/bin/commands/review.js.map +1 -1
  15. package/dist/bin/soloforge.js +0 -18
  16. package/dist/bin/soloforge.js.map +1 -1
  17. package/dist/engine/context_engine/companion_injector.d.ts +16 -3
  18. package/dist/engine/context_engine/companion_injector.d.ts.map +1 -1
  19. package/dist/engine/context_engine/companion_injector.js +228 -35
  20. package/dist/engine/context_engine/companion_injector.js.map +1 -1
  21. package/dist/engine/contracts/artifact_contract_registry.d.ts +1 -43
  22. package/dist/engine/contracts/artifact_contract_registry.d.ts.map +1 -1
  23. package/dist/engine/contracts/artifact_contract_registry.js +24 -100
  24. package/dist/engine/contracts/artifact_contract_registry.js.map +1 -1
  25. package/dist/engine/contracts/artifact_process_rules.d.ts.map +1 -1
  26. package/dist/engine/contracts/artifact_process_rules.js +0 -12
  27. package/dist/engine/contracts/artifact_process_rules.js.map +1 -1
  28. package/dist/engine/contracts/artifact_schema_registry.d.ts.map +1 -1
  29. package/dist/engine/contracts/artifact_schema_registry.js +0 -24
  30. package/dist/engine/contracts/artifact_schema_registry.js.map +1 -1
  31. package/dist/engine/contracts/tool_invocation_contract_registry.d.ts +29 -0
  32. package/dist/engine/contracts/tool_invocation_contract_registry.d.ts.map +1 -1
  33. package/dist/engine/contracts/tool_invocation_contract_registry.js +32 -21
  34. package/dist/engine/contracts/tool_invocation_contract_registry.js.map +1 -1
  35. package/dist/engine/core/paths.d.ts +0 -2
  36. package/dist/engine/core/paths.d.ts.map +1 -1
  37. package/dist/engine/core/paths.js +0 -2
  38. package/dist/engine/core/paths.js.map +1 -1
  39. package/dist/engine/knowledge/knowledge_writer.js +1 -1
  40. package/dist/engine/pipeline/artifact_aliases.d.ts +56 -3
  41. package/dist/engine/pipeline/artifact_aliases.d.ts.map +1 -1
  42. package/dist/engine/pipeline/artifact_aliases.js +377 -24
  43. package/dist/engine/pipeline/artifact_aliases.js.map +1 -1
  44. package/dist/engine/pipeline/artifact_resolver.d.ts +82 -0
  45. package/dist/engine/pipeline/artifact_resolver.d.ts.map +1 -0
  46. package/dist/engine/pipeline/artifact_resolver.js +458 -0
  47. package/dist/engine/pipeline/artifact_resolver.js.map +1 -0
  48. package/dist/engine/pipeline/intent_expander/knowledge_resolution.d.ts +2 -2
  49. package/dist/engine/pipeline/intent_expander/knowledge_resolution.d.ts.map +1 -1
  50. package/dist/engine/pipeline/intent_expander/knowledge_resolution.js.map +1 -1
  51. package/dist/engine/pipeline/orchestrate_single_artifact.d.ts +185 -0
  52. package/dist/engine/pipeline/orchestrate_single_artifact.d.ts.map +1 -0
  53. package/dist/engine/pipeline/orchestrate_single_artifact.js +772 -0
  54. package/dist/engine/pipeline/orchestrate_single_artifact.js.map +1 -0
  55. package/dist/engine/pipeline/scope_resolver.js +1 -1
  56. package/dist/engine/pipeline/scope_resolver.js.map +1 -1
  57. package/dist/engine/pipeline/state_machine/certainty_gate.d.ts.map +1 -1
  58. package/dist/engine/pipeline/state_machine/certainty_gate.js +122 -9
  59. package/dist/engine/pipeline/state_machine/certainty_gate.js.map +1 -1
  60. package/dist/engine/pipeline/state_machine/pipeline_state_machine.d.ts +1 -13
  61. package/dist/engine/pipeline/state_machine/pipeline_state_machine.d.ts.map +1 -1
  62. package/dist/engine/pipeline/state_machine/pipeline_state_machine.js +65 -73
  63. package/dist/engine/pipeline/state_machine/pipeline_state_machine.js.map +1 -1
  64. package/dist/engine/pipeline/state_machine/sf_command_parser.d.ts.map +1 -1
  65. package/dist/engine/pipeline/state_machine/sf_command_parser.js +24 -19
  66. package/dist/engine/pipeline/state_machine/sf_command_parser.js.map +1 -1
  67. package/dist/engine/pipeline/state_machine/stage_command_registry.d.ts.map +1 -1
  68. package/dist/engine/pipeline/state_machine/stage_command_registry.js +7 -0
  69. package/dist/engine/pipeline/state_machine/stage_command_registry.js.map +1 -1
  70. package/dist/engine/pipeline/state_machine/stage_executor.d.ts.map +1 -1
  71. package/dist/engine/pipeline/state_machine/stage_executor.js +5 -11
  72. package/dist/engine/pipeline/state_machine/stage_executor.js.map +1 -1
  73. package/dist/engine/pipeline/state_machine/static_route_table.d.ts +2 -0
  74. package/dist/engine/pipeline/state_machine/static_route_table.d.ts.map +1 -1
  75. package/dist/engine/pipeline/state_machine/static_route_table.js +2 -0
  76. package/dist/engine/pipeline/state_machine/static_route_table.js.map +1 -1
  77. package/dist/engine/pipeline/state_machine/uncertainty_bridge.d.ts +25 -0
  78. package/dist/engine/pipeline/state_machine/uncertainty_bridge.d.ts.map +1 -1
  79. package/dist/engine/pipeline/state_machine/uncertainty_bridge.js +18 -0
  80. package/dist/engine/pipeline/state_machine/uncertainty_bridge.js.map +1 -1
  81. package/dist/engine/pipeline/target_classifier.d.ts +48 -0
  82. package/dist/engine/pipeline/target_classifier.d.ts.map +1 -0
  83. package/dist/engine/pipeline/target_classifier.js +129 -0
  84. package/dist/engine/pipeline/target_classifier.js.map +1 -0
  85. package/dist/engine/pipeline/task_planner.js +1 -1
  86. package/dist/engine/pipeline/task_planner.js.map +1 -1
  87. package/dist/engine/release/foundation_scenario_registry.js +1 -1
  88. package/dist/engine/release/foundation_scenario_registry.js.map +1 -1
  89. package/dist/engine/templates/asset_manifest.d.ts.map +1 -1
  90. package/dist/engine/templates/asset_manifest.js +1 -0
  91. package/dist/engine/templates/asset_manifest.js.map +1 -1
  92. package/dist/engine/templates/explicit_asset_registry/rules_shared.d.ts.map +1 -1
  93. package/dist/engine/templates/explicit_asset_registry/rules_shared.js +22 -0
  94. package/dist/engine/templates/explicit_asset_registry/rules_shared.js.map +1 -1
  95. package/dist/server/tools/cep_assessment.d.ts +6 -0
  96. package/dist/server/tools/cep_assessment.d.ts.map +1 -1
  97. package/dist/server/tools/cep_assessment.js +23 -0
  98. package/dist/server/tools/cep_assessment.js.map +1 -1
  99. package/dist/server/tools/middleware.d.ts.map +1 -1
  100. package/dist/server/tools/middleware.js +78 -1
  101. package/dist/server/tools/middleware.js.map +1 -1
  102. package/dist/server/tools/tool_groups/product_operations.d.ts +5 -3
  103. package/dist/server/tools/tool_groups/product_operations.d.ts.map +1 -1
  104. package/dist/server/tools/tool_groups/product_operations.js +5 -105
  105. package/dist/server/tools/tool_groups/product_operations.js.map +1 -1
  106. package/dist/server/tools/tool_groups/state_machine.d.ts +34 -3
  107. package/dist/server/tools/tool_groups/state_machine.d.ts.map +1 -1
  108. package/dist/server/tools/tool_groups/state_machine.js +454 -236
  109. package/dist/server/tools/tool_groups/state_machine.js.map +1 -1
  110. package/dist/server/tools/tool_names.d.ts +0 -3
  111. package/dist/server/tools/tool_names.d.ts.map +1 -1
  112. package/dist/server/tools/tool_names.js +1 -4
  113. package/dist/server/tools/tool_names.js.map +1 -1
  114. package/dist/types/state_machine.d.ts +28 -1
  115. package/dist/types/state_machine.d.ts.map +1 -1
  116. package/dist/types/state_machine.js +1 -1
  117. package/dist/types/state_machine.js.map +1 -1
  118. package/package.json +1 -1
  119. 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 +2 -1
  120. 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 +1 -0
  121. 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 +3 -1
  122. 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 +1 -0
  123. 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 +1 -0
  124. 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 +1 -0
  125. 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 +3 -2
  126. 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 +3 -1
  127. 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 +3 -2
  128. 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 +1 -0
  129. package/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 +3 -3
  130. 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 +1 -1
  131. package/templates/artifacts/shared//345/210/207/347/211/207/350/256/241/345/210/222/346/250/241/347/211/210.md +6 -2
  132. package/templates/artifacts/shared//345/216/237/345/236/213/350/257/264/346/230/216/346/250/241/347/211/210.md +5 -3
  133. package/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 +2 -2
  134. package/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 +2 -2
  135. package/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 +2 -2
  136. package/templates/artifacts/shared//346/236/266/346/236/204/350/256/276/350/256/241/346/250/241/347/211/210.md +6 -3
  137. package/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 +5 -5
  138. package/templates/artifacts/shared//350/257/246/347/273/206/350/256/276/350/256/241/346/250/241/347/211/210.md +3 -3
  139. package/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 +7 -6
  140. package/templates/checklists//344/274/232/350/257/235/346/201/242/345/244/215.md +1 -1
  141. package/templates/gates/shared/gate-/344/273/243/347/240/201/345/256/241/346/237/245.yaml +7 -0
  142. package/templates/gates/shared/gate-/345/210/207/347/211/207/345/256/241/346/237/245.yaml +14 -2
  143. package/templates/gates/shared/gate-/347/274/226/347/240/201/345/256/236/347/216/260.yaml +12 -0
  144. package/templates/internal/patterns/Hook/345/261/202/344/272/247/347/211/251/347/273/223/346/236/204/346/240/241/351/252/214.md +1 -1
  145. package/templates/procedures/Schema/345/217/230/346/233/264/346/265/201/346/260/264/347/272/277.md +2 -2
  146. package/templates/procedures//345/256/211/345/205/250/345/212/240/345/233/272/346/265/201/346/260/264/347/272/277.md +2 -2
  147. package/templates/procedures//346/200/247/350/203/275/346/265/201/346/260/264/347/272/277.md +2 -2
  148. package/templates/procedures//346/216/245/345/217/243/351/233/206/346/210/220/346/265/201/346/260/264/347/272/277.md +1 -1
  149. package/templates/procedures//346/236/266/346/236/204/350/256/276/350/256/241/345/267/245/344/275/234/346/265/201.md +1 -2
  150. package/templates/procedures//346/246/202/345/277/265/351/252/214/350/257/201/346/265/201/346/260/264/347/272/277.md +2 -2
  151. package/templates/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 +2 -2
  152. package/templates/procedures//347/264/247/346/200/245/344/277/256/345/244/215/346/265/201/346/260/264/347/272/277.md +2 -2
  153. package/templates/procedures//350/277/201/347/247/273/346/265/201/346/260/264/347/272/277.md +2 -2
  154. package/templates/procedures//351/207/215/346/236/204/346/265/201/346/260/264/347/272/277.md +2 -2
  155. package/templates/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 +21 -3
  156. package/templates/rules/shared//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 +122 -0
@@ -0,0 +1,185 @@
1
+ /**
2
+ * 四层编排共享内核 — 单产物操作的统一编排函数。
3
+ *
4
+ * 三种场景共用此内核:
5
+ * - 场景 A:sf_command([sf] 审查/修改/生成/迭代 某某产物)
6
+ * - 场景 B:sf_single_artifact(结构化参数快捷入口)
7
+ * - 场景 C:CLI review/modify 命令
8
+ *
9
+ * 四层编排:
10
+ * Layer 1 — 模板层:从模板 frontmatter 读取 companion_rules / companion_gates / consumes
11
+ * Layer 2 — 引擎层:解析 consumes → 加载上游产物内容
12
+ * Layer 3 — 上下文引擎:运行 requires_context 视图
13
+ * Layer 4 — 规则层 + 门禁层:injectCompanions 按 operation 过滤加载
14
+ * Layer 5 — 范围约束:allowed_paths + read_only_paths
15
+ *
16
+ * 按方案 SoloForge-模板体系四层职责分离方案.md Section 2.4 实现。
17
+ */
18
+ import type { OperationType } from "../../types/pipeline.js";
19
+ import type { ArtifactKind } from "../contracts/artifact_contract_registry.js";
20
+ /** 内核输入参数 */
21
+ export interface OrchestrateParams {
22
+ /** 产物类型(ArtifactKind) */
23
+ kind: ArtifactKind;
24
+ /** 操作类型 */
25
+ operation: OperationType;
26
+ /** 项目根路径 */
27
+ projectPath: string;
28
+ /** 原始命令文本(用于 missing_upstream 时引导回原任务) */
29
+ original_command?: string;
30
+ /** 管线类型(新系统/老系统),用于模板搜索路径和产物过滤 */
31
+ systemType?: "新系统" | "老系统";
32
+ }
33
+ /** 上游输入项 */
34
+ export interface UpstreamInput {
35
+ ref: string;
36
+ resolved_kind?: string;
37
+ paths: string[];
38
+ contents: Record<string, string>;
39
+ missing: boolean;
40
+ }
41
+ /** 内核输出 */
42
+ export interface OrchestrateResult {
43
+ mode: "single_artifact";
44
+ status: "ready" | "no_template" | "missing_upstream" | "need_target_info" | "error";
45
+ target_kind: ArtifactKind;
46
+ target_name: string;
47
+ target_paths: string[];
48
+ /** 首次创建时的建议路径(含通配符 pattern) */
49
+ suggested_target_paths?: string[];
50
+ template_name?: string;
51
+ template_body?: string;
52
+ upstream_inputs?: UpstreamInput[];
53
+ missing_inputs?: MissingInput[];
54
+ available_inputs?: AvailableInput[];
55
+ suggested_action?: {
56
+ produce_first: string;
57
+ then_resume: string;
58
+ };
59
+ context_analysis?: string;
60
+ rules?: Array<{
61
+ name: string;
62
+ usage: string;
63
+ content: string;
64
+ }>;
65
+ missing_rules?: string[];
66
+ gates?: Array<{
67
+ name: string;
68
+ content: string;
69
+ }>;
70
+ missing_gates?: string[];
71
+ injection_text?: string;
72
+ scope?: {
73
+ allowed_paths: string[];
74
+ read_only_paths: string[];
75
+ };
76
+ original_task?: {
77
+ kind: ArtifactKind;
78
+ description: string;
79
+ command: string;
80
+ };
81
+ error?: string;
82
+ operation?: OperationType;
83
+ }
84
+ /** 缺失输入项(用于 missing_upstream 状态) */
85
+ export interface MissingInput {
86
+ ref: string;
87
+ kind?: string;
88
+ template_name?: string;
89
+ template_path?: string | null;
90
+ available_upstream: AvailableInput[];
91
+ message: string;
92
+ }
93
+ /** 可用输入项 */
94
+ export interface AvailableInput {
95
+ ref: string;
96
+ kind?: string;
97
+ paths: string[];
98
+ missing: boolean;
99
+ }
100
+ /**
101
+ * 为 iterate 操作构建自动迭代循环指令。
102
+ *
103
+ * 核心流程:review → 发现问题 → fix → 再 review → 直到全部通过。
104
+ * 这不是内核的自动化循环(内核不运行 AI),而是在 injection_text 中
105
+ * 告诉 AI 遵循的迭代协议。
106
+ */
107
+ export declare function buildIterateDirective(operation: OperationType, targetName: string, targetPaths: string[], gateNames: string[]): string;
108
+ /**
109
+ * 构建 extract 操作的质量纪律指令。
110
+ *
111
+ * extract 是首次创建产物,无迭代循环也无上游对比。
112
+ * 此函数注入创建质量纪律,防止 AI 产出空洞内容。
113
+ */
114
+ export declare function buildExtractQualityDirective(operation: OperationType, targetName: string, targetPaths: string[], gateNames: string[]): string;
115
+ /**
116
+ * 四层编排共享内核 — 单产物操作统一入口。
117
+ *
118
+ * @param params.kind - 产物类型(ArtifactKind)
119
+ * @param params.operation - 操作类型(extract/review/fix/iterate)
120
+ * @param params.projectPath - 项目根路径
121
+ * @returns 编排结果(OrchestrateResult)
122
+ */
123
+ export declare function orchestrateSingleArtifact(params: OrchestrateParams): Promise<OrchestrateResult>;
124
+ /** 阶段级审查参数 */
125
+ export interface StageReviewParams {
126
+ /** 阶段名称(TaskStage) */
127
+ stage: string;
128
+ /** 项目根路径 */
129
+ projectPath: string;
130
+ /** 原始命令文本 */
131
+ original_command?: string;
132
+ /** 管线类型(新系统/老系统),用于产物过滤 */
133
+ systemType?: "新系统" | "老系统";
134
+ }
135
+ /** 阶段级审查中每个产物的编排摘要 */
136
+ export interface StageArtifactResult {
137
+ kind: ArtifactKind;
138
+ name: string;
139
+ paths: string[];
140
+ status: "ready" | "missing_upstream" | "no_template" | "missing_target";
141
+ injection_text?: string;
142
+ upstream_inputs?: UpstreamInput[];
143
+ template_body?: string;
144
+ rules?: Array<{
145
+ name: string;
146
+ usage: string;
147
+ content: string;
148
+ }>;
149
+ gates?: Array<{
150
+ name: string;
151
+ content: string;
152
+ }>;
153
+ missing_inputs?: MissingInput[];
154
+ error?: string;
155
+ }
156
+ /** 阶段级审查结果 */
157
+ export interface StageReviewResult {
158
+ mode: "stage_review";
159
+ status: "ready" | "partial" | "no_artifacts" | "error";
160
+ stage: string;
161
+ /** 每个产物的编排结果 */
162
+ artifact_results: StageArtifactResult[];
163
+ /** 聚合后的阶段级审查指令 */
164
+ injection_text: string;
165
+ /** 聚合的 scope 约束 */
166
+ scope?: {
167
+ allowed_paths: string[];
168
+ read_only_paths: string[];
169
+ };
170
+ /** 错误信息 */
171
+ error?: string;
172
+ }
173
+ /** 构建阶段级审查 injection_text */
174
+ export declare function buildStageReviewInjection(stage: string, results: StageArtifactResult[], gates: Array<{
175
+ name: string;
176
+ content: string;
177
+ }>): string;
178
+ /**
179
+ * 阶段级审查编排 — 审查指定阶段的全部产出。
180
+ *
181
+ * 对该阶段的所有注册产物逐一调用 orchestrateSingleArtifact(review),
182
+ * 聚合结果为统一的 StageReviewResult。
183
+ */
184
+ export declare function orchestrateStageReview(params: StageReviewParams): Promise<StageReviewResult>;
185
+ //# sourceMappingURL=orchestrate_single_artifact.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orchestrate_single_artifact.d.ts","sourceRoot":"","sources":["../../../src/engine/pipeline/orchestrate_single_artifact.ts"],"names":[],"mappings":"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"}