@jakkrichm/create-nexus-devflow 2.17.9 → 2.18.1
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/README.md +6 -7
- package/dist/bin/create-nexus-devflow.js +64 -82
- package/dist/bin/create-nexus-devflow.js.map +1 -1
- package/dist/lib/doctor.js +0 -27
- package/dist/lib/doctor.js.map +1 -1
- package/dist/lib/history.js +2 -2
- package/dist/lib/history.js.map +1 -1
- package/dist/lib/project-config.js +1 -1
- package/dist/lib/project-config.js.map +1 -1
- package/dist/lib/skill-registry-engine.js +3 -3
- package/dist/lib/skill-registry-engine.js.map +1 -1
- package/dist/lib/tooling/commands/scan-doc-contract.js +1 -0
- package/dist/lib/tooling/commands/scan-doc-contract.js.map +1 -1
- package/dist/lib/ui.d.ts +0 -23
- package/dist/lib/ui.js +0 -85
- package/dist/lib/ui.js.map +1 -1
- package/dist/lib/update.d.ts +6 -1
- package/dist/lib/update.js +80 -8
- package/dist/lib/update.js.map +1 -1
- package/dist/scripts/prepare-template.js +7 -3
- package/dist/scripts/prepare-template.js.map +1 -1
- package/package.json +2 -2
- package/template/.agents/skills/audit/SKILL.md +1 -4
- package/template/.agents/skills/brainstorm/SKILL.md +4 -5
- package/template/.agents/skills/bughunter/SKILL.md +1 -1
- package/template/.agents/skills/check/SKILL.md +116 -26
- package/template/.agents/skills/check/reference/guide.md +17 -53
- package/template/.agents/skills/ci/SKILL.md +13 -35
- package/template/.agents/skills/complete/SKILL.md +0 -2
- package/template/.agents/skills/devflow/SKILL.md +2 -3
- package/template/.agents/skills/discovery/SKILL.md +0 -9
- package/template/.agents/skills/doctor/SKILL.md +6 -6
- package/template/.agents/skills/explore/SKILL.md +9 -5
- package/template/.agents/skills/feature/SKILL.md +1 -4
- package/template/.agents/skills/feature/reference/feature-spec-template.md +16 -16
- package/template/.agents/skills/fix/SKILL.md +3 -3
- package/template/.agents/skills/grill/SKILL.md +1 -6
- package/template/.agents/skills/idea/SKILL.md +6 -6
- package/template/.agents/skills/implement/SKILL.md +119 -45
- package/template/.agents/skills/setup-tests/reference/browser.md +95 -0
- package/template/.agents/skills/test/SKILL.md +0 -26
- package/template/.claude/skills/audit/SKILL.md +1 -4
- package/template/.claude/skills/brainstorm/SKILL.md +4 -5
- package/template/.claude/skills/bughunter/SKILL.md +1 -1
- package/template/.claude/skills/check/SKILL.md +116 -26
- package/template/.claude/skills/check/reference/guide.md +17 -53
- package/template/.claude/skills/ci/SKILL.md +13 -35
- package/template/.claude/skills/complete/SKILL.md +0 -2
- package/template/.claude/skills/devflow/SKILL.md +2 -3
- package/template/.claude/skills/discovery/SKILL.md +3 -11
- package/template/.claude/skills/doctor/SKILL.md +6 -6
- package/template/.claude/skills/explore/SKILL.md +9 -5
- package/template/.claude/skills/feature/SKILL.md +1 -4
- package/template/.claude/skills/feature/reference/feature-spec-template.md +16 -16
- package/template/.claude/skills/fix/SKILL.md +3 -3
- package/template/.claude/skills/grill/SKILL.md +1 -6
- package/template/.claude/skills/idea/SKILL.md +6 -6
- package/template/.claude/skills/implement/SKILL.md +119 -45
- package/template/.claude/skills/setup-tests/reference/browser.md +95 -0
- package/template/.claude/skills/test/SKILL.md +0 -26
- package/template/AGENTS.md +39 -17
- package/template/devflow/build-plan.md +1 -1
- package/template/devflow/config.json +2 -1
- package/template/devflow/context/ai-interaction.md +14 -15
- package/template/devflow/context/coding-standards.md +19 -68
- package/template/devflow/context/glossary.md +6 -26
- package/template/devflow/decisions/README.md +1 -15
- package/template/devflow/docs/USAGE.md +195 -0
- package/template/devflow/docs/diagrams/nexus-devflow-architecture.html +14821 -0
- package/template/devflow/docs/diagrams/nexus-devflow-architecture.json +80 -0
- package/template/devflow/docs/diagrams/nexus-devflow-lifecycle.html +14860 -0
- package/template/devflow/docs/diagrams/nexus-devflow-lifecycle.json +88 -0
- package/template/devflow/docs/examples/living-spec/adr.example.md +43 -0
- package/template/devflow/docs/examples/living-spec/current-feature.example.md +113 -0
- package/template/devflow/docs/examples/living-spec/discovery.example.md +45 -0
- package/template/devflow/docs/examples/living-spec/ideas.example.md +22 -0
- package/template/devflow/docs/governance-rules.md +39 -0
- package/template/devflow/docs/manual-review-workflow-spec.md +116 -0
- package/template/devflow/docs/markdown-metadata-contract.md +140 -0
- package/template/devflow/docs/quickstart.md +124 -0
- package/template/devflow/docs/release-process.md +52 -0
- package/template/devflow/docs/skill-selection-policy.md +64 -0
- package/template/devflow/docs/workflow-surface-map.md +86 -0
- package/template/devflow/reference/feature-spec-template.md +79 -59
- package/template/devflow/runs/.gitkeep +1 -0
- package/template/.agents/skills/check/reference/verify.md +0 -129
- package/template/.claude/skills/check/reference/verify.md +0 -129
- package/template/devflow/reference/help-playbook-protocol.md +0 -33
- package/template/devflow/reference/slicing-archetypes.md +0 -105
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ci
|
|
3
|
-
description: "[devflow] Set up or normalize one project Verify command and matching GitHub Actions checks while preserving existing CI
|
|
4
|
-
argument-hint: "[--hook | --no-hook]"
|
|
3
|
+
description: "[devflow] Set up or normalize one project Verify command and matching GitHub Actions checks while preserving existing CI. Use for /ci, GitHub Actions setup, pull-request checks, automatic checks, or aligning verification."
|
|
5
4
|
---
|
|
6
5
|
|
|
7
6
|
# ci - set up automatic GitHub checks
|
|
8
7
|
|
|
9
|
-
**Context reuse:** Reuse any required file already loaded in project instructions or the current session. Read it again only if absent, changed, or exact current bytes or line references are needed.
|
|
10
|
-
|
|
11
8
|
**First action:** Before project inspection, preflight, or any other tool call,
|
|
12
9
|
publish `running` to `devflow/.state/run.json` using the dashboard activity
|
|
13
10
|
contract in `AGENTS.md`.
|
|
@@ -18,7 +15,7 @@ Where this sits in the workflow:
|
|
|
18
15
|
(project commands) (setup) (same recipe) (pull requests)
|
|
19
16
|
|
|
20
17
|
This skill gives local work and GitHub one shared automated command. It is an
|
|
21
|
-
optional setup task, not a requirement for using
|
|
18
|
+
optional setup task, not a requirement for using the Blueprint.
|
|
22
19
|
|
|
23
20
|
Keep the beginner explanation simple:
|
|
24
21
|
|
|
@@ -26,12 +23,9 @@ Keep the beginner explanation simple:
|
|
|
26
23
|
- **GitHub Actions is the worker.** It runs the same recipe automatically.
|
|
27
24
|
- **A GitHub ruleset is the lock.** That optional remote setting can require the
|
|
28
25
|
worker to report green before merge.
|
|
29
|
-
- **A pre-push hook is the early warning.** That optional local setting runs the
|
|
30
|
-
recipe before a push leaves the machine. It is a convenience, not the lock:
|
|
31
|
-
`git push --no-verify` skips it.
|
|
32
26
|
|
|
33
|
-
This skill configures the recipe and worker
|
|
34
|
-
|
|
27
|
+
This skill configures the recipe and worker. It never changes the remote ruleset,
|
|
28
|
+
pushes, publishes, deploys, or adds local git hooks.
|
|
35
29
|
|
|
36
30
|
## Input
|
|
37
31
|
|
|
@@ -53,7 +47,7 @@ Read enough to identify the real project setup:
|
|
|
53
47
|
- `.github/workflows/` and any documented external CI
|
|
54
48
|
- git's current branch, configured default branch, and remotes when available
|
|
55
49
|
|
|
56
|
-
Do not assume npm, Node.js, `main`, or GitHub from the
|
|
50
|
+
Do not assume npm, Node.js, `main`, or GitHub from the Blueprint template. Do not
|
|
57
51
|
run installs or edit files during inspection.
|
|
58
52
|
|
|
59
53
|
If an existing workflow already provides equivalent pull-request checks, explain
|
|
@@ -119,26 +113,11 @@ After the workflow exists, ask one question and default to no:
|
|
|
119
113
|
|
|
120
114
|
Also add a local pre-push hook that runs Verify before every push? [y/N]
|
|
121
115
|
|
|
122
|
-
Skip the question when the request already answered it (for example "/ci with
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
the exact `Verify` command from `AGENTS.md` with `exec`, so the command's
|
|
128
|
-
exit code is the hook's exit code.
|
|
129
|
-
2. Point git at the folder: `git config core.hooksPath .githooks`.
|
|
130
|
-
3. For JavaScript and TypeScript projects, add a `prepare` script,
|
|
131
|
-
`git config core.hooksPath .githooks 2>/dev/null || true`, so a fresh
|
|
132
|
-
install wires the hook without a manual step. The `|| true` keeps installs
|
|
133
|
-
working where no git checkout exists, such as a deploy build. For other
|
|
134
|
-
stacks, document the `git config` line in the README instead.
|
|
135
|
-
4. Run the hook once (`.githooks/pre-push`). If it fails, remove what this
|
|
136
|
-
step added and report the failing subcommand. Never leave a hook the
|
|
137
|
-
project cannot pass.
|
|
138
|
-
|
|
139
|
-
The hook and the workflow run the same `Verify` command; if one changes, the
|
|
140
|
-
other changes with it. Say in the report that `--no-verify` bypasses the hook,
|
|
141
|
-
so the GitHub ruleset remains the lock.
|
|
116
|
+
Skip the question when the request already answered it (for example "/ci with hook" or "no hook"). When the answer is no, write nothing and move on. When it is yes:
|
|
117
|
+
|
|
118
|
+
1. Use `npx nexus-devflow hook install pre-push` or configure `.githooks/pre-push` running the exact `Verify` command with `git config core.hooksPath .githooks`.
|
|
119
|
+
2. Run the hook once to verify it passes cleanly. If it fails, revert the hook setup and report the failure. Never leave a hook the project cannot pass.
|
|
120
|
+
3. Note that `git push --no-verify` bypasses the hook if an emergency push is ever needed.
|
|
142
121
|
|
|
143
122
|
## Step 4 - prove the setup locally
|
|
144
123
|
|
|
@@ -167,7 +146,6 @@ Finish with a concise setup report:
|
|
|
167
146
|
- checks included and checks omitted
|
|
168
147
|
- test gate status
|
|
169
148
|
- workflow path and triggers
|
|
170
|
-
- whether a pre-push hook was added, and that `--no-verify` bypasses it
|
|
171
149
|
- local Verify result and whether CI is only prepared locally or confirmed by a
|
|
172
150
|
successful GitHub run
|
|
173
151
|
- files changed
|
|
@@ -179,7 +157,7 @@ part of this skill.
|
|
|
179
157
|
|
|
180
158
|
## Interaction with other skills
|
|
181
159
|
|
|
182
|
-
- `/
|
|
160
|
+
- `/tests` adds the real test command to an existing Verify command, but never
|
|
183
161
|
creates CI by itself.
|
|
184
162
|
- `/implement`, `/complete`, and `/autopilot` run Verify when it is documented,
|
|
185
163
|
with their existing fallback behavior when it is absent.
|
|
@@ -190,8 +168,8 @@ part of this skill.
|
|
|
190
168
|
|
|
191
169
|
- Preserve existing CI and custom checks.
|
|
192
170
|
- Never invent tests or install a runner as part of CI setup.
|
|
193
|
-
- Never add coverage, browser tests, security scans, or matrices by
|
|
194
|
-
|
|
171
|
+
- Never add git hooks, coverage, browser tests, security scans, or matrices by
|
|
172
|
+
default.
|
|
195
173
|
- Never push or change a remote ruleset without separate explicit approval.
|
|
196
174
|
- Keep one exact Verify command shared by local work and GitHub.
|
|
197
175
|
|
|
@@ -106,8 +106,6 @@ Before logging or committing, run a short safety pass and report blockers only:
|
|
|
106
106
|
- no P0 or P1 finding in `devflow/context/{xxx-slug}/findings.md` is `open` or `fixed`.
|
|
107
107
|
`fixed` still blocks on purpose: the repair exists but no review has looked at
|
|
108
108
|
it - run `/audit` to close it. The only waivers are `accepted` or `invalid`.
|
|
109
|
-
- any `Status: Assumed` ADR in `devflow/decisions/` has been surfaced with its ratification plan noted.
|
|
110
|
-
|
|
111
109
|
|
|
112
110
|
Do not claim "passed", "verified", or "working" without naming the command,
|
|
113
111
|
route, screenshot, or output that proves it. Stop before Step 1 if required
|
|
@@ -36,8 +36,7 @@ When invoked without an argument (or when determining the next step), inspect:
|
|
|
36
36
|
|
|
37
37
|
### Default State Recommendations
|
|
38
38
|
- If no run is active and user wants to start a feature -> Recommend `/feature <name>`.
|
|
39
|
-
- If
|
|
40
|
-
- If the user requests a completed fix -> preserve the implementation and verification scope; draft the required spec internally and continue to `/implement` using existing authorization.
|
|
39
|
+
- If no run is active and user wants to fix a bug -> Recommend `/fix <bug>`.
|
|
41
40
|
- If no run is active and user has pending ideas in `devflow/ideas.md` -> Highlight `/feature IDEA-xxx` or `/discovery IDEA-xxx`.
|
|
42
41
|
- If no run is active and user wants deep architectural exploration -> Recommend `/discovery`.
|
|
43
42
|
- If user asks to check system health -> Recommend `doctor`.
|
|
@@ -49,7 +48,7 @@ When invoked without an argument (or when determining the next step), inspect:
|
|
|
49
48
|
| User Intent / Request Type | Recommended Skill | Normal Name / Alias | Lifecycle Path |
|
|
50
49
|
| :--- | :--- | :--- | :--- |
|
|
51
50
|
| **"Spec new feature / living spec"** | `feature` | `/feature` / `/spec` | **Unified**: `/feature` -> `/implement` -> `/check` -> `/complete` |
|
|
52
|
-
| **"
|
|
51
|
+
| **"Quick bugfix / ad-hoc change"** | `fix` | `/fix` | **Unified**: `/fix` -> `/implement` -> `/check` -> `/complete` |
|
|
53
52
|
| **"Capture quick idea / thought"** | `idea` | `/idea` | **Companion**: Enriches & saves to `devflow/ideas.md` |
|
|
54
53
|
| **"Pre-delivery exploration / research"**| `discovery`| `/discovery` | **Pre-Flight**: `discovery` -> `/feature` |
|
|
55
54
|
| **"Socratic alignment / ADR / glossary"**| `grill` | `/grill` / `/align` | **Pre-Flight**: `grill` -> `/feature` |
|
|
@@ -81,15 +81,6 @@ devflow/discoveries/{DISCOVERY_ID}-{slug}/discovery.md
|
|
|
81
81
|
- **For interactive system architecture, dataflows, state transitions, and sequence traces**: Use `archify` (`.agents/skills/archify/SKILL.md`) to compile validated interactive HTML artifacts with dark/light themes, motion, and route probes.
|
|
82
82
|
- **For editorial, business, quadrant, or broad diagram types**: Use `diagram-design` (`.agents/skills/diagram-design/SKILL.md`).
|
|
83
83
|
- Save diagram artifacts to `devflow/discoveries/{DISCOVERY_ID}-{slug}/diagrams/{name}.html` and reference them directly in `discovery.md`.
|
|
84
|
-
7. **🧩 Slicing & Decomposition Lens (4 Slicing Archetypes)**:
|
|
85
|
-
- When breaking down a large initiative into sub-features or milestones, evaluate against [`devflow/reference/slicing-archetypes.md`](file:///d:/Projects/devtools/nexus-devflow/devflow/reference/slicing-archetypes.md):
|
|
86
|
-
- **Skateboard**: Minimal functional loop (prove core logic end-to-end with minimal UI).
|
|
87
|
-
- **Facade**: Rich UI/DX with mock backend (validate user flow & interaction first).
|
|
88
|
-
- **Tracer Bullet**: Deep vertical slice across all layers (DB -> API -> UI) for 1 happy path.
|
|
89
|
-
- **Journey**: Slice along natural user workflow milestones.
|
|
90
|
-
- Recommend the primary Archetype for each proposed sub-feature in `discovery.md`.
|
|
91
|
-
|
|
92
|
-
|
|
93
84
|
|
|
94
85
|
### Decision & Approval Gate:
|
|
95
86
|
Set one visible decision:
|
|
@@ -100,10 +100,12 @@ Gather these, then summarize. Do not dump file contents.
|
|
|
100
100
|
report it as an obsolete installer artifact. Its absence is healthy. An
|
|
101
101
|
unchanged managed copy can be removed by the updater; a modified copy needs
|
|
102
102
|
user review.
|
|
103
|
-
- Check whether `AGENTS.md`
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
103
|
+
- Check whether `AGENTS.md` has substantive proportional-engineering guidance,
|
|
104
|
+
under `## Proportional engineering` or equivalent customized wording.
|
|
105
|
+
Accept equivalent guidance anywhere in the file; do not require exact prose.
|
|
106
|
+
Look for current requirements over hypothetical scale, reuse before new
|
|
107
|
+
machinery, smaller reversible defaults, questions for material unknowns,
|
|
108
|
+
and harmonization with `ponytail`.
|
|
107
109
|
- Check whether `AGENTS.md` has a `## Commands` section with dev and build
|
|
108
110
|
commands.
|
|
109
111
|
- Report missing lint or test commands as informational unless the project has
|
|
@@ -164,8 +166,6 @@ Gather these, then summarize. Do not dump file contents.
|
|
|
164
166
|
last commit subject, and whether the branch is ahead of upstream.
|
|
165
167
|
- If the directory is not a git repo, report that as a setup issue and keep
|
|
166
168
|
going.
|
|
167
|
-
9. **Token Economics & Session Cost Audit**
|
|
168
|
-
- When session transcript is available, report token efficiency, cache hit rate, and estimated model costs using `npm run analyze:tokens` or `scripts/analyze-token-usage.ts`.
|
|
169
169
|
|
|
170
170
|
## Output
|
|
171
171
|
|
|
@@ -1,21 +1,23 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: explore
|
|
3
3
|
description: "[devflow] Explore an idea against the actual codebase without changing files. Investigate whether a change would help, compare alternatives and tradeoffs, and discuss uncertainty before deciding whether to plan anything. Use for /explore, considering an idea, or weighing options without writing a spec."
|
|
4
|
-
argument-hint: "[<idea or question>]"
|
|
5
4
|
---
|
|
6
5
|
|
|
7
|
-
# explore - investigate an idea before deciding to build
|
|
6
|
+
# explore - investigate an idea before deciding to build (Read-Only)
|
|
8
7
|
|
|
9
8
|
**Context reuse:** Reuse any required file already loaded in project instructions or the current session. Read it again only if absent, changed, or exact current bytes or line references are needed.
|
|
10
9
|
|
|
11
10
|
Explore is a read-only conversation grounded in the actual project. It can help
|
|
12
|
-
with questions such as whether caching would help a dashboard,
|
|
13
|
-
|
|
11
|
+
with questions such as whether caching would help a dashboard, which upload approach
|
|
12
|
+
fits existing code, or how to architect a new capability within the current system.
|
|
14
13
|
|
|
15
14
|
No plans or active feature are required. Do not require `/overview`, invent a
|
|
16
15
|
plan, or treat missing DevFlow context as a blocker to discussing the idea.
|
|
17
16
|
This command never writes activity state, including `devflow/.state/run.json`.
|
|
18
17
|
|
|
18
|
+
Per DevFlow rules, communicate and respond in Thai (`th`) while keeping code,
|
|
19
|
+
technical terms, file paths, and identifiers in English.
|
|
20
|
+
|
|
19
21
|
## Start from the question
|
|
20
22
|
|
|
21
23
|
Use the supplied topic or relevant conversation context. With neither, ask what
|
|
@@ -69,9 +71,11 @@ let the discussion continue as long as useful.
|
|
|
69
71
|
size. Explore can discuss an unplanned idea or question a planned approach.
|
|
70
72
|
- `/discovery` develops broader product direction and reviewed planning drafts.
|
|
71
73
|
Explore does not draft either planning file.
|
|
74
|
+
- `/grill` stress-tests plans, extracts domain glossary, and records ADRs.
|
|
75
|
+
- `/ponytail` applies YAGNI discipline and cuts bloat/dependencies.
|
|
72
76
|
- `/debug` reproduces and isolates an actual failure. Explore discusses options
|
|
73
77
|
without executing code to diagnose or verify them.
|
|
74
|
-
- `/feature` writes a buildable spec; `/fix` specifies a confirmed small change.
|
|
78
|
+
- `/feature` writes a buildable task-isolated spec; `/fix` specifies a confirmed small change.
|
|
75
79
|
Suggest the appropriate command only when the user is ready to proceed.
|
|
76
80
|
|
|
77
81
|
Do not force a handoff at the end of every response. Keep discussing the idea
|
|
@@ -102,8 +102,6 @@ the data model, stack, and conventions. Decide how big the feature is:
|
|
|
102
102
|
those sub-items back under the parent in `build-plan.md` as an indented
|
|
103
103
|
checklist (`4a`, `4b`, `4c` ...). Spec only the **first** sub-feature now; the
|
|
104
104
|
rest get picked up on later `/feature` runs.
|
|
105
|
-
*Use the **4 Slicing Archetypes** ([`devflow/reference/slicing-archetypes.md`](file:///d:/Projects/devtools/nexus-devflow/devflow/reference/slicing-archetypes.md)) to guide the split: 🛹 Skateboard (core logic first), 🎭 Facade (UI/DX mock first), 🎯 Tracer Bullet (end-to-end slice), or 🧭 Journey (workflow steps).*
|
|
106
|
-
|
|
107
105
|
|
|
108
106
|
Two levels of breakdown - don't confuse them:
|
|
109
107
|
|
|
@@ -200,7 +198,7 @@ Before the user reads it, turn on the spec yourself and try to break it. The
|
|
|
200
198
|
cheapest place to catch a scope problem or an oversized step is here, before any
|
|
201
199
|
code exists. Run the draft against these questions:
|
|
202
200
|
|
|
203
|
-
- **Coverage
|
|
201
|
+
- **Coverage.** What does this feature need that no step delivers? Push on the
|
|
204
202
|
unhappy paths the happy-path spec skipped: empty / missing / malformed input,
|
|
205
203
|
the error / loading / empty states, the first-run case, failure of anything
|
|
206
204
|
external it calls.
|
|
@@ -220,7 +218,6 @@ code exists. Run the draft against these questions:
|
|
|
220
218
|
anything pushed to "out of scope" that this feature actually can't ship without?
|
|
221
219
|
- **Done-whens.** Is each one observable and checkable by `/check`, or is it a
|
|
222
220
|
vague "it works"? Make it concrete.
|
|
223
|
-
- **Proportionality.** Does any proposed abstraction, dependency, service, config surface, or security mechanism lack a current requirement, or duplicate existing code/platform features? If so, remove it.
|
|
224
221
|
- **Testing.** Does the predicted coverage match the gate - in-scope logic gets a
|
|
225
222
|
test when a `test` command is declared in `AGENTS.md`, UI/integration rides on
|
|
226
223
|
screenshot + build?
|
|
@@ -14,18 +14,18 @@
|
|
|
14
14
|
## 1. Specification & Scope
|
|
15
15
|
|
|
16
16
|
### 1.1 Problem Statement
|
|
17
|
-
{
|
|
17
|
+
{คำอธิบายปัญหาและที่มาของความจำเป็นในการพัฒนาฟีเจอร์นี้}
|
|
18
18
|
|
|
19
19
|
### 1.2 In-Scope
|
|
20
|
-
1. {
|
|
21
|
-
2. {
|
|
20
|
+
1. {ขอบเขตการทำงานข้อที่ 1}
|
|
21
|
+
2. {ขอบเขตการทำงานข้อที่ 2}
|
|
22
22
|
|
|
23
23
|
### 1.3 Out-of-Scope
|
|
24
|
-
- {
|
|
24
|
+
- {สิ่งที่อยู่นอกเหนือขอบเขตหรือไม่ทำในรอบนี้}
|
|
25
25
|
|
|
26
|
-
### 1.4 Acceptance Criteria
|
|
27
|
-
- [ ] **AC-1**: {
|
|
28
|
-
- [ ] **AC-2**: {
|
|
26
|
+
### 1.4 Acceptance Criteria (เกณฑ์การยอมรับ)
|
|
27
|
+
- [ ] **AC-1**: {เกณฑ์การตรวจรับข้อที่ 1}
|
|
28
|
+
- [ ] **AC-2**: {เกณฑ์การตรวจรับข้อที่ 2}
|
|
29
29
|
|
|
30
30
|
---
|
|
31
31
|
|
|
@@ -40,18 +40,18 @@
|
|
|
40
40
|
- **Review Strategy**: One feature-level review packet at completion
|
|
41
41
|
|
|
42
42
|
### 2.3 Test Decision: Required (TDD) | Optional
|
|
43
|
-
- **Rationale**: {
|
|
43
|
+
- **Rationale**: {เหตุผลความจำเป็นในการเขียน Unit Tests / TDD}
|
|
44
44
|
|
|
45
45
|
---
|
|
46
46
|
|
|
47
47
|
## 3. Implementation Checklist (Strict TDD)
|
|
48
48
|
|
|
49
|
-
- [ ] **Task 1: {
|
|
50
|
-
- [ ] 1.1 `[TDD-Red]`: {
|
|
51
|
-
- [ ] 1.2 `[TDD-Green]`: {
|
|
52
|
-
- [ ] 1.3 `[TDD-Refactor]`: {Refactor
|
|
49
|
+
- [ ] **Task 1: {หัวข้องานที่ 1}**
|
|
50
|
+
- [ ] 1.1 `[TDD-Red]`: {เขียน Test เคสล้มเหลว}
|
|
51
|
+
- [ ] 1.2 `[TDD-Green]`: {เขียนโค้ดขั้นต่ำเพื่อให้ Test ผ่าน}
|
|
52
|
+
- [ ] 1.3 `[TDD-Refactor]`: {Refactor และตรวจให้ 100% Tests Green}
|
|
53
53
|
|
|
54
|
-
- [ ] **Task 2: {
|
|
54
|
+
- [ ] **Task 2: {หัวข้องานที่ 2}**
|
|
55
55
|
- [ ] 2.1 `[TDD-Red]`: ...
|
|
56
56
|
- [ ] 2.2 `[TDD-Green]`: ...
|
|
57
57
|
- [ ] 2.3 `[TDD-Refactor]`: ...
|
|
@@ -65,11 +65,11 @@
|
|
|
65
65
|
- **Automated Test Matrix**: TBD
|
|
66
66
|
- **Static Contract Verification**: TBD
|
|
67
67
|
- **Package Smoke Test**: TBD
|
|
68
|
-
- **Findings Ledger**:
|
|
68
|
+
- **Findings Ledger**: ตรวจสอบ `findings.md` สะอาด 100%
|
|
69
69
|
|
|
70
70
|
### 🎯 Axis 2: Spec Fidelity & Behavioral Acceptance Gate
|
|
71
|
-
- [ ] **AC-1**: {
|
|
72
|
-
- [ ] **AC-2**: {
|
|
71
|
+
- [ ] **AC-1**: {หลักฐานการผ่านเกณฑ์ข้อที่ 1}
|
|
72
|
+
- [ ] **AC-2**: {หลักฐานการผ่านเกณฑ์ข้อที่ 2}
|
|
73
73
|
|
|
74
74
|
---
|
|
75
75
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: fix
|
|
3
|
-
description: "[devflow]
|
|
3
|
+
description: "[devflow] Write a task-isolated spec (devflow/context/{xxx-slug}/spec.md) for an ad-hoc bug fix or small unplanned change, then stop before implementation. Use for /fix, confirmed bugs, or small changes outside the build plan."
|
|
4
4
|
argument-hint: "[{title or issue-description}]"
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -23,7 +23,7 @@ it creates a dedicated run folder at `devflow/context/{xxx-slug}/` (e.g. `059-fi
|
|
|
23
23
|
## Input
|
|
24
24
|
|
|
25
25
|
A description of the bug or change, for example `/fix "password reset email never
|
|
26
|
-
sends"`.
|
|
26
|
+
sends"`. If the user just reported the problem in chat, use that.
|
|
27
27
|
|
|
28
28
|
The input may also be a finding ID from `devflow/context/{xxx-slug}/findings.md` (or previous findings), alone
|
|
29
29
|
or with a description, for example `/fix F-03`.
|
|
@@ -46,7 +46,7 @@ then write a short spec to `devflow/context/{xxx-slug}/spec.md`. Also initialize
|
|
|
46
46
|
big to read. Each ends with an observable "done when".
|
|
47
47
|
- **Verify** - how to confirm it's fixed (what to click or test).
|
|
48
48
|
|
|
49
|
-
|
|
49
|
+
Then stop. Tell the user to review the fix spec, then run `/implement` to build it.
|
|
50
50
|
|
|
51
51
|
## Rules
|
|
52
52
|
|
|
@@ -70,14 +70,10 @@ Allocate the next sequential ID (`ADR-001`, `ADR-002`, ...) and create `devflow/
|
|
|
70
70
|
```markdown
|
|
71
71
|
# ADR-xxx: {Title}
|
|
72
72
|
|
|
73
|
-
- **Status**: Accepted
|
|
73
|
+
- **Status**: Accepted
|
|
74
74
|
- **Date**: {YYYY-MM-DD}
|
|
75
75
|
- **Context**: {Why was this decision needed? What problem does it solve?}
|
|
76
76
|
- **Decision**: {What did we decide to do?}
|
|
77
|
-
- **Assumption Metadata** *(Required when Status is Assumed)*:
|
|
78
|
-
- **Assumption**: {What was assumed to unblock progress}
|
|
79
|
-
- **Risk Level & Blast Radius**: {Risk if assumption fails}
|
|
80
|
-
- **Ratification Plan**: {Trigger, date, or test to ratify as Accepted or Rejected}
|
|
81
77
|
- **Alternatives Considered**:
|
|
82
78
|
- *Option 1*: {Pros / Cons}
|
|
83
79
|
- *Option 2*: {Pros / Cons}
|
|
@@ -86,7 +82,6 @@ Allocate the next sequential ID (`ADR-001`, `ADR-002`, ...) and create `devflow/
|
|
|
86
82
|
- *Trade-offs / Risks*: {Costs, constraints, or follow-ups}
|
|
87
83
|
```
|
|
88
84
|
|
|
89
|
-
|
|
90
85
|
---
|
|
91
86
|
|
|
92
87
|
## 4. Closing & Handoff
|
|
@@ -26,7 +26,7 @@ When invoked:
|
|
|
26
26
|
3. Allocate the next sequential ID (e.g. `IDEA-001`, `IDEA-002`).
|
|
27
27
|
|
|
28
28
|
### 2. AI Feasibility & Value Analysis
|
|
29
|
-
Evaluate the user's raw idea and generate an enriched entry:
|
|
29
|
+
Evaluate the user's raw idea and generate an enriched entry in Thai (`th` per user communication rules):
|
|
30
30
|
- **Raw Idea**: The user's input description
|
|
31
31
|
- **AI Feasibility & Tech**: Feasibility rating (Easy / Medium / Complex) along with recommended libraries, APIs, or architectural approaches
|
|
32
32
|
- **Value & Potential**: Business value, user benefits, and strategic impact
|
|
@@ -37,17 +37,17 @@ Insert the new idea block directly under `## 📌 Pending Ideas` in `devflow/ide
|
|
|
37
37
|
|
|
38
38
|
```markdown
|
|
39
39
|
### [IDEA-001] {Brief idea title}
|
|
40
|
-
-
|
|
41
|
-
-
|
|
40
|
+
- **บันทึกเมื่อ**: {YYYY-MM-DD}
|
|
41
|
+
- **ไอเดียตั้งต้น**: {User's raw idea text}
|
|
42
42
|
- **AI Feasibility & Tech**: {Feasibility and tooling analysis}
|
|
43
43
|
- **Value & Potential**: {Value and impact analysis}
|
|
44
|
-
- **Quick Seed**:
|
|
44
|
+
- **Quick Seed (กันลืม)**:
|
|
45
45
|
1. {Key point 1}
|
|
46
46
|
2. {Key point 2}
|
|
47
|
-
-
|
|
47
|
+
- **สถานะ**: `Pending` (Ready for pickup via `/feature IDEA-001` or `/discovery IDEA-001`)
|
|
48
48
|
```
|
|
49
49
|
|
|
50
|
-
*(If placeholder `*(
|
|
50
|
+
*(If placeholder `*(ยังไม่มีไอเดียค้างอยู่...)*` exists, remove it upon recording the first idea)*
|
|
51
51
|
|
|
52
52
|
### 4. Output Summary
|
|
53
53
|
Report to the user:
|