soloforge 1.0.0 → 1.1.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.
Files changed (182) hide show
  1. package/README.md +4 -1
  2. package/dist/adapters/claude_code/claude_md.d.ts +1 -2
  3. package/dist/adapters/claude_code/claude_md.d.ts.map +1 -1
  4. package/dist/adapters/claude_code/claude_md.js +2 -76
  5. package/dist/adapters/claude_code/claude_md.js.map +1 -1
  6. package/dist/adapters/claude_code/server.d.ts +16 -0
  7. package/dist/adapters/claude_code/server.d.ts.map +1 -1
  8. package/dist/adapters/claude_code/server.js +17 -1
  9. package/dist/adapters/claude_code/server.js.map +1 -1
  10. package/dist/adapters/claude_code/tools.d.ts +32 -1
  11. package/dist/adapters/claude_code/tools.d.ts.map +1 -1
  12. package/dist/adapters/claude_code/tools.js +65 -30
  13. package/dist/adapters/claude_code/tools.js.map +1 -1
  14. package/dist/adapters/codex/codex_config.d.ts +3 -0
  15. package/dist/adapters/codex/codex_config.d.ts.map +1 -0
  16. package/dist/adapters/codex/codex_config.js +51 -0
  17. package/dist/adapters/codex/codex_config.js.map +1 -0
  18. package/dist/adapters/codex/codex_rules.d.ts +2 -0
  19. package/dist/adapters/codex/codex_rules.d.ts.map +1 -0
  20. package/dist/adapters/codex/codex_rules.js +5 -0
  21. package/dist/adapters/codex/codex_rules.js.map +1 -0
  22. package/dist/adapters/shared/workflow_template.d.ts +3 -0
  23. package/dist/adapters/shared/workflow_template.d.ts.map +1 -0
  24. package/dist/adapters/shared/workflow_template.js +78 -0
  25. package/dist/adapters/shared/workflow_template.js.map +1 -0
  26. package/dist/adapters/trae/trae_rules.d.ts +1 -2
  27. package/dist/adapters/trae/trae_rules.d.ts.map +1 -1
  28. package/dist/adapters/trae/trae_rules.js +2 -75
  29. package/dist/adapters/trae/trae_rules.js.map +1 -1
  30. package/dist/bin/soloforge.js +146 -22
  31. package/dist/bin/soloforge.js.map +1 -1
  32. package/dist/engine/change_coordinator.d.ts +20 -5
  33. package/dist/engine/change_coordinator.d.ts.map +1 -1
  34. package/dist/engine/change_coordinator.js +36 -22
  35. package/dist/engine/change_coordinator.js.map +1 -1
  36. package/dist/engine/classifier.d.ts +7 -0
  37. package/dist/engine/classifier.d.ts.map +1 -1
  38. package/dist/engine/classifier.js +75 -3
  39. package/dist/engine/classifier.js.map +1 -1
  40. package/dist/engine/code_reviewer.d.ts +37 -1
  41. package/dist/engine/code_reviewer.d.ts.map +1 -1
  42. package/dist/engine/code_reviewer.js +126 -24
  43. package/dist/engine/code_reviewer.js.map +1 -1
  44. package/dist/engine/confidence_scorer.d.ts +21 -0
  45. package/dist/engine/confidence_scorer.d.ts.map +1 -1
  46. package/dist/engine/confidence_scorer.js +19 -6
  47. package/dist/engine/confidence_scorer.js.map +1 -1
  48. package/dist/engine/contract_guard.d.ts +23 -0
  49. package/dist/engine/contract_guard.d.ts.map +1 -1
  50. package/dist/engine/contract_guard.js +152 -43
  51. package/dist/engine/contract_guard.js.map +1 -1
  52. package/dist/engine/convention_detector.d.ts +20 -0
  53. package/dist/engine/convention_detector.d.ts.map +1 -1
  54. package/dist/engine/convention_detector.js +19 -1
  55. package/dist/engine/convention_detector.js.map +1 -1
  56. package/dist/engine/debt_reporter.d.ts +5 -0
  57. package/dist/engine/debt_reporter.d.ts.map +1 -1
  58. package/dist/engine/debt_reporter.js +30 -6
  59. package/dist/engine/debt_reporter.js.map +1 -1
  60. package/dist/engine/debt_tracker.d.ts +52 -0
  61. package/dist/engine/debt_tracker.d.ts.map +1 -1
  62. package/dist/engine/debt_tracker.js +66 -1
  63. package/dist/engine/debt_tracker.js.map +1 -1
  64. package/dist/engine/debugger.d.ts +9 -0
  65. package/dist/engine/debugger.d.ts.map +1 -1
  66. package/dist/engine/debugger.js +112 -20
  67. package/dist/engine/debugger.js.map +1 -1
  68. package/dist/engine/delivery.d.ts +27 -0
  69. package/dist/engine/delivery.d.ts.map +1 -1
  70. package/dist/engine/delivery.js +67 -13
  71. package/dist/engine/delivery.js.map +1 -1
  72. package/dist/engine/dependency_scanner.d.ts +5 -8
  73. package/dist/engine/dependency_scanner.d.ts.map +1 -1
  74. package/dist/engine/dependency_scanner.js +46 -29
  75. package/dist/engine/dependency_scanner.js.map +1 -1
  76. package/dist/engine/evolver.d.ts +54 -0
  77. package/dist/engine/evolver.d.ts.map +1 -1
  78. package/dist/engine/evolver.js +159 -6
  79. package/dist/engine/evolver.js.map +1 -1
  80. package/dist/engine/exploration.d.ts +114 -0
  81. package/dist/engine/exploration.d.ts.map +1 -0
  82. package/dist/engine/exploration.js +414 -0
  83. package/dist/engine/exploration.js.map +1 -0
  84. package/dist/engine/failure_classifier.d.ts +28 -0
  85. package/dist/engine/failure_classifier.d.ts.map +1 -1
  86. package/dist/engine/failure_classifier.js +51 -5
  87. package/dist/engine/failure_classifier.js.map +1 -1
  88. package/dist/engine/git_deps.d.ts +29 -0
  89. package/dist/engine/git_deps.d.ts.map +1 -1
  90. package/dist/engine/git_deps.js +1 -0
  91. package/dist/engine/git_deps.js.map +1 -1
  92. package/dist/engine/impact_analyzer.d.ts +17 -0
  93. package/dist/engine/impact_analyzer.d.ts.map +1 -1
  94. package/dist/engine/impact_analyzer.js +76 -4
  95. package/dist/engine/impact_analyzer.js.map +1 -1
  96. package/dist/engine/intent_expander.d.ts +58 -0
  97. package/dist/engine/intent_expander.d.ts.map +1 -1
  98. package/dist/engine/intent_expander.js +173 -1
  99. package/dist/engine/intent_expander.js.map +1 -1
  100. package/dist/engine/migration_guard.d.ts +6 -0
  101. package/dist/engine/migration_guard.d.ts.map +1 -1
  102. package/dist/engine/migration_guard.js +26 -7
  103. package/dist/engine/migration_guard.js.map +1 -1
  104. package/dist/engine/observability.d.ts +31 -7
  105. package/dist/engine/observability.d.ts.map +1 -1
  106. package/dist/engine/observability.js +88 -28
  107. package/dist/engine/observability.js.map +1 -1
  108. package/dist/engine/onboarding.d.ts +41 -1
  109. package/dist/engine/onboarding.d.ts.map +1 -1
  110. package/dist/engine/onboarding.js +83 -8
  111. package/dist/engine/onboarding.js.map +1 -1
  112. package/dist/engine/scaffolder.d.ts +10 -0
  113. package/dist/engine/scaffolder.d.ts.map +1 -1
  114. package/dist/engine/scaffolder.js +55 -10
  115. package/dist/engine/scaffolder.js.map +1 -1
  116. package/dist/engine/scope_controller.d.ts +13 -0
  117. package/dist/engine/scope_controller.d.ts.map +1 -1
  118. package/dist/engine/scope_controller.js +76 -12
  119. package/dist/engine/scope_controller.js.map +1 -1
  120. package/dist/engine/task_context.d.ts +124 -0
  121. package/dist/engine/task_context.d.ts.map +1 -1
  122. package/dist/engine/task_context.js +155 -7
  123. package/dist/engine/task_context.js.map +1 -1
  124. package/dist/engine/task_planner.d.ts +17 -0
  125. package/dist/engine/task_planner.d.ts.map +1 -1
  126. package/dist/engine/task_planner.js +51 -4
  127. package/dist/engine/task_planner.js.map +1 -1
  128. package/dist/engine/team_awareness.d.ts +17 -0
  129. package/dist/engine/team_awareness.d.ts.map +1 -1
  130. package/dist/engine/team_awareness.js +29 -11
  131. package/dist/engine/team_awareness.js.map +1 -1
  132. package/dist/engine/test_generator.d.ts +5 -4
  133. package/dist/engine/test_generator.d.ts.map +1 -1
  134. package/dist/engine/test_generator.js +22 -5
  135. package/dist/engine/test_generator.js.map +1 -1
  136. package/dist/engine/test_quality.d.ts +11 -4
  137. package/dist/engine/test_quality.d.ts.map +1 -1
  138. package/dist/engine/test_quality.js +171 -14
  139. package/dist/engine/test_quality.js.map +1 -1
  140. package/dist/engine/verifier.d.ts +41 -0
  141. package/dist/engine/verifier.d.ts.map +1 -1
  142. package/dist/engine/verifier.js +110 -1
  143. package/dist/engine/verifier.js.map +1 -1
  144. package/dist/git/operations.d.ts +1 -0
  145. package/dist/git/operations.d.ts.map +1 -1
  146. package/dist/git/operations.js +3 -0
  147. package/dist/git/operations.js.map +1 -1
  148. package/dist/index.d.ts +9 -0
  149. package/dist/index.d.ts.map +1 -1
  150. package/dist/index.js +14 -0
  151. package/dist/index.js.map +1 -1
  152. package/dist/knowledge/index_manager.d.ts +7 -1
  153. package/dist/knowledge/index_manager.d.ts.map +1 -1
  154. package/dist/knowledge/index_manager.js +112 -37
  155. package/dist/knowledge/index_manager.js.map +1 -1
  156. package/dist/knowledge/loader.d.ts +31 -0
  157. package/dist/knowledge/loader.d.ts.map +1 -1
  158. package/dist/knowledge/loader.js +102 -8
  159. package/dist/knowledge/loader.js.map +1 -1
  160. package/dist/types.d.ts +608 -0
  161. package/dist/types.d.ts.map +1 -1
  162. package/package.json +1 -1
  163. package/templates/knowledge/acceptance_templates//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 +19 -0
  164. package/templates/knowledge/acceptance_templates//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 +4 -0
  165. package/templates/knowledge/procedures//345/212/237/350/203/275/345/274/200/345/217/221/346/265/201/347/250/213.md +4 -1
  166. package/templates/knowledge/procedures//350/207/252/344/270/273/351/200/211/345/236/213/346/265/201/347/250/213.md +34 -0
  167. package/templates/knowledge/review_rules//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 +66 -0
  168. package/templates/scaffolds/react/Form.tsx.hbs +9 -1
  169. package/templates/scaffolds/react/List.tsx.hbs +10 -1
  170. package/templates/scaffolds/react/Page.tsx.hbs +4 -1
  171. package/templates/scaffolds/react/service.ts.hbs +29 -0
  172. package/templates/scaffolds/react/types.ts.hbs +7 -1
  173. package/templates/scaffolds/react/use{{ModuleName}}.ts.hbs +34 -2
  174. package/templates/scaffolds/spring-boot/Controller.java.hbs +27 -0
  175. package/templates/scaffolds/spring-boot/DTO.java.hbs +7 -1
  176. package/templates/scaffolds/spring-boot/Entity.java.hbs +11 -1
  177. package/templates/scaffolds/spring-boot/ErrorCode.java.hbs +13 -1
  178. package/templates/scaffolds/spring-boot/Mapper.java.hbs +4 -1
  179. package/templates/scaffolds/spring-boot/PageResponse.java.hbs +24 -1
  180. package/templates/scaffolds/spring-boot/Service.java.hbs +32 -0
  181. package/templates/scaffolds/spring-boot/ServiceImpl.java.hbs +23 -5
  182. package/templates/scaffolds/spring-boot/ServiceTest.java.hbs +7 -1
@@ -3,27 +3,50 @@ package {{basePackage}}.dto;
3
3
  import java.util.List;
4
4
 
5
5
  /**
6
- * 分页响应封装
6
+ * {{ModuleName}} 分页响应封装 — 提供统一的分页数据结构。
7
+ * @param <T> 分页数据类型
7
8
  */
8
9
  public class {{ModuleName}}PageResponse<T> {
9
10
 
11
+ /** 当前页数据列表 */
10
12
  private List<T> records;
13
+
14
+ /** 总记录数 */
11
15
  private long total;
16
+
17
+ /** 当前页码,从 1 开始 */
12
18
  private int page;
19
+
20
+ /** 每页数量 */
13
21
  private int size;
22
+
23
+ /** 总页数 */
14
24
  private int totalPages;
15
25
 
26
+ /**
27
+ * 构造分页响应。
28
+ * @param records 当前页数据列表
29
+ * @param total 总记录数
30
+ * @param page 当前页码
31
+ * @param size 每页数量
32
+ */
16
33
  public {{ModuleName}}PageResponse(List<T> records, long total, int page, int size) {
17
34
  this.records = records;
18
35
  this.total = total;
19
36
  this.page = page;
20
37
  this.size = size;
38
+ // 向上取整计算总页数
21
39
  this.totalPages = (int) Math.ceil((double) total / size);
22
40
  }
23
41
 
42
+ /** 获取当前页数据列表 */
24
43
  public List<T> getRecords() { return records; }
44
+ /** 获取总记录数 */
25
45
  public long getTotal() { return total; }
46
+ /** 获取当前页码 */
26
47
  public int getPage() { return page; }
48
+ /** 获取每页数量 */
27
49
  public int getSize() { return size; }
50
+ /** 获取总页数 */
28
51
  public int getTotalPages() { return totalPages; }
29
52
  }
@@ -3,10 +3,42 @@ package {{basePackage}}.service;
3
3
  import {{basePackage}}.dto.{{ModuleName}}DTO;
4
4
  import java.util.List;
5
5
 
6
+ /**
7
+ * {{ModuleName}} 服务接口 — 定义 {{moduleName}} 模块的业务操作契约。
8
+ */
6
9
  public interface {{ModuleName}}Service {
10
+
11
+ /**
12
+ * 查询所有 {{moduleName}}。
13
+ * @return {{moduleName}} DTO 列表
14
+ */
7
15
  List<{{ModuleName}}DTO> list();
16
+
17
+ /**
18
+ * 根据 ID 查询 {{moduleName}}。
19
+ * @param id 主键标识
20
+ * @return {{moduleName}} DTO,不存在时返回 null
21
+ */
8
22
  {{ModuleName}}DTO getById(Long id);
23
+
24
+ /**
25
+ * 创建 {{moduleName}}。
26
+ * @param dto 创建请求数据
27
+ * @return 创建后的 {{moduleName}} DTO
28
+ */
9
29
  {{ModuleName}}DTO create({{ModuleName}}DTO dto);
30
+
31
+ /**
32
+ * 更新 {{moduleName}}。
33
+ * @param id 主键标识
34
+ * @param dto 更新请求数据
35
+ * @return 更新后的 {{moduleName}} DTO
36
+ */
10
37
  {{ModuleName}}DTO update(Long id, {{ModuleName}}DTO dto);
38
+
39
+ /**
40
+ * 删除 {{moduleName}}。
41
+ * @param id 主键标识
42
+ */
11
43
  void delete(Long id);
12
44
  }
@@ -8,6 +8,9 @@ import org.springframework.stereotype.Service;
8
8
 
9
9
  import java.util.List;
10
10
 
11
+ /**
12
+ * {{ModuleName}} 服务实现 — 提供 {{moduleName}} 模块业务逻辑的具体实现。
13
+ */
11
14
  @Service
12
15
  public class {{ModuleName}}ServiceImpl implements {{ModuleName}}Service {
13
16
 
@@ -17,32 +20,47 @@ public class {{ModuleName}}ServiceImpl implements {{ModuleName}}Service {
17
20
  this.{{moduleName}}Mapper = {{moduleName}}Mapper;
18
21
  }
19
22
 
23
+ /**
24
+ * {@inheritDoc}
25
+ */
20
26
  @Override
21
27
  public List<{{ModuleName}}DTO> list() {
22
- // TODO: 实现列表查询
28
+ // TODO: 实现列表查询,将 Entity 转换为 DTO 返回
23
29
  return List.of();
24
30
  }
25
31
 
32
+ /**
33
+ * {@inheritDoc}
34
+ */
26
35
  @Override
27
36
  public {{ModuleName}}DTO getById(Long id) {
28
- // TODO: 实现单条查询
37
+ // TODO: 实现单条查询,ID 不存在时需抛出业务异常
29
38
  return null;
30
39
  }
31
40
 
41
+ /**
42
+ * {@inheritDoc}
43
+ */
32
44
  @Override
33
45
  public {{ModuleName}}DTO create({{ModuleName}}DTO dto) {
34
- // TODO: 实现创建
46
+ // TODO: 实现创建逻辑,DTO 转 Entity 后持久化
35
47
  return dto;
36
48
  }
37
49
 
50
+ /**
51
+ * {@inheritDoc}
52
+ */
38
53
  @Override
39
54
  public {{ModuleName}}DTO update(Long id, {{ModuleName}}DTO dto) {
40
- // TODO: 实现更新
55
+ // TODO: 实现更新逻辑,先查询存在性再更新
41
56
  return dto;
42
57
  }
43
58
 
59
+ /**
60
+ * {@inheritDoc}
61
+ */
44
62
  @Override
45
63
  public void delete(Long id) {
46
- // TODO: 实现删除
64
+ // TODO: 实现删除逻辑,考虑是否使用软删除
47
65
  }
48
66
  }
@@ -8,15 +8,21 @@ import org.mockito.junit.jupiter.MockitoExtension;
8
8
 
9
9
  import static org.junit.jupiter.api.Assertions.*;
10
10
 
11
+ /**
12
+ * {{ModuleName}} 服务单元测试 — 验证 {{moduleName}} 业务逻辑的正确性。
13
+ */
11
14
  @ExtendWith(MockitoExtension.class)
12
15
  class {{ModuleName}}ServiceTest {
13
16
 
14
17
  @InjectMocks
15
18
  private Object {{moduleName}}Service;
16
19
 
20
+ /**
21
+ * 验证 Spring 上下文加载正常。
22
+ */
17
23
  @Test
18
24
  void contextLoads() {
19
- // TODO: 编写单元测试
25
+ // TODO: 编写单元测试,覆盖正常流程和边界场景
20
26
  assertNotNull({{moduleName}}Service);
21
27
  }
22
28
  }