feat(sg-md-writing): require per-file confirm before creating each .md

This commit is contained in:
2026-07-23 09:19:18 +07:00
parent a1884362d4
commit 58c4c9e8ac
+4 -1
View File
@@ -75,7 +75,9 @@ Write the files so this works (root routes precisely; each module file is self-s
- **Length follows content, not a quota.** Be detailed, complete, and accurate — include EVERY confirmed intent, invariant, gotcha, and prohibition, however many lines that takes. The only thing to cut is what the model can already read from code; never cut a real constraint to hit a size target. - **Length follows content, not a quota.** Be detailed, complete, and accurate — include EVERY confirmed intent, invariant, gotcha, and prohibition, however many lines that takes. The only thing to cut is what the model can already read from code; never cut a real constraint to hit a size target.
- **Handover test** for the whole set: a new engineer (or model) reading ONLY the `.md` files must be able to take a one-line feature request and land on the correct module, reuse the existing pattern, and produce a minimal diff — without tree-scanning or inventing parallel structures (e.g. a new table when an existing one covers it via a `type` column). - **Handover test** for the whole set: a new engineer (or model) reading ONLY the `.md` files must be able to take a one-line feature request and land on the correct module, reuse the existing pattern, and produce a minimal diff — without tree-scanning or inventing parallel structures (e.g. a new table when an existing one covers it via a `type` column).
Produce the full list: every dir/module and the constraints each `.md` will hold. No prose yet. Present it, get the user's OK, then write. Produce the full list: every dir/module and the constraints each `.md` will hold. No prose yet. Present it, get the user's OK on the plan, then write.
**Confirm BEFORE creating EACH file — never batch-write the set.** Plan approval authorizes the *list*, not the individual files. Write one `.md` at a time: for each file, present its path + the constraints it will contain (in tiếng Việt, recommended answer = tạo), ask to proceed, and create it ONLY after the user confirms that file. Then move to the next. Do NOT create the next file until the current one is confirmed. Options at least: tạo file này / sửa nội dung / bỏ qua file này.
### 4. Rewrite the draft as constraints, not facts ### 4. Rewrite the draft as constraints, not facts
- **Imperative prohibitions** (KHÔNG / CHỈ / PHẢI / NEVER / ONLY), not descriptions. Weak models obey commands, not implied intent. - **Imperative prohibitions** (KHÔNG / CHỈ / PHẢI / NEVER / ONLY), not descriptions. Weak models obey commands, not implied intent.
@@ -121,6 +123,7 @@ Report the verification result to the user as part of delivery.
- Speculative advice (Redis, production hardening) not tied to a real decision. - Speculative advice (Redis, production hardening) not tied to a real decision.
- Bolting on a test framework where none exists. - Bolting on a test framework where none exists.
- Wrote files before the user approved the plan. - Wrote files before the user approved the plan.
- Created any `.md` file without confirming that specific file first — plan approval is not per-file approval; each file gets its own confirm-before-create gate (create mode step 3).
- Asking questions before reading the code (should investigate first, ask to confirm). - Asking questions before reading the code (should investigate first, ask to confirm).
- Dumping many questions in one message (must be sequential, one at a time). - Dumping many questions in one message (must be sequential, one at a time).
- A question with no recommended answer (every question carries your best guess first). - A question with no recommended answer (every question carries your best guess first).