@ruaruababa/vibe-kit 1.0.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 (462) hide show
  1. package/CATALOG.md +317 -0
  2. package/README.md +121 -0
  3. package/aliases.json +65 -0
  4. package/bin/vibe.js +2 -0
  5. package/bundles.json +265 -0
  6. package/catalog.json +1560 -0
  7. package/dist/antigravity-skills/bin/cli.js +438 -0
  8. package/dist/antigravity-skills/lib/skill-utils.js +158 -0
  9. package/dist/antigravity-skills/scripts/build-catalog.js +305 -0
  10. package/dist/antigravity-skills/scripts/normalize-frontmatter.js +144 -0
  11. package/dist/antigravity-skills/scripts/validate-skills.js +230 -0
  12. package/dist/bin/vibe.js +2 -0
  13. package/dist/dist/src/cli/index.js +26 -0
  14. package/dist/lib/skill-utils.js +158 -0
  15. package/dist/scripts/build-catalog.js +50 -0
  16. package/dist/scripts/normalize-frontmatter.js +144 -0
  17. package/dist/scripts/validate-skills.js +56 -0
  18. package/dist/src/cli/index.js +146 -0
  19. package/dist/src/types/index.js +13 -0
  20. package/dist/src/utils/fs.js +1 -0
  21. package/package.json +43 -0
  22. package/skills/accessibility-compliance-accessibility-audit/SKILL.md +42 -0
  23. package/skills/accessibility-compliance-accessibility-audit/resources/implementation-playbook.md +502 -0
  24. package/skills/agent-orchestration-improve-agent/SKILL.md +349 -0
  25. package/skills/agent-orchestration-multi-agent-optimize/SKILL.md +239 -0
  26. package/skills/agent-orchestrator/SKILL.md +24 -0
  27. package/skills/ai-engineer/SKILL.md +171 -0
  28. package/skills/airflow-dag-patterns/SKILL.md +41 -0
  29. package/skills/airflow-dag-patterns/resources/implementation-playbook.md +509 -0
  30. package/skills/angular-migration/SKILL.md +428 -0
  31. package/skills/anti-reversing-techniques/SKILL.md +42 -0
  32. package/skills/anti-reversing-techniques/resources/implementation-playbook.md +539 -0
  33. package/skills/api-design-principles/SKILL.md +37 -0
  34. package/skills/api-design-principles/assets/api-design-checklist.md +155 -0
  35. package/skills/api-design-principles/assets/rest-api-template.py +182 -0
  36. package/skills/api-design-principles/references/graphql-schema-design.md +583 -0
  37. package/skills/api-design-principles/references/rest-best-practices.md +408 -0
  38. package/skills/api-design-principles/resources/implementation-playbook.md +513 -0
  39. package/skills/api-documenter/SKILL.md +184 -0
  40. package/skills/api-testing-observability-api-mock/SKILL.md +46 -0
  41. package/skills/api-testing-observability-api-mock/resources/implementation-playbook.md +1327 -0
  42. package/skills/application-performance-performance-optimization/SKILL.md +154 -0
  43. package/skills/architect-review/SKILL.md +174 -0
  44. package/skills/architecture-decision-records/SKILL.md +441 -0
  45. package/skills/architecture-patterns/SKILL.md +37 -0
  46. package/skills/architecture-patterns/resources/implementation-playbook.md +479 -0
  47. package/skills/arm-cortex-expert/SKILL.md +306 -0
  48. package/skills/async-python-patterns/SKILL.md +39 -0
  49. package/skills/async-python-patterns/resources/implementation-playbook.md +678 -0
  50. package/skills/attack-tree-construction/SKILL.md +38 -0
  51. package/skills/attack-tree-construction/resources/implementation-playbook.md +671 -0
  52. package/skills/auth-implementation-patterns/SKILL.md +39 -0
  53. package/skills/auth-implementation-patterns/resources/implementation-playbook.md +618 -0
  54. package/skills/backend-architect/SKILL.md +333 -0
  55. package/skills/backend-development-feature-development/SKILL.md +180 -0
  56. package/skills/backend-security-coder/SKILL.md +156 -0
  57. package/skills/backtesting-frameworks/SKILL.md +39 -0
  58. package/skills/backtesting-frameworks/resources/implementation-playbook.md +647 -0
  59. package/skills/bash-defensive-patterns/SKILL.md +43 -0
  60. package/skills/bash-defensive-patterns/resources/implementation-playbook.md +517 -0
  61. package/skills/bash-pro/SKILL.md +310 -0
  62. package/skills/bats-testing-patterns/SKILL.md +34 -0
  63. package/skills/bats-testing-patterns/resources/implementation-playbook.md +614 -0
  64. package/skills/bazel-build-optimization/SKILL.md +397 -0
  65. package/skills/billing-automation/SKILL.md +42 -0
  66. package/skills/billing-automation/resources/implementation-playbook.md +544 -0
  67. package/skills/binary-analysis-patterns/SKILL.md +450 -0
  68. package/skills/blockchain-developer/SKILL.md +208 -0
  69. package/skills/business-analyst/SKILL.md +182 -0
  70. package/skills/c-pro/SKILL.md +56 -0
  71. package/skills/c4-architecture-c4-architecture/SKILL.md +389 -0
  72. package/skills/c4-code/SKILL.md +244 -0
  73. package/skills/c4-component/SKILL.md +153 -0
  74. package/skills/c4-container/SKILL.md +171 -0
  75. package/skills/c4-context/SKILL.md +150 -0
  76. package/skills/changelog-automation/SKILL.md +38 -0
  77. package/skills/changelog-automation/resources/implementation-playbook.md +538 -0
  78. package/skills/cicd-automation-workflow-automate/SKILL.md +51 -0
  79. package/skills/cicd-automation-workflow-automate/resources/implementation-playbook.md +1333 -0
  80. package/skills/clean-markdown/SKILL.md +23 -0
  81. package/skills/cloud-architect/SKILL.md +135 -0
  82. package/skills/code-documentation-code-explain/SKILL.md +46 -0
  83. package/skills/code-documentation-code-explain/resources/implementation-playbook.md +802 -0
  84. package/skills/code-documentation-doc-generate/SKILL.md +48 -0
  85. package/skills/code-documentation-doc-generate/resources/implementation-playbook.md +640 -0
  86. package/skills/code-refactoring-context-restore/SKILL.md +179 -0
  87. package/skills/code-refactoring-refactor-clean/SKILL.md +51 -0
  88. package/skills/code-refactoring-refactor-clean/resources/implementation-playbook.md +879 -0
  89. package/skills/code-refactoring-tech-debt/SKILL.md +386 -0
  90. package/skills/code-review-ai-ai-review/SKILL.md +450 -0
  91. package/skills/code-review-excellence/SKILL.md +40 -0
  92. package/skills/code-review-excellence/resources/implementation-playbook.md +515 -0
  93. package/skills/code-reviewer/SKILL.md +178 -0
  94. package/skills/codebase-cleanup-deps-audit/SKILL.md +51 -0
  95. package/skills/codebase-cleanup-deps-audit/resources/implementation-playbook.md +766 -0
  96. package/skills/codebase-cleanup-refactor-clean/SKILL.md +51 -0
  97. package/skills/codebase-cleanup-refactor-clean/resources/implementation-playbook.md +879 -0
  98. package/skills/codebase-cleanup-tech-debt/SKILL.md +386 -0
  99. package/skills/competitive-landscape/SKILL.md +34 -0
  100. package/skills/competitive-landscape/resources/implementation-playbook.md +494 -0
  101. package/skills/comprehensive-review-full-review/SKILL.md +146 -0
  102. package/skills/comprehensive-review-pr-enhance/SKILL.md +46 -0
  103. package/skills/comprehensive-review-pr-enhance/resources/implementation-playbook.md +691 -0
  104. package/skills/conductor-implement/SKILL.md +388 -0
  105. package/skills/conductor-manage/SKILL.md +39 -0
  106. package/skills/conductor-manage/resources/implementation-playbook.md +1120 -0
  107. package/skills/conductor-new-track/SKILL.md +433 -0
  108. package/skills/conductor-revert/SKILL.md +372 -0
  109. package/skills/conductor-setup/SKILL.md +426 -0
  110. package/skills/conductor-status/SKILL.md +338 -0
  111. package/skills/conductor-validator/SKILL.md +62 -0
  112. package/skills/content-marketer/SKILL.md +170 -0
  113. package/skills/context-driven-development/SKILL.md +400 -0
  114. package/skills/context-management-context-restore/SKILL.md +179 -0
  115. package/skills/context-management-context-save/SKILL.md +177 -0
  116. package/skills/context-manager/SKILL.md +185 -0
  117. package/skills/cost-optimization/SKILL.md +286 -0
  118. package/skills/cpp-pro/SKILL.md +59 -0
  119. package/skills/cqrs-implementation/SKILL.md +35 -0
  120. package/skills/cqrs-implementation/resources/implementation-playbook.md +540 -0
  121. package/skills/csharp-pro/SKILL.md +59 -0
  122. package/skills/customer-support/SKILL.md +170 -0
  123. package/skills/data-engineer/SKILL.md +224 -0
  124. package/skills/data-engineering-data-driven-feature/SKILL.md +182 -0
  125. package/skills/data-engineering-data-pipeline/SKILL.md +201 -0
  126. package/skills/data-quality-frameworks/SKILL.md +40 -0
  127. package/skills/data-quality-frameworks/resources/implementation-playbook.md +573 -0
  128. package/skills/data-scientist/SKILL.md +199 -0
  129. package/skills/data-storytelling/SKILL.md +465 -0
  130. package/skills/database-admin/SKILL.md +165 -0
  131. package/skills/database-architect/SKILL.md +268 -0
  132. package/skills/database-cloud-optimization-cost-optimize/SKILL.md +44 -0
  133. package/skills/database-cloud-optimization-cost-optimize/resources/implementation-playbook.md +1441 -0
  134. package/skills/database-migration/SKILL.md +436 -0
  135. package/skills/database-migrations-migration-observability/SKILL.md +420 -0
  136. package/skills/database-migrations-sql-migrations/SKILL.md +53 -0
  137. package/skills/database-migrations-sql-migrations/resources/implementation-playbook.md +499 -0
  138. package/skills/database-optimizer/SKILL.md +167 -0
  139. package/skills/dbt-transformation-patterns/SKILL.md +34 -0
  140. package/skills/dbt-transformation-patterns/resources/implementation-playbook.md +547 -0
  141. package/skills/debugger/SKILL.md +49 -0
  142. package/skills/debugging-strategies/SKILL.md +34 -0
  143. package/skills/debugging-strategies/resources/implementation-playbook.md +511 -0
  144. package/skills/debugging-toolkit-smart-debug/SKILL.md +197 -0
  145. package/skills/defi-protocol-templates/SKILL.md +466 -0
  146. package/skills/dependency-management-deps-audit/SKILL.md +44 -0
  147. package/skills/dependency-management-deps-audit/resources/implementation-playbook.md +766 -0
  148. package/skills/dependency-upgrade/SKILL.md +421 -0
  149. package/skills/deployment-engineer/SKILL.md +170 -0
  150. package/skills/deployment-pipeline-design/SKILL.md +371 -0
  151. package/skills/deployment-validation-config-validate/SKILL.md +496 -0
  152. package/skills/devops-troubleshooter/SKILL.md +161 -0
  153. package/skills/distributed-debugging-debug-trace/SKILL.md +44 -0
  154. package/skills/distributed-debugging-debug-trace/resources/implementation-playbook.md +1307 -0
  155. package/skills/distributed-tracing/SKILL.md +450 -0
  156. package/skills/django-pro/SKILL.md +180 -0
  157. package/skills/docs-architect/SKILL.md +98 -0
  158. package/skills/documentation-generation-doc-generate/SKILL.md +48 -0
  159. package/skills/documentation-generation-doc-generate/resources/implementation-playbook.md +640 -0
  160. package/skills/dotnet-architect/SKILL.md +197 -0
  161. package/skills/dotnet-backend-patterns/SKILL.md +37 -0
  162. package/skills/dotnet-backend-patterns/assets/repository-template.cs +523 -0
  163. package/skills/dotnet-backend-patterns/assets/service-template.cs +336 -0
  164. package/skills/dotnet-backend-patterns/references/dapper-patterns.md +544 -0
  165. package/skills/dotnet-backend-patterns/references/ef-core-best-practices.md +355 -0
  166. package/skills/dotnet-backend-patterns/resources/implementation-playbook.md +799 -0
  167. package/skills/dummy-skill/SKILL.md +5 -0
  168. package/skills/dx-optimizer/SKILL.md +83 -0
  169. package/skills/e2e-testing-patterns/SKILL.md +41 -0
  170. package/skills/e2e-testing-patterns/resources/implementation-playbook.md +531 -0
  171. package/skills/elixir-pro/SKILL.md +59 -0
  172. package/skills/embedding-strategies/SKILL.md +491 -0
  173. package/skills/employment-contract-templates/SKILL.md +39 -0
  174. package/skills/employment-contract-templates/resources/implementation-playbook.md +493 -0
  175. package/skills/error-debugging-error-analysis/SKILL.md +47 -0
  176. package/skills/error-debugging-error-analysis/resources/implementation-playbook.md +1143 -0
  177. package/skills/error-debugging-error-trace/SKILL.md +43 -0
  178. package/skills/error-debugging-error-trace/resources/implementation-playbook.md +1361 -0
  179. package/skills/error-debugging-multi-agent-review/SKILL.md +216 -0
  180. package/skills/error-detective/SKILL.md +53 -0
  181. package/skills/error-diagnostics-error-analysis/SKILL.md +47 -0
  182. package/skills/error-diagnostics-error-analysis/resources/implementation-playbook.md +1143 -0
  183. package/skills/error-diagnostics-error-trace/SKILL.md +48 -0
  184. package/skills/error-diagnostics-error-trace/resources/implementation-playbook.md +1371 -0
  185. package/skills/error-diagnostics-smart-debug/SKILL.md +197 -0
  186. package/skills/error-handling-patterns/SKILL.md +35 -0
  187. package/skills/error-handling-patterns/resources/implementation-playbook.md +635 -0
  188. package/skills/event-sourcing-architect/SKILL.md +58 -0
  189. package/skills/event-store-design/SKILL.md +449 -0
  190. package/skills/fastapi-pro/SKILL.md +192 -0
  191. package/skills/fastapi-templates/SKILL.md +32 -0
  192. package/skills/fastapi-templates/resources/implementation-playbook.md +566 -0
  193. package/skills/final-test/SKILL.md +5 -0
  194. package/skills/firmware-analyst/SKILL.md +320 -0
  195. package/skills/flutter-expert/SKILL.md +200 -0
  196. package/skills/framework-migration-code-migrate/SKILL.md +48 -0
  197. package/skills/framework-migration-code-migrate/resources/implementation-playbook.md +1052 -0
  198. package/skills/framework-migration-deps-upgrade/SKILL.md +48 -0
  199. package/skills/framework-migration-deps-upgrade/resources/implementation-playbook.md +755 -0
  200. package/skills/framework-migration-legacy-modernize/SKILL.md +132 -0
  201. package/skills/frontend-developer/SKILL.md +171 -0
  202. package/skills/frontend-mobile-development-component-scaffold/SKILL.md +403 -0
  203. package/skills/frontend-mobile-security-xss-scan/SKILL.md +322 -0
  204. package/skills/frontend-security-coder/SKILL.md +170 -0
  205. package/skills/full-stack-orchestration-full-stack-feature/SKILL.md +135 -0
  206. package/skills/gdpr-data-handling/SKILL.md +33 -0
  207. package/skills/gdpr-data-handling/resources/implementation-playbook.md +615 -0
  208. package/skills/git-advanced-workflows/SKILL.md +412 -0
  209. package/skills/git-pr-workflows-git-workflow/SKILL.md +140 -0
  210. package/skills/git-pr-workflows-onboard/SKILL.md +416 -0
  211. package/skills/git-pr-workflows-pr-enhance/SKILL.md +48 -0
  212. package/skills/git-pr-workflows-pr-enhance/resources/implementation-playbook.md +701 -0
  213. package/skills/github-actions-templates/SKILL.md +345 -0
  214. package/skills/gitlab-ci-patterns/SKILL.md +283 -0
  215. package/skills/gitops-workflow/SKILL.md +303 -0
  216. package/skills/gitops-workflow/references/argocd-setup.md +134 -0
  217. package/skills/gitops-workflow/references/sync-policies.md +131 -0
  218. package/skills/go-concurrency-patterns/SKILL.md +33 -0
  219. package/skills/go-concurrency-patterns/resources/implementation-playbook.md +654 -0
  220. package/skills/godot-gdscript-patterns/SKILL.md +33 -0
  221. package/skills/godot-gdscript-patterns/resources/implementation-playbook.md +804 -0
  222. package/skills/golang-pro/SKILL.md +179 -0
  223. package/skills/grafana-dashboards/SKILL.md +381 -0
  224. package/skills/graphql-architect/SKILL.md +182 -0
  225. package/skills/haskell-pro/SKILL.md +56 -0
  226. package/skills/helm-chart-scaffolding/SKILL.md +34 -0
  227. package/skills/helm-chart-scaffolding/assets/Chart.yaml.template +42 -0
  228. package/skills/helm-chart-scaffolding/assets/values.yaml.template +185 -0
  229. package/skills/helm-chart-scaffolding/references/chart-structure.md +500 -0
  230. package/skills/helm-chart-scaffolding/resources/implementation-playbook.md +543 -0
  231. package/skills/helm-chart-scaffolding/scripts/validate-chart.sh +244 -0
  232. package/skills/hr-pro/SKILL.md +126 -0
  233. package/skills/hybrid-cloud-architect/SKILL.md +168 -0
  234. package/skills/hybrid-cloud-networking/SKILL.md +238 -0
  235. package/skills/hybrid-search-implementation/SKILL.md +32 -0
  236. package/skills/hybrid-search-implementation/resources/implementation-playbook.md +567 -0
  237. package/skills/incident-responder/SKILL.md +213 -0
  238. package/skills/incident-response-incident-response/SKILL.md +168 -0
  239. package/skills/incident-response-smart-fix/SKILL.md +29 -0
  240. package/skills/incident-response-smart-fix/resources/implementation-playbook.md +838 -0
  241. package/skills/incident-runbook-templates/SKILL.md +395 -0
  242. package/skills/ios-developer/SKILL.md +219 -0
  243. package/skills/istio-traffic-management/SKILL.md +337 -0
  244. package/skills/java-pro/SKILL.md +177 -0
  245. package/skills/javascript-pro/SKILL.md +57 -0
  246. package/skills/javascript-testing-patterns/SKILL.md +35 -0
  247. package/skills/javascript-testing-patterns/resources/implementation-playbook.md +1024 -0
  248. package/skills/javascript-typescript-typescript-scaffold/SKILL.md +361 -0
  249. package/skills/julia-pro/SKILL.md +209 -0
  250. package/skills/k8s-manifest-generator/SKILL.md +35 -0
  251. package/skills/k8s-manifest-generator/assets/configmap-template.yaml +296 -0
  252. package/skills/k8s-manifest-generator/assets/deployment-template.yaml +203 -0
  253. package/skills/k8s-manifest-generator/assets/service-template.yaml +171 -0
  254. package/skills/k8s-manifest-generator/references/deployment-spec.md +753 -0
  255. package/skills/k8s-manifest-generator/references/service-spec.md +724 -0
  256. package/skills/k8s-manifest-generator/resources/implementation-playbook.md +510 -0
  257. package/skills/k8s-security-policies/SKILL.md +346 -0
  258. package/skills/k8s-security-policies/assets/network-policy-template.yaml +177 -0
  259. package/skills/k8s-security-policies/references/rbac-patterns.md +187 -0
  260. package/skills/kpi-dashboard-design/SKILL.md +440 -0
  261. package/skills/kubernetes-architect/SKILL.md +170 -0
  262. package/skills/langchain-architecture/SKILL.md +350 -0
  263. package/skills/legacy-modernizer/SKILL.md +53 -0
  264. package/skills/legal-advisor/SKILL.md +70 -0
  265. package/skills/linkerd-patterns/SKILL.md +321 -0
  266. package/skills/llm-application-dev-ai-assistant/SKILL.md +35 -0
  267. package/skills/llm-application-dev-ai-assistant/resources/implementation-playbook.md +1236 -0
  268. package/skills/llm-application-dev-langchain-agent/SKILL.md +246 -0
  269. package/skills/llm-application-dev-prompt-optimize/SKILL.md +37 -0
  270. package/skills/llm-application-dev-prompt-optimize/resources/implementation-playbook.md +591 -0
  271. package/skills/llm-evaluation/SKILL.md +483 -0
  272. package/skills/machine-learning-ops-ml-pipeline/SKILL.md +314 -0
  273. package/skills/malware-analyst/SKILL.md +247 -0
  274. package/skills/market-sizing-analysis/SKILL.md +425 -0
  275. package/skills/market-sizing-analysis/examples/saas-market-sizing.md +349 -0
  276. package/skills/market-sizing-analysis/references/data-sources.md +360 -0
  277. package/skills/memory-forensics/SKILL.md +491 -0
  278. package/skills/memory-safety-patterns/SKILL.md +33 -0
  279. package/skills/memory-safety-patterns/resources/implementation-playbook.md +603 -0
  280. package/skills/mermaid-expert/SKILL.md +59 -0
  281. package/skills/microservices-patterns/SKILL.md +35 -0
  282. package/skills/microservices-patterns/resources/implementation-playbook.md +607 -0
  283. package/skills/minecraft-bukkit-pro/SKILL.md +126 -0
  284. package/skills/ml-engineer/SKILL.md +168 -0
  285. package/skills/ml-pipeline-workflow/SKILL.md +257 -0
  286. package/skills/mlops-engineer/SKILL.md +219 -0
  287. package/skills/mobile-developer/SKILL.md +205 -0
  288. package/skills/mobile-security-coder/SKILL.md +184 -0
  289. package/skills/modern-javascript-patterns/SKILL.md +35 -0
  290. package/skills/modern-javascript-patterns/resources/implementation-playbook.md +910 -0
  291. package/skills/monorepo-architect/SKILL.md +61 -0
  292. package/skills/monorepo-management/SKILL.md +35 -0
  293. package/skills/monorepo-management/resources/implementation-playbook.md +621 -0
  294. package/skills/mtls-configuration/SKILL.md +359 -0
  295. package/skills/multi-cloud-architecture/SKILL.md +189 -0
  296. package/skills/multi-platform-apps-multi-platform/SKILL.md +203 -0
  297. package/skills/network-engineer/SKILL.md +169 -0
  298. package/skills/nextjs-app-router-patterns/SKILL.md +33 -0
  299. package/skills/nextjs-app-router-patterns/resources/implementation-playbook.md +543 -0
  300. package/skills/nft-standards/SKILL.md +395 -0
  301. package/skills/node-expert/SKILL.md +23 -0
  302. package/skills/nodejs-backend-patterns/SKILL.md +35 -0
  303. package/skills/nodejs-backend-patterns/resources/implementation-playbook.md +1019 -0
  304. package/skills/nx-workspace-patterns/SKILL.md +464 -0
  305. package/skills/observability-engineer/SKILL.md +237 -0
  306. package/skills/observability-monitoring-monitor-setup/SKILL.md +48 -0
  307. package/skills/observability-monitoring-monitor-setup/resources/implementation-playbook.md +505 -0
  308. package/skills/observability-monitoring-slo-implement/SKILL.md +43 -0
  309. package/skills/observability-monitoring-slo-implement/resources/implementation-playbook.md +1077 -0
  310. package/skills/on-call-handoff-patterns/SKILL.md +453 -0
  311. package/skills/openapi-spec-generation/SKILL.md +33 -0
  312. package/skills/openapi-spec-generation/resources/implementation-playbook.md +1027 -0
  313. package/skills/payment-integration/SKILL.md +77 -0
  314. package/skills/paypal-integration/SKILL.md +479 -0
  315. package/skills/pci-compliance/SKILL.md +478 -0
  316. package/skills/performance-engineer/SKILL.md +180 -0
  317. package/skills/performance-testing-review-ai-review/SKILL.md +450 -0
  318. package/skills/performance-testing-review-multi-agent-review/SKILL.md +216 -0
  319. package/skills/php-pro/SKILL.md +63 -0
  320. package/skills/posix-shell-pro/SKILL.md +304 -0
  321. package/skills/postgresql/SKILL.md +230 -0
  322. package/skills/postmortem-writing/SKILL.md +386 -0
  323. package/skills/projection-patterns/SKILL.md +33 -0
  324. package/skills/projection-patterns/resources/implementation-playbook.md +501 -0
  325. package/skills/prometheus-configuration/SKILL.md +404 -0
  326. package/skills/prompt-engineer/SKILL.md +272 -0
  327. package/skills/prompt-engineering-patterns/SKILL.md +213 -0
  328. package/skills/prompt-engineering-patterns/assets/few-shot-examples.json +106 -0
  329. package/skills/prompt-engineering-patterns/assets/prompt-template-library.md +246 -0
  330. package/skills/prompt-engineering-patterns/references/chain-of-thought.md +399 -0
  331. package/skills/prompt-engineering-patterns/references/few-shot-learning.md +369 -0
  332. package/skills/prompt-engineering-patterns/references/prompt-optimization.md +414 -0
  333. package/skills/prompt-engineering-patterns/references/prompt-templates.md +470 -0
  334. package/skills/prompt-engineering-patterns/references/system-prompts.md +189 -0
  335. package/skills/prompt-engineering-patterns/scripts/optimize-prompt.py +279 -0
  336. package/skills/protocol-reverse-engineering/SKILL.md +29 -0
  337. package/skills/protocol-reverse-engineering/resources/implementation-playbook.md +509 -0
  338. package/skills/python-development-python-scaffold/SKILL.md +331 -0
  339. package/skills/python-packaging/SKILL.md +36 -0
  340. package/skills/python-packaging/resources/implementation-playbook.md +869 -0
  341. package/skills/python-performance-optimization/SKILL.md +36 -0
  342. package/skills/python-performance-optimization/resources/implementation-playbook.md +868 -0
  343. package/skills/python-pro/SKILL.md +158 -0
  344. package/skills/python-testing-patterns/SKILL.md +37 -0
  345. package/skills/python-testing-patterns/resources/implementation-playbook.md +906 -0
  346. package/skills/quant-analyst/SKILL.md +53 -0
  347. package/skills/rag-implementation/SKILL.md +421 -0
  348. package/skills/react-modernization/SKILL.md +34 -0
  349. package/skills/react-modernization/resources/implementation-playbook.md +512 -0
  350. package/skills/react-native-architecture/SKILL.md +33 -0
  351. package/skills/react-native-architecture/resources/implementation-playbook.md +670 -0
  352. package/skills/react-state-management/SKILL.md +441 -0
  353. package/skills/reference-builder/SKILL.md +188 -0
  354. package/skills/reverse-engineer/SKILL.md +173 -0
  355. package/skills/risk-manager/SKILL.md +61 -0
  356. package/skills/risk-metrics-calculation/SKILL.md +33 -0
  357. package/skills/risk-metrics-calculation/resources/implementation-playbook.md +554 -0
  358. package/skills/ruby-pro/SKILL.md +56 -0
  359. package/skills/rust-async-patterns/SKILL.md +33 -0
  360. package/skills/rust-async-patterns/resources/implementation-playbook.md +516 -0
  361. package/skills/rust-pro/SKILL.md +178 -0
  362. package/skills/saga-orchestration/SKILL.md +496 -0
  363. package/skills/sales-automator/SKILL.md +55 -0
  364. package/skills/sast-configuration/SKILL.md +212 -0
  365. package/skills/scala-pro/SKILL.md +82 -0
  366. package/skills/screen-reader-testing/SKILL.md +33 -0
  367. package/skills/screen-reader-testing/resources/implementation-playbook.md +544 -0
  368. package/skills/search-specialist/SKILL.md +80 -0
  369. package/skills/secrets-management/SKILL.md +364 -0
  370. package/skills/security-auditor/SKILL.md +169 -0
  371. package/skills/security-compliance-compliance-check/SKILL.md +55 -0
  372. package/skills/security-compliance-compliance-check/resources/implementation-playbook.md +963 -0
  373. package/skills/security-requirement-extraction/SKILL.md +33 -0
  374. package/skills/security-requirement-extraction/resources/implementation-playbook.md +676 -0
  375. package/skills/security-scanning-security-dependencies/SKILL.md +43 -0
  376. package/skills/security-scanning-security-dependencies/resources/implementation-playbook.md +544 -0
  377. package/skills/security-scanning-security-hardening/SKILL.md +147 -0
  378. package/skills/security-scanning-security-sast/SKILL.md +495 -0
  379. package/skills/seo-authority-builder/SKILL.md +136 -0
  380. package/skills/seo-cannibalization-detector/SKILL.md +123 -0
  381. package/skills/seo-content-auditor/SKILL.md +83 -0
  382. package/skills/seo-content-planner/SKILL.md +108 -0
  383. package/skills/seo-content-refresher/SKILL.md +118 -0
  384. package/skills/seo-content-writer/SKILL.md +96 -0
  385. package/skills/seo-keyword-strategist/SKILL.md +95 -0
  386. package/skills/seo-meta-optimizer/SKILL.md +92 -0
  387. package/skills/seo-snippet-hunter/SKILL.md +114 -0
  388. package/skills/seo-structure-architect/SKILL.md +108 -0
  389. package/skills/service-mesh-expert/SKILL.md +58 -0
  390. package/skills/service-mesh-observability/SKILL.md +395 -0
  391. package/skills/shellcheck-configuration/SKILL.md +466 -0
  392. package/skills/similarity-search-patterns/SKILL.md +33 -0
  393. package/skills/similarity-search-patterns/resources/implementation-playbook.md +557 -0
  394. package/skills/slo-implementation/SKILL.md +341 -0
  395. package/skills/solidity-security/SKILL.md +34 -0
  396. package/skills/solidity-security/resources/implementation-playbook.md +524 -0
  397. package/skills/spark-optimization/SKILL.md +427 -0
  398. package/skills/sql-optimization-patterns/SKILL.md +35 -0
  399. package/skills/sql-optimization-patterns/resources/implementation-playbook.md +504 -0
  400. package/skills/sql-pro/SKILL.md +173 -0
  401. package/skills/startup-analyst/SKILL.md +328 -0
  402. package/skills/startup-business-analyst-business-case/SKILL.md +487 -0
  403. package/skills/startup-business-analyst-financial-projections/SKILL.md +353 -0
  404. package/skills/startup-business-analyst-market-opportunity/SKILL.md +240 -0
  405. package/skills/startup-financial-modeling/SKILL.md +467 -0
  406. package/skills/startup-metrics-framework/SKILL.md +34 -0
  407. package/skills/startup-metrics-framework/resources/implementation-playbook.md +500 -0
  408. package/skills/stride-analysis-patterns/SKILL.md +33 -0
  409. package/skills/stride-analysis-patterns/resources/implementation-playbook.md +655 -0
  410. package/skills/stripe-integration/SKILL.md +454 -0
  411. package/skills/systems-programming-rust-project/SKILL.md +440 -0
  412. package/skills/tailwind-design-system/SKILL.md +33 -0
  413. package/skills/tailwind-design-system/resources/implementation-playbook.md +665 -0
  414. package/skills/tdd-orchestrator/SKILL.md +205 -0
  415. package/skills/tdd-workflows-tdd-cycle/SKILL.md +221 -0
  416. package/skills/tdd-workflows-tdd-green/SKILL.md +73 -0
  417. package/skills/tdd-workflows-tdd-green/resources/implementation-playbook.md +870 -0
  418. package/skills/tdd-workflows-tdd-red/SKILL.md +164 -0
  419. package/skills/tdd-workflows-tdd-refactor/SKILL.md +187 -0
  420. package/skills/team-collaboration-issue/SKILL.md +37 -0
  421. package/skills/team-collaboration-issue/resources/implementation-playbook.md +640 -0
  422. package/skills/team-collaboration-standup-notes/SKILL.md +44 -0
  423. package/skills/team-collaboration-standup-notes/resources/implementation-playbook.md +768 -0
  424. package/skills/team-composition-analysis/SKILL.md +413 -0
  425. package/skills/temporal-python-pro/SKILL.md +370 -0
  426. package/skills/temporal-python-testing/SKILL.md +170 -0
  427. package/skills/temporal-python-testing/resources/integration-testing.md +455 -0
  428. package/skills/temporal-python-testing/resources/local-setup.md +553 -0
  429. package/skills/temporal-python-testing/resources/replay-testing.md +462 -0
  430. package/skills/temporal-python-testing/resources/unit-testing.md +328 -0
  431. package/skills/terraform-module-library/SKILL.md +261 -0
  432. package/skills/terraform-module-library/references/aws-modules.md +63 -0
  433. package/skills/terraform-specialist/SKILL.md +166 -0
  434. package/skills/test-automator/SKILL.md +224 -0
  435. package/skills/threat-mitigation-mapping/SKILL.md +33 -0
  436. package/skills/threat-mitigation-mapping/resources/implementation-playbook.md +744 -0
  437. package/skills/threat-modeling-expert/SKILL.md +60 -0
  438. package/skills/track-management/SKILL.md +38 -0
  439. package/skills/track-management/resources/implementation-playbook.md +591 -0
  440. package/skills/turborepo-caching/SKILL.md +419 -0
  441. package/skills/tutorial-engineer/SKILL.md +139 -0
  442. package/skills/typescript-advanced-types/SKILL.md +35 -0
  443. package/skills/typescript-advanced-types/resources/implementation-playbook.md +716 -0
  444. package/skills/typescript-pro/SKILL.md +55 -0
  445. package/skills/ui-minimal/SKILL.md +23 -0
  446. package/skills/ui-ux-designer/SKILL.md +209 -0
  447. package/skills/ui-visual-validator/SKILL.md +214 -0
  448. package/skills/unit-testing-test-generate/SKILL.md +319 -0
  449. package/skills/unity-developer/SKILL.md +230 -0
  450. package/skills/unity-ecs-patterns/SKILL.md +33 -0
  451. package/skills/unity-ecs-patterns/resources/implementation-playbook.md +625 -0
  452. package/skills/uv-package-manager/SKILL.md +37 -0
  453. package/skills/uv-package-manager/resources/implementation-playbook.md +830 -0
  454. package/skills/vector-database-engineer/SKILL.md +60 -0
  455. package/skills/vector-index-tuning/SKILL.md +42 -0
  456. package/skills/vector-index-tuning/resources/implementation-playbook.md +507 -0
  457. package/skills/wcag-audit-patterns/SKILL.md +41 -0
  458. package/skills/wcag-audit-patterns/resources/implementation-playbook.md +541 -0
  459. package/skills/web3-testing/SKILL.md +427 -0
  460. package/skills/workflow-orchestration-patterns/SKILL.md +333 -0
  461. package/skills/workflow-patterns/SKILL.md +38 -0
  462. package/skills/workflow-patterns/resources/implementation-playbook.md +621 -0
@@ -0,0 +1,573 @@
1
+ # Data Quality Frameworks Implementation Playbook
2
+
3
+ This file contains detailed patterns, checklists, and code samples referenced by the skill.
4
+
5
+ ## Core Concepts
6
+
7
+ ### 1. Data Quality Dimensions
8
+
9
+ | Dimension | Description | Example Check |
10
+ |-----------|-------------|---------------|
11
+ | **Completeness** | No missing values | `expect_column_values_to_not_be_null` |
12
+ | **Uniqueness** | No duplicates | `expect_column_values_to_be_unique` |
13
+ | **Validity** | Values in expected range | `expect_column_values_to_be_in_set` |
14
+ | **Accuracy** | Data matches reality | Cross-reference validation |
15
+ | **Consistency** | No contradictions | `expect_column_pair_values_A_to_be_greater_than_B` |
16
+ | **Timeliness** | Data is recent | `expect_column_max_to_be_between` |
17
+
18
+ ### 2. Testing Pyramid for Data
19
+
20
+ ```
21
+ /\
22
+ / \ Integration Tests (cross-table)
23
+ /────\
24
+ / \ Unit Tests (single column)
25
+ /────────\
26
+ / \ Schema Tests (structure)
27
+ /────────────\
28
+ ```
29
+
30
+ ## Quick Start
31
+
32
+ ### Great Expectations Setup
33
+
34
+ ```bash
35
+ # Install
36
+ pip install great_expectations
37
+
38
+ # Initialize project
39
+ great_expectations init
40
+
41
+ # Create datasource
42
+ great_expectations datasource new
43
+ ```
44
+
45
+ ```python
46
+ # great_expectations/checkpoints/daily_validation.yml
47
+ import great_expectations as gx
48
+
49
+ # Create context
50
+ context = gx.get_context()
51
+
52
+ # Create expectation suite
53
+ suite = context.add_expectation_suite("orders_suite")
54
+
55
+ # Add expectations
56
+ suite.add_expectation(
57
+ gx.expectations.ExpectColumnValuesToNotBeNull(column="order_id")
58
+ )
59
+ suite.add_expectation(
60
+ gx.expectations.ExpectColumnValuesToBeUnique(column="order_id")
61
+ )
62
+
63
+ # Validate
64
+ results = context.run_checkpoint(checkpoint_name="daily_orders")
65
+ ```
66
+
67
+ ## Patterns
68
+
69
+ ### Pattern 1: Great Expectations Suite
70
+
71
+ ```python
72
+ # expectations/orders_suite.py
73
+ import great_expectations as gx
74
+ from great_expectations.core import ExpectationSuite
75
+ from great_expectations.core.expectation_configuration import ExpectationConfiguration
76
+
77
+ def build_orders_suite() -> ExpectationSuite:
78
+ """Build comprehensive orders expectation suite"""
79
+
80
+ suite = ExpectationSuite(expectation_suite_name="orders_suite")
81
+
82
+ # Schema expectations
83
+ suite.add_expectation(ExpectationConfiguration(
84
+ expectation_type="expect_table_columns_to_match_set",
85
+ kwargs={
86
+ "column_set": ["order_id", "customer_id", "amount", "status", "created_at"],
87
+ "exact_match": False # Allow additional columns
88
+ }
89
+ ))
90
+
91
+ # Primary key
92
+ suite.add_expectation(ExpectationConfiguration(
93
+ expectation_type="expect_column_values_to_not_be_null",
94
+ kwargs={"column": "order_id"}
95
+ ))
96
+ suite.add_expectation(ExpectationConfiguration(
97
+ expectation_type="expect_column_values_to_be_unique",
98
+ kwargs={"column": "order_id"}
99
+ ))
100
+
101
+ # Foreign key
102
+ suite.add_expectation(ExpectationConfiguration(
103
+ expectation_type="expect_column_values_to_not_be_null",
104
+ kwargs={"column": "customer_id"}
105
+ ))
106
+
107
+ # Categorical values
108
+ suite.add_expectation(ExpectationConfiguration(
109
+ expectation_type="expect_column_values_to_be_in_set",
110
+ kwargs={
111
+ "column": "status",
112
+ "value_set": ["pending", "processing", "shipped", "delivered", "cancelled"]
113
+ }
114
+ ))
115
+
116
+ # Numeric ranges
117
+ suite.add_expectation(ExpectationConfiguration(
118
+ expectation_type="expect_column_values_to_be_between",
119
+ kwargs={
120
+ "column": "amount",
121
+ "min_value": 0,
122
+ "max_value": 100000,
123
+ "strict_min": True # amount > 0
124
+ }
125
+ ))
126
+
127
+ # Date validity
128
+ suite.add_expectation(ExpectationConfiguration(
129
+ expectation_type="expect_column_values_to_be_dateutil_parseable",
130
+ kwargs={"column": "created_at"}
131
+ ))
132
+
133
+ # Freshness - data should be recent
134
+ suite.add_expectation(ExpectationConfiguration(
135
+ expectation_type="expect_column_max_to_be_between",
136
+ kwargs={
137
+ "column": "created_at",
138
+ "min_value": {"$PARAMETER": "now - timedelta(days=1)"},
139
+ "max_value": {"$PARAMETER": "now"}
140
+ }
141
+ ))
142
+
143
+ # Row count sanity
144
+ suite.add_expectation(ExpectationConfiguration(
145
+ expectation_type="expect_table_row_count_to_be_between",
146
+ kwargs={
147
+ "min_value": 1000, # Expect at least 1000 rows
148
+ "max_value": 10000000
149
+ }
150
+ ))
151
+
152
+ # Statistical expectations
153
+ suite.add_expectation(ExpectationConfiguration(
154
+ expectation_type="expect_column_mean_to_be_between",
155
+ kwargs={
156
+ "column": "amount",
157
+ "min_value": 50,
158
+ "max_value": 500
159
+ }
160
+ ))
161
+
162
+ return suite
163
+ ```
164
+
165
+ ### Pattern 2: Great Expectations Checkpoint
166
+
167
+ ```yaml
168
+ # great_expectations/checkpoints/orders_checkpoint.yml
169
+ name: orders_checkpoint
170
+ config_version: 1.0
171
+ class_name: Checkpoint
172
+ run_name_template: "%Y%m%d-%H%M%S-orders-validation"
173
+
174
+ validations:
175
+ - batch_request:
176
+ datasource_name: warehouse
177
+ data_connector_name: default_inferred_data_connector_name
178
+ data_asset_name: orders
179
+ data_connector_query:
180
+ index: -1 # Latest batch
181
+ expectation_suite_name: orders_suite
182
+
183
+ action_list:
184
+ - name: store_validation_result
185
+ action:
186
+ class_name: StoreValidationResultAction
187
+
188
+ - name: store_evaluation_parameters
189
+ action:
190
+ class_name: StoreEvaluationParametersAction
191
+
192
+ - name: update_data_docs
193
+ action:
194
+ class_name: UpdateDataDocsAction
195
+
196
+ # Slack notification on failure
197
+ - name: send_slack_notification
198
+ action:
199
+ class_name: SlackNotificationAction
200
+ slack_webhook: ${SLACK_WEBHOOK}
201
+ notify_on: failure
202
+ renderer:
203
+ module_name: great_expectations.render.renderer.slack_renderer
204
+ class_name: SlackRenderer
205
+ ```
206
+
207
+ ```python
208
+ # Run checkpoint
209
+ import great_expectations as gx
210
+
211
+ context = gx.get_context()
212
+ result = context.run_checkpoint(checkpoint_name="orders_checkpoint")
213
+
214
+ if not result.success:
215
+ failed_expectations = [
216
+ r for r in result.run_results.values()
217
+ if not r.success
218
+ ]
219
+ raise ValueError(f"Data quality check failed: {failed_expectations}")
220
+ ```
221
+
222
+ ### Pattern 3: dbt Data Tests
223
+
224
+ ```yaml
225
+ # models/marts/core/_core__models.yml
226
+ version: 2
227
+
228
+ models:
229
+ - name: fct_orders
230
+ description: Order fact table
231
+ tests:
232
+ # Table-level tests
233
+ - dbt_utils.recency:
234
+ datepart: day
235
+ field: created_at
236
+ interval: 1
237
+ - dbt_utils.at_least_one
238
+ - dbt_utils.expression_is_true:
239
+ expression: "total_amount >= 0"
240
+
241
+ columns:
242
+ - name: order_id
243
+ description: Primary key
244
+ tests:
245
+ - unique
246
+ - not_null
247
+
248
+ - name: customer_id
249
+ description: Foreign key to dim_customers
250
+ tests:
251
+ - not_null
252
+ - relationships:
253
+ to: ref('dim_customers')
254
+ field: customer_id
255
+
256
+ - name: order_status
257
+ tests:
258
+ - accepted_values:
259
+ values: ['pending', 'processing', 'shipped', 'delivered', 'cancelled']
260
+
261
+ - name: total_amount
262
+ tests:
263
+ - not_null
264
+ - dbt_utils.expression_is_true:
265
+ expression: ">= 0"
266
+
267
+ - name: created_at
268
+ tests:
269
+ - not_null
270
+ - dbt_utils.expression_is_true:
271
+ expression: "<= current_timestamp"
272
+
273
+ - name: dim_customers
274
+ columns:
275
+ - name: customer_id
276
+ tests:
277
+ - unique
278
+ - not_null
279
+
280
+ - name: email
281
+ tests:
282
+ - unique
283
+ - not_null
284
+ # Custom regex test
285
+ - dbt_utils.expression_is_true:
286
+ expression: "email ~ '^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}$'"
287
+ ```
288
+
289
+ ### Pattern 4: Custom dbt Tests
290
+
291
+ ```sql
292
+ -- tests/generic/test_row_count_in_range.sql
293
+ {% test row_count_in_range(model, min_count, max_count) %}
294
+
295
+ with row_count as (
296
+ select count(*) as cnt from {{ model }}
297
+ )
298
+
299
+ select cnt
300
+ from row_count
301
+ where cnt < {{ min_count }} or cnt > {{ max_count }}
302
+
303
+ {% endtest %}
304
+
305
+ -- Usage in schema.yml:
306
+ -- tests:
307
+ -- - row_count_in_range:
308
+ -- min_count: 1000
309
+ -- max_count: 10000000
310
+ ```
311
+
312
+ ```sql
313
+ -- tests/generic/test_sequential_values.sql
314
+ {% test sequential_values(model, column_name, interval=1) %}
315
+
316
+ with lagged as (
317
+ select
318
+ {{ column_name }},
319
+ lag({{ column_name }}) over (order by {{ column_name }}) as prev_value
320
+ from {{ model }}
321
+ )
322
+
323
+ select *
324
+ from lagged
325
+ where {{ column_name }} - prev_value != {{ interval }}
326
+ and prev_value is not null
327
+
328
+ {% endtest %}
329
+ ```
330
+
331
+ ```sql
332
+ -- tests/singular/assert_orders_customers_match.sql
333
+ -- Singular test: specific business rule
334
+
335
+ with orders_customers as (
336
+ select distinct customer_id from {{ ref('fct_orders') }}
337
+ ),
338
+
339
+ dim_customers as (
340
+ select customer_id from {{ ref('dim_customers') }}
341
+ ),
342
+
343
+ orphaned_orders as (
344
+ select o.customer_id
345
+ from orders_customers o
346
+ left join dim_customers c using (customer_id)
347
+ where c.customer_id is null
348
+ )
349
+
350
+ select * from orphaned_orders
351
+ -- Test passes if this returns 0 rows
352
+ ```
353
+
354
+ ### Pattern 5: Data Contracts
355
+
356
+ ```yaml
357
+ # contracts/orders_contract.yaml
358
+ apiVersion: datacontract.com/v1.0.0
359
+ kind: DataContract
360
+ metadata:
361
+ name: orders
362
+ version: 1.0.0
363
+ owner: data-platform-team
364
+ contact: data-team@company.com
365
+
366
+ info:
367
+ title: Orders Data Contract
368
+ description: Contract for order event data from the ecommerce platform
369
+ purpose: Analytics, reporting, and ML features
370
+
371
+ servers:
372
+ production:
373
+ type: snowflake
374
+ account: company.us-east-1
375
+ database: ANALYTICS
376
+ schema: CORE
377
+
378
+ terms:
379
+ usage: Internal analytics only
380
+ limitations: PII must not be exposed in downstream marts
381
+ billing: Charged per query TB scanned
382
+
383
+ schema:
384
+ type: object
385
+ properties:
386
+ order_id:
387
+ type: string
388
+ format: uuid
389
+ description: Unique order identifier
390
+ required: true
391
+ unique: true
392
+ pii: false
393
+
394
+ customer_id:
395
+ type: string
396
+ format: uuid
397
+ description: Customer identifier
398
+ required: true
399
+ pii: true
400
+ piiClassification: indirect
401
+
402
+ total_amount:
403
+ type: number
404
+ minimum: 0
405
+ maximum: 100000
406
+ description: Order total in USD
407
+
408
+ created_at:
409
+ type: string
410
+ format: date-time
411
+ description: Order creation timestamp
412
+ required: true
413
+
414
+ status:
415
+ type: string
416
+ enum: [pending, processing, shipped, delivered, cancelled]
417
+ description: Current order status
418
+
419
+ quality:
420
+ type: SodaCL
421
+ specification:
422
+ checks for orders:
423
+ - row_count > 0
424
+ - missing_count(order_id) = 0
425
+ - duplicate_count(order_id) = 0
426
+ - invalid_count(status) = 0:
427
+ valid values: [pending, processing, shipped, delivered, cancelled]
428
+ - freshness(created_at) < 24h
429
+
430
+ sla:
431
+ availability: 99.9%
432
+ freshness: 1 hour
433
+ latency: 5 minutes
434
+ ```
435
+
436
+ ### Pattern 6: Automated Quality Pipeline
437
+
438
+ ```python
439
+ # quality_pipeline.py
440
+ from dataclasses import dataclass
441
+ from typing import List, Dict, Any
442
+ import great_expectations as gx
443
+ from datetime import datetime
444
+
445
+ @dataclass
446
+ class QualityResult:
447
+ table: str
448
+ passed: bool
449
+ total_expectations: int
450
+ failed_expectations: int
451
+ details: List[Dict[str, Any]]
452
+ timestamp: datetime
453
+
454
+ class DataQualityPipeline:
455
+ """Orchestrate data quality checks across tables"""
456
+
457
+ def __init__(self, context: gx.DataContext):
458
+ self.context = context
459
+ self.results: List[QualityResult] = []
460
+
461
+ def validate_table(self, table: str, suite: str) -> QualityResult:
462
+ """Validate a single table against expectation suite"""
463
+
464
+ checkpoint_config = {
465
+ "name": f"{table}_validation",
466
+ "config_version": 1.0,
467
+ "class_name": "Checkpoint",
468
+ "validations": [{
469
+ "batch_request": {
470
+ "datasource_name": "warehouse",
471
+ "data_asset_name": table,
472
+ },
473
+ "expectation_suite_name": suite,
474
+ }],
475
+ }
476
+
477
+ result = self.context.run_checkpoint(**checkpoint_config)
478
+
479
+ # Parse results
480
+ validation_result = list(result.run_results.values())[0]
481
+ results = validation_result.results
482
+
483
+ failed = [r for r in results if not r.success]
484
+
485
+ return QualityResult(
486
+ table=table,
487
+ passed=result.success,
488
+ total_expectations=len(results),
489
+ failed_expectations=len(failed),
490
+ details=[{
491
+ "expectation": r.expectation_config.expectation_type,
492
+ "success": r.success,
493
+ "observed_value": r.result.get("observed_value"),
494
+ } for r in results],
495
+ timestamp=datetime.now()
496
+ )
497
+
498
+ def run_all(self, tables: Dict[str, str]) -> Dict[str, QualityResult]:
499
+ """Run validation for all tables"""
500
+ results = {}
501
+
502
+ for table, suite in tables.items():
503
+ print(f"Validating {table}...")
504
+ results[table] = self.validate_table(table, suite)
505
+
506
+ return results
507
+
508
+ def generate_report(self, results: Dict[str, QualityResult]) -> str:
509
+ """Generate quality report"""
510
+ report = ["# Data Quality Report", f"Generated: {datetime.now()}", ""]
511
+
512
+ total_passed = sum(1 for r in results.values() if r.passed)
513
+ total_tables = len(results)
514
+
515
+ report.append(f"## Summary: {total_passed}/{total_tables} tables passed")
516
+ report.append("")
517
+
518
+ for table, result in results.items():
519
+ status = "✅" if result.passed else "❌"
520
+ report.append(f"### {status} {table}")
521
+ report.append(f"- Expectations: {result.total_expectations}")
522
+ report.append(f"- Failed: {result.failed_expectations}")
523
+
524
+ if not result.passed:
525
+ report.append("- Failed checks:")
526
+ for detail in result.details:
527
+ if not detail["success"]:
528
+ report.append(f" - {detail['expectation']}: {detail['observed_value']}")
529
+ report.append("")
530
+
531
+ return "\n".join(report)
532
+
533
+ # Usage
534
+ context = gx.get_context()
535
+ pipeline = DataQualityPipeline(context)
536
+
537
+ tables_to_validate = {
538
+ "orders": "orders_suite",
539
+ "customers": "customers_suite",
540
+ "products": "products_suite",
541
+ }
542
+
543
+ results = pipeline.run_all(tables_to_validate)
544
+ report = pipeline.generate_report(results)
545
+
546
+ # Fail pipeline if any table failed
547
+ if not all(r.passed for r in results.values()):
548
+ print(report)
549
+ raise ValueError("Data quality checks failed!")
550
+ ```
551
+
552
+ ## Best Practices
553
+
554
+ ### Do's
555
+ - **Test early** - Validate source data before transformations
556
+ - **Test incrementally** - Add tests as you find issues
557
+ - **Document expectations** - Clear descriptions for each test
558
+ - **Alert on failures** - Integrate with monitoring
559
+ - **Version contracts** - Track schema changes
560
+
561
+ ### Don'ts
562
+ - **Don't test everything** - Focus on critical columns
563
+ - **Don't ignore warnings** - They often precede failures
564
+ - **Don't skip freshness** - Stale data is bad data
565
+ - **Don't hardcode thresholds** - Use dynamic baselines
566
+ - **Don't test in isolation** - Test relationships too
567
+
568
+ ## Resources
569
+
570
+ - [Great Expectations Documentation](https://docs.greatexpectations.io/)
571
+ - [dbt Testing Documentation](https://docs.getdbt.com/docs/build/tests)
572
+ - [Data Contract Specification](https://datacontract.com/)
573
+ - [Soda Core](https://docs.soda.io/soda-core/overview.html)