@jakkrichm/create-nexus-devflow 2.12.3 → 2.12.4
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/dist/scripts/prepare-template.js +22 -7
- package/dist/scripts/prepare-template.js.map +1 -1
- package/package.json +1 -1
- package/template/.agents/skills/adopt/SKILL.md +40 -5
- package/template/.agents/skills/onboard/SKILL.md +40 -5
- package/template/.claude/skills/adopt/SKILL.md +40 -5
- package/template/.claude/skills/onboard/SKILL.md +40 -5
- package/template/devflow/build-plan.md +9 -0
- package/template/devflow/analysis/REQ-20260903-001-sync-upstream-ai-blueprint/codebase-impact.md +0 -46
- package/template/devflow/analysis/REQ-20260904-001-sync-upstream-ai-blueprint/codebase-impact.md +0 -47
- package/template/devflow/inbox/REQ-20260903-001-sync-upstream-ai-blueprint/clarifications.md +0 -34
- package/template/devflow/inbox/REQ-20260903-001-sync-upstream-ai-blueprint/parsed.md +0 -66
- package/template/devflow/inbox/REQ-20260903-001-sync-upstream-ai-blueprint/raw/upstream-v152-diff.md +0 -16
- package/template/devflow/inbox/REQ-20260904-001-sync-upstream-ai-blueprint/clarifications.md +0 -28
- package/template/devflow/inbox/REQ-20260904-001-sync-upstream-ai-blueprint/parsed.md +0 -59
- package/template/devflow/inbox/REQ-20260904-001-sync-upstream-ai-blueprint/raw/upstream-diff.txt +0 -23
|
@@ -14,6 +14,9 @@ const entries = [
|
|
|
14
14
|
"devflow",
|
|
15
15
|
"LICENSE"
|
|
16
16
|
];
|
|
17
|
+
function matchesPrefix(filePath, prefix) {
|
|
18
|
+
return filePath === prefix || filePath.startsWith(`${prefix}/`);
|
|
19
|
+
}
|
|
17
20
|
async function copyEntry(entry, inventory) {
|
|
18
21
|
const source = path.join(repoRoot, entry);
|
|
19
22
|
const target = path.join(templateRoot, entry);
|
|
@@ -25,7 +28,7 @@ async function copyEntry(entry, inventory) {
|
|
|
25
28
|
if (!shouldIncludeTemplatePath(normalized, inventory)) {
|
|
26
29
|
return false;
|
|
27
30
|
}
|
|
28
|
-
if (normalized
|
|
31
|
+
if (matchesPrefix(normalized, "devflow/.state")) {
|
|
29
32
|
return false;
|
|
30
33
|
}
|
|
31
34
|
if (normalized.startsWith("devflow/context/") &&
|
|
@@ -63,14 +66,26 @@ async function copyEntry(entry, inventory) {
|
|
|
63
66
|
!normalized.endsWith("README.md")) {
|
|
64
67
|
return false;
|
|
65
68
|
}
|
|
66
|
-
if (normalized
|
|
69
|
+
if (matchesPrefix(normalized, "devflow/inbox") ||
|
|
70
|
+
matchesPrefix(normalized, "devflow/analysis") ||
|
|
71
|
+
matchesPrefix(normalized, "devflow/scratch") ||
|
|
72
|
+
matchesPrefix(normalized, "devflow/tmp") ||
|
|
73
|
+
matchesPrefix(normalized, "devflow/temp") ||
|
|
74
|
+
matchesPrefix(normalized, "devflow/brainstorm") ||
|
|
75
|
+
matchesPrefix(normalized, "devflow/brainstorms") ||
|
|
76
|
+
matchesPrefix(normalized, "devflow/backups") ||
|
|
77
|
+
matchesPrefix(normalized, "devflow/reports") ||
|
|
78
|
+
matchesPrefix(normalized, "devflow/research") ||
|
|
79
|
+
matchesPrefix(normalized, "prototypes") ||
|
|
80
|
+
matchesPrefix(normalized, "evals") ||
|
|
81
|
+
matchesPrefix(normalized, ".nexus")) {
|
|
67
82
|
return false;
|
|
68
83
|
}
|
|
69
|
-
if (normalized
|
|
70
|
-
normalized
|
|
71
|
-
normalized
|
|
72
|
-
normalized
|
|
73
|
-
normalized
|
|
84
|
+
if (matchesPrefix(normalized, "devflow/.vendor") ||
|
|
85
|
+
matchesPrefix(normalized, "devflow/reference/bughunter/skills") ||
|
|
86
|
+
matchesPrefix(normalized, "devflow/reference/bughunter/commands") ||
|
|
87
|
+
matchesPrefix(normalized, "devflow/reference/bughunter/disclosed-reports") ||
|
|
88
|
+
matchesPrefix(normalized, "devflow/reference/bughunter/docs")) {
|
|
74
89
|
return false;
|
|
75
90
|
}
|
|
76
91
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepare-template.js","sourceRoot":"","sources":["../../scripts/prepare-template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAEL,sBAAsB,EACtB,yBAAyB,EAC1B,MAAM,gCAAgC,CAAC;AAExC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACvD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;AAExD,MAAM,OAAO,GAAG;IACd,WAAW;IACX,WAAW;IACX,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;CACV,CAAC;AAEF,KAAK,UAAU,SAAS,CAAC,KAAa,EAAE,SAA6B;IACnE,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE;YAC1B,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE;gBACd,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBACpE,IAAI,CAAC,yBAAyB,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC;oBACtD,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,IAAI,
|
|
1
|
+
{"version":3,"file":"prepare-template.js","sourceRoot":"","sources":["../../scripts/prepare-template.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -144,16 +144,51 @@ DevFlow visibility?
|
|
|
144
144
|
Keeps AGENTS.md public as the lightweight project agent guide.
|
|
145
145
|
```
|
|
146
146
|
|
|
147
|
-
Recommend option 1 by default.
|
|
147
|
+
Recommend option 1 by default.
|
|
148
|
+
- If option 1 (Commit) is chosen, ensure the project's `.gitignore` ignores transient run files and raw documents:
|
|
149
|
+
```gitignore
|
|
150
|
+
# DevFlow Transient Runtime Data, Research & Scratch Files
|
|
151
|
+
devflow/runs/*
|
|
152
|
+
!devflow/runs/.gitkeep
|
|
153
|
+
devflow/discoveries/*
|
|
154
|
+
!devflow/discoveries/.gitkeep
|
|
155
|
+
devflow/reports/*
|
|
156
|
+
!devflow/reports/.gitkeep
|
|
157
|
+
devflow/research/*
|
|
158
|
+
!devflow/research/.gitkeep
|
|
159
|
+
devflow/scratch/*
|
|
160
|
+
!devflow/scratch/.gitkeep
|
|
161
|
+
devflow/decisions/*
|
|
162
|
+
!devflow/decisions/.gitkeep
|
|
163
|
+
!devflow/decisions/README.md
|
|
164
|
+
devflow/inbox/*/raw/*
|
|
165
|
+
devflow/inbox/raw/*
|
|
166
|
+
devflow/analysis/*
|
|
167
|
+
!devflow/analysis/.gitkeep
|
|
168
|
+
devflow/tmp/*
|
|
169
|
+
devflow/temp/*
|
|
170
|
+
devflow/brainstorm/*
|
|
171
|
+
devflow/brainstorms/*
|
|
172
|
+
devflow/backups/*
|
|
173
|
+
devflow/.state/
|
|
174
|
+
devflow/.vendor/
|
|
175
|
+
.nexus/
|
|
176
|
+
prototypes/*
|
|
177
|
+
!prototypes/.gitkeep
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
If the user chooses option 2 (Local-only / Zero-Visibility):
|
|
148
181
|
|
|
149
182
|
- Add this block to `.gitignore`, preserving existing entries:
|
|
150
183
|
|
|
151
184
|
```gitignore
|
|
152
|
-
# DevFlow local workflow files
|
|
185
|
+
# DevFlow local workflow files (Zero-Visibility)
|
|
153
186
|
.agents/
|
|
154
187
|
.claude/
|
|
155
188
|
devflow/
|
|
156
189
|
CLAUDE.md
|
|
190
|
+
.nexus/
|
|
191
|
+
prototypes/
|
|
157
192
|
```
|
|
158
193
|
|
|
159
194
|
- Keep `AGENTS.md` tracked. It remains the lightweight public project guide for
|
|
@@ -169,10 +204,10 @@ Recommend option 1 by default. If the user chooses option 2:
|
|
|
169
204
|
locally.
|
|
170
205
|
- Because adoption runs right after the DevFlow files were added to an
|
|
171
206
|
existing repository, they are more likely to already be staged or committed
|
|
172
|
-
than in a fresh install. If any of `.agents/`, `.claude/`, `devflow/`,
|
|
173
|
-
`CLAUDE.md` are already tracked, say `.gitignore` will not hide tracked files.
|
|
207
|
+
than in a fresh install. If any of `.agents/`, `.claude/`, `devflow/`,
|
|
208
|
+
`CLAUDE.md`, `.nexus/`, or `prototypes/` are already tracked, say `.gitignore` will not hide tracked files.
|
|
174
209
|
Ask before running
|
|
175
|
-
`git rm --cached -r .agents .claude devflow CLAUDE.md`, and
|
|
210
|
+
`git rm --cached -r .agents .claude devflow CLAUDE.md .nexus prototypes`, and
|
|
176
211
|
only run it if the user explicitly approves. Never delete the local files.
|
|
177
212
|
|
|
178
213
|
## Step 6 - review gate, then hand off
|
|
@@ -266,16 +266,51 @@ DevFlow visibility?
|
|
|
266
266
|
Keeps AGENTS.md public as the lightweight project agent guide.
|
|
267
267
|
```
|
|
268
268
|
|
|
269
|
-
Recommend option 1 by default.
|
|
269
|
+
Recommend option 1 by default.
|
|
270
|
+
- If option 1 (Commit) is chosen, ensure the project's `.gitignore` ignores transient run files and raw documents:
|
|
271
|
+
```gitignore
|
|
272
|
+
# DevFlow Transient Runtime Data, Research & Scratch Files
|
|
273
|
+
devflow/runs/*
|
|
274
|
+
!devflow/runs/.gitkeep
|
|
275
|
+
devflow/discoveries/*
|
|
276
|
+
!devflow/discoveries/.gitkeep
|
|
277
|
+
devflow/reports/*
|
|
278
|
+
!devflow/reports/.gitkeep
|
|
279
|
+
devflow/research/*
|
|
280
|
+
!devflow/research/.gitkeep
|
|
281
|
+
devflow/scratch/*
|
|
282
|
+
!devflow/scratch/.gitkeep
|
|
283
|
+
devflow/decisions/*
|
|
284
|
+
!devflow/decisions/.gitkeep
|
|
285
|
+
!devflow/decisions/README.md
|
|
286
|
+
devflow/inbox/*/raw/*
|
|
287
|
+
devflow/inbox/raw/*
|
|
288
|
+
devflow/analysis/*
|
|
289
|
+
!devflow/analysis/.gitkeep
|
|
290
|
+
devflow/tmp/*
|
|
291
|
+
devflow/temp/*
|
|
292
|
+
devflow/brainstorm/*
|
|
293
|
+
devflow/brainstorms/*
|
|
294
|
+
devflow/backups/*
|
|
295
|
+
devflow/.state/
|
|
296
|
+
devflow/.vendor/
|
|
297
|
+
.nexus/
|
|
298
|
+
prototypes/*
|
|
299
|
+
!prototypes/.gitkeep
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
If the user chooses option 2 (Local-only / Zero-Visibility):
|
|
270
303
|
|
|
271
304
|
- Add this block to `.gitignore`, preserving existing entries:
|
|
272
305
|
|
|
273
306
|
```gitignore
|
|
274
|
-
# DevFlow local workflow files
|
|
307
|
+
# DevFlow local workflow files (Zero-Visibility)
|
|
275
308
|
.agents/
|
|
276
309
|
.claude/
|
|
277
310
|
devflow/
|
|
278
311
|
CLAUDE.md
|
|
312
|
+
.nexus/
|
|
313
|
+
prototypes/
|
|
279
314
|
```
|
|
280
315
|
|
|
281
316
|
- Keep `AGENTS.md` tracked. It remains the lightweight public project guide for
|
|
@@ -289,10 +324,10 @@ Recommend option 1 by default. If the user chooses option 2:
|
|
|
289
324
|
- Explain that DevFlow state, specs, findings, and history will not travel
|
|
290
325
|
with the repo; another machine needs DevFlow reinstalled or restored
|
|
291
326
|
locally.
|
|
292
|
-
- If any of `.agents/`, `.claude/`, `devflow/`, or
|
|
293
|
-
`
|
|
327
|
+
- If any of `.agents/`, `.claude/`, `devflow/`, `CLAUDE.md`, `.nexus/`, or
|
|
328
|
+
`prototypes/` are already tracked, say `.gitignore` will not hide tracked files.
|
|
294
329
|
Ask before running
|
|
295
|
-
`git rm --cached -r .agents .claude devflow CLAUDE.md`, and
|
|
330
|
+
`git rm --cached -r .agents .claude devflow CLAUDE.md .nexus prototypes`, and
|
|
296
331
|
only run it if the user explicitly approves. Never delete the local files.
|
|
297
332
|
|
|
298
333
|
Then report which selected tools and adapter folders are needed:
|
|
@@ -144,16 +144,51 @@ DevFlow visibility?
|
|
|
144
144
|
Keeps AGENTS.md public as the lightweight project agent guide.
|
|
145
145
|
```
|
|
146
146
|
|
|
147
|
-
Recommend option 1 by default.
|
|
147
|
+
Recommend option 1 by default.
|
|
148
|
+
- If option 1 (Commit) is chosen, ensure the project's `.gitignore` ignores transient run files and raw documents:
|
|
149
|
+
```gitignore
|
|
150
|
+
# DevFlow Transient Runtime Data, Research & Scratch Files
|
|
151
|
+
devflow/runs/*
|
|
152
|
+
!devflow/runs/.gitkeep
|
|
153
|
+
devflow/discoveries/*
|
|
154
|
+
!devflow/discoveries/.gitkeep
|
|
155
|
+
devflow/reports/*
|
|
156
|
+
!devflow/reports/.gitkeep
|
|
157
|
+
devflow/research/*
|
|
158
|
+
!devflow/research/.gitkeep
|
|
159
|
+
devflow/scratch/*
|
|
160
|
+
!devflow/scratch/.gitkeep
|
|
161
|
+
devflow/decisions/*
|
|
162
|
+
!devflow/decisions/.gitkeep
|
|
163
|
+
!devflow/decisions/README.md
|
|
164
|
+
devflow/inbox/*/raw/*
|
|
165
|
+
devflow/inbox/raw/*
|
|
166
|
+
devflow/analysis/*
|
|
167
|
+
!devflow/analysis/.gitkeep
|
|
168
|
+
devflow/tmp/*
|
|
169
|
+
devflow/temp/*
|
|
170
|
+
devflow/brainstorm/*
|
|
171
|
+
devflow/brainstorms/*
|
|
172
|
+
devflow/backups/*
|
|
173
|
+
devflow/.state/
|
|
174
|
+
devflow/.vendor/
|
|
175
|
+
.nexus/
|
|
176
|
+
prototypes/*
|
|
177
|
+
!prototypes/.gitkeep
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
If the user chooses option 2 (Local-only / Zero-Visibility):
|
|
148
181
|
|
|
149
182
|
- Add this block to `.gitignore`, preserving existing entries:
|
|
150
183
|
|
|
151
184
|
```gitignore
|
|
152
|
-
# DevFlow local workflow files
|
|
185
|
+
# DevFlow local workflow files (Zero-Visibility)
|
|
153
186
|
.agents/
|
|
154
187
|
.claude/
|
|
155
188
|
devflow/
|
|
156
189
|
CLAUDE.md
|
|
190
|
+
.nexus/
|
|
191
|
+
prototypes/
|
|
157
192
|
```
|
|
158
193
|
|
|
159
194
|
- Keep `AGENTS.md` tracked. It remains the lightweight public project guide for
|
|
@@ -169,10 +204,10 @@ Recommend option 1 by default. If the user chooses option 2:
|
|
|
169
204
|
locally.
|
|
170
205
|
- Because adoption runs right after the DevFlow files were added to an
|
|
171
206
|
existing repository, they are more likely to already be staged or committed
|
|
172
|
-
than in a fresh install. If any of `.agents/`, `.claude/`, `devflow/`,
|
|
173
|
-
`CLAUDE.md` are already tracked, say `.gitignore` will not hide tracked files.
|
|
207
|
+
than in a fresh install. If any of `.agents/`, `.claude/`, `devflow/`,
|
|
208
|
+
`CLAUDE.md`, `.nexus/`, or `prototypes/` are already tracked, say `.gitignore` will not hide tracked files.
|
|
174
209
|
Ask before running
|
|
175
|
-
`git rm --cached -r .agents .claude devflow CLAUDE.md`, and
|
|
210
|
+
`git rm --cached -r .agents .claude devflow CLAUDE.md .nexus prototypes`, and
|
|
176
211
|
only run it if the user explicitly approves. Never delete the local files.
|
|
177
212
|
|
|
178
213
|
## Step 6 - review gate, then hand off
|
|
@@ -266,16 +266,51 @@ DevFlow visibility?
|
|
|
266
266
|
Keeps AGENTS.md public as the lightweight project agent guide.
|
|
267
267
|
```
|
|
268
268
|
|
|
269
|
-
Recommend option 1 by default.
|
|
269
|
+
Recommend option 1 by default.
|
|
270
|
+
- If option 1 (Commit) is chosen, ensure the project's `.gitignore` ignores transient run files and raw documents:
|
|
271
|
+
```gitignore
|
|
272
|
+
# DevFlow Transient Runtime Data, Research & Scratch Files
|
|
273
|
+
devflow/runs/*
|
|
274
|
+
!devflow/runs/.gitkeep
|
|
275
|
+
devflow/discoveries/*
|
|
276
|
+
!devflow/discoveries/.gitkeep
|
|
277
|
+
devflow/reports/*
|
|
278
|
+
!devflow/reports/.gitkeep
|
|
279
|
+
devflow/research/*
|
|
280
|
+
!devflow/research/.gitkeep
|
|
281
|
+
devflow/scratch/*
|
|
282
|
+
!devflow/scratch/.gitkeep
|
|
283
|
+
devflow/decisions/*
|
|
284
|
+
!devflow/decisions/.gitkeep
|
|
285
|
+
!devflow/decisions/README.md
|
|
286
|
+
devflow/inbox/*/raw/*
|
|
287
|
+
devflow/inbox/raw/*
|
|
288
|
+
devflow/analysis/*
|
|
289
|
+
!devflow/analysis/.gitkeep
|
|
290
|
+
devflow/tmp/*
|
|
291
|
+
devflow/temp/*
|
|
292
|
+
devflow/brainstorm/*
|
|
293
|
+
devflow/brainstorms/*
|
|
294
|
+
devflow/backups/*
|
|
295
|
+
devflow/.state/
|
|
296
|
+
devflow/.vendor/
|
|
297
|
+
.nexus/
|
|
298
|
+
prototypes/*
|
|
299
|
+
!prototypes/.gitkeep
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
If the user chooses option 2 (Local-only / Zero-Visibility):
|
|
270
303
|
|
|
271
304
|
- Add this block to `.gitignore`, preserving existing entries:
|
|
272
305
|
|
|
273
306
|
```gitignore
|
|
274
|
-
# DevFlow local workflow files
|
|
307
|
+
# DevFlow local workflow files (Zero-Visibility)
|
|
275
308
|
.agents/
|
|
276
309
|
.claude/
|
|
277
310
|
devflow/
|
|
278
311
|
CLAUDE.md
|
|
312
|
+
.nexus/
|
|
313
|
+
prototypes/
|
|
279
314
|
```
|
|
280
315
|
|
|
281
316
|
- Keep `AGENTS.md` tracked. It remains the lightweight public project guide for
|
|
@@ -289,10 +324,10 @@ Recommend option 1 by default. If the user chooses option 2:
|
|
|
289
324
|
- Explain that DevFlow state, specs, findings, and history will not travel
|
|
290
325
|
with the repo; another machine needs DevFlow reinstalled or restored
|
|
291
326
|
locally.
|
|
292
|
-
- If any of `.agents/`, `.claude/`, `devflow/`, or
|
|
293
|
-
`
|
|
327
|
+
- If any of `.agents/`, `.claude/`, `devflow/`, `CLAUDE.md`, `.nexus/`, or
|
|
328
|
+
`prototypes/` are already tracked, say `.gitignore` will not hide tracked files.
|
|
294
329
|
Ask before running
|
|
295
|
-
`git rm --cached -r .agents .claude devflow CLAUDE.md`, and
|
|
330
|
+
`git rm --cached -r .agents .claude devflow CLAUDE.md .nexus prototypes`, and
|
|
296
331
|
only run it if the user explicitly approves. Never delete the local files.
|
|
297
332
|
|
|
298
333
|
Then report which selected tools and adapter folders are needed:
|
|
@@ -228,5 +228,14 @@
|
|
|
228
228
|
- *Dependencies*: Feature 27, DISC-20260907-001
|
|
229
229
|
- *Scope*: นำเข้าระบบตรวจทานอิสระแบบอัตโนมัติ (`review.independentExecution: "automatic"` พร้อม Isolated Subagent Spawning, Receipts Metadata Schema), ปรับค่าเริ่มต้น Quality Gates เป็น `when-sensitive`, เพิ่ม Post-Implementation Code Walkthrough ใน `implement` / `autopilot`, ปรับปรุงความทนทานของสถานะโครงการและ Dashboard (Sortable Findings, Roadmap Focus, Strict Heading Contracts), อัปเดต Framework Validation และ Unit Tests ผ่าน 100%
|
|
230
230
|
|
|
231
|
+
---
|
|
232
|
+
|
|
233
|
+
## 🛡️ Phase 29: DevFlow Development Files Hygiene & Client Repo Isolation
|
|
234
|
+
|
|
235
|
+
- [x] **29. DevFlow Internal Development Files Hygiene, Git Ignore Hardening, and Client Repo Isolation (`DISC-20260907-002`, `074-devflow-development-files-hygiene-and-client-isolation`)** `[Size: S]`
|
|
236
|
+
- *Dependencies*: DISC-20260907-002
|
|
237
|
+
- *Scope*: ปรับปรุง `.gitignore` ให้ครอบคลุม `devflow/inbox/*/raw/*`, `devflow/analysis/*`, และไฟล์ทดสอบ/แคชชั่วคราว, เสริมระบบคัดกรองใน `packages/create-nexus-devflow/scripts/prepare-template.ts` เพื่อป้องกันไม่ให้ไฟล์วิเคราะห์และข้อมูลดิบหลุดเข้า Starter Template, เพิ่มคู่มือและคำแนะนำใน `onboard/SKILL.md` และ `adopt/SKILL.md` สำหรับโหมด Local-Only (Zero-Visibility) พร้อม automated tests ตรวจสอบความสะอาดของ template ก่อน publish
|
|
238
|
+
|
|
239
|
+
|
|
231
240
|
|
|
232
241
|
|
package/template/devflow/analysis/REQ-20260903-001-sync-upstream-ai-blueprint/codebase-impact.md
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
# Codebase Impact & Blast Radius Analysis
|
|
2
|
-
|
|
3
|
-
> **Requirement ID**: `REQ-20260903-001-sync-upstream-ai-blueprint`
|
|
4
|
-
> **Date**: 2026-09-03
|
|
5
|
-
> **Complexity Score**: `Low-to-Medium (Controlled Enhancement)`
|
|
6
|
-
> **Risk Level**: `Low (No Breaking Changes, Backward-Compatible)`
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## 1. Blast Radius Map (ขอบเขตผลกระทบ)
|
|
11
|
-
|
|
12
|
-
```mermaid
|
|
13
|
-
graph TD
|
|
14
|
-
Upstream["Upstream AI Blueprint v1.5.2"] --> Onboard[".agents & .claude /skills/onboard/SKILL.md"]
|
|
15
|
-
Upstream --> Overview[".agents & .claude /skills/overview/SKILL.md"]
|
|
16
|
-
Upstream --> Context["devflow/context/ai-interaction.md"]
|
|
17
|
-
Upstream --> E2E["scripts/e2e/scenarios/unborn-onboarding.ts"]
|
|
18
|
-
Upstream --> Validator["scripts/validate-framework.ts"]
|
|
19
|
-
|
|
20
|
-
Onboard --> TemplateOnboard["packages/create-nexus-devflow template"]
|
|
21
|
-
Overview --> TemplateOverview["packages/create-nexus-devflow template"]
|
|
22
|
-
Context --> TemplateContext["packages/create-nexus-devflow template"]
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## 2. Affected Files & Modules (รายการไฟล์ที่ได้รับผลกระทบ)
|
|
28
|
-
|
|
29
|
-
| File Path | Action | Description |
|
|
30
|
-
| :--- | :--- | :--- |
|
|
31
|
-
| `.agents/skills/onboard/SKILL.md` | `MODIFY` | เพิ่ม Step 0 ตรวจจับ Unborn repository และเสนอกระบวนการ Root scaffold commit |
|
|
32
|
-
| `.claude/skills/onboard/SKILL.md` | `MODIFY` | ปรับปรุงพฤติกรรมให้ตรงกับ `.agents/` |
|
|
33
|
-
| `.agents/skills/overview/SKILL.md` | `MODIFY` | เพิ่มความสามารถ Setup branch baseline finalization (`git merge --ff-only`) |
|
|
34
|
-
| `.claude/skills/overview/SKILL.md` | `MODIFY` | ปรับปรุงพฤติกรรมให้ตรงกับ `.agents/` |
|
|
35
|
-
| `devflow/context/ai-interaction.md` | `MODIFY` | อัปเดตระเบียบการ baseline commit บน setup branch |
|
|
36
|
-
| `scripts/e2e/scenarios/unborn-onboarding.ts` | `NEW` | เพิ่มชุดทดสอบ E2E scenario ตัวที่ 9 สำหรับ unborn repo & fast-forward baseline |
|
|
37
|
-
| `scripts/validate-framework.ts` | `MODIFY` | เพิ่ม verification contracts สำหรับ onboard unborn check และ overview finalization prompt |
|
|
38
|
-
| `packages/create-nexus-devflow/template/` | `SYNC` | ซิงก์ template ผ่าน `npm run check` |
|
|
39
|
-
|
|
40
|
-
---
|
|
41
|
-
|
|
42
|
-
## 3. Risk & Breaking Change Assessment
|
|
43
|
-
|
|
44
|
-
- **Contract Breaking Risk**: `None` — ไม่มีการเปลี่ยนแปลงโครงสร้างคำสั่งหรือโฟลเดอร์หลัก ทุกการเปลี่ยนแปลงเป็นส่วนขยายเพื่อรองรับ Edge Case ที่ยังไม่มี commit
|
|
45
|
-
- **Git Safety Risk**: `Zero Remote Exposure` — มีการล็อกกฎความปลอดภัยไม่ให้มีการ push ไปยัง remote ในระหว่าง Onboard และ Overview อย่างเข้มงวด
|
|
46
|
-
- **Test Coverage Impact**: เพิ่ม Coverage โดยมี scenario ใหม่ `unborn-onboarding.ts` ในชุด E2E Agent Runner
|
package/template/devflow/analysis/REQ-20260904-001-sync-upstream-ai-blueprint/codebase-impact.md
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
# Codebase Impact & Blast Radius Analysis
|
|
2
|
-
|
|
3
|
-
> **Request ID**: `REQ-20260904-001-sync-upstream-ai-blueprint`
|
|
4
|
-
> **Target Run ID**: `072-sync-upstream-ai-blueprint-v153`
|
|
5
|
-
> **Analysis Date**: 2026-09-04
|
|
6
|
-
> **Status**: Completed
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## 💥 Blast Radius Overview
|
|
11
|
-
|
|
12
|
-
| Category | Assessment | Details |
|
|
13
|
-
| :--- | :--- | :--- |
|
|
14
|
-
| **Overall Complexity** | `Low-Medium` 🟢 | แก้ไข Skill Markdown contracts, เพิ่ม 1 E2E Scenario, ปรับปรุง Static Validator |
|
|
15
|
-
| **API / Contract Breaking Risk** | `None` 🟢 | รักษา Backward Compatibility 100% (ทั้งแบบมีและไม่มี manifest) |
|
|
16
|
-
| **Affected Areas** | Core Skills, E2E Test Suite, Static Framework Validator | `.agents/`, `.claude/`, `scripts/` |
|
|
17
|
-
| **Regression Risk** | `Low` 🟢 | มี Static Check และ E2E Scenario ครอบคลุม |
|
|
18
|
-
|
|
19
|
-
---
|
|
20
|
-
|
|
21
|
-
## 📂 Affected Files & Modules
|
|
22
|
-
|
|
23
|
-
### 1. Core Skills (`.agents/` & `.claude/`)
|
|
24
|
-
- `.agents/skills/onboard/SKILL.md` (Update Step 1 & Step 6 for manifest-aware adapter reporting)
|
|
25
|
-
- `.claude/skills/onboard/SKILL.md` (Synchronize Step 1 & Step 6 identical contract)
|
|
26
|
-
|
|
27
|
-
### 2. Validation & Verification Guardrails
|
|
28
|
-
- `agent-bundle.manifest.json` (Add contract phrases for onboard: authoritative installer selection, etc.)
|
|
29
|
-
- `scripts/validate-framework.ts` (Ensure verification covers updated onboard contracts)
|
|
30
|
-
|
|
31
|
-
### 3. Test Suites & E2E Scenarios
|
|
32
|
-
- `scripts/e2e/scenarios/adapter-selection.ts` (New E2E Scenario 10 ported from upstream)
|
|
33
|
-
- `packages/create-nexus-devflow/test/update.test.ts` (Verify adapter detection & selection tests)
|
|
34
|
-
|
|
35
|
-
### 4. Documentation & Release Tracking
|
|
36
|
-
- `devflow/build-plan.md` (Record Run 072)
|
|
37
|
-
- `CHANGELOG.md` (Document v1.5.3 sync updates)
|
|
38
|
-
|
|
39
|
-
---
|
|
40
|
-
|
|
41
|
-
## 🧪 Verification Strategy
|
|
42
|
-
|
|
43
|
-
1. **Static Validation**: `npm run check:static` (ต้องผ่าน 100% ไม่เกิน context budget)
|
|
44
|
-
2. **Type Checking**: `npm run typecheck`
|
|
45
|
-
3. **Unit / Package Tests**: `npm test`
|
|
46
|
-
4. **End-to-End Test Suite**: `npm run check`
|
|
47
|
-
5. **Upstream Drift Radar**: `npx tsx scripts/check-upstream-drift.ts` (ยืนยัน 100% Skills & Contract Parity)
|
package/template/devflow/inbox/REQ-20260903-001-sync-upstream-ai-blueprint/clarifications.md
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
# Socratic Clarification Checklist (REQ-20260903-001)
|
|
2
|
-
|
|
3
|
-
> **Requirement ID**: `REQ-20260903-001-sync-upstream-ai-blueprint`
|
|
4
|
-
> **Audience**: System Analyst, Tech Lead, Framework Maintainer
|
|
5
|
-
> **Status**: `Ready for Review`
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## 🔍 Socratic Review & Alignment Questions
|
|
10
|
-
|
|
11
|
-
### 1. Root Scaffold Commit Convention
|
|
12
|
-
- [x] **Question**: รูปแบบ Commit Message สำหรับ Scaffold แรกใน Unborn Repo ควรใช้รูปแบบใด?
|
|
13
|
-
- **Proposed Decision**: `chore: scaffold application` (มาตรฐานเดียวกับ Upstream AI Blueprint และ Conventional Commits)
|
|
14
|
-
- **Safety Check**: ต้องไม่รวมโฟลเดอร์ `devflow/`, `AGENTS.md`, `CLAUDE.md`, `.agents/`, `.claude/` เข้าไปใน Root Commit นี้เด็ดขาด
|
|
15
|
-
|
|
16
|
-
### 2. Setup-Branch Fast-Forward Merge Rule
|
|
17
|
-
- [x] **Question**: ใน `/overview` หากผู้ใช้วางแผนบน dedicated branch (เช่น `feature/devflow-plans`) การรวมกลับเข้า `main` ต้องทำอย่างไร?
|
|
18
|
-
- **Proposed Decision**: บังคับใช้ `git merge --ff-only` เท่านั้นเพื่อรักษา Linear Git History หากมีการแตก branch ออกไปแบบ non-fast-forward จะต้องหยุดและรายงาน mismatch ทันที
|
|
19
|
-
- **Safety Check**: ยืนยันการลบ local setup branch หลัง merge สำเร็จ เพื่อไม่ให้มี branch ขยะค้าง
|
|
20
|
-
|
|
21
|
-
### 3. Local-Only & Remote Push Guard
|
|
22
|
-
- [x] **Question**: การทำ Finalize Baseline มีโอกาสหลุดรัน `git push` หรือไม่?
|
|
23
|
-
- **Proposed Decision**: ล็อกกฎชัดเจนใน `SKILL.md` ว่าทุกคำสั่งใน Onboard และ Overview ทำงานในระดับ Local Git เท่านั้น (No Push)
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## 📋 Actionable Checklist for Implementation
|
|
28
|
-
|
|
29
|
-
- [ ] ปรับปรุง `.agents/skills/onboard/SKILL.md` และ `.claude/skills/onboard/SKILL.md` เพื่อตรวจจับ Unborn `HEAD` และเสนอ Scaffold Root Commit
|
|
30
|
-
- [ ] ปรับปรุง `.agents/skills/overview/SKILL.md` และ `.claude/skills/overview/SKILL.md` สำหรับ Setup-Branch Baseline Finalization (`git merge --ff-only`)
|
|
31
|
-
- [ ] อัปเดต `devflow/context/ai-interaction.md` ให้ระบุสิทธิการทำ Baseline Finalization บน Setup Branch
|
|
32
|
-
- [ ] พอร์ต E2E Scenario `scripts/e2e/scenarios/unborn-onboarding.ts` ให้เข้ากับโครงสร้างและชื่อคำสั่งของ Nexus-DevFlow
|
|
33
|
-
- [ ] เพิ่ม static verification contract ใน `scripts/validate-framework.ts`
|
|
34
|
-
- [ ] รันการตรวจสอบความถูกต้องของระบบครบทุก Lane (`npm run check:static`, `npm test`, `npm run check`)
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
# Business & Technical Requirement Specification (REQ-20260903-001)
|
|
2
|
-
|
|
3
|
-
> **Requirement ID**: `REQ-20260903-001-sync-upstream-ai-blueprint`
|
|
4
|
-
> **Source**: Upstream AI Blueprint v1.5.2 (`5b46859`)
|
|
5
|
-
> **Status**: `Parsed & Normalized`
|
|
6
|
-
> **Target Release**: Nexus-DevFlow v2.12.1 / Feature `071`
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## 1. Executive Summary (ภาพรวมผู้บริหาร)
|
|
11
|
-
|
|
12
|
-
การอัปเดตเพื่อซิงก์ความสามารถและมาตรฐานความปลอดภัย Git จาก Upstream AI Blueprint v1.5.2 เข้าสู่ Nexus-DevFlow:
|
|
13
|
-
1. **การจัดการ Unborn Repository ใน `/onboard`**: รองรับกรณีที่โปรเจกต์เพิ่งรัน `git init` แต่ยังไม่มี First Commit (Unborn `HEAD`) โดย `/onboard` จะตรวจจับอัตโนมัติ เสนอสร้าง Reviewed Scaffold Initial Commit และตั้ง Default Branch (`main`) ให้พร้อมใช้งานทันทีโดยไม่ให้ผู้ใช้ต้องออกจาก IDE ไปพิมพ์คำสั่ง Git เอง
|
|
14
|
-
2. **Setup-Branch Baseline Finalization ใน `/overview`**: รองรับกรณีการ Onboard และวางแผนบน Dedicated Setup Branch (เช่น `feature/devflow-plans`) โดยเมื่ออนุมัติ Baseline Commit จะทำการ commit, fast-forward merge กลับเข้าสู่ `main`, สลับ branch และลบ setup branch ให้เรียบร้อยแบบ Local-Only
|
|
15
|
-
3. **Dedicated E2E Automated Scenario (`unborn-onboarding.ts`)**: ชุดทดสอบ Agentic E2E ตรวจสอบพฤติกรรมของ AI Agent ตั้งแต่ Unborn Repo -> Onboarding -> Baseline Fast-Forward
|
|
16
|
-
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
## 2. Target Persona & User Stories
|
|
20
|
-
|
|
21
|
-
| Persona | Problem Statement | Desired Outcome |
|
|
22
|
-
| :--- | :--- | :--- |
|
|
23
|
-
| **New Project Developer** | Scaffold โปรเจกต์ใหม่และรัน `git init` แต่ยังไม่ได้ commit พอรัน `/onboard` AI มัก error หรือสับสนเรื่อง branch | `/onboard` ตรวจจับสถานะ unborn repository และช่วยสร้าง scaffold commit แรกให้อัตโนมัติหลังกดอนุมัติ |
|
|
24
|
-
| **Branch-Isolated Developer** | ต้องการวางแผน DevFlow บน setup branch ชั่วคราวก่อนเริ่มฟีเจอร์แรก | `/overview` อนุมัติ Baseline แล้วรวมกลับเข้า `main` แบบ Fast-Forward และลบ branch ชั่วคราวให้อัตโนมัติ |
|
|
25
|
-
| **DevFlow Maintainer** | ต้องการให้ Nexus-DevFlow มี Feature & Safety Parity 100% กับ Upstream AI Blueprint | มีชุดทดสอบ E2E scenario และ static contracts รองรับ |
|
|
26
|
-
|
|
27
|
-
---
|
|
28
|
-
|
|
29
|
-
## 3. Functional Requirements (FR)
|
|
30
|
-
|
|
31
|
-
### FR-1: Unborn Git Pre-flight & Scaffold Initial Commit (`/onboard`)
|
|
32
|
-
- **FR-1.1**: เมื่อเริ่มทำงาน `/onboard` (Step 0) ต้องตรวจสอบ `git rev-parse --is-inside-work-tree` และ `git rev-parse --verify HEAD`
|
|
33
|
-
- **FR-1.2**: หากไม่มี `HEAD` (Unborn repository):
|
|
34
|
-
- กรอง Candidate Files เฉพาะไฟล์โครงสร้างของ Application (ยกเว้น workflow files เช่น `AGENTS.md`, `CLAUDE.md`, `.agents/`, `.claude/`, `devflow/`)
|
|
35
|
-
- ค้นหา default branch (จาก `main`, `master`, หรือ Git default)
|
|
36
|
-
- ถามยืนยัน 1 ครั้ง: `Create the initial scaffold commit and continue Onboard? (Recommended)`
|
|
37
|
-
- เมื่อได้รับอนุมัติ สร้าง commit `chore: scaffold application` บน default branch และสลับกลับมา setup branch (ถ้ามี) เพื่อ onboard ต่อทันที
|
|
38
|
-
|
|
39
|
-
### FR-2: Branch-Aware Baseline Finalization (`/overview`)
|
|
40
|
-
- **FR-2.1**: ใน `/overview` อนุญาตให้ทำงานบน Default Branch หรือ Dedicated Setup Branch ที่แตกมาจาก Tip ของ Default Branch
|
|
41
|
-
- **FR-2.2**: หากรันบน Unborn Repo ให้แจ้งให้ไปรัน `/onboard` ก่อน (ไม่สร้าง root commit ใน overview)
|
|
42
|
-
- **FR-2.3**: ปรับ Prompt ข้อความยืนยันเป็น: `Finalize the DevFlow baseline locally? (Recommended)`
|
|
43
|
-
- **FR-2.4**: รวม metadata installer `devflow/.state/manifest.json` เข้า Baseline Commit โดยยกเว้น transient state `run.json`
|
|
44
|
-
- **FR-2.5**: หากรันบน Setup Branch เมื่ออนุมัติแล้ว จะทำการ:
|
|
45
|
-
1. Commit `chore: establish DevFlow project baseline` บน setup branch
|
|
46
|
-
2. สลับกลับไป default branch (`git checkout main`)
|
|
47
|
-
3. รัน `git merge --ff-only <setup-branch>`
|
|
48
|
-
4. ลบ setup branch ในเครื่อง (`git branch -d <setup-branch>`)
|
|
49
|
-
5. อยู่บนสถานะ clean working tree พร้อมเริ่ม `/feature`
|
|
50
|
-
|
|
51
|
-
### FR-3: E2E Test Suite Extension (`unborn-onboarding.ts`)
|
|
52
|
-
- **FR-3.1**: เพิ่มไฟล์ Scenario `scripts/e2e/scenarios/unborn-onboarding.ts`
|
|
53
|
-
- **FR-3.2**: ทดสอบ Full Flow ใน Sandbox: `git init` -> setup branch -> overlay DevFlow -> `/onboard` -> `/overview` -> fast-forward `main`
|
|
54
|
-
|
|
55
|
-
---
|
|
56
|
-
|
|
57
|
-
## 4. Non-Functional Requirements (NFR)
|
|
58
|
-
|
|
59
|
-
1. **Security & Local-Only Guarantee**:
|
|
60
|
-
- ห้ามรัน `git push` ในทุกกรณีของการทำ Baseline Finalization
|
|
61
|
-
- ห้ามรวม Application Source Code ปะปนเข้ากับ Baseline Commit
|
|
62
|
-
- ป้องกัน Secret / Token หลุดเข้า Root Commit โดยตรวจสอบ `.gitignore`
|
|
63
|
-
2. **Token & Prompt Efficiency**:
|
|
64
|
-
- การปรับแต่งคำอธิบายและข้อความใน `SKILL.md` ทั้ง `.agents/` และ `.claude/` ต้องคงความกระชับ ไม่เกินงบประมาณตัวอักษร
|
|
65
|
-
3. **Adapter Parity**:
|
|
66
|
-
- ทั้ง 5 Adapters (Google Antigravity, Claude Code, OpenAI Codex, GitHub Copilot, OpenCode) ต้องได้รับพฤติกรรมที่เท่าเทียมกัน
|
package/template/devflow/inbox/REQ-20260903-001-sync-upstream-ai-blueprint/raw/upstream-v152-diff.md
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
# Upstream AI Blueprint v1.5.2 Changes Summary
|
|
2
|
-
|
|
3
|
-
Commit: 5b468599890a6d59a1570e343e6241db5ffd0ae9
|
|
4
|
-
Author: Brad Traversy <traversymedia@gmail.com>
|
|
5
|
-
Date: Thu Sep 3 08:30:38 2026 -0400
|
|
6
|
-
Message: fix: handle repositories without an initial commit
|
|
7
|
-
|
|
8
|
-
## Modified Files:
|
|
9
|
-
- `.agents/skills/onboard/SKILL.md` (+43, -1)
|
|
10
|
-
- `.agents/skills/overview/SKILL.md` (+41, -21)
|
|
11
|
-
- `.claude/skills/onboard/SKILL.md` (+43, -1)
|
|
12
|
-
- `.claude/skills/overview/SKILL.md` (+41, -21)
|
|
13
|
-
- `blueprint/context/ai-interaction.md` (+4, -2)
|
|
14
|
-
- `packages/create-ai-blueprint/package.json` (+1, -1)
|
|
15
|
-
- `scripts/e2e/scenarios/unborn-onboarding.ts` (+85)
|
|
16
|
-
- `scripts/validate-blueprint.ts` (+23, -5)
|
package/template/devflow/inbox/REQ-20260904-001-sync-upstream-ai-blueprint/clarifications.md
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
# Socratic Gap Detection & Clarification Checklist
|
|
2
|
-
|
|
3
|
-
> **Request ID**: `REQ-20260904-001-sync-upstream-ai-blueprint`
|
|
4
|
-
> **Source**: Upstream AI Blueprint Synchronization Analysis
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## 🔍 Socratic Review & Technical Clarifications
|
|
9
|
-
|
|
10
|
-
### 1. ตำแหน่งไฟล์ Manifest ใน Nexus-DevFlow
|
|
11
|
-
- **ประเด็น**: ใน Upstream `ai-blueprint` ใช้ไฟล์ `blueprint/.state/manifest.json` เป็นหลัก ขณะที่ Nexus-DevFlow มีทั้ง `.nexus/nexus-devflow.json` (จากตัวติดตั้ง package) และ `devflow/.state/manifest.json`
|
|
12
|
-
- **แนวทาง**: ในคำสั่ง `/onboard` ควรอ้างอิงทั้ง `devflow/.state/manifest.json` และ `.nexus/nexus-devflow.json` โดยให้ความสำคัญกับไฟล์ที่มีอยู่จริง เพื่อความยืดหยุ่นสูงสุด
|
|
13
|
-
|
|
14
|
-
### 2. รายชื่อเครื่องมือที่รองรับใน DevFlow vs Upstream
|
|
15
|
-
- **ประเด็น**: Upstream รองรับ 4 ตัวหลัก (`codex`, `claude`, `copilot`, `opencode`) ขณะที่ Nexus-DevFlow มี First-Class Support เพิ่มเติมสำหรับ **Google Antigravity** (`antigravity` ซึ่งแชร์โครงสร้าง `.agents/`)
|
|
16
|
-
- **แนวทาง**: ข้อความใน Step 6 ของ Onboard ต้องระบุชื่อเครื่องมือให้ครอบคลุม: "Codex, Antigravity, GitHub Copilot, และ OpenCode"
|
|
17
|
-
|
|
18
|
-
### 3. สถานะ Version Tagging & Roadmap
|
|
19
|
-
- **ประเด็น**: Upstream ออก release 1.5.3 สำหรับการแก้นี้ สำหรับ Nexus-DevFlow จะจัดเป็น Run `072` มุ่งสู่ Minor/Patch release ถัดไป (v2.12.2)
|
|
20
|
-
- **แนวทาง**: กำหนดหมายเลข Run `072-sync-upstream-ai-blueprint-v153` และบันทึกลงใน Build Plan
|
|
21
|
-
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
## ✅ Readiness Checklist for Implementation
|
|
25
|
-
- [x] ตรวจสอบ Diff ละเอียดจาก Upstream ครบถ้วน 100%
|
|
26
|
-
- [x] วิเคราะห์จุดแตกต่างระหว่างสถาปัตยกรรม DevFlow และ AI Blueprint
|
|
27
|
-
- [x] กำหนดขอบเขต E2E Scenario และ Static Contract เรียบร้อย
|
|
28
|
-
- [ ] รอเจ้านายอนุมัติเพื่อเริ่มกระบวนการ `/feature` หรือ `/implement`
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
# Requirement Specification: ซิงก์ส่วนขยาย Upstream AI Blueprint (v1.5.3 / Latest Commits)
|
|
2
|
-
|
|
3
|
-
> **Request ID**: `REQ-20260904-001-sync-upstream-ai-blueprint`
|
|
4
|
-
> **Source**: Upstream Repository `aiblueprinthq/ai-blueprint` (Commits `b4eb32e` .. `2b5f334`)
|
|
5
|
-
> **Ingested Date**: 2026-09-04
|
|
6
|
-
> **Target Run ID**: `072` (Feature)
|
|
7
|
-
> **Language**: Thai (`th`) Default
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## 📌 Executive Summary
|
|
12
|
-
|
|
13
|
-
สกัดและวิเคราะห์การเปลี่ยนแปลงล่าสุดจากต้นน้ำ (Upstream `ai-blueprint`) หลังการซิงก์รอบ v1.5.2 (Run `071`) โดยพบการอัปเดตสำคัญระดับสถาปัตยกรรมและกระบวนการ Onboarding ใน commit `b4eb32e` (fix: honor selected adapters) พร้อมทั้งการปรับปรุงเอกสารและ Diagram ใน commit `ed9c19c`, `a231195`, `2b5f334`
|
|
14
|
-
|
|
15
|
-
หัวใจหลักของการอัปเดตครั้งนี้คือการทำให้ขั้นตอน `/onboard` มีความฉลาดในการอ่านและยึดถือรายการ Adapter จากไฟล์ Manifest (`.nexus/nexus-devflow.json` หรือ `devflow/.state/manifest.json`) เป็นความจริงหลัก (Authoritative Source of Truth) เพื่อแก้ปัญหาที่ Onboard เคยเดาเอาเองว่าการมีโฟลเดอร์ `.agents/` แปลว่าผู้ใช้เลือกเครื่องมือทุกตัว (Codex, Antigravity, GitHub Copilot, OpenCode) และถามผู้ใช้ซ้ำซ้อน
|
|
16
|
-
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
## 👥 Target Personas & User Stories
|
|
20
|
-
|
|
21
|
-
1. **ผู้ใช้ใหม่ที่ติดตั้ง DevFlow ด้วย Interactive Installer**:
|
|
22
|
-
- *As a developer* ติดตั้ง DevFlow ด้วยคำสั่ง `npx @jakkrichm/create-nexus-devflow` และเลือกเฉพาะ Claude Code และ Antigravity/Codex
|
|
23
|
-
- *I want* เมื่อรันคำสั่ง `/onboard` ให้ระบบจำการเลือกของฉันจาก Manifest โดยตรง
|
|
24
|
-
- *So that* AI จะไม่ถามซ้ำ และไม่ทึกทักไปเองว่าเราเลือก GitHub Copilot หรือ OpenCode เพิ่มขึ้นมา
|
|
25
|
-
|
|
26
|
-
2. **ผู้ใช้เดิมที่รัน Onboard โดยไม่มี Manifest (Legacy / Manual Copy)**:
|
|
27
|
-
- *As a developer* ที่คัดลอกไฟล์มาเองหรือไม่มี Manifest
|
|
28
|
-
- *I want* AI อธิบายชัดเจนว่าโครงสร้าง `.agents/` ใช้ร่วมกันได้หลายเครื่องมือ แล้วถามยืนยันว่าใช้เครื่องมือใดบ้าง
|
|
29
|
-
- *So that* รายงาน Onboarding ถูกต้องตรงกับสิ่งที่ใช้งานจริง
|
|
30
|
-
|
|
31
|
-
3. **Core Framework Maintainer**:
|
|
32
|
-
- *As a maintainer* ของ Nexus-DevFlow
|
|
33
|
-
- *I want* ระบบ E2E Test มี Scenario ตัวที่ 10 (`adapter-selection.ts`) และ Static Contract Validator ป้องกัน Regression
|
|
34
|
-
- *So that* ฟีเจอร์ Onboard Manifest Preservation ทำงานถูกต้อง 100% ตามมาตรฐาน Upstream
|
|
35
|
-
|
|
36
|
-
---
|
|
37
|
-
|
|
38
|
-
## ⚙️ Functional Requirements (FR)
|
|
39
|
-
|
|
40
|
-
- **FR-1: Manifest-Aware Adapter Inspection ใน `/onboard` (Step 1)**
|
|
41
|
-
- เพิ่มการอ่านไฟล์ `devflow/.state/manifest.json` หรือ `.nexus/nexus-devflow.json` ในขั้นตอน Preflight/Inspection เพื่อดึง `adapters` list
|
|
42
|
-
- **FR-2: Authoritative Selection & No Repeated Prompts ใน `/onboard` (Step 6)**
|
|
43
|
-
- เมื่อพบ Manifest ที่ถูกต้อง ให้ยึด `adapters` ใน Manifest เป็นหลัก ห้ามถามผู้ใช้ซ้ำ
|
|
44
|
-
- อธิบายว่าการมีอยู่ของ `.agents/` ไม่ได้หมายความว่าเลือกเครื่องมือทุกตัว
|
|
45
|
-
- หากไม่มี Manifest ให้ถามอย่างชัดเจนโดยไม่เดา
|
|
46
|
-
- **FR-3: Dual-Adapter Contract Synchronicity**
|
|
47
|
-
- ปรับปรุงเนื้อหาใน `.agents/skills/onboard/SKILL.md` และ `.claude/skills/onboard/SKILL.md` ให้ตรงกัน 100%
|
|
48
|
-
- **FR-4: Automated E2E Scenario Integration**
|
|
49
|
-
- เพิ่มชุดทดสอบ E2E Scenario `scripts/e2e/scenarios/adapter-selection.ts` ตรวจสอบพฤติกรรม Onboard กับ Manifest
|
|
50
|
-
- **FR-5: Static Verification Guardrails**
|
|
51
|
-
- อัปเดต `agent-bundle.manifest.json` และ `scripts/validate-framework.ts` ให้ตรวจจับ Contract ใหม่ของ Onboard
|
|
52
|
-
|
|
53
|
-
---
|
|
54
|
-
|
|
55
|
-
## 🛡️ Non-Functional Requirements (NFR)
|
|
56
|
-
|
|
57
|
-
- **Context Budget**: Skill Description และ Instruction ต้องไม่เกินขีดจำกัด Context Budget (< 400 ตัวอักษรต่อคำอธิบาย, ไม่ทำให้ไฟล์เกิน 20KB)
|
|
58
|
-
- **Zero Breaking Change**: รักษาความเข้ากันได้กับโปรเจกต์เดิมที่มีหรือไม่มี Manifest
|
|
59
|
-
- **Cross-Tool Parity**: รองรับ Codex, Antigravity, Claude Code, GitHub Copilot และ OpenCode
|
package/template/devflow/inbox/REQ-20260904-001-sync-upstream-ai-blueprint/raw/upstream-diff.txt
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
# Upstream AI Blueprint Synchronization Request (v1.5.2 -> v1.5.3 / HEAD)
|
|
2
|
-
|
|
3
|
-
## Raw Upstream Commits
|
|
4
|
-
- 2b5f334 docs: refresh workflow diagram asset
|
|
5
|
-
- a231195 docs: simplify workflow diagram
|
|
6
|
-
- ed9c19c docs: position AI Blueprint as a workflow framework
|
|
7
|
-
- b4eb32e fix: honor selected adapters
|
|
8
|
-
- 5b46859 fix: handle repositories without an initial commit (synced in 071)
|
|
9
|
-
|
|
10
|
-
## Core Upstream Changes Diff Stat
|
|
11
|
-
.agents/skills/onboard/SKILL.md | 23 ++++----
|
|
12
|
-
.claude/skills/onboard/SKILL.md | 23 ++++----
|
|
13
|
-
CHANGELOG.md | 12 +++++
|
|
14
|
-
README.md | 20 +++----
|
|
15
|
-
assets/ai-blueprint-workflow-v2.png | Bin 0 -> 107098 bytes
|
|
16
|
-
assets/ai-blueprint-workflow.png | Bin 216758 -> 0 bytes
|
|
17
|
-
packages/create-ai-blueprint/README.md | 5 +-
|
|
18
|
-
packages/create-ai-blueprint/bin/create-ai-blueprint.ts | 4 +-
|
|
19
|
-
packages/create-ai-blueprint/package.json | 2 +-
|
|
20
|
-
packages/create-ai-blueprint/test/update.test.ts | 6 +--
|
|
21
|
-
scripts/e2e/scenarios/adapter-selection.ts | 59 +++++++++++++++++++++
|
|
22
|
-
scripts/validate-blueprint.ts | 9 +++-
|
|
23
|
-
12 files changed, 126 insertions(+), 37 deletions(-)
|