sillyspec 3.11.7 → 3.11.8
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/package.json +1 -1
- package/src/stages/brainstorm.js +12 -1
- package/src/stages/scan.js +32 -0
package/package.json
CHANGED
package/src/stages/brainstorm.js
CHANGED
|
@@ -322,8 +322,19 @@ Then 期望结果
|
|
|
322
322
|
- 可测试:...
|
|
323
323
|
\`\`\`
|
|
324
324
|
|
|
325
|
+
### 后续变更包处理
|
|
326
|
+
如果 MASTER.md 中规划了后续变更包(拆分后的子阶段),**必须同时为每个后续包创建独立变更目录**:
|
|
327
|
+
1. 读取 MASTER.md 中的变更包列表(包名 + 边界描述)
|
|
328
|
+
2. 为每个后续包创建目录:\`mkdir -p .sillyspec/changes/<后续包名>\`
|
|
329
|
+
3. 每个目录生成骨架文件:
|
|
330
|
+
- \`proposal.md\`:从 MASTER.md 中提取该包的动机和边界
|
|
331
|
+
- \`design.md\`:从 MASTER.md 中提取该包的职责描述(标记为「待设计 - 本包 design 在该包进入 brainstorm 时完善」)
|
|
332
|
+
- \`requirements.md\`:从 MASTER.md 中提取该包的需求范围(标记为「待完善」)
|
|
333
|
+
- \`tasks.md\`:创建空任务列表,标记为「待 plan 阶段展开」
|
|
334
|
+
4. \`git add .sillyspec/\` — 暂存所有新增文件(不要 commit)
|
|
335
|
+
|
|
325
336
|
### 输出
|
|
326
|
-
|
|
337
|
+
所有规范文件路径(含后续变更包目录列表)
|
|
327
338
|
|
|
328
339
|
### 注意
|
|
329
340
|
- 必须等待用户明确确认
|
package/src/stages/scan.js
CHANGED
|
@@ -4,6 +4,38 @@ export const definition = {
|
|
|
4
4
|
description: '分析项目结构、约定和架构',
|
|
5
5
|
auxiliary: true,
|
|
6
6
|
steps: [
|
|
7
|
+
{
|
|
8
|
+
name: '探测项目结构并建议子项目',
|
|
9
|
+
prompt: `扫描项目顶层目录结构,自动发现可能的子项目,**需用户确认后才创建 projects 配置**。
|
|
10
|
+
|
|
11
|
+
### 操作
|
|
12
|
+
1. 列出项目顶层目录:\`ls -d */ 2>/dev/null | grep -v node_modules | grep -v '.git' | grep -v '.sillyspec'\`
|
|
13
|
+
2. 对每个顶层目录,快速判断是否为独立项目(检查 package.json / pom.xml / build.gradle / pyproject.toml / go.mod 等构建文件)
|
|
14
|
+
3. 对每个疑似独立项目,检测技术栈:\`cat <dir>/package.json 2>/dev/null | head -5\` 或类似
|
|
15
|
+
4. 对比 \`.sillyspec/projects/\` 已有配置,找出未注册的子项目
|
|
16
|
+
|
|
17
|
+
### 判断标准(满足任一即为子项目)
|
|
18
|
+
- 有独立的构建文件(package.json, pom.xml, build.gradle, pyproject.toml 等)
|
|
19
|
+
- 有独立的源码目录结构(src/, app/, lib/ 等)
|
|
20
|
+
- 有独立的测试目录(test/, tests/, __tests__/ 等)
|
|
21
|
+
- 不是 .git / node_modules / .sillyspec / dist / build 等工具目录
|
|
22
|
+
|
|
23
|
+
### 输出格式
|
|
24
|
+
列出发现的可能子项目列表,每个含:
|
|
25
|
+
- 目录名
|
|
26
|
+
- 技术栈(如 Next.js + TypeScript、FastAPI + Python)
|
|
27
|
+
- 是否已注册到 projects/
|
|
28
|
+
- 建议:注册 / 跳过
|
|
29
|
+
|
|
30
|
+
### ⛔ 红线
|
|
31
|
+
- **不要自动创建 projects 配置文件**,只列出建议供用户确认
|
|
32
|
+
- **不要修改任何文件**,只做探测和报告
|
|
33
|
+
|
|
34
|
+
### 输出
|
|
35
|
+
子项目建议列表(含技术栈和注册状态)`,
|
|
36
|
+
outputHint: '子项目建议列表',
|
|
37
|
+
optional: false
|
|
38
|
+
},
|
|
7
39
|
{
|
|
8
40
|
name: '检查已有扫描文档和子项目列表',
|
|
9
41
|
prompt: `检查已有扫描文档和子项目列表。
|