cfsa-antigravity 2.15.0 → 2.15.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cfsa-antigravity",
3
- "version": "2.15.0",
3
+ "version": "2.15.1",
4
4
  "description": "CFSA Pipeline — Constraint-First Specification Architecture for AI agents. Production-grade from line one.",
5
5
  "scripts": {
6
6
  "changeset": "changeset",
@@ -1,6 +1,6 @@
1
1
  # Kit Sync State
2
2
 
3
3
  upstream: https://github.com/RepairYourTech/cfsa-antigravity
4
- last_synced_commit: 7c5b0504d422958d0c36cf83768a7b12d3a6ab2a
5
- last_synced_at: 2026-03-20T18:30:16Z
6
- kit_version: 2.15.0
4
+ last_synced_commit: b15e8bb8c155e68846530e42720e811e0585ffc6
5
+ last_synced_at: 2026-03-20T23:23:20Z
6
+ kit_version: 2.15.1
@@ -0,0 +1,93 @@
1
+ ---
2
+ description: Before any question or decision, reason about what source documents are relevant, read them, then speak — never ask from summaries alone
3
+ trigger: always_on
4
+ ---
5
+
6
+ # Source Before Ask
7
+
8
+ > Never present a question, decision, or recommendation to the user without first reading the source documents that inform it. Feature names are not features. Summaries are not specs.
9
+
10
+ ## The Rule
11
+
12
+ **Before presenting ANY question, decision, option table, or recommendation to the user:**
13
+
14
+ 1. **Reason about relevance.** Ask yourself: "What domains, features, deep dives, CX files, or specs contain detail that affects THIS specific decision?" Think about second-order connections — a database decision doesn't just touch the "data" domain; it touches every domain that has complex query patterns, real-time sync, or graph relationships.
15
+
16
+ 2. **Read those documents.** Not the summary. Not the index line. The actual source files that contain the architectural detail. If a domain has deep dives (`[DEEP]` or `[EXHAUSTED]` status), read the deep dive files — they contain the information that changes the answer.
17
+
18
+ 3. **Cite what you found.** When presenting the question or decision, reference what you learned: "Based on the diagnostics deep dive, your multi-agent repair flow requires X, which means option A fits better than B because..."
19
+
20
+ 4. **Only then ask.** Now you're asking an informed question that the user can answer without doing your research for you.
21
+
22
+ ## The Per-Decision Research Loop
23
+
24
+ This loop fires for EVERY decision point, not once per workflow:
25
+
26
+ ```
27
+ For each question/decision/recommendation:
28
+ 1. STOP — do not type anything to the user yet
29
+ 2. THINK — what ideation/spec/CX content is relevant to THIS decision?
30
+ - Which domains does this decision affect?
31
+ - Which features have architectural constraints that change the answer?
32
+ - Which cross-cuts create dependencies?
33
+ - Which deep dives contain the detail I need?
34
+ 3. READ — open and read those specific files now
35
+ 4. SYNTHESIZE — what did I learn that affects this decision?
36
+ 5. PRESENT — now ask the question, citing what you found
37
+ ```
38
+
39
+ ## Common Relevance Patterns
40
+
41
+ | Decision Type | What to Read Before Asking |
42
+ |--------------|---------------------------|
43
+ | Frontend framework | Every domain with UI complexity, responsive requirements, offline-first features, real-time updates |
44
+ | Database / persistence | Every domain with complex data relationships, sync requirements, search patterns, graph traversals |
45
+ | AI/ML framework | Every domain that mentions AI, ML, diagnostics, recommendations, automation, agents |
46
+ | Auth / security | Every domain's role matrix, CX files for cross-domain permission boundaries |
47
+ | API design | Every domain's CX files for cross-domain data flow, every deep dive with integration points |
48
+ | Deployment / hosting | Constraints file, every surface's performance requirements, offline capabilities |
49
+ | State management | Every domain with real-time features, collaborative editing, optimistic updates |
50
+ | Caching strategy | Every domain's query patterns, hot paths, data freshness requirements |
51
+
52
+ ## Why
53
+
54
+ | Without this rule | With this rule |
55
+ |---|---|
56
+ | Agent asks "which database?" based on a MoSCoW bullet | Agent reads the graph traversal deep dive and knows you need a graph-capable store |
57
+ | User has to say "go read the docs" 15 times per session | Agent arrives at each question already informed |
58
+ | Decisions feel generic — could apply to any project | Decisions are grounded in YOUR project's specific architecture |
59
+ | Context evaporates after Step 0.5's bulk loading | Context is refreshed per-decision, exactly when it matters |
60
+ | Agent asks questions the ideation already answered | Agent knows what's been decided and asks only what's open |
61
+
62
+ ## Applies To
63
+
64
+ **Every pipeline stage.** This is not limited to `/create-prd`:
65
+
66
+ | Stage | What This Means |
67
+ |-------|----------------|
68
+ | `/create-prd-stack` | Before each axis question, read the domains that axis touches |
69
+ | `/create-prd-architecture` | Before each component design, read the domains that component serves |
70
+ | `/create-prd-security` | Before each security item, read the role matrices and CX trust boundaries |
71
+ | `/write-architecture-spec` | Before each interaction design, read the relevant domain deep dives |
72
+ | `/write-be-spec` | Before each endpoint design, read the IA shard interactions that endpoint serves |
73
+ | `/write-fe-spec` | Before each component spec, read the BE endpoints and IA interactions it consumes |
74
+ | `/implement-slice` | Before each implementation decision, read the relevant specs |
75
+
76
+ ## What Gets Flagged
77
+
78
+ | Pattern | Verdict |
79
+ |---------|---------|
80
+ | "Which database do you prefer?" without reading any domain files | ❌ Rejected. Read the domains first — the answer might be obvious. |
81
+ | Presenting 3 framework options with generic pros/cons | ❌ Rejected. Pros/cons must reference THIS project's specific needs. |
82
+ | Asking a question the ideation deep dives already answered | ❌ Rejected. Read before asking. |
83
+ | "Based on your diagnostics domain's multi-agent flow, you need X" | ✅ Correct. Informed by source material. |
84
+ | Citing specific CX dependencies when recommending architecture | ✅ Correct. Research before recommendation. |
85
+ | Re-reading a deep dive mid-workflow because THIS question needs it | ✅ Correct. Per-decision freshness. |
86
+
87
+ ## The Litmus Test
88
+
89
+ Before sending any question to the user, ask yourself:
90
+
91
+ > **"Could a user reasonably respond: 'Did you even read my ideation docs?'"**
92
+
93
+ If the answer is yes — you didn't do this rule. Stop. Read. Then ask.
@@ -71,14 +71,15 @@ Read .agent/skills/tech-stack-catalog/SKILL.md and follow its per-axis constrain
71
71
  Score Fit from 1–5 based on how well the option matches the constraints map. If constraints eliminate all but 1-2 options, present only those with a note explaining why others were eliminated.
72
72
 
73
73
  **Per-axis flow**:
74
- 1. Ask the constraint questions for this axis
75
- 2. Filter options based on answers
76
- 3. Present the filtered option table with recommendation
77
- 4. Follow the decision confirmation protocol (`.agent/skills/prd-templates/references/decision-confirmation-protocol.md`) tier-aware.
78
- 5. Fire bootstrap with only that key: read `.agent/workflows/bootstrap-agents.md` and call with `PIPELINE_STAGE=create-prd` + the confirmed key. **HARD GATE**: Follow the bootstrap verification protocol (`.agent/skills/prd-templates/references/bootstrap-verification-protocol.md`). If bootstrap verification fails:
74
+ 1. **Apply rule `source-before-ask`**: Before this axis, reason about which ideation domains, deep dives, and CX files are relevant to THIS specific technology decision. Read those files now. Do NOT proceed to the constraint questions until you have read the relevant source material and can cite specific architectural details from the ideation output.
75
+ 2. Ask the constraint questions for this axis
76
+ 3. Filter options based on answers
77
+ 4. Present the filtered option table with recommendation — **citing specific ideation details** that informed your recommendation (e.g., "Based on the diagnostics deep dive's multi-agent coordination pattern, you need X")
78
+ 5. Follow the decision confirmation protocol (`.agent/skills/prd-templates/references/decision-confirmation-protocol.md`) tier-aware.
79
+ 6. Fire bootstrap with only that key: read `.agent/workflows/bootstrap-agents.md` and call with `PIPELINE_STAGE=create-prd` + the confirmed key. **HARD GATE**: Follow the bootstrap verification protocol (`.agent/skills/prd-templates/references/bootstrap-verification-protocol.md`). If bootstrap verification fails:
79
80
  - **1st failure** → retry bootstrap once with the same key
80
81
  - **2nd failure** → **STOP**: tell the user which key failed verification and ask: "Retry, skip this skill provisioning, or abort?"
81
- 6. Move to next axis
82
+ 7. Move to next axis
82
83
 
83
84
  > **Note on backend axis bootstrap keys**: `BACKEND_FRAMEWORK` and `API_LAYER` are distinct bootstrap keys and must each fire as a separate `/bootstrap-agents` call — do not combine them.
84
85
  > - `BACKEND_FRAMEWORK` (e.g., `Hono`, `FastAPI`, `NestJS`) → provisions the backend framework skill
@@ -148,6 +148,7 @@ Rules in `.agent/rules/` are **always active** — they apply to every task, eve
148
148
  | 🗣️ [question-vs-command](.agent/rules/question-vs-command.md) | Questions = discuss, Commands = act, Ambiguous = ask |
149
149
  | 🎯 [decision-classification](.agent/rules/decision-classification.md) | Product = user, Architecture = options, Implementation = agent |
150
150
  | ✅ [completion-checklist](.agent/rules/completion-checklist.md) | Code ≠ done. Code + tests + tracking = done |
151
+ | 📖 [source-before-ask](.agent/rules/source-before-ask.md) | Read relevant source docs before every question — no decisions from summaries |
151
152
 
152
153
  ### Installed Skills
153
154
 
@@ -132,6 +132,7 @@ Rules in `.agent/rules/` are **always active** — they apply to every task, eve
132
132
  | 🔢 [single-question](.agent/rules/single-question.md) | One question at a time, options + pros/cons + recommendation |
133
133
  | 🐛 [debug-by-test](.agent/rules/debug-by-test.md) | Failing test before any fix — reproduce first, fix second |
134
134
  | 🔍 [skill-mcp-first](.agent/rules/skill-mcp-first.md) | Check skills and MCPs before reasoning on your own |
135
+ | 📖 [source-before-ask](.agent/rules/source-before-ask.md) | Read relevant source docs before every question — no decisions from summaries |
135
136
 
136
137
  ### Installed Skills
137
138