macca-method 1.1.0 → 2.1.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.
Files changed (56) hide show
  1. package/.agents/legacy-payloads.json +22 -0
  2. package/{skills-lock.json → .agents/macca-lock.json} +3 -2
  3. package/.agents/macca-managed-skills.txt +2 -1
  4. package/.agents/skills/_shared/references/additional-skills.md +30 -0
  5. package/.agents/skills/_shared/references/brainstorm-session.md +42 -11
  6. package/.agents/skills/_shared/references/config-mutation.md +25 -0
  7. package/.agents/skills/_shared/references/finding-format.md +25 -0
  8. package/.agents/skills/_shared/references/fix-mode.md +54 -0
  9. package/.agents/skills/_shared/references/human-loop.md +3 -1
  10. package/.agents/skills/_shared/references/implementation-principles.md +19 -0
  11. package/.agents/skills/_shared/references/invocation-policy.md +39 -0
  12. package/.agents/skills/_shared/references/language-config.md +17 -0
  13. package/.agents/skills/_shared/references/output-ownership.md +4 -2
  14. package/.agents/skills/_shared/references/runtime-config.md +7 -168
  15. package/.agents/skills/_shared/references/skill-catalog.md +34 -0
  16. package/.agents/skills/_shared/scripts/validate-skills.py +106 -4
  17. package/.agents/skills/add-feature/SKILL.md +12 -7
  18. package/.agents/skills/brainstorm-api/SKILL.md +53 -196
  19. package/.agents/skills/brainstorm-api/assets/api.template.md +147 -0
  20. package/.agents/skills/brainstorm-architecture/SKILL.md +26 -129
  21. package/.agents/skills/brainstorm-architecture/assets/architecture.template.md +135 -0
  22. package/.agents/skills/brainstorm-prd/SKILL.md +23 -104
  23. package/.agents/skills/brainstorm-prd/assets/PRD.template.md +106 -0
  24. package/.agents/skills/brainstorm-rules/SKILL.md +19 -153
  25. package/.agents/skills/brainstorm-rules/assets/rules.template.md +127 -0
  26. package/.agents/skills/brainstorm-schema/SKILL.md +53 -117
  27. package/.agents/skills/brainstorm-schema/assets/schema.template.md +109 -0
  28. package/.agents/skills/brainstorm-styleguide/SKILL.md +21 -136
  29. package/.agents/skills/brainstorm-styleguide/assets/StyleGuide.template.md +147 -0
  30. package/.agents/skills/brainstorm-task/SKILL.md +24 -107
  31. package/.agents/skills/brainstorm-task/assets/Task.template.md +113 -0
  32. package/.agents/skills/bug-fix/SKILL.md +54 -56
  33. package/.agents/skills/code-review/SKILL.md +28 -19
  34. package/.agents/skills/code-review/references/review-checklist.md +24 -26
  35. package/.agents/skills/developer/SKILL.md +27 -39
  36. package/.agents/skills/developer/references/close-phase.md +25 -0
  37. package/.agents/skills/developer/references/execute-task.md +69 -0
  38. package/.agents/skills/developer/references/onboarding.md +47 -0
  39. package/.agents/skills/help/SKILL.md +19 -16
  40. package/.agents/skills/meet/SKILL.md +170 -0
  41. package/.agents/skills/quick-dev/SKILL.md +32 -34
  42. package/.agents/skills/release-readiness/SKILL.md +151 -0
  43. package/.agents/skills/spec-audit/SKILL.md +39 -22
  44. package/.agents/skills/spec-compliance/SKILL.md +43 -40
  45. package/.agents/skills/spec-init/SKILL.md +31 -14
  46. package/README.md +181 -132
  47. package/bin/macca-method.js +779 -85
  48. package/flow.webp +0 -0
  49. package/image-macca-method.webp +0 -0
  50. package/package.json +12 -5
  51. package/scripts/run-skill-validator.js +24 -0
  52. package/scripts/test-install.js +430 -0
  53. package/scripts/test-upgrade-legacy.js +143 -0
  54. package/scripts/validate-skill-behavior.js +124 -0
  55. package/.agents/skills/developer/references/execution-workflow.md +0 -322
  56. package/.agents/skills/rapat/SKILL.md +0 -172
@@ -1,19 +1,26 @@
1
1
  ---
2
2
  name: spec-audit
3
- description: Skill for checking consistency between `project-context/` documents or within the MACCA framework documents themselves. Detects cross-document conflicts, inconsistencies, and ambiguities, not internal writing quality. Reports where the issue is, why it matters, and the exact fix with reasoning.
4
- persona: "Fachri"
5
- persona_role: "Tech Lead"
3
+ description: Audits cross-document consistency in project specs or the MACCA framework and applies explicitly requested corrections. Use for spec alignment, framework drift, and when the user replies yes, fix, continue, or finding IDs to this skill's correction gate.
4
+ compatibility: Requires the complete MACCA-METHOD collection with sibling _shared resources and workspace file access.
5
+ metadata:
6
+ persona: "Fachri"
7
+ persona-role: "Tech Lead"
6
8
  ---
7
9
 
8
10
  # Spec Audit
9
11
 
10
12
  ## Shared Runtime Setup
11
13
 
14
+ Paths written as `../...` below are relative to this SKILL.md's own folder, not the project's working directory - resolve them as a sibling of the folder that contains this file.
15
+
12
16
  At startup:
13
17
 
14
- 1. Read `../_shared/references/runtime-config.md`.
15
- 2. Read `codeReviewPreferences.fixMode` from `.agents/developer-config.json`. If it is missing, treat it as `"report-first"`. Announce: `[Fix mode: report-first]` or `[Fix mode: fix-then-report]`. See § Fix Mode Contract in runtime-config.md for the full enforcement rules.
16
- 3. Use `languagePreferences.communication.normalized` for audit reports.
18
+ 1. Read `../_shared/references/language-config.md`.
19
+ 2. Read `../_shared/references/fix-mode.md`.
20
+ 3. Read `../_shared/references/human-loop.md`.
21
+ 4. If this message answers this skill's active correction gate, resume directly under the Approval Resume Protocol. Do not rerun startup or the audit.
22
+ 5. Otherwise, read `codeReviewPreferences.fixMode` from `.agents/developer-config.json`. If it is missing, treat it as `"report-first"`. Announce: `[Fix mode: report-first]` or `[Fix mode: fix-then-report]`.
23
+ 6. Use `languagePreferences.communication.normalized` for audit reports.
17
24
 
18
25
  ---
19
26
 
@@ -41,7 +48,7 @@ You check **between** documents, not inside a single document.
41
48
 
42
49
  ## Fix Mode
43
50
 
44
- Mode is read in Shared Runtime Setup. Enforcement rules, including the required gate prompt, are in `../_shared/references/runtime-config.md § Fix Mode Contract`.
51
+ Mode is read in Shared Runtime Setup. Enforcement rules, including the required gate prompt, are in `../_shared/references/fix-mode.md`.
45
52
 
46
53
  To change it: update `codeReviewPreferences.fixMode` in `.agents/developer-config.json`.
47
54
 
@@ -92,14 +99,9 @@ Read everything that exists. Note ID patterns if they are used.
92
99
 
93
100
  ### Framework Mode
94
101
 
95
- Read:
96
- - `README.md` - workflow, skill list, structure
97
- - `.agents/skills/*/SKILL.md` - per-skill behavior contracts
98
- - `.agents/skills/_shared/references/*.md` - shared cross-skill contracts
99
- - `.agents/skills/*/references/*.md` - reference files with workflow/checklist detail
100
- - Installation/upgrade scripts if the audit touches them
102
+ Resolve the active skill installation root. First read `_shared/references/skill-catalog.md`, `invocation-policy.md`, `output-ownership.md`, `scope-rules.md`, and the MACCA README only when this is the MACCA source repository.
101
103
 
102
- Read `README.md`, relevant `SKILL.md` files, and relevant reference files. Note instruction conflicts, duplication, workflow inconsistencies, and shared-contract drift.
104
+ Compare compact contracts first. Read full `SKILL.md`, local references/assets, or installer code only for skills/relationships flagged by that comparison or explicitly named by the user. Do not load the entire collection by default. Do not treat an application's README as MACCA documentation.
103
105
 
104
106
  ---
105
107
 
@@ -110,36 +112,44 @@ Read `README.md`, relevant `SKILL.md` files, and relevant reference files. Note
110
112
  **SA-01: PRD ↔ architecture**
111
113
  - Does the architecture support the PRD NFRs (performance, security, accessibility)?
112
114
  - Do the PRD constraints fit the chosen tech stack?
115
+ - Do PRD success metrics map to architecture observability signals where technical instrumentation is required?
116
+ - Does product rollout align with deployment, rollback, and recovery constraints?
113
117
 
114
118
  **SA-02: PRD ↔ schema**
115
- - Does every PRD entity have a schema table?
116
- - Do schema constraints (e.g. "stock 0") reflect PRD business rules?
119
+ - Does every persisted PRD entity have a datastore-native representation (table, collection, aggregate, node, stream, or equivalent)?
120
+ - Do validation, relationship, consistency, and retention rules reflect PRD business rules?
117
121
 
118
122
  **SA-03: PRD ↔ api**
119
- - Does every PRD feature have supporting endpoints?
120
- - Does `api.md` contain endpoints for PRD non-goals?
123
+ - Does every integration-facing PRD feature have supporting operations (endpoint, query/mutation, procedure, event, or equivalent)?
124
+ - Does `api.md` contain operations for PRD non-goals?
121
125
 
122
126
  **SA-04: PRD ↔ Task.md**
123
127
  - Is every PRD feature mapped to >=1 task?
124
128
  - Does Task.md include tasks for features not in the PRD (scope creep)? If the feature is recorded in `## Approved Scope Delta`, mark it as `pending formal spec sync`, not a direct conflict.
125
129
  - Do PRD IDs (`FEAT-*`, `BR-*`) appear in Task.md traceability?
130
+ - Do rollout, analytics, degraded behavior, and applicable NFR work have tasks or explicit N/A decisions?
126
131
 
127
132
  **SA-05: schema ↔ api**
128
- - Does every request/response field in `api.md` exist in the schema?
133
+ - Does every persisted input/output field in `api.md` map to the data contract where appropriate?
129
134
  - Do response types match schema types?
130
135
  - If schema/api traceability is used, does it reference real PRD IDs?
136
+ - Do API retry/idempotency assumptions align with schema concurrency and consistency rules?
131
137
 
132
138
  **SA-06: architecture ↔ rules**
133
139
  - Are architectural patterns (e.g. repository pattern) required in `rules.md`?
134
140
  - Do any rules conflict with the chosen architecture?
141
+ - Do logging, migration, feature-flag, generated-code, and secret rules exist only when their architecture/schema mechanisms apply?
135
142
 
136
143
  **SA-07: architecture ↔ schema**
137
144
  - Does schema notation fit the architecture's database choice?
138
145
  - Is schema style consistent with the architecture's ORM choice?
146
+ - Do tenancy, scale, migration, backup, and recovery assumptions align?
139
147
 
140
148
  **SA-08: StyleGuide ↔ PRD**
141
149
  - Does the CSS framework in StyleGuide match any PRD mention?
142
150
  - Are all PRD pages/features covered by StyleGuide components?
151
+ - Do accessibility targets and supported locales match the PRD?
152
+ - Do operational UI states cover PRD failure/degraded behavior where UI is involved?
143
153
 
144
154
  **SA-09: Task.md ↔ all specs**
145
155
  - Do task references point to real spec sections?
@@ -147,6 +157,7 @@ Read `README.md`, relevant `SKILL.md` files, and relevant reference files. Note
147
157
  - If task traceability IDs are used, do they reference real PRD/schema/api/rules IDs?
148
158
  - Are semi-structured fields (ID, table, `Trace to`, `Traceability ID`) preserved instead of replaced with free text?
149
159
  - If new scope exists only in `## Approved Scope Delta`, the audit must separate it as `temporary approval`, not mix it with uncontrolled scope creep.
160
+ - Does each phase Definition of Done include only applicable controls from the specs and quality gates?
150
161
 
151
162
  ### Framework Mode
152
163
 
@@ -175,7 +186,7 @@ Read `README.md`, relevant `SKILL.md` files, and relevant reference files. Note
175
186
  - Are there dead ends, loops, or mismatched handoffs?
176
187
 
177
188
  **SA-F07: Persona consistency**
178
- - Are personas, roles, and assigned skills consistent across README, `rapat`, and skill frontmatter?
189
+ - Are personas, roles, and assigned skills consistent across README, `meet`, and skill frontmatter?
179
190
  - Does any skill name the wrong owner?
180
191
 
181
192
  **SA-F08: Enforcement & order consistency**
@@ -242,6 +253,11 @@ Findings:
242
253
  [List of findings]
243
254
 
244
255
  Clean: [list of SA-XX / SA-FXX with no issues]
256
+
257
+ Fix Manifest (only when corrections were requested):
258
+ | Finding | Target document | Exact correction | Validation pair |
259
+ |---|---|---|---|
260
+ | [ID] | `[path]` | [bounded correction] | `[doc A] ↔ [doc B]` |
245
261
  ```
246
262
 
247
263
  If there are no issues:
@@ -250,8 +266,9 @@ If there are no issues:
250
266
  ```
251
267
 
252
268
  **Apply fixes:**
253
- - `fix-then-report` - apply the recommended fixes only if the user task explicitly asks for document corrections.
254
- - `report-first` - show the summary. Show the gate prompt from `../_shared/references/runtime-config.md § Fix Mode Contract`. End the response. Apply fixes only after user confirmation in the next message.
269
+ - Audit-only invocation: report only, regardless of `fixMode`; do not offer a mutation gate unless the user requests corrections.
270
+ - Correction requested + `fix-then-report`: apply actionable corrections, validate all affected document pairs, then report.
271
+ - Correction requested + `report-first`: show the summary and shared gate. On approval, resume directly under the Approval Resume Protocol.
255
272
 
256
273
  ---
257
274
 
@@ -1,19 +1,27 @@
1
1
  ---
2
2
  name: spec-compliance
3
- description: Verify that code matches all project spec documents (PRD.md, architecture.md, schema.md, api.md, rules.md, StyleGuide.md, Task.md). Run after each phase completes, before code-review.
4
- persona: "Fachri"
5
- persona_role: "Tech Lead"
3
+ description: Verifies that code matches all applicable project specs and applies approved compliance fixes. Use after each phase before code-review, on explicit compliance requests, and when the user replies yes, fix, continue, or finding IDs to this skill's report-first gate.
4
+ compatibility: Requires the complete MACCA-METHOD collection with sibling _shared resources and workspace file access.
5
+ metadata:
6
+ persona: "Fachri"
7
+ persona-role: "Tech Lead"
6
8
  ---
7
9
 
8
10
  # Spec Compliance
9
11
 
10
12
  ## Shared Runtime Setup
11
13
 
14
+ Paths written as `../...` below are relative to this SKILL.md's own folder, not the project's working directory - resolve them as a sibling of the folder that contains this file.
15
+
12
16
  Before continuing:
13
17
 
14
- 1. Read `../_shared/references/runtime-config.md`.
15
- 2. Read `codeReviewPreferences.fixMode` from `.agents/developer-config.json`. If it is missing, treat it as `"report-first"`. Announce: `[Fix mode: report-first]` or `[Fix mode: fix-then-report]`. See § Fix Mode Contract in runtime-config.md for the full enforcement rules.
16
- 3. Use `languagePreferences.communication.normalized` for all user-facing reports and review output.
18
+ 1. Read `../_shared/references/language-config.md`.
19
+ 2. Read `../_shared/references/fix-mode.md`.
20
+ 3. Read `../_shared/references/human-loop.md`.
21
+ 4. Read `../_shared/references/finding-format.md`.
22
+ 5. If this message answers this skill's active report-first gate, resume directly under the Approval Resume Protocol. Do not rerun startup or compliance analysis.
23
+ 6. Otherwise, read `codeReviewPreferences.fixMode` from `.agents/developer-config.json`. If it is missing, treat it as `"report-first"`. Announce: `[Fix mode: report-first]` or `[Fix mode: fix-then-report]`.
24
+ 7. Use `languagePreferences.communication.normalized` for all user-facing reports and review output.
17
25
 
18
26
  ---
19
27
 
@@ -41,7 +49,7 @@ You are a **QA Engineer and Spec Auditor** who ensures that no implementation dr
41
49
 
42
50
  ## Fix Mode
43
51
 
44
- Mode is read in Shared Runtime Setup. Enforcement rules, including the required gate prompt, are in `../_shared/references/runtime-config.md § Fix Mode Contract`.
52
+ Mode is read in Shared Runtime Setup. Enforcement rules, including the required gate prompt, are in `../_shared/references/fix-mode.md`.
45
53
 
46
54
  To change it: update `codeReviewPreferences.fixMode` in `.agents/developer-config.json`.
47
55
 
@@ -66,6 +74,8 @@ To change it: update `codeReviewPreferences.fixMode` in `.agents/developer-confi
66
74
  - [ ] Acceptance criteria per feature are met (Given/When/Then from `PRD.md`)
67
75
  - [ ] No features from `PRD.md § Non-Goals` are included
68
76
  - [ ] NFRs are considered: performance, security, accessibility per `PRD.md § Non-Functional Requirements`
77
+ - [ ] If this phase implements analytics or rollout behavior, it matches `PRD.md § Success Metrics and Rollout`; otherwise mark N/A
78
+ - [ ] Failure/degraded behavior implemented by this phase matches the PRD where specified
69
79
  - [ ] If the PRD uses requirement IDs (`FEAT-*`, `BR-*`, etc.), phase code is traceable to the relevant IDs through Task.md
70
80
  - [ ] If changes are not yet in the PRD but are recorded in the active phase plan `## Approved Scope Delta`, DO NOT mark them as scope creep violations for this phase. Note them as `pending formal spec update` if needed.
71
81
 
@@ -87,6 +97,7 @@ To change it: update `codeReviewPreferences.fixMode` in `.agents/developer-confi
87
97
  - [ ] Auth method matches `architecture.md § Authentication & Authorization`
88
98
  - [ ] State management is consistent - do not mix Zustand and Redux
89
99
  - [ ] API type is consistent - REST stays REST, not suddenly GraphQL
100
+ - [ ] Operations, observability, rollback, and recovery constraints touched by this phase follow architecture; otherwise mark N/A
90
101
 
91
102
  **Example findings:**
92
103
  ```
@@ -101,11 +112,12 @@ To change it: update `codeReviewPreferences.fixMode` in `.agents/developer-confi
101
112
 
102
113
  **Read:** `project-context/schema.md`
103
114
 
104
- - [ ] Table/column names match exactly in queries/ORM - no invented names
105
- - [ ] Naming conventions are followed (`schema.md § Global Conventions`) - snake_case, singular/plural
106
- - [ ] Relationships are correct - FKs, cascade delete as defined
107
- - [ ] Soft delete is respected - if using `deleted_at`, do not hard delete
108
- - [ ] Audit fields exist: `created_at`, `updated_at` on relevant models
115
+ - [ ] Persisted entity and field names match the datastore-native contract; no invented names
116
+ - [ ] Naming, identifier, validation, retention, and consistency conventions follow `schema.md`
117
+ - [ ] Relationships/data placement match the selected model: keys, references, embedding, edges, streams, or equivalent
118
+ - [ ] Delete, retention, archival, and projection behavior matches the contract where applicable
119
+ - [ ] Required audit/version fields or event metadata exist where the selected model defines them
120
+ - [ ] Tenant isolation, concurrency, and schema-evolution constraints touched by this phase match `schema.md`; otherwise mark N/A
109
121
  - [ ] PII is handled safely - never logged, never exposed in responses
110
122
  - [ ] If a table has `Trace to`, its usage aligns with the referenced requirement
111
123
 
@@ -122,15 +134,14 @@ To change it: update `codeReviewPreferences.fixMode` in `.agents/developer-confi
122
134
 
123
135
  **Read:** `project-context/api.md`
124
136
 
125
- - [ ] Endpoint paths match the contract exactly - no typos, no version mismatch
126
- - [ ] HTTP methods are correct
127
- - [ ] Request body field names/types match the `api.md` schema
128
- - [ ] Response format (success/error) matches the standard in `api.md`
129
- - [ ] Error codes come only from `api.md § Error Catalog`
130
- - [ ] Pagination follows the `api.md` pattern where applicable
131
- - [ ] Auth headers exist/are correct per `api.md § Authentication`
132
- - [ ] If endpoints have `API-*` IDs, the implementation is traceable to the requirement
133
- - [ ] If a new endpoint is not yet recorded in `api.md` but is listed in `## Approved Scope Delta`, do not mark it as a rogue endpoint for the active phase. Note that a formal spec update is still pending.
137
+ - [ ] Operation identity matches the selected protocol: REST method/path, GraphQL operation, RPC procedure, or event channel/topic
138
+ - [ ] Input arguments/payload fields and types match `api.md`
139
+ - [ ] Success result and error semantics match the protocol-native contract
140
+ - [ ] Pagination/filtering or subscription/delivery behavior follows `api.md` where applicable
141
+ - [ ] Authentication, authorization, idempotency, and replay controls match the contract
142
+ - [ ] Deprecation, retry/timeout, SLO, and contract-test invariants touched by this phase match `api.md`; otherwise mark N/A
143
+ - [ ] `API-*` operations remain traceable to requirements
144
+ - [ ] A new operation listed in `## Approved Scope Delta` is temporary approved scope, not a rogue operation; note pending formal spec sync
134
145
 
135
146
  **Example findings:**
136
147
  ```
@@ -150,6 +161,7 @@ To change it: update `codeReviewPreferences.fixMode` in `.agents/developer-confi
150
161
  - [ ] TypeScript rules are followed: strict, no `any`, no `enum` (if forbidden)
151
162
  - [ ] Code style rules are followed: no `console.log`, early return, max function length
152
163
  - [ ] Security rules are followed: tokens in httpOnly cookies, no secrets in code
164
+ - [ ] Applicable logging, migration, feature-flag, generated-code, and secret-rotation rules are followed
153
165
 
154
166
  **Example findings:**
155
167
  ```
@@ -169,6 +181,7 @@ To change it: update `codeReviewPreferences.fixMode` in `.agents/developer-confi
169
181
  - [ ] Spacing uses the system - no random margin/padding
170
182
  - [ ] Border radius/shadow follow `StyleGuide § Component Style`
171
183
  - [ ] Breakpoints follow `StyleGuide § Responsive & Breakpoints`
184
+ - [ ] Applicable operational states, accessibility, localization, and UI performance constraints are implemented
172
185
 
173
186
  **Example findings:**
174
187
  ```
@@ -190,6 +203,7 @@ To change it: update `codeReviewPreferences.fixMode` in `.agents/developer-confi
190
203
  - [ ] The task is not half-finished - no unfinished work remains
191
204
  - [ ] If the task has traceability IDs, all are valid and point to real upstream artifacts
192
205
  - [ ] If an active phase task implements new scope recorded only in `## Approved Scope Delta`, treat it as valid for the active phase, but mention that syncing into the main spec documents is still pending if not done yet.
206
+ - [ ] Every applicable Phase Definition of Done item has evidence; `N/A` items include a reason
193
207
 
194
208
  **Example findings:**
195
209
  ```
@@ -260,26 +274,15 @@ The report is shown in this session chat. Do not save it to a file unless the us
260
274
  | developer-config.json (scope) | ✅ OK | — |
261
275
  ### Detailed Findings
262
276
  [list findings per item - use the 4-point format below]
263
- ```
264
-
265
- **Format for each finding - MUST use these 4 points. MUST NOT show code:**
266
-
267
- ```markdown
268
- #### [Severity] [ID] [Short Title]
269
277
 
270
- **Where?**
271
- [Page or file name only]
272
-
273
- **What happens if it is not fixed?**
274
- [Explain the impact in simple logic - as if speaking to a user who understands how the app works, not the code. Short and direct.]
275
-
276
- **What happens if it is fixed?**
277
- [Explain the benefit in simple logic. Short and direct.]
278
-
279
- **Recommended fix**
280
- [Explain what needs to change in logic and flow, not code syntax.]
278
+ ### Fix Manifest
279
+ | Finding | Target | Intended change | Validation |
280
+ |---|---|---|---|
281
+ | [ID] | `[path]` | [bounded change] | [compliance check/test] |
281
282
  ```
282
283
 
284
+ Format each finding with the shared `finding-format.md` loaded during setup.
285
+
283
286
  ---
284
287
 
285
288
  ## Execution Rules
@@ -295,8 +298,8 @@ The report is shown in this session chat. Do not save it to a file unless the us
295
298
 
296
299
  **`report-first`:**
297
300
  ```
298
- 💥 BLOCKER / 🔴 MAJOR -> Report all findings. Show the gate prompt (see runtime-config.md § Fix Mode Contract). End the response. Wait for user confirmation in the next message before fixing.
299
- ⚠️ MINOR / ℹ️ INFO -> Only report.
301
+ 💥 BLOCKER / 🔴 MAJOR / ⚠️ actionable MINOR -> Report all findings and the fix manifest. Show one gate. On approval, edit the approved manifest directly, validate, and rerun only affected compliance checks without another gate.
302
+ ℹ️ INFO / non-actionable note -> Report only; do not include it in the fix manifest.
300
303
  ✅ OK -> Continue to the code-review skill.
301
304
  ```
302
305
 
@@ -1,17 +1,21 @@
1
1
  ---
2
2
  name: spec-init
3
- description: Generate all `project-context/` documents from an existing codebase. Supports Batch Generate (all at once) or Guided Generate (one by one with confirmation). Suitable for active projects or boilerplates.
4
- persona: "Fachri"
5
- persona_role: "Tech Lead"
3
+ description: Generates evidence-backed `project-context/` specs from an existing codebase in batch or guided mode, recording confidence and missing decisions. Use only when the user explicitly requests spec bootstrapping or reverse documentation.
4
+ compatibility: Requires the complete MACCA-METHOD collection with sibling _shared resources and workspace file access.
5
+ metadata:
6
+ persona: "Fachri"
7
+ persona-role: "Tech Lead"
6
8
  ---
7
9
 
8
10
  # Spec Init
9
11
 
10
12
  ## Shared Runtime Setup
11
13
 
14
+ Paths written as `../...` below are relative to this SKILL.md's own folder, not the project's working directory - resolve them as a sibling of the folder that contains this file.
15
+
12
16
  Before starting:
13
17
 
14
- 1. Read `../_shared/references/runtime-config.md`.
18
+ 1. Read `../_shared/references/language-config.md`.
15
19
  2. Read `../_shared/references/human-loop.md`.
16
20
  3. Read `../_shared/references/scope-rules.md`.
17
21
  4. Use `languagePreferences.communication.normalized` for chat output and review prompts.
@@ -42,6 +46,8 @@ Every claim carries a **confidence level**:
42
46
 
43
47
  ## Step 0 — Choose a Mode
44
48
 
49
+ Before asking for a mode, inventory the target files in `project-context/`. Never overwrite an existing document implicitly. If any target exists, ask one decision for this run: preserve and skip existing files, regenerate named files, or cancel and review. List every file that would be replaced. This approval applies only to the named files.
50
+
45
51
  Ask the user before starting:
46
52
 
47
53
  ```
@@ -143,11 +149,22 @@ When any Medium or Low confidence exists, also include:
143
149
  - [question that still needs user confirmation]
144
150
  ````
145
151
 
152
+ Every generated document must include unresolved decisions that cannot be observed from code:
153
+
154
+ ````markdown
155
+ ## Missing Decisions
156
+
157
+ | Decision Needed | Why It Cannot Be Inferred | Recommended Owner Skill |
158
+ |-----------------|---------------------------|-------------------------|
159
+ | [decision] | [missing evidence] | `[brainstorm-* skill]` |
160
+ ````
161
+
146
162
  Rules:
147
163
  - Do not mark **High** unless direct evidence exists.
148
164
  - For **Medium**, explain the inference basis briefly.
149
165
  - For **Low**, write it as a question or note, not a final fact.
150
166
  - `PRD.md` usually mixes High and Medium confidence because it is synthesized last from other artifacts.
167
+ - Never infer missing business motivation, rollout, SLO, tenancy, migration, recovery, or operational policy from convention alone. Record it under `Missing Decisions` and route it to the owning brainstorm skill.
151
168
 
152
169
  ---
153
170
 
@@ -216,40 +233,40 @@ Next steps:
216
233
  **Read:** folder structure, `package.json`, config files
217
234
  **Extract:** tech stack, folder structure, database choice, deployment setup, visible design patterns
218
235
  **Add:** `Input Evidence` listing the files and folders used to infer the architecture
219
- **Add if possible:** `Document Role`, `System Boundaries`, `Canonical Terminology`, `ADR Index`, `Assumptions & Open Questions`
236
+ **Add if possible:** `Document Role`, `System Boundaries`, `Canonical Terminology`, `ADR Index`, observed operations/observability/recovery facts, `Assumptions & Open Questions`, `Missing Decisions`
220
237
 
221
238
  ### rules.md
222
239
  **Read:** `.eslintrc*`, `.prettierrc*`, `tsconfig.json`, 2-3 code examples
223
240
  **Extract:** naming conventions in use, indentation, quote style, consistent patterns
224
241
  **Add a `[FORBIDDEN]` section:** From ESLint rules and TypeScript strict settings, extract the 5-10 most critical technical prohibitions into a `[FORBIDDEN]` table format that matches `brainstorm-rules` output.
225
242
  **Add:** `Input Evidence` listing the config files and code examples used
226
- **Add if possible:** `Document Role`, `Rule Priority`, `Assumptions & Exceptions`
243
+ **Add if possible:** `Document Role`, `Rule Priority`, observed conditional operational rules, `Assumptions & Exceptions`, `Missing Decisions`
227
244
 
228
245
  ### schema.md
229
246
  **Read:** `migrations/`, `models/`, `prisma/schema.prisma`, or equivalents
230
- **Extract:** table names, columns, data types, relationships, indexes
247
+ **Extract:** datastore-native entities (tables, collections, aggregates, nodes, streams, or keys), fields/payloads, types, relationships, validation, retention, and indexes/projections
231
248
  **Add:** `Input Evidence` listing the schema sources inspected
232
- **Add if possible:** `Document Role`, `Entity Map`, `Not Yet Modeled / Deferred`, `Assumptions & Open Questions`
249
+ **Add if possible:** `Document Role`, `Entity Map`, observed scale/tenancy/concurrency/migration facts, `Not Yet Modeled / Deferred`, `Assumptions & Open Questions`, `Missing Decisions`
233
250
 
234
251
  ### api.md
235
- **Read:** `routes/`, `controllers/`, `handlers/`, OpenAPI/Swagger if available
236
- **Extract:** method + path for each endpoint, request body, response format, auth requirements
252
+ **Read:** protocol-native routing/integration sources such as `routes/`, `controllers/`, `handlers/`, GraphQL schemas/resolvers, RPC routers, event producers/consumers, and OpenAPI/Swagger if available
253
+ **Extract:** protocol-native operation identity, request/input shape, response/output/event shape, auth requirements, lifecycle/deprecation facts, and reliability signals
237
254
  **Add:** `Input Evidence` listing the routing/controller sources inspected
238
- **Add if possible:** `Document Role`, `Scope Summary`, `Canonical Terminology`, `Endpoint Inventory`, `Assumptions & Open Questions`
255
+ **Add if possible:** `Document Role`, `Scope Summary`, `Canonical Terminology`, operation inventory, observed reliability/deprecation facts, `Assumptions & Open Questions`, `Missing Decisions`
239
256
 
240
257
  ### StyleGuide.md
241
258
  **Read:** `tailwind.config.*`, `components/` folder, main CSS/SCSS files
242
259
  **Extract:** colors in use, existing components, spacing system, fonts
243
260
  **Skip if:** there is no UI folder or the project is backend-only
244
261
  **Add:** `Input Evidence` listing the UI assets inspected
245
- **Add if possible:** `Document Role`, `Supported Surfaces`, `Component Inventory`, `Non-Goals / Not Yet Defined`, `Assumptions & Open Questions`
262
+ **Add if possible:** `Document Role`, `Supported Surfaces`, `Component Inventory`, observed accessibility/operational states, `Non-Goals / Not Yet Defined`, `Assumptions & Open Questions`, `Missing Decisions`
246
263
 
247
264
  ### PRD.md
248
265
  **Do not read new files**. Only synthesize from previous documents.
249
- **Extract:** features already built (from api + schema), business rules from schema constraints, non-goals (features that are *not* present)
266
+ **Extract:** features already built (from API, UI, and schema evidence) and business rules supported by direct constraints or behavior. Treat absent capabilities as `not observed`, `unknown`, or `deferred`; absence is not evidence of an intentional non-goal.
250
267
  **Confidence note:** PRD usually mixes **High** and **Medium**. Do not state business motivation as fact unless it is explicitly visible in the codebase.
251
268
  **Add:** `Input Evidence` referencing the previously generated spec files used for synthesis
252
- **Add if possible:** `Document Role`, `Canonical Terminology`, `Reading Guide for AI`
269
+ **Add if possible:** `Document Role`, `Canonical Terminology`, observed metrics/workarounds, `Reading Guide for AI`, `Missing Decisions`
253
270
 
254
271
  ---
255
272