@bonesofspring/ai-rules 0.2.14 → 0.2.16

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 (846) hide show
  1. package/CHANGELOG.md +24 -1
  2. package/README.md +3 -1
  3. package/bin/cli.js +2 -0
  4. package/package.json +2 -1
  5. package/presets/_shared/core/agent-team/agent-team-intake.md +2 -2
  6. package/presets/_shared/core/agent-team/agent-team-orchestrator.md +4 -4
  7. package/presets/_shared/core/architecture/feature-delivery-workflow.md +27 -27
  8. package/presets/_shared/core/architecture/reference-features.template.md +23 -23
  9. package/presets/_shared/core/meta/preset-layering.md +12 -12
  10. package/presets/_shared/core/meta/preset-no-cross-stack-leakage.md +26 -13
  11. package/presets/_shared/core/meta/preset-pr-checklist.md +6 -6
  12. package/presets/_shared/core/meta/preset-token-budget.md +3 -3
  13. package/presets/_shared/core/meta/preset-twin-sync.md +2 -0
  14. package/presets/_shared/core/quality/code-quality-and-refactoring.md +19 -19
  15. package/presets/_shared/core/quality/design-guidance.md +54 -54
  16. package/presets/_shared/core/review/code-review-mr.md +4 -4
  17. package/presets/_shared/core/review/technical-retro.md +3 -3
  18. package/presets/claude/android-kotlin/CLAUDE.md +38 -0
  19. package/presets/claude/android-kotlin/MCP.md +16 -0
  20. package/presets/claude/android-kotlin/README.md +32 -0
  21. package/presets/claude/android-kotlin/REPO_AGENTS.md +48 -0
  22. package/presets/claude/android-kotlin/agents/README.md +44 -0
  23. package/presets/claude/android-kotlin/agents/accessibility-reviewer.md +60 -0
  24. package/presets/claude/android-kotlin/agents/api-contract-reviewer.md +70 -0
  25. package/presets/claude/android-kotlin/agents/build-verifier.md +67 -0
  26. package/presets/claude/android-kotlin/agents/ci-investigator.md +74 -0
  27. package/presets/claude/android-kotlin/agents/code-reviewer.md +74 -0
  28. package/presets/claude/android-kotlin/agents/codebase-analyzer.md +28 -0
  29. package/presets/claude/android-kotlin/agents/debugger.md +77 -0
  30. package/presets/claude/android-kotlin/agents/feature-developer.md +63 -0
  31. package/presets/claude/android-kotlin/agents/instrumentation-test-generator.md +19 -0
  32. package/presets/claude/android-kotlin/agents/instrumentation-test-healer.md +19 -0
  33. package/presets/claude/android-kotlin/agents/instrumentation-test-planner.md +19 -0
  34. package/presets/claude/android-kotlin/agents/migration-specialist.md +74 -0
  35. package/presets/claude/android-kotlin/agents/performance-auditor.md +67 -0
  36. package/presets/claude/android-kotlin/agents/qa-tester.md +66 -0
  37. package/presets/claude/android-kotlin/agents/security-reviewer.md +65 -0
  38. package/presets/claude/android-kotlin/agents/solution-architect.md +21 -0
  39. package/presets/claude/android-kotlin/agents/task-analyst.md +36 -0
  40. package/presets/claude/android-kotlin/agents/task-router.md +103 -0
  41. package/presets/claude/android-kotlin/agents/tech-writer.md +61 -0
  42. package/presets/claude/android-kotlin/agents/unit-test-generator.md +55 -0
  43. package/presets/claude/android-kotlin/agents/unit-test-healer.md +54 -0
  44. package/presets/claude/android-kotlin/agents/unit-test-planner.md +65 -0
  45. package/presets/claude/android-kotlin/commands/README.md +51 -0
  46. package/presets/claude/android-kotlin/commands/feature-continue.md +19 -0
  47. package/presets/claude/android-kotlin/commands/feature-start.md +33 -0
  48. package/presets/claude/android-kotlin/commands/task-continue.md +50 -0
  49. package/presets/claude/android-kotlin/commands/task.md +56 -0
  50. package/presets/claude/android-kotlin/commands/technical-retro.md +85 -0
  51. package/presets/claude/android-kotlin/hooks/README.md +16 -0
  52. package/presets/claude/android-kotlin/hooks/chain-team-phases.sh +705 -0
  53. package/presets/claude/android-kotlin/hooks/examples/README.md +18 -0
  54. package/presets/claude/android-kotlin/hooks/examples/format-edited.example.sh +13 -0
  55. package/presets/claude/android-kotlin/hooks/examples/secret-guard.example.sh +10 -0
  56. package/presets/claude/android-kotlin/hooks/examples/test-on-save.example.sh +8 -0
  57. package/presets/claude/android-kotlin/hooks/guard-shell-command.sh +80 -0
  58. package/presets/claude/android-kotlin/mcp.json +12 -0
  59. package/presets/claude/android-kotlin/rules/README.md +63 -0
  60. package/presets/claude/android-kotlin/rules/api-and-data/README.md +10 -0
  61. package/presets/claude/android-kotlin/rules/api-and-data/networking.md +30 -0
  62. package/presets/claude/android-kotlin/rules/api-and-data/persistence.md +29 -0
  63. package/presets/claude/android-kotlin/rules/architecture/README.md +9 -0
  64. package/presets/claude/android-kotlin/rules/architecture/boundaries.md +27 -0
  65. package/presets/claude/android-kotlin/rules/architecture/di-dagger-feature-holders.md +34 -0
  66. package/presets/claude/android-kotlin/rules/architecture/feature-delivery.md +41 -0
  67. package/presets/claude/android-kotlin/rules/architecture/module-public-api.md +29 -0
  68. package/presets/claude/android-kotlin/rules/architecture/reference-features.md +28 -0
  69. package/presets/claude/android-kotlin/rules/stack/README.md +6 -0
  70. package/presets/claude/android-kotlin/rules/stack/android-app-core.md +27 -0
  71. package/presets/claude/android-kotlin/rules/stack/kotlin-conventions.md +30 -0
  72. package/presets/claude/android-kotlin/rules/testing/README.md +10 -0
  73. package/presets/claude/android-kotlin/rules/testing/ui.md +28 -0
  74. package/presets/claude/android-kotlin/rules/testing/unit.md +29 -0
  75. package/presets/claude/android-kotlin/rules/tooling-and-review/README.md +19 -0
  76. package/presets/claude/android-kotlin/rules/tooling-and-review/agent-team-intake.md +18 -0
  77. package/presets/claude/android-kotlin/rules/tooling-and-review/agent-team-orchestrator.md +127 -0
  78. package/presets/claude/android-kotlin/rules/tooling-and-review/anti-sycophancy-discipline.md +29 -0
  79. package/presets/claude/android-kotlin/rules/tooling-and-review/code-quality.md +52 -0
  80. package/presets/claude/android-kotlin/rules/tooling-and-review/code-review.md +88 -0
  81. package/presets/claude/android-kotlin/rules/tooling-and-review/design-guidance.md +110 -0
  82. package/presets/claude/android-kotlin/rules/tooling-and-review/gradle-tooling.md +30 -0
  83. package/presets/claude/android-kotlin/rules/tooling-and-review/post-change-build.md +34 -0
  84. package/presets/claude/android-kotlin/rules/tooling-and-review/preset-layering.md +36 -0
  85. package/presets/claude/android-kotlin/rules/tooling-and-review/preset-no-cross-stack-leakage.md +100 -0
  86. package/presets/claude/android-kotlin/rules/tooling-and-review/preset-pr-checklist.md +39 -0
  87. package/presets/claude/android-kotlin/rules/tooling-and-review/preset-token-budget.md +41 -0
  88. package/presets/claude/android-kotlin/rules/tooling-and-review/preset-twin-sync.md +56 -0
  89. package/presets/claude/android-kotlin/rules/tooling-and-review/security-android.md +29 -0
  90. package/presets/claude/android-kotlin/rules/tooling-and-review/technical-retro.md +18 -0
  91. package/presets/claude/android-kotlin/rules/ui-and-accessibility/README.md +7 -0
  92. package/presets/claude/android-kotlin/rules/ui-and-accessibility/compose.md +31 -0
  93. package/presets/claude/android-kotlin/rules/ui-and-accessibility/navigation.md +30 -0
  94. package/presets/claude/android-kotlin/rules/ui-and-accessibility/viewmodels.md +27 -0
  95. package/presets/claude/android-kotlin/skills/README.md +14 -0
  96. package/presets/claude/android-kotlin/skills/ci-investigation/SKILL.md +39 -0
  97. package/presets/claude/android-kotlin/skills/code-review/SKILL.md +39 -0
  98. package/presets/claude/android-kotlin/skills/debug-investigation/SKILL.md +34 -0
  99. package/presets/claude/android-kotlin/skills/feature-delivery/SKILL.md +35 -0
  100. package/presets/claude/android-kotlin/skills/instrumentation-ui-e2e/SKILL.md +17 -0
  101. package/presets/claude/android-kotlin/skills/technical-retro/SKILL.md +54 -0
  102. package/presets/claude/android-kotlin/skills/unit-testing/SKILL.md +32 -0
  103. package/presets/claude/android-kotlin/skills/write-adr/SKILL.md +41 -0
  104. package/presets/claude/android-kotlin/team/README.md +54 -0
  105. package/presets/claude/android-kotlin/team/conventions.md +17 -0
  106. package/presets/claude/android-kotlin/team/fixtures/bugfix-standard.json +47 -0
  107. package/presets/claude/android-kotlin/team/fixtures/feature-full.json +97 -0
  108. package/presets/claude/android-kotlin/team/fixtures/feature-light.json +38 -0
  109. package/presets/claude/go/MCP.md +7 -7
  110. package/presets/claude/go/README.md +3 -3
  111. package/presets/claude/go/agents/README.md +2 -2
  112. package/presets/claude/go/agents/task-router.md +13 -13
  113. package/presets/claude/go/commands/README.md +8 -8
  114. package/presets/claude/go/commands/feature-continue.md +21 -21
  115. package/presets/claude/go/commands/feature-start.md +16 -16
  116. package/presets/claude/go/commands/task-continue.md +14 -14
  117. package/presets/claude/go/commands/task.md +32 -32
  118. package/presets/claude/go/commands/technical-retro.md +38 -38
  119. package/presets/claude/go/rules/architecture/boundaries.md +10 -10
  120. package/presets/claude/go/rules/stack/README.md +1 -1
  121. package/presets/claude/go/rules/stack/go-app-core.md +11 -11
  122. package/presets/claude/go/rules/tooling-and-review/README.md +1 -1
  123. package/presets/claude/go/rules/tooling-and-review/agent-team-intake.md +2 -2
  124. package/presets/claude/go/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
  125. package/presets/claude/go/rules/tooling-and-review/code-quality.md +21 -20
  126. package/presets/claude/go/rules/tooling-and-review/code-review.md +4 -4
  127. package/presets/claude/go/rules/tooling-and-review/design-guidance.md +54 -54
  128. package/presets/claude/go/rules/tooling-and-review/post-change-test.md +1 -1
  129. package/presets/claude/go/rules/tooling-and-review/preset-layering.md +12 -13
  130. package/presets/claude/go/rules/tooling-and-review/preset-no-cross-stack-leakage.md +26 -14
  131. package/presets/claude/go/rules/tooling-and-review/preset-pr-checklist.md +6 -7
  132. package/presets/claude/go/rules/tooling-and-review/preset-token-budget.md +3 -4
  133. package/presets/claude/go/rules/tooling-and-review/preset-twin-sync.md +2 -1
  134. package/presets/claude/go/rules/tooling-and-review/technical-retro.md +3 -3
  135. package/presets/claude/go/team/README.md +1 -1
  136. package/presets/claude/ios-swift/CLAUDE.md +16 -16
  137. package/presets/claude/ios-swift/MCP.md +10 -8
  138. package/presets/claude/ios-swift/README.md +8 -8
  139. package/presets/claude/ios-swift/agents/README.md +11 -11
  140. package/presets/claude/ios-swift/agents/feature-developer.md +1 -1
  141. package/presets/claude/ios-swift/agents/task-analyst.md +1 -1
  142. package/presets/claude/ios-swift/agents/task-router.md +18 -18
  143. package/presets/claude/ios-swift/commands/README.md +48 -10
  144. package/presets/claude/ios-swift/commands/feature-continue.md +9 -41
  145. package/presets/claude/ios-swift/commands/feature-start.md +19 -16
  146. package/presets/claude/ios-swift/commands/task-continue.md +14 -14
  147. package/presets/claude/ios-swift/commands/task.md +33 -33
  148. package/presets/claude/ios-swift/commands/technical-retro.md +61 -38
  149. package/presets/claude/ios-swift/rules/README.md +7 -7
  150. package/presets/claude/ios-swift/rules/api-and-data/README.md +1 -1
  151. package/presets/claude/ios-swift/rules/api-and-data/networking.md +31 -31
  152. package/presets/claude/ios-swift/rules/api-and-data/persistence.md +13 -13
  153. package/presets/claude/ios-swift/rules/architecture/README.md +1 -1
  154. package/presets/claude/ios-swift/rules/architecture/boundaries.md +20 -20
  155. package/presets/claude/ios-swift/rules/architecture/feature-delivery.md +31 -30
  156. package/presets/claude/ios-swift/rules/architecture/module-public-api.md +11 -11
  157. package/presets/claude/ios-swift/rules/architecture/reference-features.md +25 -22
  158. package/presets/claude/ios-swift/rules/stack/README.md +1 -1
  159. package/presets/claude/ios-swift/rules/stack/ios-app-core.md +10 -10
  160. package/presets/claude/ios-swift/rules/stack/swift-conventions.md +17 -17
  161. package/presets/claude/ios-swift/rules/testing/README.md +1 -1
  162. package/presets/claude/ios-swift/rules/testing/ui.md +27 -27
  163. package/presets/claude/ios-swift/rules/testing/unit.md +25 -25
  164. package/presets/claude/ios-swift/rules/tooling-and-review/README.md +5 -2
  165. package/presets/claude/ios-swift/rules/tooling-and-review/agent-team-intake.md +2 -2
  166. package/presets/claude/ios-swift/rules/tooling-and-review/agent-team-orchestrator.md +51 -21
  167. package/presets/claude/ios-swift/rules/tooling-and-review/code-quality.md +25 -24
  168. package/presets/claude/ios-swift/rules/tooling-and-review/code-review.md +40 -39
  169. package/presets/claude/ios-swift/rules/tooling-and-review/design-guidance.md +54 -54
  170. package/presets/claude/ios-swift/rules/tooling-and-review/post-change-build.md +18 -18
  171. package/presets/claude/ios-swift/rules/tooling-and-review/preset-layering.md +12 -13
  172. package/presets/claude/ios-swift/rules/tooling-and-review/preset-no-cross-stack-leakage.md +26 -14
  173. package/presets/claude/ios-swift/rules/tooling-and-review/preset-pr-checklist.md +6 -7
  174. package/presets/claude/ios-swift/rules/tooling-and-review/preset-token-budget.md +3 -4
  175. package/presets/claude/ios-swift/rules/tooling-and-review/preset-twin-sync.md +2 -1
  176. package/presets/claude/ios-swift/rules/tooling-and-review/security-ios.md +14 -14
  177. package/presets/claude/ios-swift/rules/tooling-and-review/technical-retro.md +4 -4
  178. package/presets/claude/ios-swift/rules/tooling-and-review/xcode-tooling.md +11 -11
  179. package/presets/claude/ios-swift/rules/ui-and-accessibility/README.md +1 -1
  180. package/presets/claude/ios-swift/rules/ui-and-accessibility/navigation.md +13 -13
  181. package/presets/claude/ios-swift/rules/ui-and-accessibility/swiftui.md +39 -39
  182. package/presets/claude/ios-swift/rules/ui-and-accessibility/viewmodels.md +24 -24
  183. package/presets/claude/ios-swift/skills/README.md +3 -3
  184. package/presets/claude/ios-swift/team/README.md +6 -2
  185. package/presets/claude/java/MCP.md +5 -5
  186. package/presets/claude/java/agents/README.md +2 -2
  187. package/presets/claude/java/agents/task-router.md +13 -13
  188. package/presets/claude/java/commands/README.md +8 -8
  189. package/presets/claude/java/commands/feature-continue.md +21 -21
  190. package/presets/claude/java/commands/feature-start.md +16 -16
  191. package/presets/claude/java/commands/task-continue.md +14 -14
  192. package/presets/claude/java/commands/task.md +32 -32
  193. package/presets/claude/java/commands/technical-retro.md +38 -38
  194. package/presets/claude/java/rules/architecture/boundaries.md +10 -10
  195. package/presets/claude/java/rules/stack/README.md +1 -1
  196. package/presets/claude/java/rules/stack/java-app-core.md +9 -9
  197. package/presets/claude/java/rules/tooling-and-review/README.md +1 -1
  198. package/presets/claude/java/rules/tooling-and-review/agent-team-intake.md +2 -2
  199. package/presets/claude/java/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
  200. package/presets/claude/java/rules/tooling-and-review/code-quality.md +21 -20
  201. package/presets/claude/java/rules/tooling-and-review/code-review.md +5 -4
  202. package/presets/claude/java/rules/tooling-and-review/design-guidance.md +55 -54
  203. package/presets/claude/java/rules/tooling-and-review/post-change-test.md +1 -1
  204. package/presets/claude/java/rules/tooling-and-review/preset-layering.md +12 -13
  205. package/presets/claude/java/rules/tooling-and-review/preset-no-cross-stack-leakage.md +26 -14
  206. package/presets/claude/java/rules/tooling-and-review/preset-pr-checklist.md +6 -7
  207. package/presets/claude/java/rules/tooling-and-review/preset-token-budget.md +3 -4
  208. package/presets/claude/java/rules/tooling-and-review/preset-twin-sync.md +2 -1
  209. package/presets/claude/java/rules/tooling-and-review/technical-retro.md +3 -3
  210. package/presets/claude/java/team/README.md +1 -1
  211. package/presets/claude/mcp-ts/MCP.md +5 -5
  212. package/presets/claude/mcp-ts/agents/task-router.md +7 -7
  213. package/presets/claude/mcp-ts/commands/README.md +1 -1
  214. package/presets/claude/mcp-ts/commands/feature-continue.md +8 -8
  215. package/presets/claude/mcp-ts/commands/feature-start.md +17 -17
  216. package/presets/claude/mcp-ts/commands/task-continue.md +14 -14
  217. package/presets/claude/mcp-ts/commands/task.md +32 -32
  218. package/presets/claude/mcp-ts/commands/technical-retro.md +54 -54
  219. package/presets/claude/mcp-ts/rules/architecture/mcp-server-boundaries.md +2 -2
  220. package/presets/claude/mcp-ts/rules/stack/mcp-ts-app-core.md +9 -9
  221. package/presets/claude/mcp-ts/rules/tooling-and-review/agent-team-intake.md +3 -3
  222. package/presets/claude/mcp-ts/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
  223. package/presets/claude/mcp-ts/rules/tooling-and-review/code-quality.md +21 -20
  224. package/presets/claude/mcp-ts/rules/tooling-and-review/code-review.md +5 -4
  225. package/presets/claude/mcp-ts/rules/tooling-and-review/design-guidance.md +55 -54
  226. package/presets/claude/mcp-ts/rules/tooling-and-review/post-change-test.md +1 -1
  227. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-layering.md +12 -13
  228. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-no-cross-stack-leakage.md +26 -14
  229. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-pr-checklist.md +6 -7
  230. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-token-budget.md +3 -4
  231. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-twin-sync.md +2 -1
  232. package/presets/claude/mcp-ts/rules/tooling-and-review/technical-retro.md +3 -3
  233. package/presets/claude/next/CLAUDE.md +17 -17
  234. package/presets/claude/next/MCP.md +8 -8
  235. package/presets/claude/next/README.md +16 -16
  236. package/presets/claude/next/agents/README.md +19 -19
  237. package/presets/claude/next/agents/feature-developer.md +1 -1
  238. package/presets/claude/next/agents/task-analyst.md +1 -1
  239. package/presets/claude/next/agents/task-router.md +16 -16
  240. package/presets/claude/next/commands/README.md +9 -9
  241. package/presets/claude/next/commands/feature-continue.md +21 -21
  242. package/presets/claude/next/commands/feature-start.md +16 -16
  243. package/presets/claude/next/commands/task-continue.md +14 -14
  244. package/presets/claude/next/commands/task.md +33 -33
  245. package/presets/claude/next/commands/technical-retro.md +38 -38
  246. package/presets/claude/next/rules/README.md +12 -12
  247. package/presets/claude/next/rules/api-and-data/README.md +6 -6
  248. package/presets/claude/next/rules/api-and-data/api-services.md +42 -42
  249. package/presets/claude/next/rules/api-and-data/http-client.md +22 -21
  250. package/presets/claude/next/rules/api-and-data/store-rtk.md +60 -60
  251. package/presets/claude/next/rules/architecture/README.md +8 -8
  252. package/presets/claude/next/rules/architecture/architecture-boundaries-ui.md +6 -6
  253. package/presets/claude/next/rules/architecture/architecture-boundaries.md +44 -44
  254. package/presets/claude/next/rules/architecture/feature-delivery-workflow.md +39 -39
  255. package/presets/claude/next/rules/architecture/layer-barrel-exports.md +30 -29
  256. package/presets/claude/next/rules/architecture/public-imports.md +13 -13
  257. package/presets/claude/next/rules/architecture/reference-features.md +16 -16
  258. package/presets/claude/next/rules/stack/README.md +9 -9
  259. package/presets/claude/next/rules/stack/arrow-functions.md +7 -7
  260. package/presets/claude/next/rules/stack/navigation-router-ui.md +6 -6
  261. package/presets/claude/next/rules/stack/navigation-router.md +37 -37
  262. package/presets/claude/next/rules/stack/next-app-core.md +17 -17
  263. package/presets/claude/next/rules/stack/next-app-router.md +17 -17
  264. package/presets/claude/next/rules/stack/no-type-assertion.md +28 -28
  265. package/presets/claude/next/rules/stack/types-jsdoc.md +31 -20
  266. package/presets/claude/next/rules/testing/README.md +5 -5
  267. package/presets/claude/next/rules/testing/playwright-agents.md +1 -1
  268. package/presets/claude/next/rules/testing/tests-e2e-structure.md +48 -47
  269. package/presets/claude/next/rules/testing/tests-unit.md +50 -51
  270. package/presets/claude/next/rules/tooling-and-review/README.md +9 -9
  271. package/presets/claude/next/rules/tooling-and-review/agent-team-intake.md +2 -2
  272. package/presets/claude/next/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
  273. package/presets/claude/next/rules/tooling-and-review/code-quality.md +25 -24
  274. package/presets/claude/next/rules/tooling-and-review/code-review-mr.md +4 -4
  275. package/presets/claude/next/rules/tooling-and-review/design-guidance.md +54 -54
  276. package/presets/claude/next/rules/tooling-and-review/package-manager.md +7 -7
  277. package/presets/claude/next/rules/tooling-and-review/post-change-lint.md +22 -22
  278. package/presets/claude/next/rules/tooling-and-review/preset-layering.md +12 -13
  279. package/presets/claude/next/rules/tooling-and-review/preset-no-cross-stack-leakage.md +26 -14
  280. package/presets/claude/next/rules/tooling-and-review/preset-pr-checklist.md +6 -7
  281. package/presets/claude/next/rules/tooling-and-review/preset-token-budget.md +3 -4
  282. package/presets/claude/next/rules/tooling-and-review/preset-twin-sync.md +2 -1
  283. package/presets/claude/next/rules/tooling-and-review/technical-retro.md +4 -4
  284. package/presets/claude/next/rules/ui-and-accessibility/README.md +7 -7
  285. package/presets/claude/next/rules/ui-and-accessibility/css-property-order.md +3 -3
  286. package/presets/claude/next/rules/ui-and-accessibility/no-props-spread.md +18 -18
  287. package/presets/claude/next/rules/ui-and-accessibility/react-a11y-coding.md +20 -20
  288. package/presets/claude/next/rules/ui-and-accessibility/react-ui.md +63 -63
  289. package/presets/claude/next/skills/README.md +4 -4
  290. package/presets/claude/next/skills/feature-delivery/SKILL.md +1 -1
  291. package/presets/claude/next/team/README.md +2 -2
  292. package/presets/claude/nuxt/CLAUDE.md +19 -19
  293. package/presets/claude/nuxt/MCP.md +8 -8
  294. package/presets/claude/nuxt/README.md +18 -18
  295. package/presets/claude/nuxt/agents/README.md +38 -31
  296. package/presets/claude/nuxt/agents/feature-developer.md +1 -1
  297. package/presets/claude/nuxt/agents/task-analyst.md +1 -1
  298. package/presets/claude/nuxt/agents/task-router.md +22 -22
  299. package/presets/claude/nuxt/commands/README.md +48 -10
  300. package/presets/claude/nuxt/commands/feature-continue.md +9 -41
  301. package/presets/claude/nuxt/commands/feature-start.md +19 -16
  302. package/presets/claude/nuxt/commands/task-continue.md +14 -14
  303. package/presets/claude/nuxt/commands/task.md +33 -33
  304. package/presets/claude/nuxt/commands/technical-retro.md +61 -38
  305. package/presets/claude/nuxt/rules/README.md +5 -5
  306. package/presets/claude/nuxt/rules/api-and-data/README.md +6 -6
  307. package/presets/claude/nuxt/rules/api-and-data/api-services.md +44 -43
  308. package/presets/claude/nuxt/rules/api-and-data/store-pinia.md +27 -26
  309. package/presets/claude/nuxt/rules/architecture/README.md +8 -8
  310. package/presets/claude/nuxt/rules/architecture/architecture-boundaries-ui.md +8 -7
  311. package/presets/claude/nuxt/rules/architecture/architecture-boundaries.md +59 -58
  312. package/presets/claude/nuxt/rules/architecture/feature-delivery-workflow.md +45 -44
  313. package/presets/claude/nuxt/rules/architecture/layer-barrel-exports.md +32 -31
  314. package/presets/claude/nuxt/rules/architecture/public-imports.md +15 -14
  315. package/presets/claude/nuxt/rules/architecture/reference-features.md +18 -17
  316. package/presets/claude/nuxt/rules/stack/README.md +8 -8
  317. package/presets/claude/nuxt/rules/stack/navigation-router-ui.md +6 -6
  318. package/presets/claude/nuxt/rules/stack/navigation-router.md +37 -37
  319. package/presets/claude/nuxt/rules/stack/no-type-assertion.md +30 -29
  320. package/presets/claude/nuxt/rules/stack/nuxt-app-core.md +17 -16
  321. package/presets/claude/nuxt/rules/stack/types-jsdoc.md +23 -22
  322. package/presets/claude/nuxt/rules/testing/README.md +5 -5
  323. package/presets/claude/nuxt/rules/testing/tests-e2e-structure.md +45 -45
  324. package/presets/claude/nuxt/rules/testing/tests-unit.md +52 -52
  325. package/presets/claude/nuxt/rules/tooling-and-review/README.md +9 -9
  326. package/presets/claude/nuxt/rules/tooling-and-review/agent-team-intake.md +3 -2
  327. package/presets/claude/nuxt/rules/tooling-and-review/agent-team-orchestrator.md +5 -4
  328. package/presets/claude/nuxt/rules/tooling-and-review/anti-sycophancy-discipline.md +1 -0
  329. package/presets/claude/nuxt/rules/tooling-and-review/code-quality.md +26 -24
  330. package/presets/claude/nuxt/rules/tooling-and-review/code-review-mr.md +6 -5
  331. package/presets/claude/nuxt/rules/tooling-and-review/design-guidance.md +55 -54
  332. package/presets/claude/nuxt/rules/tooling-and-review/package-manager.md +9 -8
  333. package/presets/claude/nuxt/rules/tooling-and-review/post-change-lint.md +24 -23
  334. package/presets/claude/nuxt/rules/tooling-and-review/preset-layering.md +13 -13
  335. package/presets/claude/nuxt/rules/tooling-and-review/preset-no-cross-stack-leakage.md +27 -14
  336. package/presets/claude/nuxt/rules/tooling-and-review/preset-pr-checklist.md +7 -7
  337. package/presets/claude/nuxt/rules/tooling-and-review/preset-token-budget.md +3 -4
  338. package/presets/claude/nuxt/rules/tooling-and-review/preset-twin-sync.md +3 -1
  339. package/presets/claude/nuxt/rules/tooling-and-review/technical-retro.md +5 -4
  340. package/presets/claude/nuxt/rules/ui-and-accessibility/README.md +7 -7
  341. package/presets/claude/nuxt/rules/ui-and-accessibility/vue-ui.md +7 -6
  342. package/presets/claude/nuxt/skills/README.md +4 -4
  343. package/presets/claude/nuxt/skills/feature-delivery/SKILL.md +1 -1
  344. package/presets/claude/nuxt/team/README.md +8 -4
  345. package/presets/claude/php-hexagonal/MCP.md +7 -7
  346. package/presets/claude/php-hexagonal/agents/README.md +3 -3
  347. package/presets/claude/php-hexagonal/agents/task-router.md +12 -12
  348. package/presets/claude/php-hexagonal/commands/README.md +9 -9
  349. package/presets/claude/php-hexagonal/commands/feature-continue.md +21 -21
  350. package/presets/claude/php-hexagonal/commands/feature-start.md +16 -16
  351. package/presets/claude/php-hexagonal/commands/task-continue.md +14 -14
  352. package/presets/claude/php-hexagonal/commands/task.md +32 -32
  353. package/presets/claude/php-hexagonal/commands/technical-retro.md +38 -38
  354. package/presets/claude/php-hexagonal/rules/architecture/boundaries.md +11 -10
  355. package/presets/claude/php-hexagonal/rules/stack/README.md +1 -1
  356. package/presets/claude/php-hexagonal/rules/stack/php-app-core.md +11 -10
  357. package/presets/claude/php-hexagonal/rules/tooling-and-review/README.md +1 -1
  358. package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-intake.md +2 -2
  359. package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
  360. package/presets/claude/php-hexagonal/rules/tooling-and-review/code-quality.md +21 -21
  361. package/presets/claude/php-hexagonal/rules/tooling-and-review/code-review.md +4 -4
  362. package/presets/claude/php-hexagonal/rules/tooling-and-review/design-guidance.md +54 -54
  363. package/presets/claude/php-hexagonal/rules/tooling-and-review/post-change-test.md +1 -1
  364. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-layering.md +12 -13
  365. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-no-cross-stack-leakage.md +26 -14
  366. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-pr-checklist.md +6 -7
  367. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-token-budget.md +3 -4
  368. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-twin-sync.md +2 -1
  369. package/presets/claude/php-hexagonal/rules/tooling-and-review/technical-retro.md +3 -3
  370. package/presets/claude/php-hexagonal/team/README.md +1 -1
  371. package/presets/claude/php-laravel/agents/README.md +3 -3
  372. package/presets/claude/php-laravel/agents/task-router.md +14 -14
  373. package/presets/claude/php-laravel/commands/README.md +9 -9
  374. package/presets/claude/php-laravel/commands/feature-continue.md +21 -21
  375. package/presets/claude/php-laravel/commands/feature-start.md +16 -16
  376. package/presets/claude/php-laravel/commands/task-continue.md +14 -14
  377. package/presets/claude/php-laravel/commands/task.md +32 -32
  378. package/presets/claude/php-laravel/commands/technical-retro.md +38 -38
  379. package/presets/claude/php-laravel/rules/api-and-data/events-listeners.md +1 -1
  380. package/presets/claude/php-laravel/rules/architecture/boundaries.md +11 -11
  381. package/presets/claude/php-laravel/rules/stack/laravel-app-core.md +8 -8
  382. package/presets/claude/php-laravel/rules/tooling-and-review/agent-team-intake.md +3 -2
  383. package/presets/claude/php-laravel/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
  384. package/presets/claude/php-laravel/rules/tooling-and-review/code-quality.md +21 -20
  385. package/presets/claude/php-laravel/rules/tooling-and-review/code-review.md +4 -5
  386. package/presets/claude/php-laravel/rules/tooling-and-review/design-guidance.md +54 -54
  387. package/presets/claude/php-laravel/rules/tooling-and-review/post-change-test.md +1 -1
  388. package/presets/claude/php-laravel/rules/tooling-and-review/preset-layering.md +13 -13
  389. package/presets/claude/php-laravel/rules/tooling-and-review/preset-no-cross-stack-leakage.md +27 -14
  390. package/presets/claude/php-laravel/rules/tooling-and-review/preset-pr-checklist.md +7 -7
  391. package/presets/claude/php-laravel/rules/tooling-and-review/preset-token-budget.md +4 -4
  392. package/presets/claude/php-laravel/rules/tooling-and-review/preset-twin-sync.md +3 -1
  393. package/presets/claude/php-laravel/rules/tooling-and-review/technical-retro.md +4 -3
  394. package/presets/claude/php-laravel/team/README.md +1 -1
  395. package/presets/claude/svelte/CLAUDE.md +17 -17
  396. package/presets/claude/svelte/MCP.md +8 -8
  397. package/presets/claude/svelte/README.md +1 -1
  398. package/presets/claude/svelte/agents/README.md +37 -30
  399. package/presets/claude/svelte/agents/feature-developer.md +1 -1
  400. package/presets/claude/svelte/agents/task-analyst.md +1 -1
  401. package/presets/claude/svelte/agents/task-router.md +19 -18
  402. package/presets/claude/svelte/commands/README.md +48 -10
  403. package/presets/claude/svelte/commands/feature-continue.md +9 -41
  404. package/presets/claude/svelte/commands/feature-start.md +19 -16
  405. package/presets/claude/svelte/commands/task-continue.md +14 -14
  406. package/presets/claude/svelte/commands/task.md +33 -33
  407. package/presets/claude/svelte/commands/technical-retro.md +61 -38
  408. package/presets/claude/svelte/rules/README.md +2 -2
  409. package/presets/claude/svelte/rules/api-and-data/README.md +6 -6
  410. package/presets/claude/svelte/rules/api-and-data/api-services.md +14 -14
  411. package/presets/claude/svelte/rules/api-and-data/store-svelte.md +26 -26
  412. package/presets/claude/svelte/rules/architecture/README.md +8 -8
  413. package/presets/claude/svelte/rules/architecture/architecture-boundaries-ui.md +7 -7
  414. package/presets/claude/svelte/rules/architecture/architecture-boundaries.md +19 -19
  415. package/presets/claude/svelte/rules/architecture/feature-delivery-workflow.md +26 -26
  416. package/presets/claude/svelte/rules/architecture/layer-barrel-exports.md +31 -31
  417. package/presets/claude/svelte/rules/architecture/public-imports.md +8 -8
  418. package/presets/claude/svelte/rules/architecture/reference-features.md +18 -18
  419. package/presets/claude/svelte/rules/stack/README.md +8 -8
  420. package/presets/claude/svelte/rules/stack/navigation-router-ui.md +1 -1
  421. package/presets/claude/svelte/rules/stack/navigation-router.md +6 -6
  422. package/presets/claude/svelte/rules/stack/no-type-assertion.md +29 -29
  423. package/presets/claude/svelte/rules/stack/svelte-app-core.md +16 -16
  424. package/presets/claude/svelte/rules/stack/types-jsdoc.md +22 -22
  425. package/presets/claude/svelte/rules/testing/README.md +5 -5
  426. package/presets/claude/svelte/rules/testing/tests-e2e-structure.md +45 -46
  427. package/presets/claude/svelte/rules/testing/tests-unit.md +17 -17
  428. package/presets/claude/svelte/rules/tooling-and-review/README.md +9 -9
  429. package/presets/claude/svelte/rules/tooling-and-review/agent-team-intake.md +2 -2
  430. package/presets/claude/svelte/rules/tooling-and-review/agent-team-orchestrator.md +9 -9
  431. package/presets/claude/svelte/rules/tooling-and-review/code-quality.md +25 -24
  432. package/presets/claude/svelte/rules/tooling-and-review/code-review-mr.md +5 -5
  433. package/presets/claude/svelte/rules/tooling-and-review/design-guidance.md +54 -54
  434. package/presets/claude/svelte/rules/tooling-and-review/package-manager.md +8 -8
  435. package/presets/claude/svelte/rules/tooling-and-review/post-change-lint.md +23 -23
  436. package/presets/claude/svelte/rules/tooling-and-review/preset-layering.md +12 -13
  437. package/presets/claude/svelte/rules/tooling-and-review/preset-no-cross-stack-leakage.md +26 -14
  438. package/presets/claude/svelte/rules/tooling-and-review/preset-pr-checklist.md +6 -7
  439. package/presets/claude/svelte/rules/tooling-and-review/preset-token-budget.md +3 -4
  440. package/presets/claude/svelte/rules/tooling-and-review/preset-twin-sync.md +2 -1
  441. package/presets/claude/svelte/rules/tooling-and-review/technical-retro.md +4 -4
  442. package/presets/claude/svelte/rules/ui-and-accessibility/README.md +7 -7
  443. package/presets/claude/svelte/rules/ui-and-accessibility/svelte-ui.md +6 -6
  444. package/presets/claude/svelte/skills/README.md +4 -4
  445. package/presets/claude/svelte/skills/feature-delivery/SKILL.md +1 -1
  446. package/presets/claude/svelte/team/README.md +8 -4
  447. package/presets/cursor/android-kotlin/AGENTS.md +50 -0
  448. package/presets/cursor/android-kotlin/BUGBOT.md +16 -0
  449. package/presets/cursor/android-kotlin/MCP.md +16 -0
  450. package/presets/cursor/android-kotlin/README.md +35 -0
  451. package/presets/cursor/android-kotlin/REPO_AGENTS.md +48 -0
  452. package/presets/cursor/android-kotlin/agents/README.md +44 -0
  453. package/presets/cursor/android-kotlin/agents/accessibility-reviewer.md +60 -0
  454. package/presets/cursor/android-kotlin/agents/api-contract-reviewer.md +70 -0
  455. package/presets/cursor/android-kotlin/agents/build-verifier.md +67 -0
  456. package/presets/cursor/android-kotlin/agents/ci-investigator.md +74 -0
  457. package/presets/cursor/android-kotlin/agents/code-reviewer.md +74 -0
  458. package/presets/cursor/android-kotlin/agents/codebase-analyzer.md +28 -0
  459. package/presets/cursor/android-kotlin/agents/debugger.md +77 -0
  460. package/presets/cursor/android-kotlin/agents/feature-developer.md +63 -0
  461. package/presets/cursor/android-kotlin/agents/instrumentation-test-generator.md +19 -0
  462. package/presets/cursor/android-kotlin/agents/instrumentation-test-healer.md +19 -0
  463. package/presets/cursor/android-kotlin/agents/instrumentation-test-planner.md +19 -0
  464. package/presets/cursor/android-kotlin/agents/migration-specialist.md +74 -0
  465. package/presets/cursor/android-kotlin/agents/performance-auditor.md +67 -0
  466. package/presets/cursor/android-kotlin/agents/qa-tester.md +66 -0
  467. package/presets/cursor/android-kotlin/agents/security-reviewer.md +65 -0
  468. package/presets/cursor/android-kotlin/agents/solution-architect.md +21 -0
  469. package/presets/cursor/android-kotlin/agents/task-analyst.md +36 -0
  470. package/presets/cursor/android-kotlin/agents/task-router.md +103 -0
  471. package/presets/cursor/android-kotlin/agents/tech-writer.md +61 -0
  472. package/presets/cursor/android-kotlin/agents/unit-test-generator.md +55 -0
  473. package/presets/cursor/android-kotlin/agents/unit-test-healer.md +54 -0
  474. package/presets/cursor/android-kotlin/agents/unit-test-planner.md +65 -0
  475. package/presets/cursor/android-kotlin/commands/README.md +51 -0
  476. package/presets/cursor/android-kotlin/commands/feature-continue.md +19 -0
  477. package/presets/cursor/android-kotlin/commands/feature-start.md +33 -0
  478. package/presets/cursor/android-kotlin/commands/task-continue.md +50 -0
  479. package/presets/cursor/android-kotlin/commands/task.md +56 -0
  480. package/presets/cursor/android-kotlin/commands/technical-retro.md +85 -0
  481. package/presets/cursor/android-kotlin/hooks/README.md +12 -0
  482. package/presets/cursor/android-kotlin/hooks/chain-team-phases.sh +723 -0
  483. package/presets/cursor/android-kotlin/hooks/examples/README.md +18 -0
  484. package/presets/cursor/android-kotlin/hooks/examples/format-edited.example.sh +13 -0
  485. package/presets/cursor/android-kotlin/hooks/examples/secret-guard.example.sh +10 -0
  486. package/presets/cursor/android-kotlin/hooks/examples/test-on-save.example.sh +8 -0
  487. package/presets/cursor/android-kotlin/hooks/guard-shell-command.sh +80 -0
  488. package/presets/cursor/android-kotlin/hooks.json +17 -0
  489. package/presets/cursor/android-kotlin/mcp.json +11 -0
  490. package/presets/cursor/android-kotlin/rules/README.md +61 -0
  491. package/presets/cursor/android-kotlin/rules/agent-team-intake.mdc +16 -0
  492. package/presets/cursor/android-kotlin/rules/agent-team-orchestrator.mdc +124 -0
  493. package/presets/cursor/android-kotlin/rules/android-app-core.mdc +28 -0
  494. package/presets/cursor/android-kotlin/rules/anti-sycophancy-discipline.mdc +30 -0
  495. package/presets/cursor/android-kotlin/rules/architecture-boundaries.mdc +28 -0
  496. package/presets/cursor/android-kotlin/rules/code-quality-and-refactoring.mdc +53 -0
  497. package/presets/cursor/android-kotlin/rules/code-review-mr.mdc +84 -0
  498. package/presets/cursor/android-kotlin/rules/compose-ui.mdc +32 -0
  499. package/presets/cursor/android-kotlin/rules/design-guidance.mdc +111 -0
  500. package/presets/cursor/android-kotlin/rules/di-dagger-feature-holders.mdc +35 -0
  501. package/presets/cursor/android-kotlin/rules/feature-delivery-workflow.mdc +36 -0
  502. package/presets/cursor/android-kotlin/rules/gradle-tooling.mdc +31 -0
  503. package/presets/cursor/android-kotlin/rules/kotlin-conventions.mdc +31 -0
  504. package/presets/cursor/android-kotlin/rules/module-public-api.mdc +30 -0
  505. package/presets/cursor/android-kotlin/rules/navigation-feature-launcher.mdc +31 -0
  506. package/presets/cursor/android-kotlin/rules/networking-data.mdc +31 -0
  507. package/presets/cursor/android-kotlin/rules/persistence-data.mdc +30 -0
  508. package/presets/cursor/android-kotlin/rules/post-change-build.mdc +30 -0
  509. package/presets/cursor/android-kotlin/rules/preset-layering.mdc +36 -0
  510. package/presets/cursor/android-kotlin/rules/preset-no-cross-stack-leakage.mdc +100 -0
  511. package/presets/cursor/android-kotlin/rules/preset-pr-checklist.mdc +39 -0
  512. package/presets/cursor/android-kotlin/rules/preset-token-budget.mdc +41 -0
  513. package/presets/cursor/android-kotlin/rules/preset-twin-sync.mdc +56 -0
  514. package/presets/cursor/android-kotlin/rules/reference-features.mdc +29 -0
  515. package/presets/cursor/android-kotlin/rules/security-android.mdc +30 -0
  516. package/presets/cursor/android-kotlin/rules/state-and-viewmodels.mdc +28 -0
  517. package/presets/cursor/android-kotlin/rules/technical-retro.mdc +16 -0
  518. package/presets/cursor/android-kotlin/rules/tests-ui.mdc +29 -0
  519. package/presets/cursor/android-kotlin/rules/tests-unit.mdc +30 -0
  520. package/presets/cursor/android-kotlin/skills/README.md +14 -0
  521. package/presets/cursor/android-kotlin/skills/ci-investigation/SKILL.md +39 -0
  522. package/presets/cursor/android-kotlin/skills/code-review/SKILL.md +39 -0
  523. package/presets/cursor/android-kotlin/skills/debug-investigation/SKILL.md +34 -0
  524. package/presets/cursor/android-kotlin/skills/feature-delivery/SKILL.md +35 -0
  525. package/presets/cursor/android-kotlin/skills/instrumentation-ui-e2e/SKILL.md +17 -0
  526. package/presets/cursor/android-kotlin/skills/technical-retro/SKILL.md +54 -0
  527. package/presets/cursor/android-kotlin/skills/unit-testing/SKILL.md +32 -0
  528. package/presets/cursor/android-kotlin/skills/write-adr/SKILL.md +41 -0
  529. package/presets/cursor/android-kotlin/team/README.md +54 -0
  530. package/presets/cursor/android-kotlin/team/conventions.md +17 -0
  531. package/presets/cursor/android-kotlin/team/fixtures/bugfix-standard.json +47 -0
  532. package/presets/cursor/android-kotlin/team/fixtures/feature-full.json +97 -0
  533. package/presets/cursor/android-kotlin/team/fixtures/feature-light.json +38 -0
  534. package/presets/cursor/go/AGENTS.md +10 -10
  535. package/presets/cursor/go/MCP.md +7 -7
  536. package/presets/cursor/go/README.md +4 -4
  537. package/presets/cursor/go/agents/README.md +3 -3
  538. package/presets/cursor/go/agents/task-router.md +13 -13
  539. package/presets/cursor/go/commands/README.md +23 -23
  540. package/presets/cursor/go/commands/feature-continue.md +8 -8
  541. package/presets/cursor/go/commands/feature-start.md +17 -17
  542. package/presets/cursor/go/commands/task-continue.md +14 -14
  543. package/presets/cursor/go/commands/task.md +32 -32
  544. package/presets/cursor/go/commands/technical-retro.md +49 -49
  545. package/presets/cursor/go/rules/README.md +3 -3
  546. package/presets/cursor/go/rules/agent-team-intake.mdc +2 -2
  547. package/presets/cursor/go/rules/agent-team-orchestrator.mdc +4 -4
  548. package/presets/cursor/go/rules/architecture-boundaries.mdc +10 -10
  549. package/presets/cursor/go/rules/code-quality-and-refactoring.mdc +21 -20
  550. package/presets/cursor/go/rules/code-review-mr.mdc +4 -4
  551. package/presets/cursor/go/rules/design-guidance.mdc +54 -54
  552. package/presets/cursor/go/rules/go-app-core.mdc +11 -11
  553. package/presets/cursor/go/rules/post-change-test.mdc +1 -1
  554. package/presets/cursor/go/rules/preset-layering.mdc +12 -13
  555. package/presets/cursor/go/rules/preset-no-cross-stack-leakage.mdc +26 -14
  556. package/presets/cursor/go/rules/preset-pr-checklist.mdc +6 -7
  557. package/presets/cursor/go/rules/preset-token-budget.mdc +3 -4
  558. package/presets/cursor/go/rules/preset-twin-sync.mdc +2 -1
  559. package/presets/cursor/go/rules/technical-retro.mdc +3 -3
  560. package/presets/cursor/go/team/README.md +1 -1
  561. package/presets/cursor/ios-swift/AGENTS.md +20 -20
  562. package/presets/cursor/ios-swift/MCP.md +8 -8
  563. package/presets/cursor/ios-swift/README.md +9 -9
  564. package/presets/cursor/ios-swift/agents/README.md +7 -7
  565. package/presets/cursor/ios-swift/agents/feature-developer.md +1 -1
  566. package/presets/cursor/ios-swift/agents/task-analyst.md +1 -1
  567. package/presets/cursor/ios-swift/agents/task-router.md +16 -16
  568. package/presets/cursor/ios-swift/commands/README.md +23 -23
  569. package/presets/cursor/ios-swift/commands/feature-continue.md +8 -8
  570. package/presets/cursor/ios-swift/commands/feature-start.md +17 -17
  571. package/presets/cursor/ios-swift/commands/task-continue.md +14 -14
  572. package/presets/cursor/ios-swift/commands/task.md +33 -33
  573. package/presets/cursor/ios-swift/commands/technical-retro.md +50 -50
  574. package/presets/cursor/ios-swift/rules/README.md +23 -23
  575. package/presets/cursor/ios-swift/rules/agent-team-intake.mdc +2 -2
  576. package/presets/cursor/ios-swift/rules/agent-team-orchestrator.mdc +2 -2
  577. package/presets/cursor/ios-swift/rules/architecture-boundaries.mdc +20 -20
  578. package/presets/cursor/ios-swift/rules/code-quality-and-refactoring.mdc +25 -24
  579. package/presets/cursor/ios-swift/rules/code-review-mr.mdc +40 -40
  580. package/presets/cursor/ios-swift/rules/design-guidance.mdc +54 -54
  581. package/presets/cursor/ios-swift/rules/feature-delivery-workflow.mdc +30 -30
  582. package/presets/cursor/ios-swift/rules/ios-app-core.mdc +10 -10
  583. package/presets/cursor/ios-swift/rules/module-public-api.mdc +11 -11
  584. package/presets/cursor/ios-swift/rules/navigation-coordinators.mdc +13 -13
  585. package/presets/cursor/ios-swift/rules/networking-services.mdc +31 -31
  586. package/presets/cursor/ios-swift/rules/persistence-data.mdc +13 -13
  587. package/presets/cursor/ios-swift/rules/post-change-build.mdc +18 -18
  588. package/presets/cursor/ios-swift/rules/preset-layering.mdc +12 -13
  589. package/presets/cursor/ios-swift/rules/preset-no-cross-stack-leakage.mdc +26 -14
  590. package/presets/cursor/ios-swift/rules/preset-pr-checklist.mdc +6 -7
  591. package/presets/cursor/ios-swift/rules/preset-token-budget.mdc +3 -4
  592. package/presets/cursor/ios-swift/rules/preset-twin-sync.mdc +2 -1
  593. package/presets/cursor/ios-swift/rules/reference-features.mdc +22 -22
  594. package/presets/cursor/ios-swift/rules/security-ios.mdc +14 -14
  595. package/presets/cursor/ios-swift/rules/state-and-viewmodels.mdc +24 -24
  596. package/presets/cursor/ios-swift/rules/swift-conventions.mdc +17 -17
  597. package/presets/cursor/ios-swift/rules/swiftui-ui.mdc +39 -39
  598. package/presets/cursor/ios-swift/rules/technical-retro.mdc +4 -4
  599. package/presets/cursor/ios-swift/rules/tests-ui.mdc +27 -26
  600. package/presets/cursor/ios-swift/rules/tests-unit.mdc +25 -25
  601. package/presets/cursor/ios-swift/rules/xcode-tooling.mdc +11 -11
  602. package/presets/cursor/ios-swift/skills/README.md +3 -3
  603. package/presets/cursor/ios-swift/team/README.md +1 -1
  604. package/presets/cursor/java/AGENTS.md +10 -10
  605. package/presets/cursor/java/MCP.md +6 -6
  606. package/presets/cursor/java/agents/README.md +3 -3
  607. package/presets/cursor/java/agents/task-router.md +13 -13
  608. package/presets/cursor/java/commands/README.md +23 -23
  609. package/presets/cursor/java/commands/feature-continue.md +8 -8
  610. package/presets/cursor/java/commands/feature-start.md +17 -17
  611. package/presets/cursor/java/commands/task-continue.md +14 -14
  612. package/presets/cursor/java/commands/task.md +32 -32
  613. package/presets/cursor/java/commands/technical-retro.md +49 -49
  614. package/presets/cursor/java/rules/README.md +2 -2
  615. package/presets/cursor/java/rules/agent-team-intake.mdc +2 -2
  616. package/presets/cursor/java/rules/agent-team-orchestrator.mdc +4 -4
  617. package/presets/cursor/java/rules/architecture-boundaries.mdc +10 -10
  618. package/presets/cursor/java/rules/code-quality-and-refactoring.mdc +21 -20
  619. package/presets/cursor/java/rules/code-review-mr.mdc +4 -4
  620. package/presets/cursor/java/rules/design-guidance.mdc +54 -54
  621. package/presets/cursor/java/rules/java-app-core.mdc +9 -9
  622. package/presets/cursor/java/rules/post-change-test.mdc +1 -1
  623. package/presets/cursor/java/rules/preset-layering.mdc +12 -13
  624. package/presets/cursor/java/rules/preset-no-cross-stack-leakage.mdc +26 -14
  625. package/presets/cursor/java/rules/preset-pr-checklist.mdc +6 -7
  626. package/presets/cursor/java/rules/preset-token-budget.mdc +3 -4
  627. package/presets/cursor/java/rules/preset-twin-sync.mdc +2 -1
  628. package/presets/cursor/java/rules/technical-retro.mdc +3 -3
  629. package/presets/cursor/java/team/README.md +1 -1
  630. package/presets/cursor/mcp-ts/AGENTS.md +6 -6
  631. package/presets/cursor/mcp-ts/MCP.md +5 -5
  632. package/presets/cursor/mcp-ts/agents/task-router.md +7 -7
  633. package/presets/cursor/mcp-ts/commands/README.md +1 -1
  634. package/presets/cursor/mcp-ts/commands/feature-continue.md +8 -8
  635. package/presets/cursor/mcp-ts/commands/feature-start.md +17 -17
  636. package/presets/cursor/mcp-ts/commands/task-continue.md +14 -14
  637. package/presets/cursor/mcp-ts/commands/task.md +32 -32
  638. package/presets/cursor/mcp-ts/commands/technical-retro.md +50 -50
  639. package/presets/cursor/mcp-ts/rules/README.md +1 -1
  640. package/presets/cursor/mcp-ts/rules/agent-team-intake.mdc +3 -3
  641. package/presets/cursor/mcp-ts/rules/agent-team-orchestrator.mdc +4 -4
  642. package/presets/cursor/mcp-ts/rules/code-quality-and-refactoring.mdc +21 -20
  643. package/presets/cursor/mcp-ts/rules/code-review-mr.mdc +5 -4
  644. package/presets/cursor/mcp-ts/rules/design-guidance.mdc +55 -54
  645. package/presets/cursor/mcp-ts/rules/mcp-server-boundaries.mdc +2 -2
  646. package/presets/cursor/mcp-ts/rules/mcp-ts-app-core.mdc +9 -9
  647. package/presets/cursor/mcp-ts/rules/post-change-test.mdc +1 -1
  648. package/presets/cursor/mcp-ts/rules/preset-layering.mdc +12 -13
  649. package/presets/cursor/mcp-ts/rules/preset-no-cross-stack-leakage.mdc +26 -14
  650. package/presets/cursor/mcp-ts/rules/preset-pr-checklist.mdc +6 -7
  651. package/presets/cursor/mcp-ts/rules/preset-token-budget.mdc +3 -4
  652. package/presets/cursor/mcp-ts/rules/preset-twin-sync.mdc +2 -1
  653. package/presets/cursor/mcp-ts/rules/technical-retro.mdc +3 -3
  654. package/presets/cursor/next/AGENTS.md +15 -15
  655. package/presets/cursor/next/MCP.md +9 -9
  656. package/presets/cursor/next/README.md +9 -9
  657. package/presets/cursor/next/agents/README.md +22 -22
  658. package/presets/cursor/next/agents/feature-developer.md +1 -1
  659. package/presets/cursor/next/agents/task-analyst.md +1 -1
  660. package/presets/cursor/next/agents/task-router.md +16 -16
  661. package/presets/cursor/next/commands/README.md +22 -22
  662. package/presets/cursor/next/commands/feature-continue.md +8 -8
  663. package/presets/cursor/next/commands/feature-start.md +17 -17
  664. package/presets/cursor/next/commands/task-continue.md +14 -14
  665. package/presets/cursor/next/commands/task.md +33 -33
  666. package/presets/cursor/next/commands/technical-retro.md +49 -49
  667. package/presets/cursor/next/rules/README.md +52 -52
  668. package/presets/cursor/next/rules/agent-team-intake.mdc +2 -2
  669. package/presets/cursor/next/rules/agent-team-orchestrator.mdc +4 -4
  670. package/presets/cursor/next/rules/api-services.mdc +43 -43
  671. package/presets/cursor/next/rules/architecture-boundaries-ui.mdc +7 -7
  672. package/presets/cursor/next/rules/architecture-boundaries.mdc +45 -45
  673. package/presets/cursor/next/rules/arrow-functions.mdc +8 -8
  674. package/presets/cursor/next/rules/code-quality-and-refactoring.mdc +25 -24
  675. package/presets/cursor/next/rules/code-review-mr.mdc +5 -5
  676. package/presets/cursor/next/rules/css-property-order-stylelint.mdc +4 -4
  677. package/presets/cursor/next/rules/design-guidance.mdc +54 -54
  678. package/presets/cursor/next/rules/feature-delivery-workflow.mdc +43 -43
  679. package/presets/cursor/next/rules/http-client.mdc +23 -22
  680. package/presets/cursor/next/rules/layer-barrel-exports.mdc +31 -30
  681. package/presets/cursor/next/rules/navigation-router-stack.mdc +37 -37
  682. package/presets/cursor/next/rules/navigation-router-ui.mdc +7 -7
  683. package/presets/cursor/next/rules/next-app-core.mdc +16 -16
  684. package/presets/cursor/next/rules/next-app-router.mdc +17 -17
  685. package/presets/cursor/next/rules/no-props-spread.mdc +20 -20
  686. package/presets/cursor/next/rules/no-type-assertion-as-import-export.mdc +29 -29
  687. package/presets/cursor/next/rules/package-manager.mdc +8 -8
  688. package/presets/cursor/next/rules/post-change-lint.mdc +22 -22
  689. package/presets/cursor/next/rules/preset-layering.mdc +12 -13
  690. package/presets/cursor/next/rules/preset-no-cross-stack-leakage.mdc +26 -14
  691. package/presets/cursor/next/rules/preset-pr-checklist.mdc +6 -7
  692. package/presets/cursor/next/rules/preset-token-budget.mdc +3 -4
  693. package/presets/cursor/next/rules/preset-twin-sync.mdc +2 -1
  694. package/presets/cursor/next/rules/public-imports.mdc +14 -14
  695. package/presets/cursor/next/rules/react-a11y-coding.mdc +21 -21
  696. package/presets/cursor/next/rules/react-ui.mdc +66 -66
  697. package/presets/cursor/next/rules/reference-features.mdc +17 -17
  698. package/presets/cursor/next/rules/store-rtk.mdc +60 -60
  699. package/presets/cursor/next/rules/technical-retro.mdc +4 -4
  700. package/presets/cursor/next/rules/tests-e2e-structure.mdc +46 -46
  701. package/presets/cursor/next/rules/tests-unit.mdc +51 -52
  702. package/presets/cursor/next/rules/types-jsdoc.mdc +29 -22
  703. package/presets/cursor/next/skills/feature-delivery/SKILL.md +1 -1
  704. package/presets/cursor/next/team/README.md +2 -2
  705. package/presets/cursor/nuxt/AGENTS.md +15 -15
  706. package/presets/cursor/nuxt/MCP.md +9 -9
  707. package/presets/cursor/nuxt/README.md +10 -10
  708. package/presets/cursor/nuxt/agents/README.md +30 -30
  709. package/presets/cursor/nuxt/agents/feature-developer.md +1 -1
  710. package/presets/cursor/nuxt/agents/task-analyst.md +1 -1
  711. package/presets/cursor/nuxt/agents/task-router.md +16 -16
  712. package/presets/cursor/nuxt/commands/README.md +24 -24
  713. package/presets/cursor/nuxt/commands/feature-continue.md +8 -8
  714. package/presets/cursor/nuxt/commands/feature-start.md +17 -17
  715. package/presets/cursor/nuxt/commands/task-continue.md +14 -14
  716. package/presets/cursor/nuxt/commands/task.md +33 -33
  717. package/presets/cursor/nuxt/commands/technical-retro.md +50 -50
  718. package/presets/cursor/nuxt/rules/README.md +53 -53
  719. package/presets/cursor/nuxt/rules/agent-team-intake.mdc +2 -2
  720. package/presets/cursor/nuxt/rules/agent-team-orchestrator.mdc +4 -4
  721. package/presets/cursor/nuxt/rules/api-services.mdc +43 -43
  722. package/presets/cursor/nuxt/rules/architecture-boundaries-ui.mdc +7 -7
  723. package/presets/cursor/nuxt/rules/architecture-boundaries.mdc +58 -58
  724. package/presets/cursor/nuxt/rules/code-quality-and-refactoring.mdc +25 -24
  725. package/presets/cursor/nuxt/rules/code-review-mr.mdc +5 -5
  726. package/presets/cursor/nuxt/rules/design-guidance.mdc +54 -54
  727. package/presets/cursor/nuxt/rules/feature-delivery-workflow.mdc +44 -44
  728. package/presets/cursor/nuxt/rules/layer-barrel-exports.mdc +31 -31
  729. package/presets/cursor/nuxt/rules/navigation-router-stack.mdc +38 -38
  730. package/presets/cursor/nuxt/rules/navigation-router-ui.mdc +7 -7
  731. package/presets/cursor/nuxt/rules/no-type-assertion-as-import-export.mdc +29 -29
  732. package/presets/cursor/nuxt/rules/nuxt-app-core.mdc +16 -16
  733. package/presets/cursor/nuxt/rules/package-manager.mdc +8 -8
  734. package/presets/cursor/nuxt/rules/post-change-lint.mdc +23 -23
  735. package/presets/cursor/nuxt/rules/preset-layering.mdc +12 -13
  736. package/presets/cursor/nuxt/rules/preset-no-cross-stack-leakage.mdc +26 -14
  737. package/presets/cursor/nuxt/rules/preset-pr-checklist.mdc +6 -7
  738. package/presets/cursor/nuxt/rules/preset-token-budget.mdc +3 -4
  739. package/presets/cursor/nuxt/rules/preset-twin-sync.mdc +2 -1
  740. package/presets/cursor/nuxt/rules/public-imports.mdc +14 -14
  741. package/presets/cursor/nuxt/rules/reference-features.mdc +17 -17
  742. package/presets/cursor/nuxt/rules/store-pinia.mdc +26 -26
  743. package/presets/cursor/nuxt/rules/technical-retro.mdc +4 -4
  744. package/presets/cursor/nuxt/rules/tests-e2e-structure.mdc +45 -46
  745. package/presets/cursor/nuxt/rules/tests-unit.mdc +51 -52
  746. package/presets/cursor/nuxt/rules/types-jsdoc.mdc +22 -22
  747. package/presets/cursor/nuxt/rules/vue-ui.mdc +6 -6
  748. package/presets/cursor/nuxt/skills/feature-delivery/SKILL.md +1 -1
  749. package/presets/cursor/nuxt/team/README.md +2 -2
  750. package/presets/cursor/php-hexagonal/AGENTS.md +11 -11
  751. package/presets/cursor/php-hexagonal/MCP.md +7 -7
  752. package/presets/cursor/php-hexagonal/agents/README.md +4 -4
  753. package/presets/cursor/php-hexagonal/agents/task-router.md +12 -12
  754. package/presets/cursor/php-hexagonal/commands/README.md +25 -25
  755. package/presets/cursor/php-hexagonal/commands/feature-continue.md +8 -8
  756. package/presets/cursor/php-hexagonal/commands/feature-start.md +17 -17
  757. package/presets/cursor/php-hexagonal/commands/task-continue.md +14 -14
  758. package/presets/cursor/php-hexagonal/commands/task.md +32 -32
  759. package/presets/cursor/php-hexagonal/commands/technical-retro.md +49 -49
  760. package/presets/cursor/php-hexagonal/rules/README.md +2 -2
  761. package/presets/cursor/php-hexagonal/rules/agent-team-intake.mdc +2 -2
  762. package/presets/cursor/php-hexagonal/rules/agent-team-orchestrator.mdc +4 -4
  763. package/presets/cursor/php-hexagonal/rules/architecture-boundaries.mdc +10 -10
  764. package/presets/cursor/php-hexagonal/rules/code-quality-and-refactoring.mdc +20 -20
  765. package/presets/cursor/php-hexagonal/rules/code-review-mr.mdc +4 -4
  766. package/presets/cursor/php-hexagonal/rules/design-guidance.mdc +54 -54
  767. package/presets/cursor/php-hexagonal/rules/php-app-core.mdc +10 -10
  768. package/presets/cursor/php-hexagonal/rules/post-change-test.mdc +1 -1
  769. package/presets/cursor/php-hexagonal/rules/preset-layering.mdc +12 -13
  770. package/presets/cursor/php-hexagonal/rules/preset-no-cross-stack-leakage.mdc +26 -14
  771. package/presets/cursor/php-hexagonal/rules/preset-pr-checklist.mdc +6 -7
  772. package/presets/cursor/php-hexagonal/rules/preset-token-budget.mdc +3 -4
  773. package/presets/cursor/php-hexagonal/rules/preset-twin-sync.mdc +2 -1
  774. package/presets/cursor/php-hexagonal/rules/technical-retro.mdc +3 -3
  775. package/presets/cursor/php-hexagonal/team/README.md +1 -1
  776. package/presets/cursor/php-laravel/AGENTS.md +10 -10
  777. package/presets/cursor/php-laravel/agents/README.md +4 -4
  778. package/presets/cursor/php-laravel/agents/task-router.md +14 -14
  779. package/presets/cursor/php-laravel/commands/README.md +25 -25
  780. package/presets/cursor/php-laravel/commands/feature-continue.md +8 -8
  781. package/presets/cursor/php-laravel/commands/feature-start.md +17 -17
  782. package/presets/cursor/php-laravel/commands/task-continue.md +14 -14
  783. package/presets/cursor/php-laravel/commands/task.md +32 -32
  784. package/presets/cursor/php-laravel/commands/technical-retro.md +50 -50
  785. package/presets/cursor/php-laravel/rules/README.md +2 -2
  786. package/presets/cursor/php-laravel/rules/agent-team-intake.mdc +2 -2
  787. package/presets/cursor/php-laravel/rules/agent-team-orchestrator.mdc +4 -4
  788. package/presets/cursor/php-laravel/rules/architecture-boundaries.mdc +11 -11
  789. package/presets/cursor/php-laravel/rules/code-quality-and-refactoring.mdc +20 -20
  790. package/presets/cursor/php-laravel/rules/code-review-mr.mdc +4 -5
  791. package/presets/cursor/php-laravel/rules/design-guidance.mdc +54 -54
  792. package/presets/cursor/php-laravel/rules/events-listeners.mdc +1 -1
  793. package/presets/cursor/php-laravel/rules/laravel-app-core.mdc +8 -8
  794. package/presets/cursor/php-laravel/rules/post-change-test.mdc +1 -1
  795. package/presets/cursor/php-laravel/rules/preset-layering.mdc +12 -13
  796. package/presets/cursor/php-laravel/rules/preset-no-cross-stack-leakage.mdc +26 -14
  797. package/presets/cursor/php-laravel/rules/preset-pr-checklist.mdc +6 -7
  798. package/presets/cursor/php-laravel/rules/preset-token-budget.mdc +3 -4
  799. package/presets/cursor/php-laravel/rules/preset-twin-sync.mdc +2 -1
  800. package/presets/cursor/php-laravel/rules/technical-retro.mdc +3 -3
  801. package/presets/cursor/php-laravel/team/README.md +1 -1
  802. package/presets/cursor/svelte/AGENTS.md +15 -15
  803. package/presets/cursor/svelte/MCP.md +9 -9
  804. package/presets/cursor/svelte/README.md +9 -9
  805. package/presets/cursor/svelte/agents/README.md +29 -29
  806. package/presets/cursor/svelte/agents/feature-developer.md +1 -1
  807. package/presets/cursor/svelte/agents/task-analyst.md +1 -1
  808. package/presets/cursor/svelte/agents/task-router.md +16 -16
  809. package/presets/cursor/svelte/commands/README.md +24 -24
  810. package/presets/cursor/svelte/commands/feature-continue.md +8 -8
  811. package/presets/cursor/svelte/commands/feature-start.md +17 -17
  812. package/presets/cursor/svelte/commands/task-continue.md +14 -14
  813. package/presets/cursor/svelte/commands/task.md +33 -33
  814. package/presets/cursor/svelte/commands/technical-retro.md +50 -50
  815. package/presets/cursor/svelte/rules/README.md +34 -34
  816. package/presets/cursor/svelte/rules/agent-team-intake.mdc +2 -2
  817. package/presets/cursor/svelte/rules/agent-team-orchestrator.mdc +4 -4
  818. package/presets/cursor/svelte/rules/api-services.mdc +14 -14
  819. package/presets/cursor/svelte/rules/architecture-boundaries-ui.mdc +7 -7
  820. package/presets/cursor/svelte/rules/architecture-boundaries.mdc +19 -19
  821. package/presets/cursor/svelte/rules/code-quality-and-refactoring.mdc +25 -24
  822. package/presets/cursor/svelte/rules/code-review-mr.mdc +5 -5
  823. package/presets/cursor/svelte/rules/design-guidance.mdc +54 -54
  824. package/presets/cursor/svelte/rules/feature-delivery-workflow.mdc +26 -26
  825. package/presets/cursor/svelte/rules/layer-barrel-exports.mdc +31 -31
  826. package/presets/cursor/svelte/rules/navigation-router-stack.mdc +6 -6
  827. package/presets/cursor/svelte/rules/navigation-router-ui.mdc +1 -1
  828. package/presets/cursor/svelte/rules/no-type-assertion-as-import-export.mdc +29 -29
  829. package/presets/cursor/svelte/rules/package-manager.mdc +8 -8
  830. package/presets/cursor/svelte/rules/post-change-lint.mdc +23 -23
  831. package/presets/cursor/svelte/rules/preset-layering.mdc +12 -13
  832. package/presets/cursor/svelte/rules/preset-no-cross-stack-leakage.mdc +26 -14
  833. package/presets/cursor/svelte/rules/preset-pr-checklist.mdc +6 -7
  834. package/presets/cursor/svelte/rules/preset-token-budget.mdc +3 -4
  835. package/presets/cursor/svelte/rules/preset-twin-sync.mdc +2 -1
  836. package/presets/cursor/svelte/rules/public-imports.mdc +8 -8
  837. package/presets/cursor/svelte/rules/reference-features.mdc +17 -17
  838. package/presets/cursor/svelte/rules/store-svelte.mdc +26 -26
  839. package/presets/cursor/svelte/rules/svelte-app-core.mdc +16 -16
  840. package/presets/cursor/svelte/rules/svelte-ui.mdc +6 -6
  841. package/presets/cursor/svelte/rules/technical-retro.mdc +4 -4
  842. package/presets/cursor/svelte/rules/tests-e2e-structure.mdc +45 -46
  843. package/presets/cursor/svelte/rules/tests-unit.mdc +17 -17
  844. package/presets/cursor/svelte/rules/types-jsdoc.mdc +22 -22
  845. package/presets/cursor/svelte/skills/feature-delivery/SKILL.md +1 -1
  846. package/presets/cursor/svelte/team/README.md +2 -2
@@ -9,18 +9,18 @@ alwaysApply: false
9
9
 
10
10
  <!-- shared-core: meta/preset-no-cross-stack-leakage.md -->
11
11
 
12
-
13
12
  # Preset no cross-stack leakage
14
13
 
15
- Запрет протекания stack-specific имён, путей и handoff stems между пресетами.
14
+ Ban leakage of stack-specific names, paths, and handoff stems across presets.
16
15
 
17
16
  ## Principles
18
17
 
19
- - `next` must not require iOS-only agents/tooling (`xcuitest-*`, `xcodebuild` as required handoff, Keychain-only rules).
20
- - `nuxt` must not require iOS-only agents/tooling (`xcuitest-*`, `xcodebuild` as required handoff, Keychain-only rules).
21
- - `svelte` must not require iOS-only agents/tooling (`xcuitest-*`, `xcodebuild` as required handoff, Keychain-only rules).
22
- - `ios-swift` must not ship Playwright handoffs or Next lint recipes as required commands.
23
- - `go` / `java` / `php-hexagonal` / `php-laravel` / `mcp-ts` must not ship Playwright, XCUITest, Next lint recipes, or `xcodebuild`/`SwiftLint` as required handoffs.
18
+ - `next` must not require iOS-only or Android-only agents/tooling (`xcuitest-*`, `instrumentation-test-*`, `xcodebuild` as required handoff, Keychain-only rules).
19
+ - `nuxt` must not require iOS-only or Android-only agents/tooling (`xcuitest-*`, `instrumentation-test-*`, `xcodebuild` as required handoff, Keychain-only rules).
20
+ - `svelte` must not require iOS-only or Android-only agents/tooling (`xcuitest-*`, `instrumentation-test-*`, `xcodebuild` as required handoff, Keychain-only rules).
21
+ - `ios-swift` must not ship Playwright handoffs, Android `instrumentation-test-*` handoffs, or Next lint recipes as required commands.
22
+ - `android-kotlin` must not ship Playwright, XCUITest, `xcodebuild`, or Next lint recipes as required handoffs.
23
+ - `go` / `java` / `php-hexagonal` / `php-laravel` / `mcp-ts` must not ship Playwright, XCUITest, Android instrumentation agents, Next lint recipes, or `xcodebuild`/`SwiftLint` as required handoffs.
24
24
  - `mcp-ts` must not ship Go tool commands (`go test`, `go vet`, `golangci-lint`) or `integration-test-*` agents as required delivery gates.
25
25
  - Shared core must not embed stack paths (`app/src/**`, `Features/**`, `playwright`, `xcodebuild`).
26
26
 
@@ -29,25 +29,37 @@ alwaysApply: false
29
29
  In ios-swift `chain-team-phases.sh` / agent handoffs (Cursor + Claude):
30
30
 
31
31
  - `playwright-test-`, `playwright-agents`, `playwright-e2e`, `user-playwright`
32
+ - `instrumentation-test-` as required Android handoffs
32
33
  - `app/__tests__/e2e` as a required path
33
34
  - Positive yarn recipes `lint:js` / `lint:css` as commands to run (negation prose alone is weak — prefer zero occurrences)
34
35
 
35
36
  Required instead: `xcuitest-test-*` stems; build-verifier mentions `xcodebuild` or `post-change-build` / `xcode-tooling`.
36
37
 
38
+ ## Forbidden in android-kotlin hooks/agents (FAIL)
39
+
40
+ In android-kotlin `chain-team-phases.sh` / agent handoffs (Cursor + Claude):
41
+
42
+ - `playwright-test-`, `playwright-agents`, `playwright-e2e`, `user-playwright`
43
+ - `app/__tests__/e2e` as a required path
44
+ - `xcuitest-test-`, positive `xcodebuild` / `SwiftLint` as required handoffs
45
+ - Positive yarn recipes `lint:js` / `lint:css` as commands to run
46
+
47
+ Required instead: `instrumentation-test-*` stems; build-verifier mentions `gradle-tooling` and/or `post-change-build` (Gradle wrapper discovery — not `xcodebuild` as the default gate).
48
+
37
49
  ## Forbidden in next hooks/agents (FAIL when present as required)
38
50
 
39
- - `xcuitest-test-` as handoff stems
51
+ - `xcuitest-test-` / `instrumentation-test-` as handoff stems
40
52
  - Requiring `xcodebuild` / SwiftLint as the default post-change gate for Next app work
41
53
 
42
54
  ## Forbidden in nuxt hooks/agents (FAIL when present as required)
43
55
 
44
- - `xcuitest-test-` as handoff stems
56
+ - `xcuitest-test-` / `instrumentation-test-` as handoff stems
45
57
  - Requiring `xcodebuild` / SwiftLint as the default post-change gate for Nuxt app work
46
58
  - Frontend profile mirrors `next`: Playwright / `lint:js` / `lint:css` allowed
47
59
 
48
60
  ## Forbidden in svelte hooks/agents (FAIL when present as required)
49
61
 
50
- - `xcuitest-test-` as handoff stems
62
+ - `xcuitest-test-` / `instrumentation-test-` as handoff stems
51
63
  - Requiring `xcodebuild` / SwiftLint as the default post-change gate for SvelteKit app work
52
64
  - Frontend profile mirrors `next` / `nuxt`: Playwright / `lint:js` / `lint:css` allowed
53
65
 
@@ -57,7 +69,7 @@ Shared backend-stack bans (`go`, `java`, `php-hexagonal`, and `php-laravel`):
57
69
 
58
70
  - `playwright-test-`, `playwright-e2e`, `user-playwright`, `app/__tests__/e2e`
59
71
  - Positive yarn recipes `lint:js` / `lint:css`
60
- - `xcuitest-test-`, `xcodebuild`, `SwiftLint` as required handoffs
72
+ - `xcuitest-test-`, `instrumentation-test-`, `xcodebuild`, `SwiftLint` as required handoffs
61
73
  - Agent file `accessibility-reviewer` (no UI surface)
62
74
 
63
75
  Required instead: `integration-test-*`; build-verifier / `post-change-test` plus stack tooling — `go-tooling` (`go test`, `go vet`), `java-tooling` (`mvn test` / `./gradlew test`), or `php-tooling` (`php artisan test` / `composer test` / `vendor/bin/phpunit`).
@@ -68,9 +80,9 @@ Same UI/mobile bans as backend stacks, plus:
68
80
 
69
81
  - `playwright-test-`, `playwright-agents`, `playwright-e2e`, `user-playwright`, `app/__tests__/e2e`
70
82
  - Positive yarn recipes `lint:js` / `lint:css` as required gates
71
- - `xcuitest-test-`, `xcodebuild`, `SwiftLint` as required handoffs
83
+ - `xcuitest-test-`, `instrumentation-test-`, `xcodebuild`, `SwiftLint` as required handoffs
72
84
  - Go tool commands as required MCP delivery gates: `go test`, `go vet`, `golangci-lint`
73
- - Agent files: `playwright-test-*`, `xcuitest-test-*`, `integration-test-*`, `accessibility-reviewer`
85
+ - Agent files: `playwright-test-*`, `xcuitest-test-*`, `instrumentation-test-*`, `integration-test-*`, `accessibility-reviewer`
74
86
 
75
87
  Required instead: package-manager–discovered typecheck/test (`mcp-ts-tooling`, `post-change-test`); Phase 1 gates `build-verifier` + `security-reviewer`.
76
88
 
@@ -81,4 +93,4 @@ Required instead: package-manager–discovered typecheck/test (`mcp-ts-tooling`,
81
93
 
82
94
  ## Chain fork
83
95
 
84
- `hooks/chain-team-phases.sh` must differ **byte-wise** pairwise among `next`, `nuxt`, `svelte`, `ios-swift`, `go`, `java`, `mcp-ts`, `php-hexagonal`, and `php-laravel` (per platform).
96
+ `hooks/chain-team-phases.sh` must differ **byte-wise** pairwise among `next`, `nuxt`, `svelte`, `ios-swift`, `android-kotlin`, `go`, `java`, `mcp-ts`, `php-hexagonal`, and `php-laravel` (per platform).
@@ -9,19 +9,18 @@ alwaysApply: false
9
9
 
10
10
  <!-- shared-core: meta/preset-pr-checklist.md -->
11
11
 
12
-
13
12
  # Preset PR checklist
14
13
 
15
- Чеклист для PR, затрагивающих `packages/ai-rules/presets/**` (и dogfood `.cursor/` sync).
14
+ Checklist for PRs that touch `packages/ai-rules/presets/**` (and dogfood `.cursor/` sync).
16
15
 
17
16
  ## Before merge
18
17
 
19
- - [ ] **SoT:** правки в `packages/…` (не только root `.cursor/`)
20
- - [ ] **Core:** если менялся `_shared/core/**` — обновлены все `<!-- shared-core: … -->` consumers (или documented intentional fork)
21
- - [ ] **Twin:** Cursor change → Claude twin **same PR** (**FAIL** if missing on next, nuxt, svelte, ios-swift, go, java, mcp-ts, php-hexagonal, and php-laravel — см. `preset-twin-sync`)
22
- - [ ] **Mapping:** `claude/<stack>/rules/README.md` mapping table актуален
18
+ - [ ] **SoT:** edits in `packages/…` (not only root `.cursor/`)
19
+ - [ ] **Core:** if `_shared/core/**` changed all `<!-- shared-core: … -->` consumers updated (or documented intentional fork)
20
+ - [ ] **Twin:** Cursor change → Claude twin **same PR** (**FAIL** if missing on next, nuxt, svelte, ios-swift, android-kotlin, go, java, mcp-ts, php-hexagonal, and php-laravel — see `preset-twin-sync`)
21
+ - [ ] **Mapping:** `claude/<stack>/rules/README.md` mapping table is current
23
22
  - [ ] **Token budget:** alwaysApply / session-start ≤ 3; meta rules not always-on
24
- - [ ] **Leakage:** нет чужих stack agent stems / handoff strings (`preset-no-cross-stack-leakage`)
23
+ - [ ] **Leakage:** no foreign stack agent stems / handoff strings (`preset-no-cross-stack-leakage`)
25
24
  - [ ] **Twin depth:** domain ≥15 lines; thin aliases documented
26
25
  - [ ] **README:** stack `rules/README.md` core→stack mapping / catalog updated if stems added
27
26
  - [ ] **CHANGELOG / package README:** note when public preset paths or install surface change
@@ -9,21 +9,20 @@ alwaysApply: false
9
9
 
10
10
  <!-- shared-core: meta/preset-token-budget.md -->
11
11
 
12
-
13
12
  # Preset token budget
14
13
 
15
- Инварианты загрузки правил в **установленном** пресете (consumer app).
14
+ Invariants for rule loading in an **installed** preset (consumer app).
16
15
 
17
16
  ## Hard caps
18
17
 
19
18
  | Platform | Always-on | Cap |
20
19
  |----------|-----------|-----|
21
20
  | Cursor | `alwaysApply: true` | **≤ 3** |
22
- | Claude | rules **without** `paths:` | **ровно 3** |
21
+ | Claude | rules **without** `paths:` | **exactly 3** |
23
22
 
24
23
  **Claude Option A (README exclusion):** when counting Claude rules without `paths:` / session-start, **exclude `**/README.md`** (topic indexes are not session-start rules). The intended session-start trio remains **exactly 3**; body budget sums **only those 3** rules.
25
24
 
26
- Session-start body budget (где задокументировано): ≤140 строк суммарно (stretch ≤120).
25
+ Session-start body budget (where documented): ≤140 lines total (stretch ≤120).
27
26
 
28
27
  ## Meta / author rules
29
28
 
@@ -9,7 +9,6 @@ alwaysApply: false
9
9
 
10
10
  <!-- shared-core: meta/preset-twin-sync.md -->
11
11
 
12
-
13
12
  # Preset twin sync
14
13
 
15
14
  Cursor `.mdc` — **SoT per stack**. Claude topic `.md` — derived twin.
@@ -27,6 +26,7 @@ Cursor `.mdc` — **SoT per stack**. Claude topic `.md` — derived twin.
27
26
  | `mcp-ts` | `presets/cursor/mcp-ts/rules/*.mdc` | `presets/claude/mcp-ts/rules/<topic>/` | Keep in `claude/mcp-ts/rules/README.md` |
28
27
  | `php-hexagonal` | `presets/cursor/php-hexagonal/rules/*.mdc` | `presets/claude/php-hexagonal/rules/<topic>/` | Keep in `claude/php-hexagonal/rules/README.md` |
29
28
  | `php-laravel` | `presets/cursor/php-laravel/rules/*.mdc` | `presets/claude/php-laravel/rules/<topic>/` | Keep in `claude/php-laravel/rules/README.md` |
29
+ | `android-kotlin` | `presets/cursor/android-kotlin/rules/*.mdc` | `presets/claude/android-kotlin/rules/<topic>/` | Keep in `claude/android-kotlin/rules/README.md` |
30
30
 
31
31
  ## Same-PR checklist
32
32
 
@@ -51,5 +51,6 @@ Cursor `.mdc` — **SoT per stack**. Claude topic `.md` — derived twin.
51
51
  - **mcp-ts:** missing Claude twin for a changed Cursor rule → **FAIL** (same as next / ios-swift / go / java; mapping table required).
52
52
  - **php-hexagonal:** missing Claude twin for a changed Cursor rule → **FAIL** (same as next / ios-swift / go / java / mcp-ts; mapping table required).
53
53
  - **php-laravel:** missing Claude twin for a changed Cursor rule → **FAIL** (same as next / ios-swift / go / java / mcp-ts / php-hexagonal; mapping table required).
54
+ - **android-kotlin:** missing Claude twin for a changed Cursor rule → **FAIL** (same as next / ios-swift / go / java / mcp-ts / php-*; mapping table required).
54
55
 
55
56
  Dogfood: sync packages → root `.cursor/` after Cursor SoT changes (not the reverse). Use `packages/ai-rules/scripts/sync-dogfood-cursor.sh`.
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Импорт доменных типов и API только через публичные barrel @/types и @/api
2
+ description: Import domain types and API only through public barrels @/types and @/api
3
3
  globs:
4
4
  - components/**/*
5
5
  - stores/**/*
@@ -10,16 +10,16 @@ alwaysApply: false
10
10
  impact: HIGH
11
11
  ---
12
12
 
13
- # Публичные импорты (`@/types`, `@/api`)
13
+ # Public imports (`@/types`, `@/api`)
14
14
 
15
- **Коллизии:** импорт типовраздел `@/types` ниже; API вне `api/**` — раздел `@/api` ниже (дублирует ESLint `no-restricted-imports` в `eslint.config.mjs`).
15
+ **Collisions:** type imports — `@/types` section below; API outside `api/**` — `@/api` section below (mirrors ESLint `no-restricted-imports` in `eslint.config.mjs`).
16
16
 
17
17
  ## `@/types`
18
18
 
19
- - **Публичный API типов** — barrel `types/index.ts`; импортировать типы только как `@/types` (или `@/types/index`).
20
- - **Запрещено** обходить barrel: `@/types/<что‑угодно>`, кроме enum.
21
- - **Enum** — только `@/types/enums` / `@/types/enums.ts`.
22
- - Внутри `types/**` — относительные импорты между файлами слоя.
19
+ - **Public types API** — barrel `types/index.ts`; import types only as `@/types` (or `@/types/index`).
20
+ - **Forbidden** to bypass the barrel: `@/types/<anything>`, except enums.
21
+ - **Enums** — only `@/types/enums` / `@/types/enums.ts`.
22
+ - Inside `types/**` — relative imports between layer files.
23
23
 
24
24
  ```typescript
25
25
  // ✅
@@ -30,23 +30,23 @@ import { SomeEnum } from '@/types/enums'
30
30
  import type { TUserProfile } from '@/types/User.types'
31
31
  ```
32
32
 
33
- Новые публичные типыреэкспорт в `types/index.ts` по **`layer-barrel-exports.mdc`**.
33
+ New public typesre-export in `types/index.ts` per **`layer-barrel-exports.mdc`**.
34
34
 
35
35
  ## `@/api`
36
36
 
37
- - **Публичный API** — barrel `api/index.ts`. Вне `api/**` — только `import … from '@/api'` (или `@/api/index`).
38
- - **Запрещено** снаружи слоя: `@/api/<что‑угодно>`, кроме `@/api/index`.
39
- - Внутри `api/**` — относительные импорты и `@/api/services/**`, `@/api/clients/**`.
37
+ - **Public API** — barrel `api/index.ts`. Outside `api/**` — only `import … from '@/api'` (or `@/api/index`).
38
+ - **Forbidden** from outside the layer: `@/api/<anything>`, except `@/api/index`.
39
+ - Inside `api/**` — relative imports and `@/api/services/**`, `@/api/clients/**`.
40
40
 
41
41
  ```typescript
42
- // ✅ в store, UI, lib вне api
42
+ // ✅ in store, UI, lib outside api
43
43
  import { MedcardApiService } from '@/api'
44
44
 
45
- // ❌ снаружи api
45
+ // ❌ outside api
46
46
  import { MedcardApiService } from '@/api/services/MedcardApiService/MedcardApiService'
47
47
  ```
48
48
 
49
- Новые публичные символы API — реэкспорт в `api/index.ts` по **`layer-barrel-exports.mdc`**.
49
+ New public API symbols re-export in `api/index.ts` per **`layer-barrel-exports.mdc`**.
50
50
  ## Incorrect
51
51
 
52
52
  ```ts
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Эталонные фичи репозиториякопировать структуру при реализации новых задач. Заполните пути после init в целевом репо.
2
+ description: Repository reference featurescopy structure when implementing new tasks. Fill paths after init in the target repo.
3
3
  globs:
4
4
  - components/**/*
5
5
  - stores/**/*
@@ -10,40 +10,40 @@ alwaysApply: false
10
10
 
11
11
  <!-- shared-core: architecture/reference-features.template.md -->
12
12
 
13
- # Эталонные фичи (reference features)
13
+ # Reference features
14
14
 
15
15
  ## Stack notes
16
16
 
17
- Перед реализацией найди фичу того же типа и **повтори её структуру**, не изобретая новую организацию файлов.
17
+ Before implementing, find a feature of the same type and **mirror its structure**; do not invent a new file organization.
18
18
 
19
19
  Taxonomy / shared core: [`presets/_shared/README.md`](../../../../_shared/README.md) · [Preset contribution guide](../../../../docs/PRESET-CONTRIBUTION.md).
20
20
 
21
- ## Таблица эталонов
21
+ ## Reference table
22
22
 
23
- Замени **TBD** на реальные пути после договорённости в команде (или при `ai-rules init` в целевом репо):
23
+ Replace **TBD** with real paths after team agreement (or on `ai-rules init` in the target repo):
24
24
 
25
- | Слой | Эталон | Что копировать |
26
- |------|--------|----------------|
25
+ | Layer | Reference | What to copy |
26
+ |-------|-----------|--------------|
27
27
  | UI page | **TBD** `components/pages/<Example>/` | `components/`, `*.data.ts`, `styles.ts`, barrel |
28
28
  | Store | **TBD** `stores/<example>.ts` | `defineStore`, actions, getters, types |
29
29
  | API service | **TBD** `api/services/<example>/` | service, mappers, barrel |
30
30
  | Types module | **TBD** `types/<example>/` | domain types, JSDoc, barrel export |
31
- | Unit tests | **TBD** рядом с эталонным mapper/service | `*.spec.ts`, describe/it naming |
31
+ | Unit tests | **TBD** next to the reference mapper/service | `*.spec.ts`, describe/it naming |
32
32
  | E2E area | **TBD** `tests/e2e/<Area>/` | `*.cases.md`, page objects, `_shared/` |
33
33
 
34
- ## Как использовать
34
+ ## How to use
35
35
 
36
- 1. Определи затронутые слои из `decomposition.md` или задачи.
37
- 2. Открой эталон из таблицы (после заполнения путей).
38
- 3. Зеркаль именование, порядок файлов, паттерны импортов и тестов.
39
- 4. Если эталона нетвыбери **самую близкую** существующую фичу того же слоя и зафиксируй выбор в handoff.
36
+ 1. Identify affected layers from `decomposition.md` or the task.
37
+ 2. Open the reference from the table (after paths are filled).
38
+ 3. Mirror naming, file order, import patterns, and tests.
39
+ 4. If there is no reference pick the **closest** existing feature of the same layer and record the choice in the handoff.
40
40
 
41
41
  ## Living conventions
42
42
 
43
43
  Post-init gotchas / patterns / decisions: **`.cursor/team/conventions.md`** (and the twin tool path if both Cursor and Claude are installed). Consumer-owned; not always-on. See root `AGENTS.md` § Living conventions.
44
44
 
45
- ## Связанные правила
45
+ ## Related rules
46
46
 
47
- - `code-quality-and-refactoring.mdc` — повторять паттерны, не deep-import.
48
- - `feature-delivery-workflow.mdc` — порядок слоёв.
49
- - skill `feature-delivery` — end-to-end сценарий.
47
+ - `code-quality-and-refactoring.mdc` — repeat patterns, no deep-import.
48
+ - `feature-delivery-workflow.mdc` — layer order.
49
+ - skill `feature-delivery` — end-to-end scenario.
@@ -1,31 +1,31 @@
1
1
  ---
2
- description: Pinia stores и клиентское состояние приложения (Nuxt)
2
+ description: Pinia stores and client application state (Nuxt)
3
3
  globs: stores/**/*.ts,stores/**/*.js
4
4
  alwaysApply: false
5
5
  impact: HIGH
6
6
  ---
7
7
 
8
- # Общие принципы
8
+ # General principles
9
9
 
10
- - Использовать **Pinia** (`defineStore`) — setup или options store, как у соседей в репо.
11
- - Модуль: `@pinia/nuxt` (или установленный эквивалент) — проверить `package.json` / `nuxt.config`.
12
- - В store хранить **доменные модели**, не сырые DTO из API.
13
- - Маппинг DTO → domain — в `api/**` (или server mappers) **до** записи в store.
14
- - Разделять серверное состояние (данные API) и локальное UI‑состояние (фильтры/флаги) — UI-only можно в composable/`ref` страницы, если так принято в репо.
10
+ - Use **Pinia** (`defineStore`) — setup or options store, as neighbors do in the repo.
11
+ - Module: `@pinia/nuxt` (or the installed equivalent) — check `package.json` / `nuxt.config`.
12
+ - Store **domain models**, not raw API DTOs.
13
+ - DTO → domain mapping in `api/**` (or server mappers) **before** writing to the store.
14
+ - Separate server state (API data) from local UI state (filters/flags) — UI-only may live in a composable/`ref` on the page if that is the repo convention.
15
15
 
16
- # Запрещено в этом пресете
16
+ # Forbidden in this preset
17
17
 
18
18
  - RTK / Redux: `createSlice`, `createAsyncThunk`, RTK Query, `useDispatch` / `useSelector`, stem `store-rtk`.
19
- - Сырой `$fetch` / `fetch` из store в обход `~/api` / `@/api` сервисов (кроме узких documented исключений репо).
19
+ - Raw `$fetch` / `fetch` from the store bypassing `~/api` / `@/api` services (except narrow documented repo exceptions).
20
20
 
21
- # Структура
21
+ # Structure
22
22
 
23
- - Один доменный модульсвой файл в `stores/**` (например `stores/profile.ts`).
24
- - Экспорт: `useXStore` через `defineStore('x', …)`.
25
- - State: явный тип; аккуратная инициализация.
26
- - Getters — производные от domain state; actions вызывают сервисы из `~/api` / `@/api` (`public-imports`).
23
+ - One domain moduleits own file under `stores/**` (e.g. `stores/profile.ts`).
24
+ - Export: `useXStore` via `defineStore('x', …)`.
25
+ - State: explicit type; careful initialization.
26
+ - Getters — derived from domain state; actions call services from `~/api` / `@/api` (`public-imports`).
27
27
 
28
- # Асинхронность
28
+ # Async
29
29
 
30
30
  ```ts
31
31
  // Incorrect — raw HTTP + DTO in state
@@ -50,19 +50,19 @@ export const useProfileStore = defineStore('profile', {
50
50
  })
51
51
  ```
52
52
 
53
- # Типизация и ошибки
53
+ # Typing and errors
54
54
 
55
- - Доменные типы из `~/types` / `@/types`.
56
- - Ошибки транспортаконтракты из `@/types` / принятый класс ошибки клиента (`http-client`), не выдуманные axios shapes.
57
- - В UI: `storeToRefs` для state; actions вызывать напрямую с store.
55
+ - Domain types from `~/types` / `@/types`.
56
+ - Transport errorscontracts from `@/types` / the accepted client error class (`http-client`), not invented axios shapes.
57
+ - In UI: `storeToRefs` for state; call actions directly on the store.
58
58
 
59
- # Тестирование
59
+ # Testing
60
60
 
61
- - Покрывать важные stores (инициализация, переходы, actions с моком API).
62
- - Unit: Vitest; мокать `~/api` сервисы.
61
+ - Cover important stores (init, transitions, actions with mocked API).
62
+ - Unit: Vitest; mock `~/api` services.
63
63
 
64
- # Требование к агенту
64
+ # Agent requirement
65
65
 
66
- - Не класть HTTP/transport в компоненты.
67
- - Строго типизировать state/actions.
68
- - Следовать стилю соседних stores.
66
+ - Do not put HTTP/transport in components.
67
+ - Strictly type state/actions.
68
+ - Follow neighboring store style.
@@ -1,16 +1,16 @@
1
1
  ---
2
- description: Роль агента для проведения технического ретроспективы (retro) команды / спринта. On-demand — предпочтительнее slash-команда /technical-retro.
2
+ description: Agent role for running a technical retrospective (retro) for a team / sprint. On-demand — prefer the /technical-retro slash command.
3
3
  alwaysApply: false
4
4
  ---
5
5
 
6
6
  <!-- shared-core: review/technical-retro.md -->
7
7
 
8
- # Техническое ретро — rule alias
8
+ # Technical retro — rule alias
9
9
 
10
- Полный сценарий (включая блок **«Работа агентов»** для slug из team tasks) в slash-команде:
10
+ Full scenario (including the **“Agent work”** block for a slug from team tasks) lives in the slash command:
11
11
 
12
12
  **`commands/technical-retro.md`** → `/technical-retro`
13
13
 
14
14
  When a task has `metrics.json`, use the local aggregation script and state the cohort, sample size, incomplete artifacts, attribution confidence, active attempt duration, and human-gate wait separately. Do not score malformed artifacts or gate wait as agent work.
15
15
 
16
- Используй rule только если command недоступен. Не дублируй содержимое command в ответеследуй command-файлу и skill `technical-retro`.
16
+ Use this rule only if the command is unavailable. Do not duplicate the command contents in the response follow the command file and skill `technical-retro`.
@@ -1,51 +1,50 @@
1
1
  ---
2
- description: Структура e2e тестов и планов (Playwright)
2
+ description: Structure of e2e tests and plans (Playwright)
3
3
  globs: tests/e2e/**/*
4
4
  alwaysApply: false
5
5
  ---
6
6
 
7
- # Структура e2e в проекте
8
-
9
- - Папка e2e: `tests/e2e/**`.
10
- - Планы сценариев:
11
- - `*.cases.md` файлы**канонический источник сценариев**.
12
- - Тесты:
13
- - `*.spec.ts` файлыреализация сценариев на Playwright.
14
- - Общие утилиты и абстракции:
15
- - `tests/e2e/_shared/**` — константы, fluent‑интерфейсы, хелперы.
16
-
17
- # Принципы
18
-
19
- - Каждый сценарий из `*.cases.md` должен иметь соответствующий тест (или набор тестов).
20
- - **Нельзя** ослаблять проверки в тестах, если это противоречит бизнес‑ожиданиям из планов.
21
- - Предпочтительно использовать:
22
- - pageobjects (например, `OrderHistoryPage.ts`);
23
- - общие хелперы из `_shared`.
24
-
25
- # Именование e2e‑тестов
26
-
27
- - Язык:
28
- - все названия `test` / `it`, `describe`‑блоков и шагов в `*.cases.md` должны быть сформулированы **на русском языке**, описывая поведение и ожидаемый результат.
29
- - Формат заголовков e2e‑тестов (`test(...)` / `it(...)`):
30
- - перед текстовым описанием сценария указывается **префикс с номером** в формате: `ПРЕФИКС-XXX Описание сценария`.
31
- - `ПРЕФИКС`аббревиатура из **первых букв слов** тестируемой сущности, записанная **латиницей в верхнем регистре**.
32
- - пример: `OrderHistory` → `OH`, `BillingReport` → `BR`.
33
- - `XXX` — порядковый номер теста **с тремя разрядами и лидирующими нулями**: `001`, `002`, `010`, `123` и т.д.
34
- - пример полного названия e2e‑теста:
35
- - `test('OH-001 Отображается список заказов', async ({ page }) => { ... })`
36
- - внутри одной сущности (`ПРЕФИКС`) номера тестов должны образовывать **непротиворечивую последовательность**, без дубликатов номеров.
37
-
38
- # data-testid для e2e
39
-
40
- - **Приоритет селекторов:** `data-testid` для стабильных элементов; `getByRole` и `getByLabel` для форм и доступных элементов.
41
- - **Именование:** схема `{parent}__{element}` (например, `history-page__title`, `history-page__recognition-banner__attach-files-button`).
42
- - **Где добавлять:** на корневые контейнеры страниц и ключевые интерактивные элементы (кнопки, ссылки, поля), к которым обращаются page objects.
43
- - **При изменении UI:** обновлять data-testid в компонентах и соответствующие селекторы в page objects; сверять с `*.cases.md`.
44
-
45
- # Требование к агенту
46
-
47
- При добавлении/изменении e2e‑тестов:
48
- - Сначала смотреть соответствующий `*.cases.md` и синхронизировать названия сценариев.
49
- - Размещать спеки рядом с планами в той же директории.
50
- - Переиспользовать общие pageobjects и хелперы, а не копировать селекторы напрямую в каждый тест.
51
-
7
+ # E2E structure in the project
8
+
9
+ - E2E folder: `tests/e2e/**`.
10
+ - Scenario plans:
11
+ - `*.cases.md` files**canonical source of scenarios**.
12
+ - Tests:
13
+ - `*.spec.ts` filesPlaywright scenario implementation.
14
+ - Shared utilities and abstractions:
15
+ - `tests/e2e/_shared/**` — constants, fluent interfaces, helpers.
16
+
17
+ # Principles
18
+
19
+ - Every scenario from `*.cases.md` must have a matching test (or set of tests).
20
+ - **Do not** weaken assertions in tests if that contradicts business expectations from the plans.
21
+ - Prefer:
22
+ - page objects (e.g. `OrderHistoryPage.ts`);
23
+ - shared helpers from `_shared`.
24
+
25
+ # E2E test naming
26
+
27
+ - Language:
28
+ - all `test` / `it` names, `describe` blocks, and steps in `*.cases.md` must be formulated **in Russian**, describing behavior and the expected result. <!-- i18n-keep: E5 -->
29
+ - E2E title format (`test(...)` / `it(...)`):
30
+ - before the scenario description, put a **numbered prefix** in the form: `PREFIX-XXX Scenario description`.
31
+ - `PREFIX`abbreviation from the **first letters of the words** of the entity under test, written in **Latin uppercase**.
32
+ - example: `OrderHistory` → `OH`, `BillingReport` → `BR`.
33
+ - `XXX` — sequential test number **with three digits and leading zeros**: `001`, `002`, `010`, `123`, etc.
34
+ - full e2e title example:
35
+ - `test('OH-001 Отображается список заказов', async ({ page }) => { ... })` <!-- i18n-keep: E5 -->
36
+ - within one entity (`PREFIX`), test numbers must form a **consistent sequence** without duplicate numbers.
37
+
38
+ # data-testid for e2e
39
+
40
+ - **Selector priority:** `data-testid` for stable elements; `getByRole` and `getByLabel` for forms and accessible elements.
41
+ - **Naming:** scheme `{parent}__{element}` (e.g. `history-page__title`, `history-page__recognition-banner__attach-files-button`).
42
+ - **Where to add:** on page root containers and key interactive elements (buttons, links, fields) that page objects target.
43
+ - **When UI changes:** update data-testid in components and matching selectors in page objects; align with `*.cases.md`.
44
+
45
+ # Agent requirement
46
+
47
+ When adding/changing e2e tests:
48
+ - First look at the matching `*.cases.md` and sync scenario names.
49
+ - Place specs next to plans in the same directory.
50
+ - Reuse shared page objects and helpers; do not copy selectors into every test.