@jakkrichm/create-nexus-devflow 2.0.13 → 2.0.14

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 (52) hide show
  1. package/dist/bin/create-nexus-devflow.d.ts +2 -0
  2. package/dist/bin/create-nexus-devflow.js +233 -0
  3. package/dist/bin/create-nexus-devflow.js.map +1 -0
  4. package/dist/lib/starter-templates.d.ts +6 -0
  5. package/dist/lib/starter-templates.js +8 -0
  6. package/dist/lib/starter-templates.js.map +1 -0
  7. package/dist/lib/update.d.ts +68 -0
  8. package/dist/lib/update.js +325 -0
  9. package/dist/lib/update.js.map +1 -0
  10. package/dist/scripts/clean-template.d.ts +1 -0
  11. package/dist/scripts/clean-template.js +14 -0
  12. package/dist/scripts/clean-template.js.map +1 -0
  13. package/dist/scripts/prepare-template.d.ts +1 -0
  14. package/dist/scripts/prepare-template.js +89 -0
  15. package/dist/scripts/prepare-template.js.map +1 -0
  16. package/package.json +11 -9
  17. package/template/.agents/skills/00-discover/SKILL.md +2 -0
  18. package/template/.agents/skills/60-report/SKILL.md +21 -75
  19. package/template/.agents/skills/70-release/SKILL.md +5 -4
  20. package/template/.agents/skills/check/SKILL.md +68 -0
  21. package/template/.agents/skills/complete/SKILL.md +73 -0
  22. package/template/.agents/skills/devflow/SKILL.md +89 -80
  23. package/template/.agents/skills/idea/SKILL.md +57 -0
  24. package/template/.agents/skills/implement/SKILL.md +64 -0
  25. package/template/.agents/skills/overview/SKILL.md +114 -0
  26. package/template/.agents/skills/report-html/SKILL.md +45 -0
  27. package/template/.agents/skills/spec/SKILL.md +105 -0
  28. package/template/.claude/skills/00-discover/SKILL.md +2 -0
  29. package/template/.claude/skills/60-report/SKILL.md +21 -75
  30. package/template/.claude/skills/70-release/SKILL.md +5 -4
  31. package/template/.claude/skills/check/SKILL.md +68 -0
  32. package/template/.claude/skills/complete/SKILL.md +73 -0
  33. package/template/.claude/skills/devflow/SKILL.md +89 -80
  34. package/template/.claude/skills/idea/SKILL.md +57 -0
  35. package/template/.claude/skills/implement/SKILL.md +64 -0
  36. package/template/.claude/skills/overview/SKILL.md +114 -0
  37. package/template/.claude/skills/report-html/SKILL.md +45 -0
  38. package/template/.claude/skills/spec/SKILL.md +105 -0
  39. package/template/AGENTS.md +71 -74
  40. package/template/devflow/context/ai-interaction.md +1 -0
  41. package/template/devflow/context/coding-standards.md +31 -18
  42. package/template/devflow/context/current-stage.md +3 -3
  43. package/template/devflow/context/findings.md +10 -6
  44. package/template/devflow/context/project-overview.md +29 -11
  45. package/template/devflow/discoveries/.gitkeep +0 -0
  46. package/template/devflow/history/HISTORY.md +4 -0
  47. package/template/devflow/ideas.md +15 -0
  48. package/template/devflow/runs/.gitkeep +0 -0
  49. package/bin/create-nexus-devflow.js +0 -287
  50. package/lib/starter-templates.js +0 -111
  51. package/lib/update.js +0 -393
  52. package/template/.nexus/nexus-devflow.json +0 -44
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../lib/update.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,14 @@
1
+ import fs from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { fileURLToPath } from "node:url";
4
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
5
+ const packageRoot = path.resolve(__dirname, "..");
6
+ const templateRoot = path.join(packageRoot, "template");
7
+ async function main() {
8
+ await fs.rm(templateRoot, { recursive: true, force: true, maxRetries: 5, retryDelay: 200 });
9
+ }
10
+ main().catch((error) => {
11
+ console.error(error instanceof Error ? error.message : String(error));
12
+ process.exit(1);
13
+ });
14
+ //# sourceMappingURL=clean-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clean-template.js","sourceRoot":"","sources":["../../scripts/clean-template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,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,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;AAExD,KAAK,UAAU,IAAI;IACjB,MAAM,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;AAC9F,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAC9B,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,89 @@
1
+ import fs from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { fileURLToPath } from "node:url";
4
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
5
+ const packageRoot = path.resolve(__dirname, "..");
6
+ const repoRoot = path.resolve(packageRoot, "..", "..");
7
+ const templateRoot = path.join(packageRoot, "template");
8
+ const entries = [
9
+ "AGENTS.md",
10
+ "CLAUDE.md",
11
+ ".agents",
12
+ ".claude",
13
+ "devflow",
14
+ "LICENSE"
15
+ ];
16
+ async function copyEntry(entry) {
17
+ const source = path.join(repoRoot, entry);
18
+ const target = path.join(templateRoot, entry);
19
+ try {
20
+ await fs.cp(source, target, {
21
+ recursive: true,
22
+ filter: (src) => {
23
+ const normalized = path.relative(repoRoot, src).replace(/\\/g, "/");
24
+ if (normalized.startsWith("devflow/runs/") &&
25
+ !normalized.endsWith(".gitkeep") &&
26
+ !normalized.endsWith("README.md")) {
27
+ return false;
28
+ }
29
+ if (normalized.startsWith("devflow/discoveries/") &&
30
+ !normalized.endsWith(".gitkeep") &&
31
+ !normalized.endsWith("README.md")) {
32
+ return false;
33
+ }
34
+ if (normalized.includes(".agents/skills/sync-upstream") ||
35
+ normalized.includes(".claude/skills/sync-upstream")) {
36
+ return false;
37
+ }
38
+ return true;
39
+ }
40
+ });
41
+ }
42
+ catch (err) {
43
+ if (err.code !== "ENOENT") {
44
+ throw err;
45
+ }
46
+ }
47
+ }
48
+ async function ensureEmptyDirectories() {
49
+ const runsDir = path.join(templateRoot, "devflow", "runs");
50
+ const discDir = path.join(templateRoot, "devflow", "discoveries");
51
+ await fs.mkdir(runsDir, { recursive: true });
52
+ await fs.mkdir(discDir, { recursive: true });
53
+ await fs.writeFile(path.join(runsDir, ".gitkeep"), "", "utf8");
54
+ await fs.writeFile(path.join(discDir, ".gitkeep"), "", "utf8");
55
+ }
56
+ async function sanitizeAgentsEntryFile(filePath) {
57
+ try {
58
+ let content = await fs.readFile(filePath, "utf8");
59
+ const maintainerCommandsRegex = /## Verification & Commands[\s\S]*$/;
60
+ const starterCommands = `## Commands
61
+
62
+ - Dev Server: \`npm run dev\`
63
+ - Build: \`npm run build\`
64
+ - Test: \`npm test\`
65
+ - Verify: \`npm run check\` (Run \`/onboard\` to auto-configure)
66
+ `;
67
+ content = content.replace(maintainerCommandsRegex, starterCommands);
68
+ await fs.writeFile(filePath, content, "utf8");
69
+ }
70
+ catch (error) {
71
+ if (error.code !== "ENOENT") {
72
+ throw error;
73
+ }
74
+ }
75
+ }
76
+ async function main() {
77
+ await fs.rm(templateRoot, { recursive: true, force: true, maxRetries: 5, retryDelay: 200 });
78
+ await fs.mkdir(templateRoot, { recursive: true });
79
+ for (const entry of entries) {
80
+ await copyEntry(entry);
81
+ }
82
+ await ensureEmptyDirectories();
83
+ await sanitizeAgentsEntryFile(path.join(templateRoot, "AGENTS.md"));
84
+ }
85
+ main().catch((error) => {
86
+ console.error(error instanceof Error ? error.message : String(error));
87
+ process.exit(1);
88
+ });
89
+ //# sourceMappingURL=prepare-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepare-template.js","sourceRoot":"","sources":["../../scripts/prepare-template.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jakkrichm/create-nexus-devflow",
3
- "version": "2.0.13",
3
+ "version": "2.0.14",
4
4
  "description": "Installer package for Nexus-DevFlow agentic workflow layer.",
5
5
  "license": "MIT",
6
6
  "author": "Jakkrich",
@@ -25,20 +25,22 @@
25
25
  "workflow",
26
26
  "scaffold"
27
27
  ],
28
+ "type": "module",
28
29
  "bin": {
29
- "create-nexus-devflow": "bin/create-nexus-devflow.js",
30
- "nexus-devflow": "bin/create-nexus-devflow.js"
30
+ "create-nexus-devflow": "dist/bin/create-nexus-devflow.js",
31
+ "nexus-devflow": "dist/bin/create-nexus-devflow.js"
31
32
  },
32
33
  "scripts": {
33
- "test": "node --test",
34
+ "build": "tsc -p tsconfig.json",
35
+ "test": "tsx --test test/update.test.ts",
34
36
  "check:pack": "npm pack --dry-run",
35
- "prepare-template": "node scripts/prepare-template.js",
36
- "prepack": "node scripts/prepare-template.js",
37
- "postpack": "node scripts/clean-template.js"
37
+ "prepare-template": "tsx scripts/prepare-template.ts",
38
+ "clean-template": "tsx scripts/clean-template.ts",
39
+ "prepack": "npm run build && npm run prepare-template",
40
+ "postpack": "npm run clean-template"
38
41
  },
39
42
  "files": [
40
- "bin/",
41
- "lib/",
43
+ "dist/",
42
44
  "template/",
43
45
  "README.md",
44
46
  "LICENSE",
@@ -14,12 +14,14 @@ Explore a request before delivery commitment. Create or resume a Discovery ID, c
14
14
 
15
15
  ```text
16
16
  00-discover {title or request}
17
+ 00-discover IDEA-xxx
17
18
  00-discover {discovery-id}
18
19
  ```
19
20
 
20
21
  Use this when:
21
22
 
22
23
  - a new request needs discussion before the team commits to delivery
24
+ - exploring a pending idea from `devflow/ideas.md` (`00-discover IDEA-xxx`)
23
25
  - the best route may be `Brainstorm`, `PRD`, `Research`, or `Debug`
24
26
  - supporting findings need to be synthesized into a go/no-go decision
25
27
 
@@ -1,6 +1,6 @@
1
- ---name: 60-report
2
-
3
- description: "[Devflow] Report stage in DevFlow 2.0 - produce standardized markdown and HTML summary report for the completed run."
1
+ ---
2
+ name: 60-report
3
+ description: "[Devflow] Report stage in DevFlow 2.0 - produce standardized markdown summary report for the completed run."
4
4
  argument-hint: "{running-id or workspace path}"
5
5
  ---
6
6
 
@@ -8,7 +8,7 @@ argument-hint: "{running-id or workspace path}"
8
8
 
9
9
  $ARGUMENTS
10
10
 
11
- Produce the final human-friendly summary of the full running flow in both Markdown and HTML so the outcome is easy to communicate every time.
11
+ Produce the final human-friendly summary of the full running flow in Markdown (`60-report.md`) so the outcome is easy to communicate every time.
12
12
 
13
13
  ## Usage
14
14
 
@@ -16,19 +16,12 @@ Produce the final human-friendly summary of the full running flow in both Markdo
16
16
  60-report {running-id or workspace path}
17
17
  ```
18
18
 
19
- Use this when:
20
-
21
- - verification is complete and the run is ready for a final standardized summary before release
22
- - the team needs a standardized summary for communication
23
- - non-technical readers should be able to understand what happened
24
-
25
19
  ## Markdown-First Contract
26
20
 
27
- Write the primary stage artifacts to:
21
+ Write the primary stage artifact to:
28
22
 
29
23
  ```text
30
- devflow/runs/{ID}-{slug}60-report.md
31
- devflow/runs/{ID}-{slug}60-report.html
24
+ devflow/runs/{ID}-{slug}/60-report.md
32
25
  ```
33
26
 
34
27
  using:
@@ -39,6 +32,9 @@ using:
39
32
 
40
33
  Before writing `60-report.md`, read `artifact_language` from `report.template.md` and produce the markdown artifact in that language.
41
34
 
35
+ > [!IMPORTANT]
36
+ > **No Auto-Generated HTML**: ยกเลิกการสร้างไฟล์ `60-report.html` แบบอัตโนมัติในขั้นตอนนี้! ระบบจะสร้างเฉพาะ `60-report.md` เท่านั้น หากผู้ใช้หรือทีมต้องการสร้าง HTML Report สวยงาม ให้เรียกคำสั่งแยกต่างหาก: `/report:html` หรือ `npm run report:html`
37
+
42
38
  ## Required Section Content
43
39
 
44
40
  Before completing any generated artifact:
@@ -57,13 +53,13 @@ Before completing any generated artifact:
57
53
 
58
54
  Run reporting as an outcome-evidence loop, not as a dump of prior artifacts.
59
55
 
60
- - **Intent**: produce a final markdown and HTML summary that lets a reader understand the outcome, evidence, decisions, risks, and next actions without replaying the whole run.
56
+ - **Intent**: produce a final markdown summary that lets a reader understand the outcome, evidence, decisions, risks, and next actions without replaying the whole run.
61
57
  - **Context**: read all relevant stage artifacts, checklist files, verify impact notes, release notes, validation output, and supporting artifacts that materially explain the result.
62
- - **Action**: summarize the problem, direction, completed work, validation outcome, checklist progress, final decision, open risks, and next actions, then render the HTML report.
58
+ - **Action**: summarize the problem, direction, completed work, validation outcome, checklist progress, final decision, open risks, and next actions.
63
59
  - **Observation**: use concrete evidence such as checklist completion, blocked or skipped items, validation results, release state, impact notes, and unresolved follow-ups.
64
60
  - **Adjustment**: if evidence is missing, return to the owning stage; if the report must support continuation, use `handoff`; if the run produced reusable lessons, use `insight-capture` or `Wiki`.
65
- - **Stop Condition**: stop when `70-report.md` and `70-report.html` both exist, summarize the outcome accurately, include checklist and evidence snapshots, and name any remaining follow-up work.
66
- - **Handoff**: `70-report.md` must close the mainline run or tell the next reader exactly where follow-up work should continue.
61
+ - **Stop Condition**: stop when `60-report.md` exists, summarizes the outcome accurately, includes checklist and evidence snapshots, and names any remaining follow-up work.
62
+ - **Handoff**: `60-report.md` must close the mainline run or tell the next reader exactly where follow-up work should continue.
67
63
 
68
64
  ### 1. Gather Full Run Context
69
65
 
@@ -98,19 +94,9 @@ Explain:
98
94
 
99
95
  Write:
100
96
 
101
- - a readable Markdown report for contributors
102
- - a consistent HTML report for stakeholder sharing
103
-
104
- In phase 1, `artifact_language` governs the markdown report text. HTML output is derived directly from `60-report.md` through the shared markdown-to-html renderer.
97
+ - a readable Markdown report (`60-report.md`) for contributors
105
98
 
106
- To render the HTML consistently from the markdown report, use one of:
107
-
108
- ```text
109
- npm run report:html -- <workspace-path-or-running-id>
110
- npm run render:html -- --stage 60-report <workspace-path-or-running-id>
111
- ```
112
-
113
- Keep checklist summaries and follow-up status inside `60-report.md` so they carry through into the rendered HTML.
99
+ Keep checklist summaries and follow-up status inside `60-report.md`.
114
100
 
115
101
  Both outputs should summarize checklist state when checklist artifacts exist, including:
116
102
 
@@ -120,27 +106,6 @@ Both outputs should summarize checklist state when checklist artifacts exist, in
120
106
  - approval status, review blockers, and next allowed command when they still matter
121
107
  - remaining follow-up work
122
108
 
123
- The HTML should stay visually consistent across runs while preserving the report markdown as the source of truth.
124
-
125
- ### 4. Keep The Audience In Mind
126
-
127
- Prefer clarity over internal detail.
128
-
129
- Do not bury the outcome inside implementation trivia. The report should help a reader understand the run without replaying the whole workflow.
130
-
131
- When checklists exist, use them as the most human-readable operational record of what actually happened.
132
- Use `handoff` when the report must support continued work, and `insight-capture` when the run produced lessons that should become reusable knowledge.
133
-
134
- ### 5. Manual Review Soft Gate
135
-
136
- Use the report as the final visibility checkpoint before release.
137
- If any stage still shows unresolved approval, blockers, or deferred work:
138
-
139
- - surface that state clearly in `60-report.md`
140
- - pull the relevant signal forward from checklist approval sections when they exist
141
- - do not imply the phase is fully closed when review is still open
142
- - recommend the real next action, even if that means returning to an earlier stage
143
-
144
109
  ## Output
145
110
 
146
111
  Report:
@@ -148,37 +113,18 @@ Report:
148
113
  - what the run accomplished
149
114
  - checklist completion status and remaining items
150
115
  - important remaining follow-ups
151
- - where `60-report.md` and `60-report.html` were written
152
- - render command used or recommended:
153
-
154
- ```text
155
- npm run report:html -- <workspace-path-or-running-id>
156
- ```
116
+ - where `60-report.md` was written
117
+ - standalone HTML command tip: `/report:html` (if HTML view is desired)
157
118
 
158
119
  ## Relationship To DevFlow 2.0
159
120
 
160
121
  - Classification: Mainline workflow
161
122
  - Previous state: `50-verify`
162
123
  - Next state: `70-release` when the summary is aligned and release can proceed
163
- - Common companion commands: `Wiki` for durable knowledge capture, `Help` for routing or explanation
164
- - Support skills: `handoff`, `insight-capture`, and writing skills when final reporting must support continuation or reusable learning
165
-
166
- ## Sources
167
-
168
- - `AGENTS.md`
169
- - `docs/workspace-artifacts.md`
170
- - `.agent/resources/schemas/report.template.md`
171
- - Related commands: `50-verify`, `70-release`, `Wiki`, `Help`
124
+ - Common companion commands: `/report:html` for standalone HTML dashboard, `Wiki` for durable knowledge capture, `Help` for routing or explanation
172
125
 
173
126
  ## Next Workflow Recommendation
174
127
 
175
- - **Primary**: `70-release {ID}` after `60-report.md` and `60-report.html` reflect the verified state clearly.
176
- - **Render HTML**: `npm run report:html -- {ID}` after `60-report.md` is finalized so the standardized stakeholder HTML stays in sync
177
- - **Alternative**: `Wiki` when the completed run should be promoted into durable reusable knowledge before release packaging continues
178
- - **Additional Alternative**: `handoff` when another session or agent must continue from the completed run.
179
-
180
- ## Nexus Event
181
-
182
- - Use `Wiki` when the final summary should become durable project or framework knowledge.
183
- - Use `Help` when approval signals, ownership, or route timing still feel ambiguous.
184
- - Return to `50-verify` when unresolved evidence, blockers, or review state mean the report should not advance yet.
128
+ - **Primary**: `70-release {ID}` after `60-report.md` reflects the verified state clearly.
129
+ - **Optional Standalone HTML**: `/report:html` (or `npm run report:html -- {ID}`) if an interactive HTML report is desired for stakeholder presentation.
130
+ - **Alternative**: `Wiki` when the completed run should be promoted into durable reusable knowledge before release packaging continues.
@@ -148,7 +148,7 @@ Report:
148
148
  - Classification: Mainline workflow
149
149
  - Previous state: `60-report`
150
150
  - Next state: End of the mainline run when release packaging or handoff is complete
151
- - Common companion commands: `Commit`, `PR`, `Deploy`, `Changelog`, `Merge`, `Wiki`
151
+ - Common companion commands: `Commit`, `PR`, `Deploy`, `Changelog`, `Merge`, `Wiki`, `overview`
152
152
  - Support skills: `resolving-merge-conflicts`, `handoff`, and `setup-pre-commit` when release packaging needs conflict resolution, transfer notes, or local quality gates
153
153
 
154
154
  ## Sources
@@ -156,13 +156,14 @@ Report:
156
156
  - `AGENTS.md`
157
157
  - `docs/workspace-artifacts.md`
158
158
  - `.agent/resources/schemas/release.template.md`
159
- - Related commands: `60-report`, `Commit`, `PR`, `Deploy`, `Changelog`, `Merge`, `Wiki`
159
+ - Related commands: `60-report`, `Commit`, `PR`, `Deploy`, `Changelog`, `Merge`, `Wiki`, `overview`
160
160
 
161
161
  ## Next Workflow Recommendation
162
162
 
163
- - **Primary**: End of Timeline flow
163
+ - **Primary**: End of Timeline flow (or run `/overview` to sync living project context)
164
164
  - **Why**: The report is already complete, and this phase is the final release-facing execution step.
165
165
  - **Alternatives**:
166
+ - `overview` - choose this to immediately sync newly shipped capabilities into `devflow/context/project-overview.md`.
166
167
  - `60-report` - choose this when the release package diverges from the approved report and the summary must be refreshed first.
167
168
  - `50-verify` - choose this when release readiness becomes uncertain.
168
169
  - `40-implement` - choose this when additional fixes are needed before release can proceed.
@@ -170,7 +171,7 @@ Report:
170
171
 
171
172
  ## Nexus Event
172
173
 
173
- - Use `Commit`, `PR`, `Deploy`, `Merge`, or `Changelog` when release execution still needs a concrete lane.
174
+ - Use `Commit`, `PR`, `Deploy`, `Merge`, `Changelog`, or `overview` when release execution still needs a concrete lane.
174
175
  - Return to `60-report` when release notes, scope, or handoff wording diverge from the approved summary.
175
176
  - Return to `50-verify` or `40-implement` when release readiness changes because unresolved issues are discovered.
176
177
 
@@ -0,0 +1,68 @@
1
+ ---
2
+ name: check
3
+ description: "[Devflow] Fast-Track Check stage in DevFlow (Blueprint Mode) - perform senior QA review, run multi-lane verification, and record evidence in spec.md."
4
+ argument-hint: "{running-id or workspace path}"
5
+ ---
6
+
7
+ # Fast-Track: Check (Blueprint Mode)
8
+
9
+ $ARGUMENTS
10
+
11
+ Quality assurance and multi-lane verification stage in Fast-Track. Validates the implementation against Acceptance Criteria, runs test suites, checks for regressions, and records evidence in the Single Living Spec (`spec.md`).
12
+
13
+ ## Invocations & Aliases
14
+
15
+ - `/check`: Run verification on current active run
16
+ - `/check {running-id}`: Run verification on specified running ID
17
+ - `$check`: Codex CLI invocation
18
+
19
+ ## Fast-Track Mainline Workflow
20
+
21
+ ```text
22
+ /spec ──▶ /implement ──▶ /check ──▶ /complete
23
+ ```
24
+
25
+ ## Behavior & Contract
26
+
27
+ When invoked:
28
+
29
+ ### 1. Load Active Context
30
+ 1. Identify active Running ID from `devflow/context/current-stage.md` or argument.
31
+ 2. Read `devflow/runs/{RUNNING_ID}/spec.md`.
32
+ 3. Locate `## 1. Specification & Scope` (Acceptance Criteria) and `## 3. Implementation Checklist`.
33
+
34
+ ### 2. Multi-lane Verification Execution
35
+ Execute the verification gates across all lanes:
36
+ 1. **Lane 1 (Type & Syntax Safety)**:
37
+ - Run typecheck and linting (e.g. `npm run typecheck`, `npm run lint`).
38
+ 2. **Lane 2 (Test Suites & Coverage)**:
39
+ - Run automated unit and integration tests (e.g. `npm test`).
40
+ 3. **Lane 3 (Manual / Scenario Proof)**:
41
+ - Verify specific scenarios against Acceptance Criteria (`AC-1`, `AC-2`).
42
+ - Summarize "Where to go", "What to click/call", and "What to expect".
43
+
44
+ ### 3. Update Living Spec (`spec.md`)
45
+ Append or update `## 5. Verification Evidence` in `spec.md` in **Thai (`th`)**:
46
+
47
+ ```markdown
48
+ ## 5. Verification Evidence
49
+ - **Typecheck & Linter**: Passed (0 errors, 0 warnings)
50
+ - **Automated Test Suites**: All tests passed (e.g. 12/12 passed, 0 failed)
51
+ - **Acceptance Criteria Verification**:
52
+ - [x] AC-1: {ผลการตรวจสอบเงื่อนไขที่ 1 ผ่าน 100%}
53
+ - [x] AC-2: {ผลการตรวจสอบเงื่อนไขที่ 2 ผ่าน 100%}
54
+ - **Manual Verification Guide**:
55
+ - *Where to go*: `http://localhost:3000/api/auth`
56
+ - *Action*: Send POST request with test credentials
57
+ - *Expected Result*: Received HTTP 200 with valid JWT token
58
+ ```
59
+
60
+ ### 4. Update Workspace Status
61
+ Update `devflow/context/current-stage.md`:
62
+ - `Current Stage`: `check (Fast-Track -> Verification Passed -> Ready for /complete)`
63
+
64
+ ### 5. Output Summary & Next Step
65
+ Report to the user:
66
+ - Summary of verification results across all lanes
67
+ - Evidence recorded in `spec.md`
68
+ - **Next Command**: `/complete` (or `/complete {RUNNING_ID}`)
@@ -0,0 +1,73 @@
1
+ ---
2
+ name: complete
3
+ description: "[Devflow] Fast-Track Complete stage in DevFlow (Blueprint Mode) - perform final safety pass, record release digest in spec.md, git merge, and close run without auto HTML generation."
4
+ argument-hint: "{running-id or workspace path}"
5
+ ---
6
+
7
+ # Fast-Track: Complete (Blueprint Mode)
8
+
9
+ $ARGUMENTS
10
+
11
+ Final delivery, safety pass, and run closure stage in Fast-Track. Validates verification status, records the Release Digest into `spec.md`, performs git merge, and marks the run as completed **without auto-generating HTML reports**.
12
+
13
+ ## Invocations & Aliases
14
+
15
+ - `/complete`: Complete current active run
16
+ - `/complete {running-id}`: Complete specified running ID
17
+ - `$complete`: Codex CLI invocation
18
+
19
+ ## Fast-Track Mainline Workflow
20
+
21
+ ```text
22
+ /spec ──▶ /implement ──▶ /check ──▶ /complete
23
+ ```
24
+
25
+ ## Behavior & Contract
26
+
27
+ When invoked:
28
+
29
+ ### 1. Validate Delivery Pre-conditions
30
+ 1. Identify active Running ID from `devflow/context/current-stage.md` or argument.
31
+ 2. Read `devflow/runs/{RUNNING_ID}/spec.md`.
32
+ 3. Confirm:
33
+ - All checklist items in `## 3. Implementation Checklist` are marked `- [x]`.
34
+ - `## 5. Verification Evidence` contains passing verification results.
35
+
36
+ ### 2. Final Safety Pass & Changelog
37
+ 1. Verify working directory hygiene (no accidental leftover test files or debug statements).
38
+ 2. Update `CHANGELOG.md` with release summary under the current version if applicable.
39
+
40
+ ### 3. Update Living Spec (`spec.md`)
41
+ Append or update `## 6. Release & Handoff` in `spec.md` in **Thai (`th`)**:
42
+
43
+ ```markdown
44
+ ## 6. Release & Handoff
45
+ - **Release Digest**: สรุปสิ่งที่ส่งมอบในรอบนี้
46
+ - **Git Branch**: `{branch_name}`
47
+ - **Merge Status**: Merged into `main` (Commit `{commit_hash}`)
48
+ - **Artifact Contract**: Fast-Track Single Living Spec completed.
49
+ ```
50
+ Update header status in `spec.md`: `> **Status**: Completed`.
51
+
52
+ ### 4. Policy on HTML Reports (Strict Rule)
53
+ > [!IMPORTANT]
54
+ > **No Auto-Generated HTML**: ห้ามสร้างไฟล์ `report.html` หรือ `60-report.html` แบบอัตโนมัติในขั้นตอนนี้โดยเด็ดขาด!
55
+ > หากผู้ใช้ต้องการดู HTML Dashboard สวยงาม ให้แจ้งผู้ใช้ว่าสามารถเรียกคำสั่งแยกได้: `/report:html`
56
+
57
+ ### 5. Git Merge & Branch Cleanup
58
+ 1. Commit all modified tracking files (including `spec.md` and `current-stage.md`).
59
+ 2. Merge feature branch into target base branch (`main` / `master`).
60
+
61
+ ### 6. Close Active Run
62
+ Update `devflow/context/current-stage.md`:
63
+ - `Active Running ID`: `None (Idle)`
64
+ - `Current Stage`: `Idle (Ready for new /spec, /feature, /fix, or /00-discover)`
65
+ - `Last Completed Run`: `{RUNNING_ID} ({YYYY-MM-DD})`
66
+ - `Last Updated`: `{YYYY-MM-DD}`
67
+
68
+ ### 7. Output Completion Report
69
+ Report to the user:
70
+ - Run successfully completed and merged
71
+ - Living Spec path: `devflow/runs/{RUNNING_ID}/spec.md`
72
+ - Standalone HTML command tip: `/report:html` (if HTML view is desired)
73
+ - Workspace is now Idle and ready for the next task.