@bonesofspring/ai-rules 0.2.19 → 0.2.20

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 (182) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/package.json +1 -1
  3. package/presets/_shared/README.md +3 -3
  4. package/presets/_shared/core/agent-team/task-classification.md +21 -0
  5. package/presets/_shared/core/quality/debug-investigation.md +24 -0
  6. package/presets/_shared/core/quality/verification-before-completion.md +25 -0
  7. package/presets/_shared/core/review/receiving-code-review.md +24 -0
  8. package/presets/claude/android-kotlin/agents/build-verifier.md +6 -0
  9. package/presets/claude/android-kotlin/agents/ci-investigator.md +1 -0
  10. package/presets/claude/android-kotlin/agents/code-reviewer.md +2 -0
  11. package/presets/claude/android-kotlin/agents/debugger.md +5 -0
  12. package/presets/claude/android-kotlin/agents/feature-developer.md +7 -0
  13. package/presets/claude/android-kotlin/agents/task-analyst.md +10 -0
  14. package/presets/claude/android-kotlin/agents/task-router.md +14 -0
  15. package/presets/claude/android-kotlin/skills/code-review/SKILL.md +6 -0
  16. package/presets/claude/android-kotlin/skills/debug-investigation/SKILL.md +33 -5
  17. package/presets/claude/go/agents/build-verifier.md +6 -0
  18. package/presets/claude/go/agents/ci-investigator.md +1 -0
  19. package/presets/claude/go/agents/code-reviewer.md +2 -0
  20. package/presets/claude/go/agents/debugger.md +7 -0
  21. package/presets/claude/go/agents/feature-developer.md +7 -0
  22. package/presets/claude/go/agents/task-analyst.md +10 -0
  23. package/presets/claude/go/agents/task-router.md +14 -0
  24. package/presets/claude/go/skills/code-review/SKILL.md +6 -0
  25. package/presets/claude/go/skills/debug-investigation/SKILL.md +32 -4
  26. package/presets/claude/ios-swift/agents/build-verifier.md +6 -0
  27. package/presets/claude/ios-swift/agents/ci-investigator.md +1 -0
  28. package/presets/claude/ios-swift/agents/code-reviewer.md +2 -0
  29. package/presets/claude/ios-swift/agents/debugger.md +5 -0
  30. package/presets/claude/ios-swift/agents/feature-developer.md +7 -0
  31. package/presets/claude/ios-swift/agents/task-analyst.md +10 -0
  32. package/presets/claude/ios-swift/agents/task-router.md +14 -0
  33. package/presets/claude/ios-swift/skills/code-review/SKILL.md +6 -0
  34. package/presets/claude/ios-swift/skills/debug-investigation/SKILL.md +33 -5
  35. package/presets/claude/java/agents/build-verifier.md +6 -0
  36. package/presets/claude/java/agents/ci-investigator.md +1 -0
  37. package/presets/claude/java/agents/code-reviewer.md +2 -0
  38. package/presets/claude/java/agents/debugger.md +7 -0
  39. package/presets/claude/java/agents/feature-developer.md +7 -0
  40. package/presets/claude/java/agents/task-analyst.md +10 -0
  41. package/presets/claude/java/agents/task-router.md +14 -0
  42. package/presets/claude/java/skills/code-review/SKILL.md +6 -0
  43. package/presets/claude/java/skills/debug-investigation/SKILL.md +32 -4
  44. package/presets/claude/mcp-ts/agents/build-verifier.md +6 -0
  45. package/presets/claude/mcp-ts/agents/feature-developer.md +7 -0
  46. package/presets/claude/mcp-ts/agents/task-analyst.md +10 -0
  47. package/presets/claude/mcp-ts/agents/task-router.md +14 -0
  48. package/presets/claude/mcp-ts/skills/code-review/SKILL.md +6 -0
  49. package/presets/claude/mcp-ts/skills/debug-investigation/SKILL.md +31 -3
  50. package/presets/claude/next/agents/build-verifier.md +6 -0
  51. package/presets/claude/next/agents/ci-investigator.md +1 -0
  52. package/presets/claude/next/agents/code-reviewer.md +2 -0
  53. package/presets/claude/next/agents/debugger.md +5 -0
  54. package/presets/claude/next/agents/feature-developer.md +7 -0
  55. package/presets/claude/next/agents/task-analyst.md +11 -1
  56. package/presets/claude/next/agents/task-router.md +14 -0
  57. package/presets/claude/next/skills/code-review/SKILL.md +6 -0
  58. package/presets/claude/next/skills/debug-investigation/SKILL.md +29 -14
  59. package/presets/claude/nuxt/agents/build-verifier.md +6 -0
  60. package/presets/claude/nuxt/agents/ci-investigator.md +1 -0
  61. package/presets/claude/nuxt/agents/code-reviewer.md +2 -0
  62. package/presets/claude/nuxt/agents/debugger.md +5 -0
  63. package/presets/claude/nuxt/agents/feature-developer.md +7 -0
  64. package/presets/claude/nuxt/agents/task-analyst.md +11 -1
  65. package/presets/claude/nuxt/agents/task-router.md +14 -0
  66. package/presets/claude/nuxt/skills/code-review/SKILL.md +6 -0
  67. package/presets/claude/nuxt/skills/debug-investigation/SKILL.md +29 -12
  68. package/presets/claude/php-hexagonal/agents/build-verifier.md +6 -0
  69. package/presets/claude/php-hexagonal/agents/ci-investigator.md +1 -0
  70. package/presets/claude/php-hexagonal/agents/code-reviewer.md +2 -0
  71. package/presets/claude/php-hexagonal/agents/debugger.md +7 -0
  72. package/presets/claude/php-hexagonal/agents/feature-developer.md +7 -0
  73. package/presets/claude/php-hexagonal/agents/task-analyst.md +10 -0
  74. package/presets/claude/php-hexagonal/agents/task-router.md +14 -0
  75. package/presets/claude/php-hexagonal/skills/code-review/SKILL.md +6 -0
  76. package/presets/claude/php-hexagonal/skills/debug-investigation/SKILL.md +32 -4
  77. package/presets/claude/php-laravel/agents/build-verifier.md +6 -0
  78. package/presets/claude/php-laravel/agents/ci-investigator.md +1 -0
  79. package/presets/claude/php-laravel/agents/code-reviewer.md +2 -0
  80. package/presets/claude/php-laravel/agents/debugger.md +7 -0
  81. package/presets/claude/php-laravel/agents/feature-developer.md +7 -0
  82. package/presets/claude/php-laravel/agents/task-analyst.md +10 -0
  83. package/presets/claude/php-laravel/agents/task-router.md +14 -0
  84. package/presets/claude/php-laravel/skills/code-review/SKILL.md +6 -0
  85. package/presets/claude/php-laravel/skills/debug-investigation/SKILL.md +32 -4
  86. package/presets/claude/svelte/agents/build-verifier.md +6 -0
  87. package/presets/claude/svelte/agents/ci-investigator.md +1 -0
  88. package/presets/claude/svelte/agents/code-reviewer.md +2 -0
  89. package/presets/claude/svelte/agents/debugger.md +5 -0
  90. package/presets/claude/svelte/agents/feature-developer.md +7 -0
  91. package/presets/claude/svelte/agents/task-analyst.md +11 -1
  92. package/presets/claude/svelte/agents/task-router.md +14 -0
  93. package/presets/claude/svelte/skills/code-review/SKILL.md +6 -0
  94. package/presets/claude/svelte/skills/debug-investigation/SKILL.md +29 -12
  95. package/presets/cursor/android-kotlin/agents/build-verifier.md +6 -0
  96. package/presets/cursor/android-kotlin/agents/ci-investigator.md +1 -0
  97. package/presets/cursor/android-kotlin/agents/code-reviewer.md +2 -0
  98. package/presets/cursor/android-kotlin/agents/debugger.md +5 -0
  99. package/presets/cursor/android-kotlin/agents/feature-developer.md +7 -0
  100. package/presets/cursor/android-kotlin/agents/task-analyst.md +10 -0
  101. package/presets/cursor/android-kotlin/agents/task-router.md +14 -0
  102. package/presets/cursor/android-kotlin/skills/code-review/SKILL.md +6 -0
  103. package/presets/cursor/android-kotlin/skills/debug-investigation/SKILL.md +33 -5
  104. package/presets/cursor/go/agents/build-verifier.md +6 -0
  105. package/presets/cursor/go/agents/ci-investigator.md +1 -0
  106. package/presets/cursor/go/agents/code-reviewer.md +2 -0
  107. package/presets/cursor/go/agents/debugger.md +7 -0
  108. package/presets/cursor/go/agents/feature-developer.md +7 -0
  109. package/presets/cursor/go/agents/task-analyst.md +10 -0
  110. package/presets/cursor/go/agents/task-router.md +14 -0
  111. package/presets/cursor/go/skills/code-review/SKILL.md +6 -0
  112. package/presets/cursor/go/skills/debug-investigation/SKILL.md +32 -4
  113. package/presets/cursor/ios-swift/agents/build-verifier.md +6 -0
  114. package/presets/cursor/ios-swift/agents/ci-investigator.md +1 -0
  115. package/presets/cursor/ios-swift/agents/code-reviewer.md +2 -0
  116. package/presets/cursor/ios-swift/agents/debugger.md +5 -0
  117. package/presets/cursor/ios-swift/agents/feature-developer.md +7 -0
  118. package/presets/cursor/ios-swift/agents/task-analyst.md +10 -0
  119. package/presets/cursor/ios-swift/agents/task-router.md +14 -0
  120. package/presets/cursor/ios-swift/skills/code-review/SKILL.md +6 -0
  121. package/presets/cursor/ios-swift/skills/debug-investigation/SKILL.md +33 -5
  122. package/presets/cursor/java/agents/build-verifier.md +6 -0
  123. package/presets/cursor/java/agents/ci-investigator.md +1 -0
  124. package/presets/cursor/java/agents/code-reviewer.md +2 -0
  125. package/presets/cursor/java/agents/debugger.md +7 -0
  126. package/presets/cursor/java/agents/feature-developer.md +7 -0
  127. package/presets/cursor/java/agents/task-analyst.md +10 -0
  128. package/presets/cursor/java/agents/task-router.md +14 -0
  129. package/presets/cursor/java/skills/code-review/SKILL.md +6 -0
  130. package/presets/cursor/java/skills/debug-investigation/SKILL.md +32 -4
  131. package/presets/cursor/mcp-ts/agents/build-verifier.md +6 -0
  132. package/presets/cursor/mcp-ts/agents/feature-developer.md +7 -0
  133. package/presets/cursor/mcp-ts/agents/task-analyst.md +10 -0
  134. package/presets/cursor/mcp-ts/agents/task-router.md +14 -0
  135. package/presets/cursor/mcp-ts/skills/code-review/SKILL.md +6 -0
  136. package/presets/cursor/mcp-ts/skills/debug-investigation/SKILL.md +31 -3
  137. package/presets/cursor/next/agents/build-verifier.md +6 -0
  138. package/presets/cursor/next/agents/ci-investigator.md +1 -0
  139. package/presets/cursor/next/agents/code-reviewer.md +2 -0
  140. package/presets/cursor/next/agents/debugger.md +5 -0
  141. package/presets/cursor/next/agents/feature-developer.md +7 -0
  142. package/presets/cursor/next/agents/task-analyst.md +11 -1
  143. package/presets/cursor/next/agents/task-router.md +14 -0
  144. package/presets/cursor/next/skills/code-review/SKILL.md +6 -0
  145. package/presets/cursor/next/skills/debug-investigation/SKILL.md +29 -14
  146. package/presets/cursor/nuxt/agents/build-verifier.md +6 -0
  147. package/presets/cursor/nuxt/agents/ci-investigator.md +1 -0
  148. package/presets/cursor/nuxt/agents/code-reviewer.md +2 -0
  149. package/presets/cursor/nuxt/agents/debugger.md +5 -0
  150. package/presets/cursor/nuxt/agents/feature-developer.md +7 -0
  151. package/presets/cursor/nuxt/agents/task-analyst.md +11 -1
  152. package/presets/cursor/nuxt/agents/task-router.md +14 -0
  153. package/presets/cursor/nuxt/skills/code-review/SKILL.md +6 -0
  154. package/presets/cursor/nuxt/skills/debug-investigation/SKILL.md +29 -12
  155. package/presets/cursor/php-hexagonal/agents/build-verifier.md +6 -0
  156. package/presets/cursor/php-hexagonal/agents/ci-investigator.md +1 -0
  157. package/presets/cursor/php-hexagonal/agents/code-reviewer.md +2 -0
  158. package/presets/cursor/php-hexagonal/agents/debugger.md +7 -0
  159. package/presets/cursor/php-hexagonal/agents/feature-developer.md +7 -0
  160. package/presets/cursor/php-hexagonal/agents/task-analyst.md +10 -0
  161. package/presets/cursor/php-hexagonal/agents/task-router.md +14 -0
  162. package/presets/cursor/php-hexagonal/skills/code-review/SKILL.md +6 -0
  163. package/presets/cursor/php-hexagonal/skills/debug-investigation/SKILL.md +32 -4
  164. package/presets/cursor/php-laravel/agents/build-verifier.md +6 -0
  165. package/presets/cursor/php-laravel/agents/ci-investigator.md +1 -0
  166. package/presets/cursor/php-laravel/agents/code-reviewer.md +2 -0
  167. package/presets/cursor/php-laravel/agents/debugger.md +7 -0
  168. package/presets/cursor/php-laravel/agents/feature-developer.md +7 -0
  169. package/presets/cursor/php-laravel/agents/task-analyst.md +10 -0
  170. package/presets/cursor/php-laravel/agents/task-router.md +14 -0
  171. package/presets/cursor/php-laravel/skills/code-review/SKILL.md +6 -0
  172. package/presets/cursor/php-laravel/skills/debug-investigation/SKILL.md +32 -4
  173. package/presets/cursor/svelte/agents/build-verifier.md +6 -0
  174. package/presets/cursor/svelte/agents/ci-investigator.md +1 -0
  175. package/presets/cursor/svelte/agents/code-reviewer.md +2 -0
  176. package/presets/cursor/svelte/agents/debugger.md +5 -0
  177. package/presets/cursor/svelte/agents/feature-developer.md +7 -0
  178. package/presets/cursor/svelte/agents/task-analyst.md +11 -1
  179. package/presets/cursor/svelte/agents/task-router.md +14 -0
  180. package/presets/cursor/svelte/skills/code-review/SKILL.md +6 -0
  181. package/presets/cursor/svelte/skills/debug-investigation/SKILL.md +29 -12
  182. package/scripts/check-shared-core-drift.sh +6 -0
package/CHANGELOG.md CHANGED
@@ -2,8 +2,22 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ### Superpowers B1–B5 (all installable stacks)
6
+
7
+ - All 10 stacks (Cursor + Claude): **verification-before-completion** lineage snippet on `build-verifier` / `feature-developer` only. `debugger` keeps inline 3-fix + `fixApplied` re-run (skill cross-ref) — not the verification stem. **receiving-code-review** embed on `code-review` skill; implementer one-liner on `feature-developer`, `debugger`, and `ci-investigator` (where those agents exist). Debug skill 4-phase + 3-fix architecture gate; task-analyst/router classify spike / bounded / architectural onto **existing** pipeline profiles.
8
+ - Drift CI: `quality/debug-investigation.md` is **embed** (skill body = core + `## Stack notes`). `verification-before-completion`, `receiving-code-review`, and `task-classification` are **lineage** (section snippets in fat agents — whole-file embed would fail). `mcp-ts` has no `debugger` / `code-reviewer` / `ci-investigator` agents; B1/B2 via skill + `feature-developer` (+ `build-verifier` for B1); B3 via `debug-investigation` skill; B4 on task-analyst/router.
9
+ - Skill-authoring craft (SDO, positive recipes, ~500-line cap) lives in `docs/PRESET-CONTRIBUTION.md` (not installed by `init`).
10
+ - No 4th always-on rule; `anti-sycophancy-discipline` core body unchanged (promote receiving-CR there in a later 10-stack PR).
11
+ - Consumers: re-run `npx @bonesofspring/ai-rules init cursor|claude --preset <stack>` after publish.
12
+
5
13
  Grouping for the next npm cut: **(A)** post-`0.2.18` delta — MCP merge, spec P0/P1, hook-only lifecycle, and the review follow-up below; **(B)** sections after MCP (UX, mockup reviewer, product-specs, android-kotlin, nuxt/svelte/php-laravel, …) were already Unreleased **on the `v0.2.18` tag** and were never versioned.
6
14
 
15
+ ### Follow-up: Superpowers B1–B5 review alignment
16
+
17
+ - CHANGELOG/SoT match PRESET-CONTRIBUTION: verification lineage is `build-verifier` + `feature-developer`; debugger 3-fix stays inline (no verification marker).
18
+ - receiving-CR implementer one-liner extended to `debugger` and `ci-investigator` (9 stacks × 2; mcp-ts has neither).
19
+ - Backend `debugger` agents (`go` / `java` / `php-hexagonal` / `php-laravel`, Cursor + Claude) now load `debug-investigation` at the top, matching UI/mobile.
20
+
7
21
  ### Follow-up: review fixes (lifecycle, MCP merge, docs)
8
22
 
9
23
  - Hook-only lifecycle sweep: 22 ios-swift agents, 8 next/nuxt/svelte/ios `code-review` skills, 5 Claude `feature-continue` commands, Claude Playwright generators, and backend `code-review` skills upsert `artifact-manifest.json` receipts and must not mutate `status.json`. New hard gate `check:hook-only-lifecycle` (wired into `check:preset-structure`).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bonesofspring/ai-rules",
3
- "version": "0.2.19",
3
+ "version": "0.2.20",
4
4
  "description": "Presets of Cursor and Claude rules/commands for Revy Ross personal use",
5
5
  "license": "MIT",
6
6
  "author": "Revy Ross",
@@ -36,10 +36,10 @@ Do **not** expect lineage adapters to byte-match core. Embed adapters should mat
36
36
 
37
37
  | Dir | Contents |
38
38
  |-----|----------|
39
- | `core/quality/` | Boy-scout + Principles (always-on slim); requestable `anti-sycophancy-discipline` (~17 rules); requestable `design-guidance` (smells ≤12 + GoF ≤8); requestable `mcp-usage` (Context7 + local overlay MCP) |
40
- | `core/agent-team/` | Orchestrator + intake (pipeline language) |
39
+ | `core/quality/` | Boy-scout + Principles (always-on slim); requestable `anti-sycophancy-discipline` (~17 rules); requestable `design-guidance` (smells ≤12 + GoF ≤8); requestable `mcp-usage`; embed `debug-investigation`; lineage `verification-before-completion` |
40
+ | `core/agent-team/` | Orchestrator + intake (pipeline language); lineage `task-classification` |
41
41
  | `core/architecture/` | Feature-delivery abstract + reference-features template + product-specs (+ product-specs-authoring) + assets/docs-specs templates |
42
- | `core/review/` | Code-review MR + technical-retro alias + mockup-review checklist + ux-design checklist |
42
+ | `core/review/` | Code-review MR + technical-retro alias + mockup-review checklist + ux-design checklist; lineage `receiving-code-review` |
43
43
  | `core/meta/` | Author-facing preset meta-rules |
44
44
 
45
45
  ## CLI note
@@ -0,0 +1,21 @@
1
+ # Task classification (spike / bounded / architectural)
2
+
3
+ Stack-agnostic. Classify **before** decomposing work or expanding a pipeline. This maps onto existing `pipeline.json` **profiles** (`light` / `standard` / `full`) and intents — do **not** invent a second orchestrator.
4
+
5
+ ## Classes
6
+
7
+ | Class | Signals | Pipeline posture |
8
+ |-------|---------|------------------|
9
+ | **Spike** | Research, estimate, "can we", no ship | Existing `spike` intent: analyst → architect (or analyst-only). No `feature-developer` until a later task. |
10
+ | **Bounded** | One layer or file, explicit AC, typo / small fix | Existing `light` (or skip analyst fan-out). Do **not** invent a full types/api/store/ui task table. |
11
+ | **Architectural** | New subsystem, public contract, cross-layer | Existing `full`. Add `solution-architect` when boundaries are unclear. |
12
+
13
+ Ratchet **up** if bounded work reveals architectural scope. Do not ratchet **down** to skip a needed verification gate (`build-verifier` after code changes still applies).
14
+
15
+ ## Clarification
16
+
17
+ Prefer **one** unblocking question per message when a single decision unblocks DoR. Never more than **3** questions per iteration (existing analyst cap).
18
+
19
+ ## Router
20
+
21
+ `task-router` already chooses profiles from complexity signals. Use this table to **name** the class in `routingReasons` / brief assumptions — do not add parallel step lists that contradict the intent table.
@@ -0,0 +1,24 @@
1
+ # Debug investigation
2
+
3
+ Stack-agnostic root-cause loop. Consumed by skill `debug-investigation` and agent `debugger`. Platform paths, MCP, and stack commands belong in adapter **Stack notes**.
4
+
5
+ ## When
6
+
7
+ Any bug, test failure, build failure, or unexpected behavior — **before** proposing a fix.
8
+
9
+ ## Phases (in order)
10
+
11
+ 1. **Evidence** — reproduce, or collect the closest evidence (error output, failing test, logs, user steps).
12
+ 2. **Isolate** — expected vs actual in one sentence; smallest relevant slice of the codebase.
13
+ 3. **Root cause** — name the cause before editing. One hypothesis at a time; do not stack speculative fixes.
14
+ 4. **Minimal fix + verify** — smallest change that preserves architecture and public contracts. Add a regression test when the behavior is user-facing or likely to recur. Re-run the **failing** check first, then the relevant lint/type/test slice.
15
+
16
+ ## 3-fix architecture gate
17
+
18
+ If **three** fix attempts fail, or the same symptom returns after two supposed fixes: **STOP**. Do not attempt fix #4. Escalate — the design is likely wrong (human partner or `solution-architect`). Chasing symptoms is the failure mode.
19
+
20
+ ## Do not
21
+
22
+ - Broad refactor during a bugfix.
23
+ - Fix only where the error surfaces if invalid data originates elsewhere.
24
+ - Claim `fixApplied: true` without re-running the failing check (see `quality/verification-before-completion.md`).
@@ -0,0 +1,25 @@
1
+ # Verification before completion
2
+
3
+ Stack-agnostic evidence gate. Requestable via agents (`feature-developer`, `build-verifier`, `debugger`) — **not** always-on.
4
+
5
+ Do not claim done, fixed, passing, or verified without **fresh command evidence in the same turn**.
6
+
7
+ ## Gate (in order)
8
+
9
+ 1. **IDENTIFY** the command that would falsify the claim (test, lint, type-check, or the preset-structure script named in the task).
10
+ 2. **RUN** it now. Do not reuse a previous agent's "it passed" as proof.
11
+ 3. **READ** the full output and the exit code.
12
+ 4. **VERIFY** the output matches the claim (count failures; do not skim).
13
+ 5. **THEN claim** — name the command and the result. If it failed, report the actual state.
14
+
15
+ ## Forbidden
16
+
17
+ - Success words (`done`, `all fixed`, `looks good`, `should pass`) without output in the same message.
18
+ - Treating lint as a substitute for tests when the claim is behavioral.
19
+ - Skipping the failing check after a bugfix.
20
+
21
+ ## Who runs what
22
+
23
+ - **feature-developer:** scoped checks named in the task (changed-file lint/tests). Full-project gates belong to `build-verifier`.
24
+ - **build-verifier:** the pipeline commands; record exit codes in `validation-report.md`.
25
+ - **debugger:** re-run the failing check after a minimal fix before `fixApplied: true`.
@@ -0,0 +1,24 @@
1
+ # Receiving code review
2
+
3
+ Stack-agnostic. For **implementers** acting on feedback (human comments or pipeline `changes_requested`). Distinct from **issuing** a review (`code-review` skill / `code-reviewer` agent).
4
+
5
+ Complements `quality/anti-sycophancy-discipline.md` §11 and §17. Do **not** duplicate this essay into always-on rules.
6
+
7
+ ## Process
8
+
9
+ 1. Read the complete feedback before changing code.
10
+ 2. Restate each item as a technical requirement. If any item is unclear, ask — do not implement a guess.
11
+ 3. Verify the claim against the codebase. Reviewers can be wrong (wrong file, stale API, YAGNI expansion).
12
+ 4. Push back with evidence when a suggestion adds unused abstraction or contradicts stack boundaries.
13
+ 5. Implement agreed items one at a time; keep tests green per item when the change is logic.
14
+
15
+ ## Forbidden
16
+
17
+ Performative agreement: `You're absolutely right!`, `Great point!`, `Thanks for catching that!`
18
+
19
+ Respond with what changed (`path:line`) or a factual disagreement. No gratitude theater.
20
+
21
+ ## Sources
22
+
23
+ - **Human partner:** clarify, then act.
24
+ - **Pipeline / automated review:** the same verification bar; do not rubber-stamp.
@@ -25,6 +25,12 @@ You **validate** Android/Kotlin implementation quality — do not edit productio
25
25
 
26
26
  Never require Playwright, XCUITest, `xcodebuild`, or yarn `lint:js`/`lint:css` for Android app work.
27
27
 
28
+ ## Verification before completion
29
+
30
+ <!-- shared-core: quality/verification-before-completion.md -->
31
+
32
+ Before writing `validation-report.md` or claiming PASS: IDENTIFY the commands, RUN them, READ exit codes, VERIFY they match the verdict, THEN claim. Do not mark PASS from memory of a prior developer run.
33
+
28
34
  ## Preset-structure validation (when scope is preset / packages/ai-rules)
29
35
 
30
36
  When validating **android-kotlin preset** changes (or `scope: preset-structure-validation`), **also** run these checks. Skip Gradle app builds if there are **no** Android app changes.
@@ -80,3 +80,4 @@ Provide summary: failed check, root cause, files changed, validation commands ru
80
80
  ## Anti-sycophancy discipline
81
81
 
82
82
  - When writing or changing code, load / follow rule `anti-sycophancy-discipline`.
83
+ - When acting on review feedback (`changes_requested` / human comments): verify each item against the codebase before implementing; no performative agreement.
@@ -16,6 +16,8 @@ You are a senior Android / Kotlin / Jetpack Compose code reviewer. You may write
16
16
 
17
17
  Apply the **`code-review` skill** and `tooling-and-review/code-review.md` checklist. Also weigh `architecture/boundaries.md`, `stack/kotlin-conventions.md`, `ui-and-accessibility/compose.md`, `api-and-data/networking.md`, `testing/unit.md`, `testing/ui.md`.
18
18
 
19
+ You **issue** reviews. Implementers acting on your findings must verify each item against the codebase and must not perform agreement. Do not require gratitude in replies.
20
+
19
21
  ## Review focus (Android)
20
22
 
21
23
  - If the MR touches `docs/specs/**`, load **`product-specs`** (+ **`product-specs-authoring`** when new/changed specs): **WARN** code/spec drift; **FAIL** broken INDEX `path` link or missing required frontmatter keys/arrays on touched spec files; required body headings missing → **FAIL** on touched files. Do not invent missing product behavior.
@@ -58,6 +58,10 @@ fixApplied: false
58
58
  Write the owned terminal receipt described under **Artifact contract**.
59
59
 
60
60
 
61
+ ## 3-fix architecture gate
62
+
63
+ After **three** unsuccessful fix attempts (or the same symptom returning twice): STOP. Do not attempt fix #4. Escalate architecture with the human or `solution-architect`. Follow skill `debug-investigation`. Before `fixApplied: true`, re-run the failing check.
64
+
61
65
  ## MCP usage
62
66
 
63
67
  Load requestable rule `mcp-usage` when verifying third-party library APIs (Context7) or when a local overlay MCP is present and the task fits. Discover tools at runtime; do not invent schemas. Overlay absence is not a blocker unless the user required that MCP as source of truth.
@@ -83,3 +87,4 @@ Do not perform formal code review or write Android instrumentation plans — tho
83
87
  ## Anti-sycophancy discipline
84
88
 
85
89
  - When writing or changing code, load / follow rule `anti-sycophancy-discipline`.
90
+ - When acting on review feedback (`changes_requested` / human comments): verify each item against the codebase before implementing; no performative agreement.
@@ -54,6 +54,13 @@ Emit the owned implementation receipt with outcome `completed`. Handoff by layer
54
54
  ## Anti-sycophancy discipline
55
55
 
56
56
  - When writing or changing code, load / follow rule `anti-sycophancy-discipline`.
57
+ - When acting on review feedback (`changes_requested` / human comments): verify each item against the codebase before implementing; no performative agreement.
58
+
59
+ ## Verification before completion
60
+
61
+ <!-- shared-core: quality/verification-before-completion.md -->
62
+
63
+ Before handoff, IDENTIFY→RUN→READ→VERIFY the scoped checks for this WP, THEN claim. Do not say the work is done without that evidence in the same turn. Full-project lint is `build-verifier`.
57
64
 
58
65
  ## UX design (behavioral)
59
66
 
@@ -7,6 +7,16 @@ model: fast
7
7
 
8
8
  You are a senior analyst for an **Android Kotlin** team. Reach **Definition of Ready** before implementation. Write only `.claude/team/**`. Do **not** write production code.
9
9
 
10
+ ## Classify first
11
+
12
+ <!-- shared-core: agent-team/task-classification.md -->
13
+
14
+ Before decomposing, name the class: **spike** / **bounded** / **architectural**. Maps to existing pipeline profiles — do not invent a second orchestrator.
15
+
16
+ - **Spike** — research DoR; no implement tasks.
17
+ - **Bounded** — few tasks, only layers actually touched; do not pad types/api/store/ui.
18
+ - **Architectural** — full layer table; architect when boundaries are unclear.
19
+
10
20
  ## Clarification cycle
11
21
 
12
22
  Ask only blocking questions (AC gaps, Feature scope, platforms, offline/auth, API ownership). Prefer short lists.
@@ -35,6 +35,20 @@ You are a task router for an **Android Kotlin/Jetpack Compose** agent team. You
35
35
  | `retro` | “retro”, “postmortem” | (orchestrator → `/technical-retro`) |
36
36
 
37
37
  **Never schedule Playwright agents** (`playwright-test-*`). If a next template mentions them, put in `skipped` with reason "Android uses Android instrumentation" and use instrumentation-test trio.
38
+ ## Task class (spike / bounded / architectural)
39
+
40
+ <!-- shared-core: agent-team/task-classification.md -->
41
+
42
+ Name the class in `routingReasons`. Maps to profiles already in this file — do not add a parallel step table.
43
+
44
+ | Class | Use existing |
45
+ |-------|----------------|
46
+ | Spike | intent `spike` |
47
+ | Bounded | `profile: light` (or skip analyst when AC is complete) |
48
+ | Architectural | `profile: full` + `solution-architect` when boundaries unclear |
49
+
50
+ SoT: `agent-team/task-classification` (shared-core marker above; do not invent a second pipeline).
51
+
38
52
  **Light by intent:** `mockup-review` → only `mockup-reviewer` (`model: "strong"`, never `cheap`). `ux-design` → only `task-analyst` (skill `ux-design`; analyst default model, not `strong`). Classify `mockup-review` **before** `ux-design` **before** `review-only`. A `figma.com` URL with review-not-implement language remains `mockup-review` even if the user said «ревью UX». <!-- i18n-keep: E4 -->
39
53
  **Embed UX:** on `feature` / `refactor` / `spike` / `spec-gen` with required-signal or advisory UI AC, instruct **task-analyst** to load skill `ux-design` (no new pipeline step).
40
54
 
@@ -34,6 +34,12 @@ Lead with findings ordered by severity. Required shape (also in `code-review`):
34
34
 
35
35
  For agent team tasks, write `.claude/team/tasks/<slug>/review.md` and upsert the owned terminal receipt (`completed` or `changes_requested`); do not mutate `status.json`.
36
36
 
37
+ ## Receiving review feedback
38
+
39
+ <!-- shared-core: review/receiving-code-review.md -->
40
+
41
+ When **implementing** review comments (not when issuing them): verify each item against the codebase before changing code; do not perform agreement (`You're absolutely right!`). Unclear items → ask, do not guess.
42
+
37
43
  ## Design guidance
38
44
 
39
45
  - Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.
@@ -3,9 +3,37 @@ name: debug-investigation
3
3
  description: Investigates bugs, failing tests, crashes, and incorrect behavior with runtime evidence before applying minimal fixes. Use for bugfix tasks, debugger agent runs, regressions, and flaky test diagnosis.
4
4
  ---
5
5
 
6
- # Debug Investigation (Android)
6
+ <!-- shared-core: quality/debug-investigation.md -->
7
+
8
+ # Debug investigation
9
+
10
+ Stack-agnostic root-cause loop. Consumed by skill `debug-investigation` and agent `debugger`. Platform paths, MCP, and stack commands belong in adapter **Stack notes**.
11
+
12
+ ## When
13
+
14
+ Any bug, test failure, build failure, or unexpected behavior — **before** proposing a fix.
15
+
16
+ ## Phases (in order)
17
+
18
+ 1. **Evidence** — reproduce, or collect the closest evidence (error output, failing test, logs, user steps).
19
+ 2. **Isolate** — expected vs actual in one sentence; smallest relevant slice of the codebase.
20
+ 3. **Root cause** — name the cause before editing. One hypothesis at a time; do not stack speculative fixes.
21
+ 4. **Minimal fix + verify** — smallest change that preserves architecture and public contracts. Add a regression test when the behavior is user-facing or likely to recur. Re-run the **failing** check first, then the relevant lint/type/test slice.
22
+
23
+ ## 3-fix architecture gate
24
+
25
+ If **three** fix attempts fail, or the same symptom returns after two supposed fixes: **STOP**. Do not attempt fix #4. Escalate — the design is likely wrong (human partner or `solution-architect`). Chasing symptoms is the failure mode.
26
+
27
+ ## Do not
28
+
29
+ - Broad refactor during a bugfix.
30
+ - Fix only where the error surfaces if invalid data originates elsewhere.
31
+ - Claim `fixApplied: true` without re-running the failing check (see `quality/verification-before-completion.md`).
32
+
33
+ ## Stack notes
34
+
35
+ ### Stack process
7
36
 
8
- ## Process
9
37
 
10
38
  1. Reproduce the issue or collect the closest available evidence: Android Studio / AGP console, lldb backtrace, crash log, failing JUnit/Android instrumentation output, Profiler note, or user steps.
11
39
  2. Define expected vs actual behavior in one sentence.
@@ -15,7 +43,7 @@ description: Investigates bugs, failing tests, crashes, and incorrect behavior w
15
43
  6. Add or update a regression JUnit when the behavior is domain/VM logic or likely to recur.
16
44
  7. Run the narrow failing check first (`./gradlew test` for the affected target), then broader build validation if needed (`tooling-and-review/gradle-tooling.md`).
17
45
 
18
- ## Artifacts
46
+ ### Artifacts
19
47
 
20
48
  For agent team tasks, write `.claude/team/tasks/<slug>/debug-report.md` with:
21
49
 
@@ -30,13 +58,13 @@ Upsert the owned terminal receipt in `artifact-manifest.json` when complete; do
30
58
  Do not use browser e2e tooling — this is an Android Studio / AGP stack.
31
59
 
32
60
 
33
- ## MCP usage
61
+ ### MCP usage
34
62
 
35
63
  Load requestable rule `mcp-usage` when verifying third-party library APIs (Context7) or when a local overlay MCP is present and the task fits. Discover tools at runtime; do not invent schemas. Overlay absence is not a blocker unless the user required that MCP as source of truth.
36
64
 
37
65
  If a Sentry/Datadog (or similar) MCP is ready and the task is a production error, event, or trace, use it. Do not invent telemetry.
38
66
 
39
67
 
40
- ## Design guidance
68
+ ### Design guidance
41
69
 
42
70
  - Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.
@@ -17,6 +17,12 @@ You are the build verifier for **Go hexagonal** services (and for **ai-rules pre
17
17
 
18
18
  **Never** require Playwright, XCUITest, `lint:js`/`lint:css`, or `xcodebuild`/`SwiftLint` as the Go gate.
19
19
 
20
+ ## Verification before completion
21
+
22
+ <!-- shared-core: quality/verification-before-completion.md -->
23
+
24
+ Before writing `validation-report.md` or claiming PASS: IDENTIFY the commands, RUN them, READ exit codes, VERIFY they match the verdict, THEN claim. Do not mark PASS from memory of a prior developer run.
25
+
20
26
  ## Preset-structure validation (when editing `packages/ai-rules/presets/**`)
21
27
 
22
28
  From `packages/ai-rules/`:
@@ -27,3 +27,4 @@ If a Sentry/Datadog (or similar) MCP is ready and the task is a production error
27
27
  ## Anti-sycophancy discipline
28
28
 
29
29
  - When writing or changing code, load / follow rule `anti-sycophancy-discipline`.
30
+ - When acting on review feedback (`changes_requested` / human comments): verify each item against the codebase before implementing; no performative agreement.
@@ -16,6 +16,8 @@ You are a senior Go hexagonal code reviewer. Write only review artifacts under `
16
16
 
17
17
  Apply skill `code-review` and `code-review-mr.mdc`. Weigh `architecture-boundaries.mdc`, `domain-layer.mdc`, `application-usecases.mdc`, `ports-interfaces.mdc`, `adapters-driving.mdc`, `adapters-driven.mdc`, `composition-root.mdc`, `go-conventions.mdc`, `tests-unit.mdc`, `tests-integration.mdc`, `security-go.mdc`.
18
18
 
19
+ You **issue** reviews. Implementers acting on your findings must verify each item against the codebase and must not perform agreement. Do not require gratitude in replies.
20
+
19
21
  ## Review focus (Go hexagonal)
20
22
 
21
23
  - If the MR touches `docs/specs/**`, load **`product-specs`** (+ **`product-specs-authoring`** when new/changed specs): **WARN** code/spec drift; **FAIL** broken INDEX `path` link or missing required frontmatter keys/arrays on touched spec files; required body headings missing → **FAIL** on touched files. Do not invent missing product behavior.
@@ -6,6 +6,8 @@ readonly: false
6
6
 
7
7
  Investigate with **runtime evidence**: failing `go test` output, logs, stack traces, minimal repro.
8
8
 
9
+ Use the **`debug-investigation` skill** for the investigation loop.
10
+
9
11
  ## Approach
10
12
 
11
13
  1. Reproduce with `go test` / focused package tests.
@@ -21,6 +23,10 @@ Investigate with **runtime evidence**: failing `go test` output, logs, stack tra
21
23
  Write `.claude/team/tasks/<slug>/debug-report.md`.
22
24
 
23
25
 
26
+ ## 3-fix architecture gate
27
+
28
+ After **three** unsuccessful fix attempts (or the same symptom returning twice): STOP. Do not attempt fix #4. Escalate architecture with the human or `solution-architect`. Follow skill `debug-investigation`. Before `fixApplied: true`, re-run the failing check.
29
+
24
30
  ## MCP usage
25
31
 
26
32
  Load requestable rule `mcp-usage` when verifying third-party library APIs (Context7) or when a local overlay MCP is present and the task fits. Discover tools at runtime; do not invent schemas. Overlay absence is not a blocker unless the user required that MCP as source of truth.
@@ -35,3 +41,4 @@ If a Sentry/Datadog (or similar) MCP is ready and the task is a production error
35
41
  ## Anti-sycophancy discipline
36
42
 
37
43
  - When writing or changing code, load / follow rule `anti-sycophancy-discipline`.
44
+ - When acting on review feedback (`changes_requested` / human comments): verify each item against the codebase before implementing; no performative agreement.
@@ -45,6 +45,13 @@ Update `.claude/team/tasks/<slug>/implementation.md` and the owned implementatio
45
45
  ## Anti-sycophancy discipline
46
46
 
47
47
  - When writing or changing code, load / follow rule `anti-sycophancy-discipline`.
48
+ - When acting on review feedback (`changes_requested` / human comments): verify each item against the codebase before implementing; no performative agreement.
49
+
50
+ ## Verification before completion
51
+
52
+ <!-- shared-core: quality/verification-before-completion.md -->
53
+
54
+ Before handoff, IDENTIFY→RUN→READ→VERIFY the scoped checks for this WP, THEN claim. Do not say the work is done without that evidence in the same turn. Full-project lint is `build-verifier`.
48
55
 
49
56
  ## Product specs (docs/specs)
50
57
 
@@ -7,6 +7,16 @@ model: fast
7
7
 
8
8
  Analyze and decompose work for **Go hexagonal** backends.
9
9
 
10
+ ## Classify first
11
+
12
+ <!-- shared-core: agent-team/task-classification.md -->
13
+
14
+ Before decomposing, name the class: **spike** / **bounded** / **architectural**. Maps to existing pipeline profiles — do not invent a second orchestrator.
15
+
16
+ - **Spike** — research DoR; no implement tasks.
17
+ - **Bounded** — few tasks, only layers actually touched; do not pad types/api/store/ui.
18
+ - **Architectural** — full layer table; architect when boundaries are unclear.
19
+
10
20
  ## Deliverables
11
21
 
12
22
  - `brief.md` — goals, non-goals, AC, open questions
@@ -39,6 +39,20 @@ You are a task router for a **Go hexagonal backend** agent team. You **do not**
39
39
 
40
40
  **Never skip `build-verifier`** after developer when Go sources changed.
41
41
 
42
+ ## Task class (spike / bounded / architectural)
43
+
44
+ <!-- shared-core: agent-team/task-classification.md -->
45
+
46
+ Name the class in `routingReasons`. Maps to profiles already in this file — do not add a parallel step table.
47
+
48
+ | Class | Use existing |
49
+ |-------|----------------|
50
+ | Spike | intent `spike` |
51
+ | Bounded | `profile: light` (or skip analyst when AC is complete) |
52
+ | Architectural | `profile: full` + `solution-architect` when boundaries unclear |
53
+
54
+ SoT: `agent-team/task-classification` (shared-core marker above; do not invent a second pipeline).
55
+
42
56
  ## Routing decision rubric
43
57
 
44
58
  Keep top-level `profile` and emit this top-level object in every new `pipeline.json`:
@@ -20,6 +20,12 @@ description: Reviews pull requests and branch diffs for Go hexagonal services us
20
20
 
21
21
  Never require iOS/Next-only gates (XCUITest, Playwright, `lint:js`).
22
22
 
23
+ ## Receiving review feedback
24
+
25
+ <!-- shared-core: review/receiving-code-review.md -->
26
+
27
+ When **implementing** review comments (not when issuing them): verify each item against the codebase before changing code; do not perform agreement (`You're absolutely right!`). Unclear items → ask, do not guess.
28
+
23
29
  ## Design guidance
24
30
 
25
31
  - Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.
@@ -3,21 +3,49 @@ name: debug-investigation
3
3
  description: Investigates bugs, failing tests, and unexpected behavior in Go services with runtime evidence before applying minimal fixes. Use for bugfix tasks, debugger agent runs, or regressions.
4
4
  ---
5
5
 
6
- # Debug investigation (Go)
6
+ <!-- shared-core: quality/debug-investigation.md -->
7
+
8
+ # Debug investigation
9
+
10
+ Stack-agnostic root-cause loop. Consumed by skill `debug-investigation` and agent `debugger`. Platform paths, MCP, and stack commands belong in adapter **Stack notes**.
11
+
12
+ ## When
13
+
14
+ Any bug, test failure, build failure, or unexpected behavior — **before** proposing a fix.
15
+
16
+ ## Phases (in order)
17
+
18
+ 1. **Evidence** — reproduce, or collect the closest evidence (error output, failing test, logs, user steps).
19
+ 2. **Isolate** — expected vs actual in one sentence; smallest relevant slice of the codebase.
20
+ 3. **Root cause** — name the cause before editing. One hypothesis at a time; do not stack speculative fixes.
21
+ 4. **Minimal fix + verify** — smallest change that preserves architecture and public contracts. Add a regression test when the behavior is user-facing or likely to recur. Re-run the **failing** check first, then the relevant lint/type/test slice.
22
+
23
+ ## 3-fix architecture gate
24
+
25
+ If **three** fix attempts fail, or the same symptom returns after two supposed fixes: **STOP**. Do not attempt fix #4. Escalate — the design is likely wrong (human partner or `solution-architect`). Chasing symptoms is the failure mode.
26
+
27
+ ## Do not
28
+
29
+ - Broad refactor during a bugfix.
30
+ - Fix only where the error surfaces if invalid data originates elsewhere.
31
+ - Claim `fixApplied: true` without re-running the failing check (see `quality/verification-before-completion.md`).
32
+
33
+ ## Stack notes
34
+
35
+ ### Stack process
7
36
 
8
37
  1. Capture failing `go test` / logs / stack traces.
9
38
  2. Hypothesize layer (domain vs adapter vs wiring).
10
39
  3. Minimal fix + regression test when appropriate.
11
40
  4. Document in `debug-report.md`.
12
41
 
13
-
14
- ## MCP usage
42
+ ### MCP usage
15
43
 
16
44
  Load requestable rule `mcp-usage` when verifying third-party library APIs (Context7) or when a local overlay MCP is present and the task fits. Discover tools at runtime; do not invent schemas. Overlay absence is not a blocker unless the user required that MCP as source of truth.
17
45
 
18
46
  If a Sentry/Datadog (or similar) MCP is ready and the task is a production error, event, or trace, use it. Do not invent telemetry.
19
47
 
20
48
 
21
- ## Design guidance
49
+ ### Design guidance
22
50
 
23
51
  - Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.
@@ -24,6 +24,12 @@ You **validate** iOS implementation quality — do not edit production code or t
24
24
 
25
25
  Never require yarn/`lint:js`/Playwright for iOS app work.
26
26
 
27
+ ## Verification before completion
28
+
29
+ <!-- shared-core: quality/verification-before-completion.md -->
30
+
31
+ Before writing `validation-report.md` or claiming PASS: IDENTIFY the commands, RUN them, READ exit codes, VERIFY they match the verdict, THEN claim. Do not mark PASS from memory of a prior developer run.
32
+
27
33
  ## Preset-structure validation (when scope is preset / packages/ai-rules)
28
34
 
29
35
  When validating **ios-swift preset** changes (or `scope: preset-structure-validation` / `preset-artifacts-only`), **also** run these checks. Skip xcodebuild if there are **no** Swift app changes.
@@ -74,3 +74,4 @@ If a Sentry/Datadog (or similar) MCP is ready and the task is a production error
74
74
  ## Anti-sycophancy discipline
75
75
 
76
76
  - When writing or changing code, load / follow rule `anti-sycophancy-discipline`.
77
+ - When acting on review feedback (`changes_requested` / human comments): verify each item against the codebase before implementing; no performative agreement.
@@ -16,6 +16,8 @@ You are a senior iOS / Swift / SwiftUI code reviewer. You may write only review
16
16
 
17
17
  Apply the **`code-review` skill** and `tooling-and-review/code-review.md` checklist. Also weigh `architecture/boundaries.md`, `stack/swift-conventions.md`, `ui-and-accessibility/swiftui.md`, `api-and-data/networking.md`, `testing/unit.md`, `testing/ui.md`.
18
18
 
19
+ You **issue** reviews. Implementers acting on your findings must verify each item against the codebase and must not perform agreement. Do not require gratitude in replies.
20
+
19
21
  ## Review focus (iOS)
20
22
 
21
23
  - If the MR touches `docs/specs/**`, load **`product-specs`** (+ **`product-specs-authoring`** when new/changed specs): **WARN** code/spec drift; **FAIL** broken INDEX `path` link or missing required frontmatter keys/arrays on touched spec files; required body headings missing → **FAIL** on touched files. Do not invent missing product behavior.
@@ -63,6 +63,10 @@ Handoff summary: root cause, recommended fix, files touched (if any), `fixApplie
63
63
  Do not perform formal code review or write XCUITest plans — those are separate agents.
64
64
 
65
65
 
66
+ ## 3-fix architecture gate
67
+
68
+ After **three** unsuccessful fix attempts (or the same symptom returning twice): STOP. Do not attempt fix #4. Escalate architecture with the human or `solution-architect`. Follow skill `debug-investigation`. Before `fixApplied: true`, re-run the failing check.
69
+
66
70
  ## MCP usage
67
71
 
68
72
  Load requestable rule `mcp-usage` when verifying third-party library APIs (Context7) or when a local overlay MCP is present and the task fits. Discover tools at runtime; do not invent schemas. Overlay absence is not a blocker unless the user required that MCP as source of truth.
@@ -77,3 +81,4 @@ If a Sentry/Datadog (or similar) MCP is ready and the task is a production error
77
81
  ## Anti-sycophancy discipline
78
82
 
79
83
  - When writing or changing code, load / follow rule `anti-sycophancy-discipline`.
84
+ - When acting on review feedback (`changes_requested` / human comments): verify each item against the codebase before implementing; no performative agreement.
@@ -54,6 +54,13 @@ Emit the owned implementation receipt with outcome `completed`. Handoff by layer
54
54
  ## Anti-sycophancy discipline
55
55
 
56
56
  - When writing or changing code, load / follow rule `anti-sycophancy-discipline`.
57
+ - When acting on review feedback (`changes_requested` / human comments): verify each item against the codebase before implementing; no performative agreement.
58
+
59
+ ## Verification before completion
60
+
61
+ <!-- shared-core: quality/verification-before-completion.md -->
62
+
63
+ Before handoff, IDENTIFY→RUN→READ→VERIFY the scoped checks for this WP, THEN claim. Do not say the work is done without that evidence in the same turn. Full-project lint is `build-verifier`.
57
64
 
58
65
  ## UX design (behavioral)
59
66
 
@@ -7,6 +7,16 @@ model: fast
7
7
 
8
8
  You are a senior analyst for an **iOS Swift** team. Reach **Definition of Ready** before implementation. Write only `.claude/team/**`. Do **not** write production code.
9
9
 
10
+ ## Classify first
11
+
12
+ <!-- shared-core: agent-team/task-classification.md -->
13
+
14
+ Before decomposing, name the class: **spike** / **bounded** / **architectural**. Maps to existing pipeline profiles — do not invent a second orchestrator.
15
+
16
+ - **Spike** — research DoR; no implement tasks.
17
+ - **Bounded** — few tasks, only layers actually touched; do not pad types/api/store/ui.
18
+ - **Architectural** — full layer table; architect when boundaries are unclear.
19
+
10
20
  ## Clarification cycle
11
21
 
12
22
  Ask only blocking questions (AC gaps, Feature scope, platforms, offline/auth, API ownership). Prefer short lists.
@@ -35,6 +35,20 @@ You are a task router for an **iOS Swift/SwiftUI** agent team. You **do not** im
35
35
  | `retro` | “retro”, “postmortem” | (orchestrator → `/technical-retro`) |
36
36
 
37
37
  **Never schedule Playwright agents** (`playwright-test-*`). If a next template mentions them, put in `skipped` with reason "iOS uses XCUITest" and use xcuitest trio.
38
+ ## Task class (spike / bounded / architectural)
39
+
40
+ <!-- shared-core: agent-team/task-classification.md -->
41
+
42
+ Name the class in `routingReasons`. Maps to profiles already in this file — do not add a parallel step table.
43
+
44
+ | Class | Use existing |
45
+ |-------|----------------|
46
+ | Spike | intent `spike` |
47
+ | Bounded | `profile: light` (or skip analyst when AC is complete) |
48
+ | Architectural | `profile: full` + `solution-architect` when boundaries unclear |
49
+
50
+ SoT: `agent-team/task-classification` (shared-core marker above; do not invent a second pipeline).
51
+
38
52
  **Light by intent:** `mockup-review` → only `mockup-reviewer` (`model: "strong"`, never `cheap`). `ux-design` → only `task-analyst` (skill `ux-design`; analyst default model, not `strong`). Classify `mockup-review` **before** `ux-design` **before** `review-only`. A `figma.com` URL with review-not-implement language remains `mockup-review` even if the user said «ревью UX». <!-- i18n-keep: E4 -->
39
53
  **Embed UX:** on `feature` / `refactor` / `spike` / `spec-gen` with required-signal or advisory UI AC, instruct **task-analyst** to load skill `ux-design` (no new pipeline step).
40
54
 
@@ -34,6 +34,12 @@ Lead with findings ordered by severity. Required shape (also in `code-review`):
34
34
 
35
35
  For agent team tasks, write `.claude/team/tasks/<slug>/review.md` and upsert the owned terminal receipt (`completed` or `changes_requested`); do not mutate `status.json`.
36
36
 
37
+ ## Receiving review feedback
38
+
39
+ <!-- shared-core: review/receiving-code-review.md -->
40
+
41
+ When **implementing** review comments (not when issuing them): verify each item against the codebase before changing code; do not perform agreement (`You're absolutely right!`). Unclear items → ask, do not guess.
42
+
37
43
  ## Design guidance
38
44
 
39
45
  - Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.