@exelalfanso/puppets-orchestration 0.1.0

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 (345) hide show
  1. package/.agents/architect.md +29 -0
  2. package/.agents/backend.md +33 -0
  3. package/.agents/debugger.md +29 -0
  4. package/.agents/explorer.md +29 -0
  5. package/.agents/frontend.md +33 -0
  6. package/.agents/orchestrator.md +35 -0
  7. package/.agents/reviewer.md +42 -0
  8. package/.agents/tester.md +29 -0
  9. package/.agents/worker-skills.md +24 -0
  10. package/AGENTS.md +33 -0
  11. package/README.md +150 -0
  12. package/bin/puppets.mjs +152 -0
  13. package/docs/README.md +64 -0
  14. package/docs/architecture/decisions/README.md +36 -0
  15. package/docs/architecture/overview.md +41 -0
  16. package/docs/engineering/conventions.md +30 -0
  17. package/docs/engineering/project-orchestration.md +118 -0
  18. package/docs/engineering/testing-strategy.md +41 -0
  19. package/docs/javascript-typescript-stack.md +59 -0
  20. package/docs/product/PRD.md +56 -0
  21. package/docs/requirements/SRS.md +35 -0
  22. package/package.json +20 -0
  23. package/skills/README.md +12 -0
  24. package/skills/be/backend-architect/SKILL.md +333 -0
  25. package/skills/be/backend-development-feature-development/SKILL.md +180 -0
  26. package/skills/be/backend-security-coder/SKILL.md +156 -0
  27. package/skills/be/nodejs-backend-patterns/SKILL.md +35 -0
  28. package/skills/be/nodejs-backend-patterns/resources/implementation-playbook.md +1019 -0
  29. package/skills/fe/frontend-design/LICENSE.txt +177 -0
  30. package/skills/fe/frontend-design/SKILL.md +71 -0
  31. package/skills/fe/web-design-guidelines/SKILL.md +39 -0
  32. package/skills/qa/ai-qa-review/SKILL.md +357 -0
  33. package/skills/qa/ai-qa-review/references/mutation-testing.md +38 -0
  34. package/skills/qa/ai-qa-review/references/smell-examples.md +232 -0
  35. package/skills/qa/ai-qa-review/references/testability-refactors.md +97 -0
  36. package/skills/qa/coverage-analysis/SKILL.md +308 -0
  37. package/skills/qa/coverage-analysis/references/ci-gating.md +132 -0
  38. package/skills/qa/coverage-analysis/references/mutation-testing.md +29 -0
  39. package/skills/qa/coverage-analysis/references/tool-config.md +195 -0
  40. package/skills/qa/qa-project-context/SKILL.md +289 -0
  41. package/skills/qa/qa-project-context/references/examples.md +237 -0
  42. package/skills/qa/release-readiness/SKILL.md +443 -0
  43. package/skills/qa/release-readiness/references/communication-templates.md +38 -0
  44. package/skills/qa/release-readiness/references/rollout-automation.md +47 -0
  45. package/skills/qa/risk-based-testing/SKILL.md +337 -0
  46. package/skills/qa/risk-based-testing/references/examples.md +81 -0
  47. package/skills/react/vercel-composition-patterns/AGENTS.md +946 -0
  48. package/skills/react/vercel-composition-patterns/README.md +60 -0
  49. package/skills/react/vercel-composition-patterns/SKILL.md +89 -0
  50. package/skills/react/vercel-composition-patterns/rules/_sections.md +29 -0
  51. package/skills/react/vercel-composition-patterns/rules/_template.md +24 -0
  52. package/skills/react/vercel-composition-patterns/rules/architecture-avoid-boolean-props.md +100 -0
  53. package/skills/react/vercel-composition-patterns/rules/architecture-compound-components.md +112 -0
  54. package/skills/react/vercel-composition-patterns/rules/patterns-children-over-render-props.md +87 -0
  55. package/skills/react/vercel-composition-patterns/rules/patterns-explicit-variants.md +100 -0
  56. package/skills/react/vercel-composition-patterns/rules/react19-no-forwardref.md +42 -0
  57. package/skills/react/vercel-composition-patterns/rules/state-context-interface.md +191 -0
  58. package/skills/react/vercel-composition-patterns/rules/state-decouple-implementation.md +113 -0
  59. package/skills/react/vercel-composition-patterns/rules/state-lift-state.md +125 -0
  60. package/skills/react/vercel-react-best-practices/AGENTS.md +3810 -0
  61. package/skills/react/vercel-react-best-practices/README.md +123 -0
  62. package/skills/react/vercel-react-best-practices/SKILL.md +149 -0
  63. package/skills/react/vercel-react-best-practices/rules/_sections.md +46 -0
  64. package/skills/react/vercel-react-best-practices/rules/_template.md +28 -0
  65. package/skills/react/vercel-react-best-practices/rules/advanced-effect-event-deps.md +56 -0
  66. package/skills/react/vercel-react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  67. package/skills/react/vercel-react-best-practices/rules/advanced-init-once.md +42 -0
  68. package/skills/react/vercel-react-best-practices/rules/advanced-use-latest.md +39 -0
  69. package/skills/react/vercel-react-best-practices/rules/async-api-routes.md +38 -0
  70. package/skills/react/vercel-react-best-practices/rules/async-cheap-condition-before-await.md +37 -0
  71. package/skills/react/vercel-react-best-practices/rules/async-defer-await.md +82 -0
  72. package/skills/react/vercel-react-best-practices/rules/async-dependencies.md +51 -0
  73. package/skills/react/vercel-react-best-practices/rules/async-parallel.md +28 -0
  74. package/skills/react/vercel-react-best-practices/rules/async-suspense-boundaries.md +99 -0
  75. package/skills/react/vercel-react-best-practices/rules/bundle-analyzable-paths.md +63 -0
  76. package/skills/react/vercel-react-best-practices/rules/bundle-barrel-imports.md +60 -0
  77. package/skills/react/vercel-react-best-practices/rules/bundle-conditional.md +31 -0
  78. package/skills/react/vercel-react-best-practices/rules/bundle-defer-third-party.md +49 -0
  79. package/skills/react/vercel-react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  80. package/skills/react/vercel-react-best-practices/rules/bundle-preload.md +50 -0
  81. package/skills/react/vercel-react-best-practices/rules/client-event-listeners.md +74 -0
  82. package/skills/react/vercel-react-best-practices/rules/client-localstorage-schema.md +71 -0
  83. package/skills/react/vercel-react-best-practices/rules/client-passive-event-listeners.md +48 -0
  84. package/skills/react/vercel-react-best-practices/rules/client-swr-dedup.md +56 -0
  85. package/skills/react/vercel-react-best-practices/rules/js-batch-dom-css.md +107 -0
  86. package/skills/react/vercel-react-best-practices/rules/js-cache-function-results.md +80 -0
  87. package/skills/react/vercel-react-best-practices/rules/js-cache-property-access.md +28 -0
  88. package/skills/react/vercel-react-best-practices/rules/js-cache-storage.md +70 -0
  89. package/skills/react/vercel-react-best-practices/rules/js-combine-iterations.md +32 -0
  90. package/skills/react/vercel-react-best-practices/rules/js-early-exit.md +50 -0
  91. package/skills/react/vercel-react-best-practices/rules/js-flatmap-filter.md +60 -0
  92. package/skills/react/vercel-react-best-practices/rules/js-hoist-regexp.md +45 -0
  93. package/skills/react/vercel-react-best-practices/rules/js-index-maps.md +37 -0
  94. package/skills/react/vercel-react-best-practices/rules/js-length-check-first.md +49 -0
  95. package/skills/react/vercel-react-best-practices/rules/js-min-max-loop.md +82 -0
  96. package/skills/react/vercel-react-best-practices/rules/js-request-idle-callback.md +105 -0
  97. package/skills/react/vercel-react-best-practices/rules/js-set-map-lookups.md +24 -0
  98. package/skills/react/vercel-react-best-practices/rules/js-tosorted-immutable.md +57 -0
  99. package/skills/react/vercel-react-best-practices/rules/rendering-activity.md +26 -0
  100. package/skills/react/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  101. package/skills/react/vercel-react-best-practices/rules/rendering-conditional-render.md +40 -0
  102. package/skills/react/vercel-react-best-practices/rules/rendering-content-visibility.md +38 -0
  103. package/skills/react/vercel-react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  104. package/skills/react/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  105. package/skills/react/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +30 -0
  106. package/skills/react/vercel-react-best-practices/rules/rendering-resource-hints.md +85 -0
  107. package/skills/react/vercel-react-best-practices/rules/rendering-script-defer-async.md +68 -0
  108. package/skills/react/vercel-react-best-practices/rules/rendering-svg-precision.md +28 -0
  109. package/skills/react/vercel-react-best-practices/rules/rendering-usetransition-loading.md +75 -0
  110. package/skills/react/vercel-react-best-practices/rules/rerender-defer-reads.md +39 -0
  111. package/skills/react/vercel-react-best-practices/rules/rerender-dependencies.md +45 -0
  112. package/skills/react/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +40 -0
  113. package/skills/react/vercel-react-best-practices/rules/rerender-derived-state.md +29 -0
  114. package/skills/react/vercel-react-best-practices/rules/rerender-functional-setstate.md +74 -0
  115. package/skills/react/vercel-react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  116. package/skills/react/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
  117. package/skills/react/vercel-react-best-practices/rules/rerender-memo.md +44 -0
  118. package/skills/react/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +45 -0
  119. package/skills/react/vercel-react-best-practices/rules/rerender-no-inline-components.md +82 -0
  120. package/skills/react/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
  121. package/skills/react/vercel-react-best-practices/rules/rerender-split-combined-hooks.md +64 -0
  122. package/skills/react/vercel-react-best-practices/rules/rerender-transitions.md +40 -0
  123. package/skills/react/vercel-react-best-practices/rules/rerender-use-deferred-value.md +59 -0
  124. package/skills/react/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +73 -0
  125. package/skills/react/vercel-react-best-practices/rules/server-after-nonblocking.md +73 -0
  126. package/skills/react/vercel-react-best-practices/rules/server-auth-actions.md +96 -0
  127. package/skills/react/vercel-react-best-practices/rules/server-cache-lru.md +41 -0
  128. package/skills/react/vercel-react-best-practices/rules/server-cache-react.md +76 -0
  129. package/skills/react/vercel-react-best-practices/rules/server-dedup-props.md +65 -0
  130. package/skills/react/vercel-react-best-practices/rules/server-hoist-static-io.md +149 -0
  131. package/skills/react/vercel-react-best-practices/rules/server-no-shared-module-state.md +50 -0
  132. package/skills/react/vercel-react-best-practices/rules/server-parallel-fetching.md +83 -0
  133. package/skills/react/vercel-react-best-practices/rules/server-parallel-nested-fetching.md +34 -0
  134. package/skills/react/vercel-react-best-practices/rules/server-serialization.md +38 -0
  135. package/skills/vue/create-adaptable-composable/SKILL.md +76 -0
  136. package/skills/vue/vue-best-practices/SKILL.md +154 -0
  137. package/skills/vue/vue-best-practices/references/animation-class-based-technique.md +254 -0
  138. package/skills/vue/vue-best-practices/references/animation-state-driven-technique.md +291 -0
  139. package/skills/vue/vue-best-practices/references/component-async.md +97 -0
  140. package/skills/vue/vue-best-practices/references/component-data-flow.md +307 -0
  141. package/skills/vue/vue-best-practices/references/component-fallthrough-attrs.md +174 -0
  142. package/skills/vue/vue-best-practices/references/component-keep-alive.md +137 -0
  143. package/skills/vue/vue-best-practices/references/component-slots.md +216 -0
  144. package/skills/vue/vue-best-practices/references/component-suspense.md +228 -0
  145. package/skills/vue/vue-best-practices/references/component-teleport.md +108 -0
  146. package/skills/vue/vue-best-practices/references/component-transition-group.md +128 -0
  147. package/skills/vue/vue-best-practices/references/component-transition.md +125 -0
  148. package/skills/vue/vue-best-practices/references/composables.md +290 -0
  149. package/skills/vue/vue-best-practices/references/directives.md +162 -0
  150. package/skills/vue/vue-best-practices/references/perf-avoid-component-abstraction-in-lists.md +159 -0
  151. package/skills/vue/vue-best-practices/references/perf-v-once-v-memo-directives.md +182 -0
  152. package/skills/vue/vue-best-practices/references/perf-virtualize-large-lists.md +187 -0
  153. package/skills/vue/vue-best-practices/references/plugins.md +166 -0
  154. package/skills/vue/vue-best-practices/references/reactivity.md +344 -0
  155. package/skills/vue/vue-best-practices/references/render-functions.md +201 -0
  156. package/skills/vue/vue-best-practices/references/sfc.md +310 -0
  157. package/skills/vue/vue-best-practices/references/state-management.md +135 -0
  158. package/skills/vue/vue-best-practices/references/updated-hook-performance.md +187 -0
  159. package/skills/vue/vue-debug-guides/SKILL.md +202 -0
  160. package/skills/vue/vue-debug-guides/reference/animation-key-for-rerender.md +160 -0
  161. package/skills/vue/vue-debug-guides/reference/animation-transitiongroup-performance.md +241 -0
  162. package/skills/vue/vue-debug-guides/reference/async-component-error-handling.md +115 -0
  163. package/skills/vue/vue-debug-guides/reference/async-component-keepalive-ref-issue.md +112 -0
  164. package/skills/vue/vue-debug-guides/reference/async-component-suspense-control.md +84 -0
  165. package/skills/vue/vue-debug-guides/reference/async-component-vue-router.md +109 -0
  166. package/skills/vue/vue-debug-guides/reference/attrs-event-listener-merging.md +205 -0
  167. package/skills/vue/vue-debug-guides/reference/checkbox-true-false-value-form-submission.md +118 -0
  168. package/skills/vue/vue-debug-guides/reference/cleanup-side-effects.md +172 -0
  169. package/skills/vue/vue-debug-guides/reference/click-events-on-components.md +180 -0
  170. package/skills/vue/vue-debug-guides/reference/component-naming-conflicts.md +159 -0
  171. package/skills/vue/vue-debug-guides/reference/component-ref-requires-defineexpose.md +176 -0
  172. package/skills/vue/vue-debug-guides/reference/composable-avoid-hidden-side-effects.md +208 -0
  173. package/skills/vue/vue-debug-guides/reference/composable-call-location-restrictions.md +141 -0
  174. package/skills/vue/vue-debug-guides/reference/composable-naming-return-pattern.md +139 -0
  175. package/skills/vue/vue-debug-guides/reference/composable-tovalue-inside-watcheffect.md +182 -0
  176. package/skills/vue/vue-debug-guides/reference/composition-api-not-functional-programming.md +120 -0
  177. package/skills/vue/vue-debug-guides/reference/composition-api-script-setup-async-context.md +203 -0
  178. package/skills/vue/vue-debug-guides/reference/composition-api-vs-react-hooks-differences.md +156 -0
  179. package/skills/vue/vue-debug-guides/reference/computed-array-mutation.md +148 -0
  180. package/skills/vue/vue-debug-guides/reference/computed-conditional-dependencies.md +147 -0
  181. package/skills/vue/vue-debug-guides/reference/computed-no-parameters.md +159 -0
  182. package/skills/vue/vue-debug-guides/reference/computed-no-side-effects.md +107 -0
  183. package/skills/vue/vue-debug-guides/reference/computed-return-value-readonly.md +160 -0
  184. package/skills/vue/vue-debug-guides/reference/configure-app-before-mount.md +89 -0
  185. package/skills/vue/vue-debug-guides/reference/declare-emits-for-documentation.md +212 -0
  186. package/skills/vue/vue-debug-guides/reference/define-expose-before-await.md +192 -0
  187. package/skills/vue/vue-debug-guides/reference/define-model-default-value-sync.md +139 -0
  188. package/skills/vue/vue-debug-guides/reference/defineEmits-must-be-top-level.md +164 -0
  189. package/skills/vue/vue-debug-guides/reference/defineEmits-no-runtime-and-type-mixed.md +170 -0
  190. package/skills/vue/vue-debug-guides/reference/definemodel-object-mutation-no-emit.md +148 -0
  191. package/skills/vue/vue-debug-guides/reference/dom-update-timing-nexttick.md +90 -0
  192. package/skills/vue/vue-debug-guides/reference/dynamic-argument-constraints.md +146 -0
  193. package/skills/vue/vue-debug-guides/reference/dynamic-component-registration-vite.md +147 -0
  194. package/skills/vue/vue-debug-guides/reference/event-modifier-order-matters.md +101 -0
  195. package/skills/vue/vue-debug-guides/reference/exact-modifier-for-precise-shortcuts.md +155 -0
  196. package/skills/vue/vue-debug-guides/reference/fallthrough-attrs-overwrite-vue3.md +159 -0
  197. package/skills/vue/vue-debug-guides/reference/in-dom-template-parsing-caveats.md +149 -0
  198. package/skills/vue/vue-debug-guides/reference/inheritattrs-false-for-wrapper-components.md +230 -0
  199. package/skills/vue/vue-debug-guides/reference/keepalive-router-nested-double-mount.md +222 -0
  200. package/skills/vue/vue-debug-guides/reference/keepalive-transition-memory-leak.md +144 -0
  201. package/skills/vue/vue-debug-guides/reference/keyup-modifier-timing.md +137 -0
  202. package/skills/vue/vue-debug-guides/reference/lifecycle-dom-access-timing.md +216 -0
  203. package/skills/vue/vue-debug-guides/reference/lifecycle-hooks-synchronous-registration.md +156 -0
  204. package/skills/vue/vue-debug-guides/reference/lifecycle-ssr-awareness.md +184 -0
  205. package/skills/vue/vue-debug-guides/reference/local-components-not-in-descendants.md +151 -0
  206. package/skills/vue/vue-debug-guides/reference/mount-return-value.md +88 -0
  207. package/skills/vue/vue-debug-guides/reference/multi-root-component-class-attrs.md +93 -0
  208. package/skills/vue/vue-debug-guides/reference/native-event-collision-with-emits.md +162 -0
  209. package/skills/vue/vue-debug-guides/reference/no-passive-with-prevent.md +141 -0
  210. package/skills/vue/vue-debug-guides/reference/no-v-if-with-v-for.md +136 -0
  211. package/skills/vue/vue-debug-guides/reference/perf-computed-object-stability.md +157 -0
  212. package/skills/vue/vue-debug-guides/reference/perf-props-stability-update-optimization.md +140 -0
  213. package/skills/vue/vue-debug-guides/reference/plugin-global-properties-sparingly.md +109 -0
  214. package/skills/vue/vue-debug-guides/reference/plugin-install-before-mount.md +124 -0
  215. package/skills/vue/vue-debug-guides/reference/plugin-prefer-provide-inject-over-global-properties.md +120 -0
  216. package/skills/vue/vue-debug-guides/reference/plugin-typescript-type-augmentation.md +157 -0
  217. package/skills/vue/vue-debug-guides/reference/prop-defineprops-scope-limitation.md +161 -0
  218. package/skills/vue/vue-debug-guides/reference/provide-inject-debugging-challenges.md +203 -0
  219. package/skills/vue/vue-debug-guides/reference/provide-inject-default-value-factory.md +244 -0
  220. package/skills/vue/vue-debug-guides/reference/provide-inject-reactivity-not-automatic.md +226 -0
  221. package/skills/vue/vue-debug-guides/reference/provide-inject-synchronous-setup.md +235 -0
  222. package/skills/vue/vue-debug-guides/reference/reactive-destructuring.md +89 -0
  223. package/skills/vue/vue-debug-guides/reference/reactivity-debugging-hooks.md +132 -0
  224. package/skills/vue/vue-debug-guides/reference/reactivity-markraw-for-non-reactive.md +149 -0
  225. package/skills/vue/vue-debug-guides/reference/reactivity-proxy-identity-hazard.md +96 -0
  226. package/skills/vue/vue-debug-guides/reference/reactivity-same-tick-batching.md +166 -0
  227. package/skills/vue/vue-debug-guides/reference/ref-value-access.md +61 -0
  228. package/skills/vue/vue-debug-guides/reference/refs-in-collections-need-value.md +81 -0
  229. package/skills/vue/vue-debug-guides/reference/render-function-avoid-internal-vnode-properties.md +151 -0
  230. package/skills/vue/vue-debug-guides/reference/render-function-vnodes-must-be-unique.md +133 -0
  231. package/skills/vue/vue-debug-guides/reference/rendering-render-function-h-import-vue3.md +148 -0
  232. package/skills/vue/vue-debug-guides/reference/rendering-render-function-return-from-setup.md +148 -0
  233. package/skills/vue/vue-debug-guides/reference/rendering-render-function-slots-as-functions.md +168 -0
  234. package/skills/vue/vue-debug-guides/reference/rendering-resolve-component-for-string-names.md +231 -0
  235. package/skills/vue/vue-debug-guides/reference/select-initial-value-ios-bug.md +91 -0
  236. package/skills/vue/vue-debug-guides/reference/self-referencing-component-name.md +157 -0
  237. package/skills/vue/vue-debug-guides/reference/sfc-named-exports-forbidden.md +184 -0
  238. package/skills/vue/vue-debug-guides/reference/sfc-scoped-css-child-component-styling.md +156 -0
  239. package/skills/vue/vue-debug-guides/reference/sfc-scoped-css-dynamic-content.md +193 -0
  240. package/skills/vue/vue-debug-guides/reference/sfc-scoped-css-slot-content.md +242 -0
  241. package/skills/vue/vue-debug-guides/reference/sfc-script-setup-reactivity.md +195 -0
  242. package/skills/vue/vue-debug-guides/reference/slot-forwarding-to-child-components.md +143 -0
  243. package/skills/vue/vue-debug-guides/reference/slot-implicit-default-content.md +155 -0
  244. package/skills/vue/vue-debug-guides/reference/slot-name-reserved-prop.md +109 -0
  245. package/skills/vue/vue-debug-guides/reference/slot-named-scoped-explicit-default.md +95 -0
  246. package/skills/vue/vue-debug-guides/reference/slot-render-scope-parent-only.md +135 -0
  247. package/skills/vue/vue-debug-guides/reference/slot-v-slot-on-components-or-templates-only.md +122 -0
  248. package/skills/vue/vue-debug-guides/reference/ssr-hydration-mismatch-causes.md +280 -0
  249. package/skills/vue/vue-debug-guides/reference/ssr-platform-specific-apis.md +256 -0
  250. package/skills/vue/vue-debug-guides/reference/state-ssr-cross-request-pollution.md +276 -0
  251. package/skills/vue/vue-debug-guides/reference/suspense-no-builtin-error-handling.md +127 -0
  252. package/skills/vue/vue-debug-guides/reference/suspense-ssr-hydration-issues.md +159 -0
  253. package/skills/vue/vue-debug-guides/reference/tailwind-dynamic-class-generation.md +144 -0
  254. package/skills/vue/vue-debug-guides/reference/teleport-scoped-styles-limitation.md +191 -0
  255. package/skills/vue/vue-debug-guides/reference/teleport-ssr-hydration.md +152 -0
  256. package/skills/vue/vue-debug-guides/reference/teleport-target-must-exist.md +113 -0
  257. package/skills/vue/vue-debug-guides/reference/template-expressions-restrictions.md +114 -0
  258. package/skills/vue/vue-debug-guides/reference/template-functions-no-side-effects.md +187 -0
  259. package/skills/vue/vue-debug-guides/reference/template-ref-null-with-v-if.md +123 -0
  260. package/skills/vue/vue-debug-guides/reference/template-ref-unwrapping-top-level.md +104 -0
  261. package/skills/vue/vue-debug-guides/reference/template-ref-v-for-order.md +172 -0
  262. package/skills/vue/vue-debug-guides/reference/textarea-no-interpolation.md +72 -0
  263. package/skills/vue/vue-debug-guides/reference/transition-group-flip-inline-elements.md +152 -0
  264. package/skills/vue/vue-debug-guides/reference/transition-group-move-animation-position-absolute.md +130 -0
  265. package/skills/vue/vue-debug-guides/reference/transition-group-no-default-wrapper-vue3.md +152 -0
  266. package/skills/vue/vue-debug-guides/reference/transition-js-hooks-done-callback.md +251 -0
  267. package/skills/vue/vue-debug-guides/reference/transition-nested-duration.md +182 -0
  268. package/skills/vue/vue-debug-guides/reference/transition-reusable-scoped-style.md +245 -0
  269. package/skills/vue/vue-debug-guides/reference/transition-router-view-appear.md +193 -0
  270. package/skills/vue/vue-debug-guides/reference/transition-type-when-mixed.md +172 -0
  271. package/skills/vue/vue-debug-guides/reference/transition-unmount-hook-timing.md +149 -0
  272. package/skills/vue/vue-debug-guides/reference/ts-defineprops-boolean-default-false.md +225 -0
  273. package/skills/vue/vue-debug-guides/reference/ts-defineprops-imported-types-limitations.md +281 -0
  274. package/skills/vue/vue-debug-guides/reference/ts-event-handler-explicit-typing.md +213 -0
  275. package/skills/vue/vue-debug-guides/reference/ts-reactive-no-generic-argument.md +196 -0
  276. package/skills/vue/vue-debug-guides/reference/ts-shallowref-for-dynamic-components.md +218 -0
  277. package/skills/vue/vue-debug-guides/reference/ts-template-ref-null-handling.md +249 -0
  278. package/skills/vue/vue-debug-guides/reference/ts-template-type-casting.md +214 -0
  279. package/skills/vue/vue-debug-guides/reference/ts-withdefaults-mutable-factory-function.md +171 -0
  280. package/skills/vue/vue-debug-guides/reference/undeclared-emits-double-firing.md +195 -0
  281. package/skills/vue/vue-debug-guides/reference/use-template-ref-vue35.md +158 -0
  282. package/skills/vue/vue-debug-guides/reference/v-else-must-follow-v-if.md +136 -0
  283. package/skills/vue/vue-debug-guides/reference/v-for-component-props.md +95 -0
  284. package/skills/vue/vue-debug-guides/reference/v-for-computed-reverse-sort.md +86 -0
  285. package/skills/vue/vue-debug-guides/reference/v-for-key-attribute.md +90 -0
  286. package/skills/vue/vue-debug-guides/reference/v-for-range-starts-at-one.md +66 -0
  287. package/skills/vue/vue-debug-guides/reference/v-if-null-check-order.md +171 -0
  288. package/skills/vue/vue-debug-guides/reference/v-model-ignores-html-attributes.md +83 -0
  289. package/skills/vue/vue-debug-guides/reference/v-model-ime-composition.md +83 -0
  290. package/skills/vue/vue-debug-guides/reference/v-model-number-modifier-behavior.md +124 -0
  291. package/skills/vue/vue-debug-guides/reference/v-show-template-limitation.md +124 -0
  292. package/skills/vue/vue-debug-guides/reference/watch-async-cleanup.md +180 -0
  293. package/skills/vue/vue-debug-guides/reference/watch-async-creation-memory-leak.md +176 -0
  294. package/skills/vue/vue-debug-guides/reference/watch-deep-same-object-reference.md +165 -0
  295. package/skills/vue/vue-debug-guides/reference/watch-flush-timing.md +189 -0
  296. package/skills/vue/vue-debug-guides/reference/watch-reactive-property-getter.md +108 -0
  297. package/skills/vue/vue-debug-guides/reference/watcheffect-async-dependency-tracking.md +173 -0
  298. package/skills/vue/vue-debug-guides/reference/watcheffect-flush-post-for-refs.md +176 -0
  299. package/skills/vue/vue-jsx-best-practices/SKILL.md +12 -0
  300. package/skills/vue/vue-jsx-best-practices/reference/render-function-jsx-vue-vs-react.md +141 -0
  301. package/skills/vue/vue-options-api-best-practices/SKILL.md +23 -0
  302. package/skills/vue/vue-options-api-best-practices/reference/no-arrow-functions-in-lifecycle-hooks.md +95 -0
  303. package/skills/vue/vue-options-api-best-practices/reference/no-arrow-functions-in-methods.md +68 -0
  304. package/skills/vue/vue-options-api-best-practices/reference/stateful-methods-lifecycle.md +61 -0
  305. package/skills/vue/vue-options-api-best-practices/reference/ts-options-api-arrow-functions-validators.md +141 -0
  306. package/skills/vue/vue-options-api-best-practices/reference/ts-options-api-computed-return-types.md +192 -0
  307. package/skills/vue/vue-options-api-best-practices/reference/ts-options-api-proptype-complex-types.md +212 -0
  308. package/skills/vue/vue-options-api-best-practices/reference/ts-options-api-provide-inject-limitations.md +135 -0
  309. package/skills/vue/vue-options-api-best-practices/reference/ts-options-api-type-event-handlers.md +202 -0
  310. package/skills/vue/vue-options-api-best-practices/reference/ts-options-api-use-definecomponent.md +172 -0
  311. package/skills/vue/vue-options-api-best-practices/reference/ts-strict-mode-options-api.md +197 -0
  312. package/skills/vue/vue-pinia-best-practices/SKILL.md +21 -0
  313. package/skills/vue/vue-pinia-best-practices/reference/pinia-no-active-pinia-error.md +248 -0
  314. package/skills/vue/vue-pinia-best-practices/reference/pinia-setup-store-return-all-state.md +227 -0
  315. package/skills/vue/vue-pinia-best-practices/reference/pinia-store-destructuring-breaks-reactivity.md +193 -0
  316. package/skills/vue/vue-pinia-best-practices/reference/state-url-for-ephemeral-filters.md +238 -0
  317. package/skills/vue/vue-pinia-best-practices/reference/state-use-pinia-for-large-apps.md +262 -0
  318. package/skills/vue/vue-pinia-best-practices/reference/store-method-binding-parentheses.md +191 -0
  319. package/skills/vue/vue-router-best-practices/SKILL.md +23 -0
  320. package/skills/vue/vue-router-best-practices/reference/router-beforeenter-no-param-trigger.md +167 -0
  321. package/skills/vue/vue-router-best-practices/reference/router-beforerouteenter-no-this.md +176 -0
  322. package/skills/vue/vue-router-best-practices/reference/router-guard-async-await-pattern.md +227 -0
  323. package/skills/vue/vue-router-best-practices/reference/router-navigation-guard-infinite-loop.md +187 -0
  324. package/skills/vue/vue-router-best-practices/reference/router-navigation-guard-next-deprecated.md +150 -0
  325. package/skills/vue/vue-router-best-practices/reference/router-param-change-no-lifecycle.md +181 -0
  326. package/skills/vue/vue-router-best-practices/reference/router-simple-routing-cleanup.md +209 -0
  327. package/skills/vue/vue-router-best-practices/reference/router-use-vue-router-for-production.md +183 -0
  328. package/skills/vue/vue-testing-best-practices/SKILL.md +29 -0
  329. package/skills/vue/vue-testing-best-practices/reference/async-component-testing.md +163 -0
  330. package/skills/vue/vue-testing-best-practices/reference/teleport-testing-complexity.md +158 -0
  331. package/skills/vue/vue-testing-best-practices/reference/testing-async-await-flushpromises.md +175 -0
  332. package/skills/vue/vue-testing-best-practices/reference/testing-browser-vs-node-runners.md +208 -0
  333. package/skills/vue/vue-testing-best-practices/reference/testing-component-blackbox-approach.md +144 -0
  334. package/skills/vue/vue-testing-best-practices/reference/testing-composables-helper-wrapper.md +238 -0
  335. package/skills/vue/vue-testing-best-practices/reference/testing-e2e-playwright-recommended.md +242 -0
  336. package/skills/vue/vue-testing-best-practices/reference/testing-no-snapshot-only.md +197 -0
  337. package/skills/vue/vue-testing-best-practices/reference/testing-pinia-store-setup.md +228 -0
  338. package/skills/vue/vue-testing-best-practices/reference/testing-suspense-async-components.md +229 -0
  339. package/skills/vue/vue-testing-best-practices/reference/testing-vitest-recommended-for-vue.md +204 -0
  340. package/skills/worker/README.md +10 -0
  341. package/skills/worker/caveman/README.md +48 -0
  342. package/skills/worker/caveman/SKILL.md +88 -0
  343. package/skills/worker/ponytail/SKILL.md +120 -0
  344. package/skills-lock.json +131 -0
  345. package/templates/state.md +16 -0
@@ -0,0 +1,38 @@
1
+ # Release & Rollback Communication Templates
2
+
3
+ Fill-in-the-blank templates for release and rollback announcements. When to send each and the rollback-decision prose live in `SKILL.md`.
4
+
5
+ ## Release Communication Template
6
+
7
+ ```
8
+ Subject: [Release] v{version} — {date}
9
+
10
+ Status: DEPLOYING / DEPLOYED / ROLLED BACK
11
+
12
+ Changes:
13
+ - {Summary of changes, 3-5 bullet points}
14
+
15
+ Risk Level: LOW / MEDIUM / HIGH
16
+ Rollback Plan: {Revert deploy / Disable feature flag / etc.}
17
+ On-Call: {Name, contact}
18
+
19
+ Monitoring Dashboard: {link}
20
+ Release Notes: {link}
21
+ ```
22
+
23
+ ## Rollback Communication Template
24
+
25
+ ```
26
+ Subject: [Rollback] v{version} — {date} {time}
27
+
28
+ Status: ROLLED BACK
29
+
30
+ Reason: {Brief description of the issue}
31
+ Impact: {Who was affected, for how long}
32
+ Current State: Running previous version v{prev_version}
33
+
34
+ Next Steps:
35
+ - Root cause investigation: {owner}
36
+ - Fix ETA: {estimate or "investigating"}
37
+ - Re-release plan: {TBD after investigation}
38
+ ```
@@ -0,0 +1,47 @@
1
+ # Rollout Automation & Verification Commands
2
+
3
+ Automated promotion rules for staged rollouts and the post-deployment verification commands. The decision prose (what to monitor between stages, the verification timeline checklists) lives in `SKILL.md`.
4
+
5
+ ## Automated Promotion Criteria
6
+
7
+ Define rules for automatic promotion between stages. Express every threshold **relative to the measured baseline** for this service, not as an absolute number — a 500ms ceiling is wrong for most APIs and a copy-paste invitation to mis-gate. Capture the baseline (e.g. trailing 7-day P95, current 5xx rate) before the rollout starts and compare against it.
8
+
9
+ ```
10
+ Promote from canary (1%) to 10% when:
11
+ - 5xx error rate <= baseline + small margin (e.g. not above 1.2x baseline) for 15 minutes
12
+ - P95 latency within tolerance of baseline (e.g. not above 1.2x baseline)
13
+ - No new exception types
14
+ - Zero crash reports
15
+
16
+ Promote from 10% to 50% when:
17
+ - 5xx error rate at or below baseline for 1 hour
18
+ - P95 latency within tolerance of baseline
19
+ - Conversion rate within 5% of baseline
20
+ - No customer-reported issues
21
+
22
+ Promote from 50% to 100% when:
23
+ - 5xx error rate at or below baseline for 2 hours
24
+ - All business metrics within expected range
25
+ - No rollback signals from any monitoring system
26
+ ```
27
+
28
+ These promotion ceilings are the inverse of the rollback triggers in `SKILL.md` (>2x baseline error rate, >3x baseline P95) — promote while comfortably under baseline, roll back when well over it.
29
+
30
+ ## Verification Commands
31
+
32
+ Quick checks you can run right after deployment:
33
+
34
+ ```bash
35
+ # Check application health
36
+ curl -s https://your-app.com/health | jq .
37
+
38
+ # Check response time
39
+ curl -o /dev/null -s -w "HTTP %{http_code} in %{time_total}s\n" https://your-app.com
40
+
41
+ # Check for new errors in the last 15 minutes (Sentry CLI example)
42
+ sentry-cli issues list --project your-project --query "firstSeen:>15m"
43
+
44
+ # Compare error counts (Datadog example)
45
+ # Before deploy: note the 5xx count
46
+ # After deploy: check if 5xx count increased
47
+ ```
@@ -0,0 +1,337 @@
1
+ ---
2
+ name: risk-based-testing
3
+ description: >-
4
+ Produce a risk matrix or heatmap that quantifies what could break by business
5
+ impact × probability, runs failure mode analysis on the top items, and maps test
6
+ coverage to risk zones. Includes stakeholder interview frameworks and continuous
7
+ reassessment. Run this BEFORE test-strategy or test-planning. Use when: "risk
8
+ assessment," "risk matrix," "risk heatmap," "what could break," "critical paths,"
9
+ "failure modes," "where to focus testing."
10
+ Not for: multi-quarter QA direction — use test-strategy. Not for: a single
11
+ sprint/release test plan — use test-planning. Not for: hands-on session-based
12
+ bug hunting — use exploratory-testing.
13
+ Related: test-strategy, test-planning, release-readiness, qa-metrics.
14
+ license: MIT
15
+ metadata:
16
+ author: kindlmann
17
+ version: "2.0"
18
+ category: strategy
19
+ ---
20
+
21
+ <objective>
22
+ Equal coverage across all features wastes effort on low-risk areas while leaving critical paths under-tested — a 90% coverage target on a settings page is effort stolen from checkout. This skill discovers risk, quantifies it as impact × probability, maps test density to risk zones, and keeps the assessment current as the product evolves. Output is a scored risk matrix that feeds `test-strategy` and `test-planning`.
23
+ </objective>
24
+
25
+ ## Quick Route
26
+
27
+ | Situation | Start at |
28
+ |-----------|----------|
29
+ | New product, no risk model yet | Phase 1 (Identification) → run the full 6 phases |
30
+ | Post-incident reassessment | Phase 6 (Reassessment triggers), then re-score the affected items in Phase 2 |
31
+ | AI/LLM feature to assess | Phase 3 (AI/LLM failure classes), score each class in Phase 2 |
32
+ | Sprint refresh of an existing matrix | Phases 4–5 (Heatmap + Coverage alignment) on changed features |
33
+ | Verify an old heatmap is still true | Phase 6 signals + Anti-Pattern "Risk Theater" |
34
+
35
+ ---
36
+
37
+ ## Discovery Questions
38
+
39
+ Check `.agents/qa-project-context.md` first — if it exists, use it as the foundation and skip questions already answered there. Gather the rest from stakeholders across engineering, product, and operations.
40
+
41
+ ### Revenue-Critical Flows
42
+ - Which user flows directly generate revenue? (checkout, subscription, billing, upgrades)
43
+ - What is the revenue impact per hour of downtime for each flow?
44
+ - Are there time-sensitive flows? (flash sales, market-hours trading, payroll deadlines)
45
+ - Which flows have contractual SLAs with financial penalties?
46
+
47
+ ### Recent Failures
48
+ - What broke in the last 3 releases? What escaped to production?
49
+ - What were the root causes? (code defect, config error, third-party failure, data migration)
50
+ - What was the blast radius of each incident? (users affected, revenue lost, reputation impact)
51
+ - Were there near-misses caught late in testing that could have escaped?
52
+
53
+ ### Fragile Areas
54
+ - Which parts of the codebase change most frequently? (high churn = high risk)
55
+ - Which modules have the lowest test coverage today?
56
+ - Which areas have the most complex business logic or the most conditional branches?
57
+ - Which code was written by engineers who have since left the team?
58
+
59
+ ### Third-Party Dependencies
60
+ - Which external services does the product depend on? (payment processors, auth providers, CDNs, APIs)
61
+ - What is the historical reliability of each dependency?
62
+ - What happens when each dependency goes down? (graceful degradation or hard failure?)
63
+ - Are there single points of failure with no fallback?
64
+
65
+ ### Compliance and Data
66
+ - What regulatory requirements apply? (GDPR, PCI-DSS, HIPAA, SOC2, SOX, EU AI Act)
67
+ - What data is most sensitive? (PII, financial, health, credentials)
68
+ - What are the legal consequences of a data breach or compliance violation?
69
+ - Are there audit requirements that mandate specific testing evidence?
70
+
71
+ ---
72
+
73
+ ## Core Principles
74
+
75
+ 1. **Not all features are equal.** A bug in checkout that blocks purchases is categorically different from a misaligned icon on a settings page. Equal coverage everywhere wastes resources on low-risk areas while leaving critical paths under-tested.
76
+ 2. **Risk = Impact × Probability.** Risk is not a gut feeling. It is a product of two dimensions scored independently: how bad if this fails (impact), and how likely to fail (probability). Score both consistently across the product, then multiply.
77
+ 3. **Risk assessment is continuous.** A risk model created once and never updated creates false confidence. Risk changes when the product changes, when dependencies change, when the team changes, and after every production incident. Build reassessment into the rhythm.
78
+ 4. **Near-misses are data.** A catastrophic bug caught in staging is not a success story — it is a signal that the model underestimated that area. Track near-misses with the same rigor as production incidents.
79
+ 5. **Risk informs coverage, not the other way around.** Do not start with "we need 80% coverage everywhere." Start with "where would a failure hurt most?" and let the model drive coverage targets per module.
80
+
81
+ ---
82
+
83
+ ## Workflow
84
+
85
+ ```
86
+ 1. Identify → 2. Classify → 3. Analyze → 4. Heatmap → 5. Coverage → 6. Reassess → (repeat)
87
+ ↑
88
+ score ≥ 10 only; skip to 4 if no items reach threshold
89
+ ```
90
+
91
+ ### Phase 1: Risk Identification
92
+
93
+ Enumerate everything that could go wrong. Cast a wide net. Sources include:
94
+
95
+ - **Stakeholder interviews:** Product managers know business-critical flows. Engineers know fragile code. Support knows recurring user complaints.
96
+ - **Incident history:** Past failures predict future failures. Review post-mortems from the last 6–12 months.
97
+ - **Dependency mapping:** List every external service, database, message queue, and third-party API. Each is a risk vector.
98
+ - **Change analysis:** Areas with frequent code changes have higher defect probability. Use the ranked churn command in Phase 6 to find them; `git log --stat <file>` is for per-commit inspection of a specific suspect, not for ranking.
99
+ - **Architecture review:** Shared databases, single points of failure, synchronous chains, and tightly coupled modules amplify blast radius.
100
+
101
+ Use **HTSM v6.3** (Heuristic Test Strategy Model, Bach) as a Phase-1 lens — its state-based and boundary heuristics surface risks a pure feature-list misses. Download: https://www.satisfice.com/download/heuristic-test-strategy-model
102
+
103
+ Output: a raw list of risk items, each describing what could fail and what the consequence would be.
104
+
105
+ ### Phase 2: Risk Classification
106
+
107
+ Categorize each risk item along two axes.
108
+
109
+ **Impact categories (how bad is it):**
110
+
111
+ | Score | Level | Definition | Examples |
112
+ |-------|-------|-----------|----------|
113
+ | 5 | Catastrophic | Revenue loss, data breach, legal action, user safety | Payment processing fails, PII exposed |
114
+ | 4 | Major | Significant user impact, SLA violation, major feature broken | Login broken for segment, data corruption |
115
+ | 3 | Moderate | Workflow disrupted, workaround exists | Search returns wrong results, export fails |
116
+ | 2 | Minor | Cosmetic or minor UX issue | Alignment bug, slow non-critical page |
117
+ | 1 | Negligible | No user impact, internal only | Admin tooltip wrong, log format issue |
118
+
119
+ **Probability categories (how likely is it):**
120
+
121
+ | Score | Level | Definition | Indicators |
122
+ |-------|-------|-----------|-----------|
123
+ | 5 | Frequent | Expected in most releases | High code churn, no tests, complex logic |
124
+ | 4 | Likely | Will probably happen within a quarter | Recent changes, partial coverage, known tech debt |
125
+ | 3 | Possible | Could happen, has happened before | Moderate complexity, some coverage |
126
+ | 2 | Unlikely | Improbable but not impossible | Stable code, good coverage, simple logic |
127
+ | 1 | Rare | Requires exceptional circumstances | Well-tested, rarely changed, simple |
128
+
129
+ Composite score = Impact × Probability. Frequent changes indicate defect probability, so a Moderate-impact (3) feature under heavy churn scores Probability 5 → **Risk score: 15 → CRITICAL zone**, despite "only" moderate impact. The composite score drives priority, not impact alone.
130
+
131
+ ### Phase 3: Failure Mode Analysis
132
+
133
+ For each high-risk item (score ≥ 10), perform a detailed failure mode analysis.
134
+
135
+ ```
136
+ Feature/Component: [name]
137
+ Risk Score: [impact × probability]
138
+
139
+ Failure Mode 1: [what specifically can fail]
140
+ Trigger: [what causes this failure]
141
+ Blast Radius: [users affected, systems affected, data affected]
142
+ Detection Method: [how would we know -- monitoring, user report, test]
143
+ Current Mitigation: [existing tests, monitoring, feature flags, fallbacks]
144
+ Gap: [what is missing from current mitigation]
145
+
146
+ Failure Mode 2: ...
147
+ ```
148
+
149
+ **Example — E-commerce Checkout (Risk Score 20, Impact 5 × Probability 4):**
150
+
151
+ ```
152
+ Failure Mode 1: Payment charge succeeds but order not recorded
153
+ Trigger: Race condition between payment API callback and order write
154
+ Blast Radius: Individual users; money charged but no order confirmation
155
+ Detection Method: Payment reconciliation job (runs hourly), user complaint
156
+ Current Mitigation: Idempotency key on payment, retry on order write
157
+ Gap: No automated test for the race condition; reconciliation delay is 1 hour
158
+
159
+ Failure Mode 2: Discount code applies incorrect amount
160
+ Trigger: Percentage discount on already-discounted item
161
+ Blast Radius: All users with stacked discounts; revenue leakage
162
+ Detection Method: Margin monitoring alert (>5% deviation)
163
+ Current Mitigation: Unit tests for single discounts
164
+ Gap: No tests for discount stacking; no tests for rounding edge cases
165
+
166
+ Failure Mode 3: Inventory not reserved during checkout
167
+ Trigger: Concurrent purchases of last-stock item
168
+ Blast Radius: Oversold items, fulfillment failure, customer trust
169
+ Detection Method: Fulfillment team discovers during packing
170
+ Current Mitigation: Database-level stock check on order creation
171
+ Gap: No load test simulating concurrent last-item purchases
172
+ ```
173
+
174
+ #### AI/LLM failure classes
175
+
176
+ For AI/LLM features, classify against these CT-GenAI classes and score Impact and Probability independently like any other risk. The mitigation is the existence of an automated **eval suite**, not a single manual test.
177
+
178
+ > **AI/LLM-specific failure classes** (from ISTQB CT-GenAI v1.1, effective 27 April 2026):
179
+ > - **Hallucination / reasoning error** — Impact: moderate to major; Probability: high without explicit prompt-eval coverage. Detection: golden-dataset evals, fact-check assertions (see `ai-system-testing`).
180
+ > - **Bias** — Impact: catastrophic in regulated industries (finance, healthcare, hiring). Probability: dataset-dependent. Detection: counterfactual evals, demographic-parity checks.
181
+ > - **Prompt injection / jailbreak** — Impact: major (data exfiltration, prompt extraction). Probability: high for any externally-facing LLM feature. Detection: Garak, PyRIT, Promptfoo redteam.
182
+ > - **Privacy leak** — Impact: catastrophic under GDPR/CCPA/EU AI Act. Probability: dataset-dependent. Detection: PII scanning of training data and prompts.
183
+ > - **AI Act / regulatory non-compliance** — Impact: catastrophic (fines, ban). Probability: high for EU-facing AI features. Detection: see `compliance-testing`.
184
+ >
185
+ > Tool freshness (mid-2026): PyRIT now lives at **microsoft/PyRIT** — the old Azure-hosted repo was archived March 2026, so do not point new redteam work at the legacy Azure path. Promptfoo was acquired by OpenAI (March 2026) but remains MIT-licensed. Garak is current and unchanged.
186
+
187
+ **Reference frameworks:** **CT-GenAI v1.1** (ISTQB, effective 27 April 2026) codifies the AI/LLM classes above. **WQR 2025-26** (Capgemini, 17th edition, Nov 2025) gives the adoption-stage framing for AI risk planning.
188
+
189
+ ### Phase 4: Risk Heatmap
190
+
191
+ Plot all risk items on a 5×5 matrix to communicate priorities and drive coverage decisions.
192
+
193
+ ```
194
+ PROBABILITY
195
+ Rare(1) Unlikely(2) Possible(3) Likely(4) Frequent(5)
196
+ +----------+-----------+-----------+----------+-----------+
197
+ Catastrophic(5) | 5 MED | 10 HIGH | 15 CRIT | 20 CRIT | 25 CRIT |
198
+ +----------+-----------+-----------+----------+-----------+
199
+ Major(4) | 4 LOW | 8 MED | 12 HIGH | 16 CRIT | 20 CRIT |
200
+ I +----------+-----------+-----------+----------+-----------+
201
+ M Moderate(3) | 3 LOW | 6 MED | 9 MED | 12 HIGH | 15 CRIT |
202
+ P +----------+-----------+-----------+----------+-----------+
203
+ A Minor(2) | 2 LOW | 4 LOW | 6 MED | 8 MED | 10 HIGH |
204
+ C +----------+-----------+-----------+----------+-----------+
205
+ T Negligible(1) | 1 LOW | 2 LOW | 3 LOW | 4 LOW | 5 MED |
206
+ +----------+-----------+-----------+----------+-----------+
207
+ ```
208
+
209
+ **Zone boundaries and action mapping:**
210
+
211
+ | Zone | Score Range | Color | Testing Action |
212
+ |------|------------|-------|---------------|
213
+ | CRITICAL | 15-25 | Red | Automate fully + monitor in production + load test + manual exploratory |
214
+ | HIGH | 10-14 | Orange | Automate fully + periodic manual review |
215
+ | MEDIUM | 5-9 | Yellow | Automate happy path + key error cases |
216
+ | LOW | 1-4 | Green | Manual testing on release or skip entirely |
217
+
218
+ Populated example (where each named risk lands):
219
+
220
+ ```
221
+ Rare(1) Unlikely(2) Possible(3) Likely(4) Frequent(5)
222
+ Catastrophic(5) Auth bypass Payments fail Checkout crash
223
+ Major(4) Data export Search broken User upload
224
+ Moderate(3) Report fmt Email deliver Profile edit
225
+ Minor(2) Footer link Tooltip text Theme switch
226
+ Negligible(1) Admin label
227
+ ```
228
+
229
+ ### Phase 5: Test Coverage Alignment
230
+
231
+ Map test density to risk level. Every zone gets a prescribed approach.
232
+
233
+ | Risk Zone | Unit Tests | Integration Tests | E2E Tests | Manual Testing | Monitoring |
234
+ |-----------|-----------|------------------|-----------|---------------|-----------|
235
+ | CRITICAL (15-25) | 90%+ branch coverage | All service boundaries | Full user journey + error paths | Exploratory each release | Real-time alerts, synthetic checks |
236
+ | HIGH (10-14) | 80%+ branch coverage | Key interactions | Happy path + top 3 error paths | Spot checks | Dashboard + daily review |
237
+ | MEDIUM (5-9) | 70%+ branch coverage | Happy path only | Happy path only | On major changes | Weekly review |
238
+ | LOW (1-4) | Basic happy path | None required | None required | On initial build | None required |
239
+
240
+ #### Gap Analysis Worksheet
241
+
242
+ Compare current coverage against required coverage per risk zone:
243
+
244
+ ```
245
+ Feature: [name]
246
+ Risk Zone: [CRITICAL / HIGH / MEDIUM / LOW] Risk Score: [number]
247
+
248
+ Required Coverage:
249
+ Unit: [target %] Current: [actual %] Gap: [delta]
250
+ Integration: [required?] Current: [exists? y/n] Gap: [missing scenarios]
251
+ E2E: [required?] Current: [exists? y/n] Gap: [missing flows]
252
+ Monitoring: [required?] Current: [exists? y/n] Gap: [missing alerts]
253
+
254
+ Priority: [P0 / P1 / P2 / P3]
255
+ Estimated Effort: [hours / story points]
256
+ Owner: [name] Target Sprint: [sprint number]
257
+ ```
258
+
259
+ A churn signal forces this worksheet open: a module that changed 47 times in 3 months (Probability → 5) with only 40% branch coverage and no integration tests jumps zones (e.g. MEDIUM → HIGH), and the new coverage target is justified by the churn, not picked arbitrarily.
260
+
261
+ See `references/examples.md` for four fully-scored examples (checkout, media platform, third-party API, auth) showing the path from risk score to prescribed coverage.
262
+
263
+ ### Phase 6: Monitoring and Reassessment
264
+
265
+ Risk assessment is not a one-time activity. Build reassessment into the team's rhythm.
266
+
267
+ **Reassessment triggers:**
268
+ - After every production incident (within 48 hours): re-score the affected items, check dependency health, and re-run the Phase-5 gap analysis to expose any coverage gap the incident revealed
269
+ - When a new feature area is introduced
270
+ - When a critical dependency changes (API version, provider switch)
271
+ - When team composition changes significantly
272
+ - Quarterly at minimum, even without triggers
273
+
274
+ **Continuous risk signals to monitor:**
275
+ - **Code churn by module** (ranked frequency table):
276
+ ```bash
277
+ git log --since="3 months ago" --name-only --format= | grep -v '^$' | sort | uniq -c | sort -rn | head -20
278
+ ```
279
+ - **Defect clustering:** Which modules produce the most bugs? Track with issue labels.
280
+ - **Near-miss frequency:** How often do staging/QA catches prevent production incidents?
281
+ - **Dependency health:** Monitor status pages and uptime of critical third-party services.
282
+ - **Coverage trends:** Is coverage increasing or decreasing in high-risk areas?
283
+
284
+ ---
285
+
286
+ ## Anti-Patterns
287
+
288
+ ### Testing everything equally
289
+ Applying the same coverage target to every feature regardless of risk. A 90% target on a settings page wastes effort that should go to payments or auth. Let the risk model drive allocation.
290
+
291
+ ### One-time risk assessment
292
+ Creating a matrix during planning and never updating it. The product, team, and dependencies all change. A model from 6 months ago is outdated and out of date the moment a dependency, feature, or incident shifts the picture — it does not reflect today. Schedule reassessment and enforce it.
293
+
294
+ ### Ignoring near-misses
295
+ Treating bugs caught in staging as pure successes. If a critical bug was caught only by manual testing, the automated safety net has a gap. Document near-misses and adjust the model.
296
+
297
+ ### Risk theater
298
+ Going through the motions (filling matrices, drawing heatmaps) without changing test allocation. If the heatmap exists but coverage does not align to it, the exercise was wasted. Verify alignment quarterly. Bolton's "Quality Engineering Is Not Testing" (2026-04-20) warns of exactly this — building a heatmap and calling it "QE done." Reference: https://developsense.com/blog/2026/04/quality-engineering-is-not-testing
299
+
300
+ ### Anchoring on historical risk
301
+ Over-weighting past incidents and under-weighting new vectors. A module that failed 2 years ago and was since rewritten may no longer be high risk; a brand-new third-party integration has unknown risk that deserves attention.
302
+
303
+ ### Confusing severity with priority
304
+ Severity is how bad a failure is; priority is how urgently to test it. A catastrophic-but-rare failure (earthquake destroys data center) can be lower priority than a moderate-but-frequent one (search occasionally wrong). Use the composite score, not impact alone.
305
+
306
+ ---
307
+
308
+ ## Verification
309
+
310
+ Prove the matrix is real and aligned before calling it done — smallest check first:
311
+
312
+ - **Artifact exists and is tracked:** `git ls-files | grep -E 'risk-matrix|qa-project-context'` returns the file. An untracked draft on someone's laptop is not a risk model.
313
+ - **Every in-scope feature is scored:** grep the artifact for rows missing an impact or probability number. A feature with a name but no score is a gap, not a low risk.
314
+ - **Top items have failure mode analysis:** every item scoring ≥ 10 has a block with all five fields (Trigger, Blast Radius, Detection Method, Current Mitigation, Gap). A failure mode with an empty Gap line was not actually analyzed.
315
+ - **Coverage aligns to the heatmap:** for each CRITICAL/HIGH feature, confirm the prescribed coverage from the Phase-5 table actually exists (run the suite, check the coverage report's per-module numbers against the target). If the heatmap says CRITICAL but the module has 40% branch coverage and no E2E, the exercise was Risk Theater.
316
+ - **Churn signal is current:** re-run the Phase-6 churn command; any module in the top 10 that is not scored ≥ Probability 4 is a model that has drifted from reality.
317
+
318
+ ## Done When
319
+
320
+ - A scored risk matrix exists as a tracked artifact (`.agents/qa-project-context.md` risk section or a committed `risk-matrix.md`), with every in-scope feature scored on impact (1-5) and probability (1-5)
321
+ - Each feature's composite score places it in a named zone (CRITICAL, HIGH, MEDIUM, or LOW) with a corresponding testing action assigned
322
+ - Every feature scoring ≥ 10 has a completed failure mode analysis with trigger, blast radius, detection method, current mitigation, and gap documented
323
+ - Coverage requirements per zone are mapped against current coverage, with each gap assigned a Priority (P0-P3), an Owner, and a Target Sprint
324
+ - Reassessment triggers and cadence are recorded in the same artifact (quarterly minimum, plus within 48 hours of any production incident)
325
+
326
+ ## Reference Files (in `references/`)
327
+
328
+ - **examples.md** — Four fully-scored worked examples (checkout, media platform, third-party API, auth): risk profile → failure modes → prescribed coverage.
329
+
330
+ ## Related Skills
331
+
332
+ - **test-strategy** — The multi-quarter QA strategy this risk matrix feeds into; risk assessment is one input to a broader strategy.
333
+ - **test-planning** — Single-sprint/release planning uses risk priorities to decide what to test this iteration.
334
+ - **release-readiness** — Go/no-go decisions reference the heatmap to confirm critical areas are covered.
335
+ - **qa-metrics** — Defect escape rate and defect clustering feed back into risk reassessment.
336
+ - **ai-system-testing** — Building the eval suites that mitigate the Phase-3 AI/LLM failure classes.
337
+ - **qa-project-context** — Captures the critical flows, fragile areas, and dependencies this skill consumes and writes the risk matrix back into.
@@ -0,0 +1,81 @@
1
+ # Risk-Based Testing — Worked Examples
2
+
3
+ Four fully-scored examples showing the path from risk score to prescribed coverage.
4
+ Each follows the same shape: risk profile (Impact, Probability, composite score, zone),
5
+ the failure modes identified in Phase 3, and the coverage prescribed by the Phase-5
6
+ by-zone table.
7
+
8
+ ---
9
+
10
+ ## Example 1: E-commerce Checkout
11
+
12
+ **Risk profile:** Impact 5, Probability 4, Score 20 (CRITICAL)
13
+
14
+ **Failure modes identified:**
15
+ - Payment charged but order not created (race condition)
16
+ - Discount stacking applies incorrect total
17
+ - Inventory oversold under concurrent load
18
+ - Shipping calculator returns wrong rate for international addresses
19
+ - Tax calculation wrong for specific jurisdictions
20
+
21
+ **Test coverage prescribed:**
22
+ - Unit tests: discount calculation (all combinations), tax rules (per jurisdiction), inventory decrement logic
23
+ - Integration tests: payment gateway communication (success, failure, timeout, duplicate), order creation pipeline, inventory reservation under concurrency
24
+ - E2E tests: full checkout flow (guest + logged in), checkout with discount, checkout with international shipping, checkout retry after payment failure
25
+ - Load tests: 100 concurrent checkouts for last-stock item
26
+ - Monitoring: real-time order completion rate, payment-to-order reconciliation every 5 minutes, revenue anomaly detection
27
+
28
+ ---
29
+
30
+ ## Example 2: Content Loading (Media Platform)
31
+
32
+ **Risk profile:** Impact 4, Probability 3, Score 12 (HIGH)
33
+
34
+ **Failure modes identified:**
35
+ - CDN cache miss causes origin overload
36
+ - Video transcoding fails silently for specific codecs
37
+ - Thumbnail generation timeout leaves blank images
38
+ - Content recommendation engine returns stale or empty results
39
+
40
+ **Test coverage prescribed:**
41
+ - Unit tests: transcoding pipeline input validation, recommendation scoring algorithm
42
+ - Integration tests: CDN purge/refresh flow, transcoding job queue processing, thumbnail generation for each supported format
43
+ - E2E tests: content upload through playback, content discovery through recommendation click
44
+ - Monitoring: CDN hit ratio, transcoding failure rate, thumbnail generation latency p99
45
+
46
+ ---
47
+
48
+ ## Example 3: Third-Party API Integration
49
+
50
+ **Risk profile:** Impact 4, Probability 4, Score 16 (CRITICAL)
51
+
52
+ **Failure modes identified:**
53
+ - API rate limit exceeded during peak traffic
54
+ - API response schema changes without notice (breaking deserialization)
55
+ - API timeout causes cascade failure in synchronous call chain
56
+ - API returns 200 with error body (non-standard error handling)
57
+
58
+ **Test coverage prescribed:**
59
+ - Unit tests: response parser for all known response shapes including malformed responses, rate limit backoff calculation, circuit breaker state transitions
60
+ - Integration tests: API contract tests (validate response schema against expected shape), timeout handling, retry behavior, circuit breaker activation
61
+ - E2E tests: user flow when API is slow (degraded but functional), user flow when API is down (graceful fallback)
62
+ - Monitoring: API response time p50/p95/p99, error rate, rate limit proximity, circuit breaker state
63
+
64
+ ---
65
+
66
+ ## Example 4: Authentication Flows
67
+
68
+ **Risk profile:** Impact 5, Probability 2, Score 10 (HIGH)
69
+
70
+ **Failure modes identified:**
71
+ - Session token not invalidated on password change
72
+ - OAuth callback race condition allows account takeover
73
+ - MFA bypass through API endpoint that skips MFA check
74
+ - Rate limiting not enforced on login endpoint (brute force)
75
+
76
+ **Test coverage prescribed:**
77
+ - Unit tests: token generation and validation, password hashing, MFA code verification, rate limit counter logic
78
+ - Integration tests: full auth flow (register, login, logout, password reset), session invalidation on credential change, OAuth flow with all supported providers, MFA enrollment and verification
79
+ - E2E tests: login flow (valid credentials, invalid, locked account), password reset flow, MFA flow
80
+ - Security tests: brute force attempt (verify rate limiting), session fixation, token reuse after logout
81
+ - Monitoring: failed login rate spike, unusual session patterns, MFA bypass attempts