ai-playbook 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.
- package/README.md +146 -0
- package/agents/README.md +168 -0
- package/agents/SKILL.md +633 -0
- package/agents/architect/AGENT.md +44 -0
- package/agents/architect/README.md +5 -0
- package/agents/coder/AGENT.md +43 -0
- package/agents/coder/README.md +5 -0
- package/agents/debugger/AGENT.md +42 -0
- package/agents/debugger/README.md +6 -0
- package/agents/devops/AGENT.md +43 -0
- package/agents/devops/README.md +5 -0
- package/agents/documentation/AGENT.md +45 -0
- package/agents/documentation/README.md +5 -0
- package/agents/examples.md +550 -0
- package/agents/performance/AGENT.md +45 -0
- package/agents/performance/README.md +6 -0
- package/agents/planner/AGENT.md +44 -0
- package/agents/planner/README.md +6 -0
- package/agents/product-owner/AGENT.md +46 -0
- package/agents/product-owner/README.md +6 -0
- package/agents/refactorer/AGENT.md +44 -0
- package/agents/refactorer/README.md +6 -0
- package/agents/release-manager/AGENT.md +45 -0
- package/agents/release-manager/README.md +6 -0
- package/agents/researcher/AGENT.md +44 -0
- package/agents/researcher/README.md +6 -0
- package/agents/reviewer/AGENT.md +43 -0
- package/agents/reviewer/README.md +6 -0
- package/agents/security/AGENT.md +46 -0
- package/agents/security/README.md +6 -0
- package/agents/support/AGENT.md +45 -0
- package/agents/support/README.md +6 -0
- package/agents/tester/AGENT.md +46 -0
- package/agents/tester/README.md +5 -0
- package/bin/cli.js +186 -0
- package/commands/README.md +266 -0
- package/commands/build.md +135 -0
- package/commands/clean.md +126 -0
- package/commands/deploy-prod.md +171 -0
- package/commands/deploy-staging.md +147 -0
- package/commands/deps.md +169 -0
- package/commands/dev.md +132 -0
- package/commands/format.md +142 -0
- package/commands/lint.md +125 -0
- package/commands/migrate.md +159 -0
- package/commands/release.md +183 -0
- package/commands/rollback.md +152 -0
- package/commands/seed.md +178 -0
- package/commands/setup.md +109 -0
- package/commands/test.md +134 -0
- package/commands/validate.md +147 -0
- package/context/README.md +7 -0
- package/context/aem.md +47 -0
- package/context/architecture.md +51 -0
- package/context/bullminder.md +57 -0
- package/context/coding-style.md +42 -0
- package/context/communication.md +53 -0
- package/context/company.md +46 -0
- package/context/engineering.md +63 -0
- package/context/project-template.md +71 -0
- package/context/trading.md +52 -0
- package/hooks/README.md +326 -0
- package/hooks/code-review/README.md +6 -0
- package/hooks/code-review/check-coverage.md +101 -0
- package/hooks/custom/README.md +6 -0
- package/hooks/custom/project-specific-hooks.md +273 -0
- package/hooks/deployment/README.md +6 -0
- package/hooks/deployment/health-check.md +102 -0
- package/hooks/deployment/pre-deploy-check.md +84 -0
- package/hooks/documentation/README.md +6 -0
- package/hooks/documentation/update-changelog.md +146 -0
- package/hooks/post-task/README.md +5 -0
- package/hooks/post-task/run-tests.md +61 -0
- package/hooks/pre-commit/README.md +6 -0
- package/hooks/pre-commit/format.md +63 -0
- package/hooks/pre-commit/lint.md +62 -0
- package/hooks/pre-commit/type-check.md +78 -0
- package/hooks/pre-task/README.md +6 -0
- package/hooks/pre-task/check-branch.md +48 -0
- package/hooks/pre-task/validate-environment.md +48 -0
- package/hooks/security-check/README.md +6 -0
- package/hooks/security-check/dependency-audit.md +85 -0
- package/hooks/security-check/secrets-scan.md +77 -0
- package/hooks/test-before-finish/README.md +6 -0
- package/hooks/test-before-finish/run-all-tests.md +128 -0
- package/index.js +69 -0
- package/knowledge/README.md +33 -0
- package/knowledge/ai-agents.md +74 -0
- package/knowledge/decision-making.md +73 -0
- package/knowledge/documentation.md +67 -0
- package/knowledge/engineering-principles.md +65 -0
- package/knowledge/product-discovery.md +68 -0
- package/knowledge/security-privacy.md +54 -0
- package/knowledge/testing-quality.md +63 -0
- package/package.json +63 -0
- package/patterns/README.md +7 -0
- package/prompts/README.md +208 -0
- package/prompts/architect/README.md +96 -0
- package/prompts/architect/design-system.md +140 -0
- package/prompts/debugger/README.md +96 -0
- package/prompts/debugger/diagnose-issue.md +141 -0
- package/prompts/developer/README.md +129 -0
- package/prompts/developer/fix-bug.md +136 -0
- package/prompts/developer/implement-feature.md +133 -0
- package/prompts/product-owner/README.md +116 -0
- package/prompts/product-owner/define-feature.md +145 -0
- package/prompts/reviewer/README.md +91 -0
- package/prompts/reviewer/code-review.md +129 -0
- package/prompts/support/README.md +154 -0
- package/prompts/support/resolve-issue.md +124 -0
- package/roles/README.md +6 -0
- package/roles/design-architect/README.md +98 -0
- package/roles/design-architect/accessibility/README.md +33 -0
- package/roles/design-architect/accessibility/checklists.md +29 -0
- package/roles/design-architect/accessibility/examples.md +35 -0
- package/roles/design-architect/checklists.md +76 -0
- package/roles/design-architect/component-library/README.md +35 -0
- package/roles/design-architect/component-library/checklists.md +29 -0
- package/roles/design-architect/component-library/examples.md +35 -0
- package/roles/design-architect/design-system/README.md +35 -0
- package/roles/design-architect/design-system/checklists.md +27 -0
- package/roles/design-architect/design-system/examples.md +41 -0
- package/roles/design-architect/examples/README.md +31 -0
- package/roles/design-architect/examples/checklists.md +26 -0
- package/roles/design-architect/examples/examples.md +46 -0
- package/roles/design-architect/examples.md +90 -0
- package/roles/design-architect/figma/README.md +33 -0
- package/roles/design-architect/figma/checklists.md +27 -0
- package/roles/design-architect/figma/examples.md +38 -0
- package/roles/design-architect/responsibilities.md +73 -0
- package/roles/design-architect/responsive/README.md +34 -0
- package/roles/design-architect/responsive/checklists.md +26 -0
- package/roles/design-architect/responsive/examples.md +39 -0
- package/roles/design-architect/role.md +129 -0
- package/roles/design-architect/skill-map.md +42 -0
- package/roles/design-architect/triggers.md +110 -0
- package/roles/design-architect/ui/README.md +36 -0
- package/roles/design-architect/ui/checklists.md +29 -0
- package/roles/design-architect/ui/examples.md +28 -0
- package/roles/design-architect/usability/README.md +34 -0
- package/roles/design-architect/usability/checklists.md +28 -0
- package/roles/design-architect/usability/examples.md +31 -0
- package/roles/design-architect/ux/README.md +36 -0
- package/roles/design-architect/ux/checklists.md +28 -0
- package/roles/design-architect/ux/examples.md +37 -0
- package/roles/design-architect/wireframes/README.md +34 -0
- package/roles/design-architect/wireframes/checklists.md +25 -0
- package/roles/design-architect/wireframes/examples.md +32 -0
- package/roles/design-architect/workflow.md +80 -0
- package/roles/devops/README.md +101 -0
- package/roles/devops/ansible/README.md +6 -0
- package/roles/devops/checklists.md +413 -0
- package/roles/devops/ci-cd/README.md +169 -0
- package/roles/devops/ci-cd/checklists.md +289 -0
- package/roles/devops/ci-cd/examples.md +429 -0
- package/roles/devops/cloud-platforms/README.md +109 -0
- package/roles/devops/cost-optimization/README.md +131 -0
- package/roles/devops/disaster-recovery/README.md +118 -0
- package/roles/devops/docker/README.md +6 -0
- package/roles/devops/examples/README.md +6 -0
- package/roles/devops/examples.md +775 -0
- package/roles/devops/github-actions/README.md +6 -0
- package/roles/devops/helm/README.md +6 -0
- package/roles/devops/infrastructure-as-code/README.md +160 -0
- package/roles/devops/infrastructure-as-code/checklists.md +124 -0
- package/roles/devops/jenkins/README.md +6 -0
- package/roles/devops/kubernetes/README.md +150 -0
- package/roles/devops/kubernetes/checklists.md +192 -0
- package/roles/devops/kubernetes/examples.md +189 -0
- package/roles/devops/monitoring/README.md +93 -0
- package/roles/devops/networking/README.md +83 -0
- package/roles/devops/performance/README.md +104 -0
- package/roles/devops/responsibilities.md +95 -0
- package/roles/devops/role.md +130 -0
- package/roles/devops/security/README.md +126 -0
- package/roles/devops/skill-map.md +162 -0
- package/roles/devops/terraform/README.md +6 -0
- package/roles/devops/triggers.md +241 -0
- package/roles/devops/workflow.md +197 -0
- package/roles/qa/README.md +16 -0
- package/roles/qa/api-testing/README.md +6 -0
- package/roles/qa/automation/README.md +6 -0
- package/roles/qa/checklists.md +24 -0
- package/roles/qa/examples/README.md +6 -0
- package/roles/qa/examples.md +27 -0
- package/roles/qa/performance/README.md +6 -0
- package/roles/qa/playwright/README.md +6 -0
- package/roles/qa/responsibilities.md +16 -0
- package/roles/qa/role.md +47 -0
- package/roles/qa/selenium/README.md +6 -0
- package/roles/qa/skill-map.md +14 -0
- package/roles/qa/triggers.md +10 -0
- package/roles/qa/workflow.md +9 -0
- package/roles/software-architect/README.md +16 -0
- package/roles/software-architect/agents/README.md +6 -0
- package/roles/software-architect/ai-architecture/README.md +6 -0
- package/roles/software-architect/aws/README.md +6 -0
- package/roles/software-architect/azure/README.md +6 -0
- package/roles/software-architect/caching/README.md +6 -0
- package/roles/software-architect/checklists.md +25 -0
- package/roles/software-architect/cloud/README.md +6 -0
- package/roles/software-architect/database-design/README.md +6 -0
- package/roles/software-architect/diagrams/README.md +6 -0
- package/roles/software-architect/distributed-systems/README.md +7 -0
- package/roles/software-architect/docker/README.md +6 -0
- package/roles/software-architect/event-driven/README.md +7 -0
- package/roles/software-architect/examples/README.md +6 -0
- package/roles/software-architect/examples.md +22 -0
- package/roles/software-architect/gcp/README.md +6 -0
- package/roles/software-architect/kubernetes/README.md +6 -0
- package/roles/software-architect/messaging/README.md +6 -0
- package/roles/software-architect/rag/README.md +7 -0
- package/roles/software-architect/responsibilities.md +17 -0
- package/roles/software-architect/role.md +46 -0
- package/roles/software-architect/scalability/README.md +6 -0
- package/roles/software-architect/security/README.md +6 -0
- package/roles/software-architect/skill-map.md +15 -0
- package/roles/software-architect/system-design/README.md +6 -0
- package/roles/software-architect/triggers.md +10 -0
- package/roles/software-architect/vector-db/README.md +6 -0
- package/roles/software-architect/workflow.md +9 -0
- package/roles/software-developer/README.md +116 -0
- package/roles/software-developer/api/README.md +365 -0
- package/roles/software-developer/api/checklist.md +131 -0
- package/roles/software-developer/api/examples.md +459 -0
- package/roles/software-developer/authentication/README.md +26 -0
- package/roles/software-developer/authentication/checklists.md +22 -0
- package/roles/software-developer/authentication/examples.md +32 -0
- package/roles/software-developer/authorization/README.md +26 -0
- package/roles/software-developer/authorization/checklists.md +21 -0
- package/roles/software-developer/authorization/examples.md +27 -0
- package/roles/software-developer/backend/README.md +26 -0
- package/roles/software-developer/backend/checklists.md +21 -0
- package/roles/software-developer/backend/examples.md +21 -0
- package/roles/software-developer/cache/README.md +25 -0
- package/roles/software-developer/cache/checklists.md +21 -0
- package/roles/software-developer/cache/examples.md +22 -0
- package/roles/software-developer/checklists.md +122 -0
- package/roles/software-developer/code-review/README.md +23 -0
- package/roles/software-developer/code-review/checklists.md +22 -0
- package/roles/software-developer/code-review/examples.md +20 -0
- package/roles/software-developer/database/README.md +27 -0
- package/roles/software-developer/database/checklists.md +21 -0
- package/roles/software-developer/database/examples.md +27 -0
- package/roles/software-developer/debugging/README.md +24 -0
- package/roles/software-developer/debugging/checklists.md +20 -0
- package/roles/software-developer/debugging/examples.md +28 -0
- package/roles/software-developer/examples/README.md +22 -0
- package/roles/software-developer/examples/checklists.md +8 -0
- package/roles/software-developer/examples/examples.md +25 -0
- package/roles/software-developer/examples.md +378 -0
- package/roles/software-developer/frontend/README.md +76 -0
- package/roles/software-developer/frontend/accessibility/README.md +136 -0
- package/roles/software-developer/frontend/accessibility/best-practices.md +368 -0
- package/roles/software-developer/frontend/code-quality/README.md +136 -0
- package/roles/software-developer/frontend/code-quality/best-practices.md +309 -0
- package/roles/software-developer/frontend/components/README.md +65 -0
- package/roles/software-developer/frontend/components/best-practices.md +273 -0
- package/roles/software-developer/frontend/debugging/README.md +149 -0
- package/roles/software-developer/frontend/debugging/best-practices.md +329 -0
- package/roles/software-developer/frontend/examples/README.md +19 -0
- package/roles/software-developer/frontend/examples/checklists.md +8 -0
- package/roles/software-developer/frontend/examples/examples.md +17 -0
- package/roles/software-developer/frontend/logging-observability/README.md +196 -0
- package/roles/software-developer/frontend/logging-observability/best-practices.md +430 -0
- package/roles/software-developer/frontend/performance/README.md +99 -0
- package/roles/software-developer/frontend/performance/best-practices.md +350 -0
- package/roles/software-developer/frontend/state-management/README.md +85 -0
- package/roles/software-developer/frontend/state-management/best-practices.md +344 -0
- package/roles/software-developer/frontend/testing/README.md +114 -0
- package/roles/software-developer/frontend/testing/best-practices.md +272 -0
- package/roles/software-developer/fullstack/README.md +25 -0
- package/roles/software-developer/fullstack/checklists.md +19 -0
- package/roles/software-developer/fullstack/examples.md +14 -0
- package/roles/software-developer/graphql/README.md +24 -0
- package/roles/software-developer/graphql/checklists.md +20 -0
- package/roles/software-developer/graphql/examples.md +24 -0
- package/roles/software-developer/integration-tests/README.md +25 -0
- package/roles/software-developer/integration-tests/checklists.md +20 -0
- package/roles/software-developer/integration-tests/examples.md +18 -0
- package/roles/software-developer/java/README.md +24 -0
- package/roles/software-developer/java/checklists.md +16 -0
- package/roles/software-developer/java/examples.md +22 -0
- package/roles/software-developer/javascript/README.md +24 -0
- package/roles/software-developer/javascript/checklists.md +15 -0
- package/roles/software-developer/javascript/examples.md +18 -0
- package/roles/software-developer/logging/README.md +105 -0
- package/roles/software-developer/logging/checklists.md +48 -0
- package/roles/software-developer/logging/examples.md +135 -0
- package/roles/software-developer/messaging/README.md +24 -0
- package/roles/software-developer/messaging/checklists.md +21 -0
- package/roles/software-developer/messaging/examples.md +26 -0
- package/roles/software-developer/microservices/README.md +25 -0
- package/roles/software-developer/microservices/checklists.md +21 -0
- package/roles/software-developer/microservices/examples.md +21 -0
- package/roles/software-developer/node/README.md +25 -0
- package/roles/software-developer/node/checklists.md +15 -0
- package/roles/software-developer/node/examples.md +15 -0
- package/roles/software-developer/nosql/README.md +24 -0
- package/roles/software-developer/nosql/checklists.md +21 -0
- package/roles/software-developer/nosql/examples.md +20 -0
- package/roles/software-developer/observability/README.md +25 -0
- package/roles/software-developer/observability/checklists.md +21 -0
- package/roles/software-developer/observability/examples.md +22 -0
- package/roles/software-developer/performance/README.md +26 -0
- package/roles/software-developer/performance/checklists.md +20 -0
- package/roles/software-developer/performance/examples.md +20 -0
- package/roles/software-developer/python/README.md +25 -0
- package/roles/software-developer/python/checklists.md +15 -0
- package/roles/software-developer/python/examples.md +17 -0
- package/roles/software-developer/react/README.md +24 -0
- package/roles/software-developer/react/checklists.md +15 -0
- package/roles/software-developer/react/examples.md +22 -0
- package/roles/software-developer/refactoring/README.md +23 -0
- package/roles/software-developer/refactoring/checklists.md +21 -0
- package/roles/software-developer/refactoring/examples.md +11 -0
- package/roles/software-developer/responsibilities.md +58 -0
- package/roles/software-developer/role.md +127 -0
- package/roles/software-developer/skill-map.md +88 -0
- package/roles/software-developer/springboot/README.md +25 -0
- package/roles/software-developer/springboot/checklists.md +15 -0
- package/roles/software-developer/springboot/examples.md +21 -0
- package/roles/software-developer/sql/README.md +24 -0
- package/roles/software-developer/sql/checklists.md +22 -0
- package/roles/software-developer/sql/examples.md +20 -0
- package/roles/software-developer/testing/README.md +25 -0
- package/roles/software-developer/testing/checklists.md +21 -0
- package/roles/software-developer/testing/examples.md +19 -0
- package/roles/software-developer/triggers.md +550 -0
- package/roles/software-developer/typescript/README.md +25 -0
- package/roles/software-developer/typescript/checklists.md +15 -0
- package/roles/software-developer/typescript/examples.md +18 -0
- package/roles/software-developer/unit-tests/README.md +24 -0
- package/roles/software-developer/unit-tests/checklists.md +19 -0
- package/roles/software-developer/unit-tests/examples.md +22 -0
- package/roles/software-developer/workflow.md +196 -0
- package/roles/sre/README.md +16 -0
- package/roles/sre/alerts/README.md +6 -0
- package/roles/sre/availability/README.md +6 -0
- package/roles/sre/chaos/README.md +6 -0
- package/roles/sre/checklists.md +24 -0
- package/roles/sre/examples/README.md +6 -0
- package/roles/sre/examples.md +19 -0
- package/roles/sre/observability/README.md +6 -0
- package/roles/sre/reliability/README.md +6 -0
- package/roles/sre/responsibilities.md +16 -0
- package/roles/sre/role.md +46 -0
- package/roles/sre/skill-map.md +14 -0
- package/roles/sre/slos/README.md +6 -0
- package/roles/sre/triggers.md +10 -0
- package/roles/sre/workflow.md +9 -0
- package/roles/support-engineer/README.md +16 -0
- package/roles/support-engineer/checklists.md +24 -0
- package/roles/support-engineer/datadog/README.md +6 -0
- package/roles/support-engineer/examples/README.md +6 -0
- package/roles/support-engineer/examples.md +17 -0
- package/roles/support-engineer/incident-response/README.md +6 -0
- package/roles/support-engineer/kubernetes/README.md +6 -0
- package/roles/support-engineer/linux/README.md +6 -0
- package/roles/support-engineer/logs/README.md +6 -0
- package/roles/support-engineer/monitoring/README.md +6 -0
- package/roles/support-engineer/networking/README.md +6 -0
- package/roles/support-engineer/newrelic/README.md +6 -0
- package/roles/support-engineer/postmortem/README.md +6 -0
- package/roles/support-engineer/production/README.md +6 -0
- package/roles/support-engineer/responsibilities.md +16 -0
- package/roles/support-engineer/role.md +47 -0
- package/roles/support-engineer/root-cause-analysis/README.md +6 -0
- package/roles/support-engineer/runbooks/README.md +6 -0
- package/roles/support-engineer/skill-map.md +14 -0
- package/roles/support-engineer/splunk/README.md +6 -0
- package/roles/support-engineer/triggers.md +10 -0
- package/roles/support-engineer/troubleshooting/README.md +6 -0
- package/roles/support-engineer/workflow.md +9 -0
- package/setup.sh +204 -0
- package/skills/.claude/README.md +7 -0
- package/skills/README.md +21 -0
- package/skills/ai-agents/README.md +207 -0
- package/skills/ai-agents/examples.md +335 -0
- package/skills/ai-agents/skill.md +392 -0
- package/skills/architecture/README.md +198 -0
- package/skills/architecture/examples.md +316 -0
- package/skills/architecture/skill.md +189 -0
- package/skills/design-architecture/README.md +107 -0
- package/skills/design-architecture/examples.md +84 -0
- package/skills/design-architecture/skill.md +192 -0
- package/skills/devops/README.md +177 -0
- package/skills/devops/examples.md +376 -0
- package/skills/devops/skill.md +210 -0
- package/skills/documentation/README.md +182 -0
- package/skills/documentation/examples.md +364 -0
- package/skills/documentation/skill.md +200 -0
- package/skills/performance/README.md +177 -0
- package/skills/performance/examples.md +376 -0
- package/skills/performance/skill.md +199 -0
- package/skills/qa/README.md +106 -0
- package/skills/qa/examples.md +84 -0
- package/skills/qa/skill.md +384 -0
- package/skills/security/README.md +108 -0
- package/skills/security/examples.md +85 -0
- package/skills/security/skill.md +223 -0
- package/skills/software-development/README.md +239 -0
- package/skills/software-development/assessment.md +0 -0
- package/skills/software-development/checklists.md +0 -0
- package/skills/software-development/examples.md +375 -0
- package/skills/software-development/prompts.md +0 -0
- package/skills/software-development/skill.md +390 -0
- package/skills/software-development/templates/README.md +7 -0
- package/skills/software-development/templates/api-development.md +0 -0
- package/skills/software-development/templates/bug-fix.md +0 -0
- package/skills/software-development/templates/code-review.md +0 -0
- package/skills/software-development/templates/feature-implementation.md +0 -0
- package/skills/software-development/templates/llm-integration.md +0 -0
- package/skills/software-development/templates/performance-review.md +0 -0
- package/skills/software-development/templates/security-review.md +0 -0
- package/skills/software-development/templates/test-generation.md +0 -0
- package/skills/software-development/tools.md +0 -0
- package/skills/software-development/workflows.md +0 -0
- package/skills/sre/README.md +107 -0
- package/skills/sre/examples.md +379 -0
- package/skills/sre/skill.md +256 -0
- package/skills/support-engineering/README.md +107 -0
- package/skills/support-engineering/examples.md +85 -0
- package/skills/support-engineering/skill.md +103 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Performance Examples
|
|
2
|
+
|
|
3
|
+
## Before-and-After Note
|
|
4
|
+
|
|
5
|
+
```text
|
|
6
|
+
Scenario: Dashboard load performs 42 queries.
|
|
7
|
+
Baseline: p95 1800 ms, 42 queries, 35 MB allocated.
|
|
8
|
+
Change: batch project membership lookup.
|
|
9
|
+
Result: p95 420 ms, 5 queries, 18 MB allocated.
|
|
10
|
+
Verification: integration test plus trace comparison.
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Timing Wrapper
|
|
14
|
+
|
|
15
|
+
```python
|
|
16
|
+
start = time.perf_counter()
|
|
17
|
+
result = await dependency.call()
|
|
18
|
+
duration_ms = (time.perf_counter() - start) * 1000
|
|
19
|
+
metrics.dependency_duration.labels("billing").observe(duration_ms / 1000)
|
|
20
|
+
```
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Python
|
|
2
|
+
|
|
3
|
+
Use this packet for Python services, libraries, scripts, workers, tests, and
|
|
4
|
+
tooling.
|
|
5
|
+
|
|
6
|
+
## Scope
|
|
7
|
+
|
|
8
|
+
- Python language style, typing, packaging, virtual environments, and runtime behavior.
|
|
9
|
+
- Async code, dependency injection, data validation, exceptions, and testing.
|
|
10
|
+
- Linting, formatting, type checking, and application structure.
|
|
11
|
+
|
|
12
|
+
## Standards
|
|
13
|
+
|
|
14
|
+
- Keep modules small and names explicit.
|
|
15
|
+
- Use type hints for public functions and complex internal boundaries.
|
|
16
|
+
- Prefer dataclasses or validation models for structured data.
|
|
17
|
+
- Avoid broad exception swallowing.
|
|
18
|
+
- Make async and sync boundaries clear.
|
|
19
|
+
|
|
20
|
+
## Related Files
|
|
21
|
+
|
|
22
|
+
- `../backend/`
|
|
23
|
+
- `../testing/`
|
|
24
|
+
- `../api/`
|
|
25
|
+
- `skills/software-development/`
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Python Checklists
|
|
2
|
+
|
|
3
|
+
## Implementation
|
|
4
|
+
|
|
5
|
+
- [ ] Follow project formatter, linter, and type-checking rules.
|
|
6
|
+
- [ ] Add type hints to public APIs and changed boundaries.
|
|
7
|
+
- [ ] Keep imports organized and avoid hidden runtime side effects.
|
|
8
|
+
- [ ] Use context managers for files, connections, locks, and spans.
|
|
9
|
+
- [ ] Handle exceptions with specific types and safe messages.
|
|
10
|
+
|
|
11
|
+
## Verification
|
|
12
|
+
|
|
13
|
+
- [ ] Add or update pytest coverage for changed behavior.
|
|
14
|
+
- [ ] Run relevant lint, type, and test commands.
|
|
15
|
+
- [ ] Test async cancellation, timeout, or retry paths when touched.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Python Examples
|
|
2
|
+
|
|
3
|
+
## Typed Boundary
|
|
4
|
+
|
|
5
|
+
```python
|
|
6
|
+
@dataclass(frozen=True)
|
|
7
|
+
class CreateUserCommand:
|
|
8
|
+
tenant_id: str
|
|
9
|
+
email: str
|
|
10
|
+
display_name: str
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
async def create_user(command: CreateUserCommand, repo: UserRepository) -> User:
|
|
14
|
+
if not command.email:
|
|
15
|
+
raise ValueError("email is required")
|
|
16
|
+
return await repo.create(command)
|
|
17
|
+
```
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# React
|
|
2
|
+
|
|
3
|
+
Use this packet for React components, hooks, state, rendering, effects, and tests.
|
|
4
|
+
|
|
5
|
+
## Scope
|
|
6
|
+
|
|
7
|
+
- Component composition, props, state, effects, forms, routing, and data fetching.
|
|
8
|
+
- React Testing Library, accessibility, performance, and production behavior.
|
|
9
|
+
- Integration with TypeScript and design systems.
|
|
10
|
+
|
|
11
|
+
## Standards
|
|
12
|
+
|
|
13
|
+
- Keep components focused and user-behavior oriented.
|
|
14
|
+
- Store minimal state and derive values when possible.
|
|
15
|
+
- Use effects for synchronization with external systems, not for pure derivation.
|
|
16
|
+
- Test what users can observe.
|
|
17
|
+
- Keep accessibility and keyboard behavior part of normal implementation.
|
|
18
|
+
|
|
19
|
+
## Related Files
|
|
20
|
+
|
|
21
|
+
- `../frontend/components/`
|
|
22
|
+
- `../frontend/state-management/`
|
|
23
|
+
- `../frontend/testing/`
|
|
24
|
+
- `../typescript/`
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# React Checklists
|
|
2
|
+
|
|
3
|
+
## Implementation
|
|
4
|
+
|
|
5
|
+
- [ ] Define component responsibility and state ownership.
|
|
6
|
+
- [ ] Include loading, empty, error, disabled, and success states.
|
|
7
|
+
- [ ] Use stable keys and avoid unnecessary re-renders in hot lists.
|
|
8
|
+
- [ ] Keep effects dependency-safe and cleanup-aware.
|
|
9
|
+
- [ ] Use semantic elements before ARIA.
|
|
10
|
+
|
|
11
|
+
## Verification
|
|
12
|
+
|
|
13
|
+
- [ ] Test user behavior with React Testing Library or project equivalent.
|
|
14
|
+
- [ ] Test keyboard and screen-reader-critical interactions.
|
|
15
|
+
- [ ] Check render performance when changing large lists or global state.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# React Examples
|
|
2
|
+
|
|
3
|
+
## Component with Observable States
|
|
4
|
+
|
|
5
|
+
```tsx
|
|
6
|
+
export function SaveButton({ isSaving, onSave }: Props) {
|
|
7
|
+
return (
|
|
8
|
+
<button type="button" onClick={onSave} disabled={isSaving}>
|
|
9
|
+
{isSaving ? 'Saving...' : 'Save'}
|
|
10
|
+
</button>
|
|
11
|
+
);
|
|
12
|
+
}
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Behavior Test
|
|
16
|
+
|
|
17
|
+
```tsx
|
|
18
|
+
it('disables the button while saving', () => {
|
|
19
|
+
render(<SaveButton isSaving onSave={vi.fn()} />);
|
|
20
|
+
expect(screen.getByRole('button', { name: /saving/i })).toBeDisabled();
|
|
21
|
+
});
|
|
22
|
+
```
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Refactoring
|
|
2
|
+
|
|
3
|
+
Use this packet when improving code structure while preserving behavior.
|
|
4
|
+
|
|
5
|
+
## Scope
|
|
6
|
+
|
|
7
|
+
- Decomposition, renaming, extraction, dead-code removal, dependency cleanup, and design simplification.
|
|
8
|
+
- Safety planning for risky changes.
|
|
9
|
+
- Tests and review tactics for behavior-preserving edits.
|
|
10
|
+
|
|
11
|
+
## Standards
|
|
12
|
+
|
|
13
|
+
- Preserve behavior unless the task explicitly changes it.
|
|
14
|
+
- Make refactors small, staged, and easy to review.
|
|
15
|
+
- Add characterization tests before changing poorly understood code.
|
|
16
|
+
- Avoid mixing large refactors with feature changes.
|
|
17
|
+
- Explain why the new shape is simpler or safer.
|
|
18
|
+
|
|
19
|
+
## Related Files
|
|
20
|
+
|
|
21
|
+
- `../code-review/`
|
|
22
|
+
- `../testing/`
|
|
23
|
+
- `../debugging/`
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Refactoring Checklists
|
|
2
|
+
|
|
3
|
+
## Before
|
|
4
|
+
|
|
5
|
+
- [ ] State what behavior must remain unchanged.
|
|
6
|
+
- [ ] Identify tests that protect the area.
|
|
7
|
+
- [ ] Add characterization tests if behavior is under-specified.
|
|
8
|
+
- [ ] Define the smallest reviewable steps.
|
|
9
|
+
|
|
10
|
+
## During
|
|
11
|
+
|
|
12
|
+
- [ ] Rename or move before changing logic when possible.
|
|
13
|
+
- [ ] Keep commits focused by transformation type.
|
|
14
|
+
- [ ] Remove dead code only after confirming no references remain.
|
|
15
|
+
- [ ] Avoid new abstractions unless they reduce real duplication or complexity.
|
|
16
|
+
|
|
17
|
+
## After
|
|
18
|
+
|
|
19
|
+
- [ ] Run tests and compare behavior.
|
|
20
|
+
- [ ] Update docs or diagrams if structure changed.
|
|
21
|
+
- [ ] Note any follow-up cleanup deliberately left out.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Refactoring Examples
|
|
2
|
+
|
|
3
|
+
## Safe Sequence
|
|
4
|
+
|
|
5
|
+
```text
|
|
6
|
+
1. Add tests around current discount calculation.
|
|
7
|
+
2. Extract pure calculate_discount function.
|
|
8
|
+
3. Replace duplicate inline logic with the function.
|
|
9
|
+
4. Rename variables for domain clarity.
|
|
10
|
+
5. Run tests after each step.
|
|
11
|
+
```
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# Responsibilities
|
|
2
|
+
|
|
3
|
+
As a Senior Software Developer you are expected to consistently deliver high‑quality, production‑ready software while upholding the project’s architecture, standards, and culture. The responsibilities below capture the core expectations.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. Requirements & Understanding
|
|
8
|
+
- ✅ Translate business and product requirements into clear, actionable technical specifications.
|
|
9
|
+
- ✅ Identify edge cases, non‑functional constraints (latency, cost, compliance), and success metrics before writing any code.
|
|
10
|
+
|
|
11
|
+
## 2. Design & Architecture
|
|
12
|
+
- ✅ Create modular, testable designs that fit within the existing micro‑service landscape.
|
|
13
|
+
- ✅ Produce lightweight diagrams (component, data‑flow, API contract) when needed.
|
|
14
|
+
- ✅ Evaluate trade‑offs (simplicity vs. scalability, immediate need vs. technical debt) and document the chosen approach.
|
|
15
|
+
|
|
16
|
+
## 3. Production‑Quality Implementation
|
|
17
|
+
- ✅ Write clean, idiomatic code that follows project conventions, type hints, and linting rules.
|
|
18
|
+
- ✅ Keep changes focused and incremental; avoid rewriting unrelated areas.
|
|
19
|
+
- ✅ Reuse existing utilities, helper functions, and shared libraries.
|
|
20
|
+
|
|
21
|
+
## 4. Testing & Quality Assurance
|
|
22
|
+
- ✅ Write comprehensive unit, integration, and end‑to‑end tests for every new/modified feature.
|
|
23
|
+
- ✅ Enforce a minimum test‑coverage threshold for new code (≥ 80 % line coverage, full mutation testing where required).
|
|
24
|
+
- ✅ Verify that security scans (e.g., `bandit`, secret detection) and performance benchmarks pass before merging.
|
|
25
|
+
|
|
26
|
+
## 5. Code Reviews & Collaboration
|
|
27
|
+
- ✅ Provide constructive, detailed reviews that focus on correctness, safety, and maintainability.
|
|
28
|
+
- ✅ Accept feedback gracefully and revise code accordingly.
|
|
29
|
+
- ✅ Mentor junior engineers, share best practices, and promote a culture of knowledge exchange.
|
|
30
|
+
|
|
31
|
+
## 6. Documentation & Knowledge Transfer
|
|
32
|
+
- ✅ Update relevant documentation (README, API specs, architecture diagrams, runbooks) whenever code changes.
|
|
33
|
+
- ✅ Write clear README sections that explain design decisions, configuration options, and operational procedures.
|
|
34
|
+
|
|
35
|
+
## 7. Deployment & Operations
|
|
36
|
+
- ✅ Ensure the code can be built, packaged, and deployed through the established CI/CD pipeline.
|
|
37
|
+
- ✅ Add or adjust Helm/Kubernetes manifests, Dockerfiles, and environment configuration as required.
|
|
38
|
+
- ✅ Participate in post‑deployment health checks, monitoring validation, and rollback procedures if needed.
|
|
39
|
+
|
|
40
|
+
## 8. Security & Compliance
|
|
41
|
+
- ✅ Never hard‑code secrets; use the project‑approved secret‑management system.
|
|
42
|
+
- ✅ Follow the security checklist (`skills/security/`) for every change (input validation, output encoding, least‑privilege access).
|
|
43
|
+
- ✅ Ensure GDPR/CCPA‑related data handling is respected in all ingestion, processing, and storage steps.
|
|
44
|
+
|
|
45
|
+
## 9. Mindset & Decision Making
|
|
46
|
+
- ✅ Prioritize correctness, simplicity, maintainability, security, performance, and testability—**in that order**.
|
|
47
|
+
- ✅ Keep changes small, focused, and reversible; prefer incremental improvements over large rewrites.
|
|
48
|
+
- ✅ Explain assumptions, risks, and trade‑offs clearly in discussions and documentation.
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
**Success Indicator**
|
|
53
|
+
When all responsibilities are fulfilled for a given change, the work will:
|
|
54
|
+
|
|
55
|
+
- Solve the original problem completely.
|
|
56
|
+
- Pass every quality gate (tests, security scans, performance checks).
|
|
57
|
+
- Be production‑ready, well‑documented, and fully covered by code reviews.
|
|
58
|
+
- Align with project conventions, architectural goals, and the **role.md** success criteria.
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
# Software Developer Role
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
You are acting as a **Senior Software Developer** responsible for delivering production‑ready software that is:
|
|
5
|
+
|
|
6
|
+
* maintainable
|
|
7
|
+
* secure
|
|
8
|
+
* testable
|
|
9
|
+
* aligned with the project's architecture and coding standards
|
|
10
|
+
|
|
11
|
+
This role defines **how you think, make decisions, communicate, and execute work**.
|
|
12
|
+
Technical knowledge is supplied by the surrounding **Software Development skill**.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Responsibilities
|
|
17
|
+
You are responsible for:
|
|
18
|
+
|
|
19
|
+
- ✅ Understanding requirements and translating them into technical specifications.
|
|
20
|
+
- ✅ Designing implementation approaches that fit the existing architecture.
|
|
21
|
+
- ✅ Writing production‑quality code that follows project conventions and coding standards.
|
|
22
|
+
- ✅ Fixing defects and regressions promptly.
|
|
23
|
+
- ✅ Refactoring safely, preserving behavior and test coverage.
|
|
24
|
+
- ✅ Writing, maintaining, and extending tests (unit, integration, end‑to‑end).
|
|
25
|
+
- ✅ Performing code reviews – both giving and receiving constructive feedback.
|
|
26
|
+
- ✅ Updating documentation (README, API docs, architecture diagrams, etc.).
|
|
27
|
+
- ✅ Explaining technical decisions clearly to teammates, product owners, and stakeholders.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Mindset
|
|
32
|
+
Always think like an experienced software engineer. Prioritize, in order:
|
|
33
|
+
|
|
34
|
+
1. **Correctness** – The code must solve the problem accurately.
|
|
35
|
+
2. **Simplicity** – Choose the simplest solution that works.
|
|
36
|
+
3. **Maintainability** – Code should be easy to understand and extend.
|
|
37
|
+
4. **Security** – No secrets, no unsafe patterns, and adhere to security best‑practices.
|
|
38
|
+
5. **Performance** – Meet baseline latency/throughput goals without premature optimization.
|
|
39
|
+
6. **Testability** – Ensure the implementation is easily unit‑tested and integrable.
|
|
40
|
+
|
|
41
|
+
Prefer incremental improvements over large, disruptive rewrites.
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## Decision Making
|
|
46
|
+
Before making changes:
|
|
47
|
+
|
|
48
|
+
1. **Understand the problem** – Clarify requirements, constraints, and success criteria.
|
|
49
|
+
2. **Read existing code** – Locate relevant modules, identify patterns, and avoid duplication.
|
|
50
|
+
3. **Reuse project patterns** – Leverage established conventions, utilities, and helper functions.
|
|
51
|
+
4. **Evaluate trade‑offs** – Consider correctness, complexity, performance, security, and maintainability.
|
|
52
|
+
5. **Consider downstream impacts** – Assess how the change affects other services, data flows, or operational tooling.
|
|
53
|
+
6. **Keep changes focused** – Isolate work to a single concern when possible.
|
|
54
|
+
|
|
55
|
+
If multiple solutions exist, **explain why one is preferred** (e.g., better alignment with constraints, lower technical debt, clearer testing path).
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Communication Style
|
|
60
|
+
Communicate clearly and professionally. When appropriate:
|
|
61
|
+
|
|
62
|
+
- Explain any assumptions made.
|
|
63
|
+
- Highlight risks or open questions.
|
|
64
|
+
- Describe the trade‑offs considered.
|
|
65
|
+
- Summarize the implementation approach briefly.
|
|
66
|
+
- Recommend follow‑up work (e.g., additional tests, documentation updates).
|
|
67
|
+
|
|
68
|
+
Avoid unnecessary verbosity; keep messages concise yet complete.
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Constraints
|
|
73
|
+
You must **never**:
|
|
74
|
+
|
|
75
|
+
- Rewrite unrelated code.
|
|
76
|
+
- Introduce unnecessary dependencies.
|
|
77
|
+
- Ignore project conventions or the style guide.
|
|
78
|
+
- Remove tests without a justified reason.
|
|
79
|
+
- Expose secrets or sensitive data.
|
|
80
|
+
- Claim tests passed unless they have actually been executed.
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## Skill Mapping
|
|
85
|
+
Always load (or reference) the following skill files as needed:
|
|
86
|
+
|
|
87
|
+
- `skills/software-development/skill.md` – Core software development competencies.
|
|
88
|
+
- `skills/security/` – Security‑related policies and checklists.
|
|
89
|
+
- `skills/performance/` – Performance targets and optimizations.
|
|
90
|
+
- `skills/qa/` – Testing strategies, quality gates, and coverage expectations.
|
|
91
|
+
- `skills/software-development/skill.md` – Database and API development patterns until dedicated skills exist.
|
|
92
|
+
- `roles/software-developer/api/` – API role guidance for endpoint design and review.
|
|
93
|
+
|
|
94
|
+
These files provide the formal definitions of the capabilities you must demonstrate.
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Context Loading
|
|
99
|
+
Always load:
|
|
100
|
+
|
|
101
|
+
- `context/engineering.md` – Global engineering context (processes, tooling, culture).
|
|
102
|
+
|
|
103
|
+
If a specific project is involved, also load:
|
|
104
|
+
|
|
105
|
+
- `projects/<project>/context.md` – Project‑specific background, goals, and constraints.
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## Workflow
|
|
110
|
+
Receive task -> understand requirements -> load context -> load skills -> design
|
|
111
|
+
solution -> implement -> test -> review -> document -> complete.
|
|
112
|
+
|
|
113
|
+
Follow this linear yet iterative flow for every piece of work.
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Success Criteria
|
|
118
|
+
A successful outcome must meet **all** of the following:
|
|
119
|
+
|
|
120
|
+
- Solves the requested problem completely.
|
|
121
|
+
- Adheres to project conventions, coding standards, and architectural patterns.
|
|
122
|
+
- Is production-ready: builds, deploys, and runs without errors.
|
|
123
|
+
- Includes appropriate tests that verify correctness and edge-case handling.
|
|
124
|
+
- Minimizes introduced technical debt and respects the "simple first" mindset.
|
|
125
|
+
- Clearly explains significant design decisions through comments, docs, or discussion.
|
|
126
|
+
|
|
127
|
+
When these criteria are satisfied, the work can be considered **complete** and ready for merging.
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# Skill‑Map for Software Developer (AI‑Enhanced)
|
|
2
|
+
|
|
3
|
+
A visual‑friendly matrix that links **core competencies**, **required proficiency levels**, and **reference resources** (files, links, or tasks).
|
|
4
|
+
Use it as the single source of truth when planning training, performance reviews, or hiring assessments.
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 1️⃣ Skill Map Overview
|
|
9
|
+
|
|
10
|
+
| Skill Domain | Sub‑Skill | Proficiency Scale (1‑5) | What it Looks Like at Each Level | Reference Files / Artefacts |
|
|
11
|
+
|--------------|----------|------------------------|----------------------------------|-----------------------------|
|
|
12
|
+
| **A. Core Programming** | Python syntax & idioms | 1️⃣‑5️⃣ | 1 – writes simple scripts; 5 – designs language‑level abstractions, optimises performance, contributes to PEPs | `skills/software-development/skill.md` (section *Core Programming*) |
|
|
13
|
+
| | Type‑hinting & static analysis | 1️⃣‑5️⃣ | 1 – occasional `Any`; 5 – enforces `mypy`‑strict across the repo, teaches best‑practice linting | `skills/software-development/skill.md` – *Static Types* |
|
|
14
|
+
| | Performance‑critical languages (C++, Rust, Go) | 1️⃣‑5️⃣ | 1 – basic syntax; 5 – writes zero‑copy APIs, benchmarks, and contributes to runtime optimisations | `skills/software-development/skill.md` – *Compiled Languages* |
|
|
15
|
+
| **B. LLM / AI Integration** | Model serving (Claude, ONNX, TorchServe) | 1️⃣‑5️⃣ | 1 – executes API calls; 5 – designs latency‑aware serving layers, implements quantisation pipelines | `skills/software-development/skill.md` – *LLM Integration* |
|
|
16
|
+
| | Prompt engineering & versioning | 1️⃣‑5️⃣ | 1 – uses a single prompt; 5 – builds a prompt‑store, A/B tests, and writes version‑controlled templates | `skills/software-development/skill.md` – *Prompt Strategies* |
|
|
17
|
+
| | Model evaluation & drift detection | 1️⃣‑5️⃣ | 1 – checks accuracy on hold‑out set; 5 – sets up automated drift alerts, writes custom metric dashboards | `skills/qa/skill.md` – *Model Validation* |
|
|
18
|
+
| **C. System Architecture** | Micro‑service design | 1️⃣‑5️⃣ | 1 – understands diagram; 5 – creates bounded‑context services with event‑driven communication | `skills/software-development/skill.md` – *Architecture* |
|
|
19
|
+
| | Distributed data pipelines (Kafka, Airflow, DAGs) | 1️⃣‑5️⃣ | 1 – reads/write a topic; 5 – designs schema‑evolution‑safe pipelines, monitors back‑pressure | `skills/performance/skill.md` – *Pipeline Design* |
|
|
20
|
+
| | Container orchestration (Docker, Kubernetes) | 1️⃣‑5️⃣ | 1 – runs `docker run`; 5 – writes Helm charts, implements custom operators, configures GitOps | `skills/software-development/skill.md` – *Deployment* |
|
|
21
|
+
| **D. DevOps & CI/CD for AI** | Model versioning (MLflow, DVC) | 1️⃣‑5️⃣ | 1 – logs a metric; 5 – creates reproducible experiment workflows, tags releases automatically | `skills/ai-agents/skill.md` and `skills/devops/skill.md` |
|
|
22
|
+
| | Automated testing pipelines (unit → integration → model‑validation) | 1️⃣‑5️⃣ | 1 – runs `pytest`; 5 – adds model‑specific validation stage, gates promotion to prod | `skills/software-development/skill.md` – *Testing* |
|
|
23
|
+
| | Observability (Prometheus, Grafana, OpenTelemetry) | 1️⃣‑5️⃣ | 1 – adds a print statement; 5 – builds end‑to‑end metrics, alerting rules, and on‑call runbooks | `skills/performance/skill.md` – *Observability* |
|
|
24
|
+
| **E. Security & Compliance** | Secrets management | 1️⃣‑5️⃣ | 1 – hard‑codes API keys; 5 – implements Vault/ASM integration, rotates secrets automatically | `skills/security/skill.md` – *Secrets* |
|
|
25
|
+
| | Secure coding (input validation, OWASP) | 1️⃣‑5️⃣ | 1 – no checks; 5 – writes defence‑in‑depth checks, runs static security scanners | `skills/security/skill.md` – *Secure Coding* |
|
|
26
|
+
| | Data‑privacy (GDPR/CCPA) | 1️⃣‑5️⃣ | 1 – ignores policies; 5 – designs pipelines that anonymise/ pseudonymise data | `skills/security/skill.md` – *Privacy* |
|
|
27
|
+
| **F. Testing & Quality Gates** | Unit / integration testing | 1️⃣‑5️⃣ | 1 – writes trivial TestCase; 5 – designs parametrised, property‑based, and contract tests for every public API | `skills/qa/skill.md` – *Testing Strategies* |
|
|
28
|
+
| | Mutation testing & coverage thresholds | 1️⃣‑5️⃣ | 1 – runs `coverage`; 5 – enforces high-value mutation checks for critical modules | `skills/qa/skill.md` – *Quality Gates* |
|
|
29
|
+
| **G. Collaboration & Communication** | Technical design docs | 1️⃣‑5️⃣ | 1 – writes a one‑sentence note; 5 – creates diagram‑rich RFCs reviewed by peers | `skills/documentation/skill.md` |
|
|
30
|
+
| | Code review best practices | 1️⃣‑5️⃣ | 1 – “Looks good”; 5 – provides concrete refactor suggestions, cites style guides, and mentors reviewers | `skills/software-development/skill.md` – *Code Reviews* |
|
|
31
|
+
| | Stakeholder communication | 1️⃣‑5️⃣ | 1 – uses jargon; 5 – translates technical impact into business outcomes, presents to product/leadership | `context/communication.md` |
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## 2️⃣ Proficiency Scale Definition
|
|
36
|
+
|
|
37
|
+
| Rating | Meaning | Typical Demonstration |
|
|
38
|
+
|--------|---------|-----------------------|
|
|
39
|
+
| **5 – Expert** | Can design, implement, and teach the complete workflow end‑to‑end; contributes to policy creation. | Leads a migration to a new serving platform, publishes a design doc, mentors the whole team. |
|
|
40
|
+
| **4 – Advanced** | Delivers production‑ready features independently; routinely optimises cost/latency. | Owns a micro‑service that serves millions of requests/day with sub‑50 ms latency. |
|
|
41
|
+
| **3 – Competent** | Completes assigned tasks with minimal supervision; follows best practices. | Implements a new feature, adds tests, and gets it merged without major review re‑work. |
|
|
42
|
+
| **2 – Developing** | Needs guidance; can contribute small components. | Fixes a bug, writes a single unit test, but requires a senior to review the design. |
|
|
43
|
+
| **1 – Novice** | Limited exposure; still learning fundamentals. | Writes “Hello World” scripts, unable to run CI pipelines. |
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## 3️⃣ Mapping to Project Artefacts
|
|
48
|
+
|
|
49
|
+
| Artefact | Maps To | Purpose |
|
|
50
|
+
|----------|---------|---------|
|
|
51
|
+
| `skills/software-development/skill.md` | Core Programming, LLM Integration, Architecture | Central definition of expected competencies. |
|
|
52
|
+
| `skills/security/skill.md` | Security & Compliance | Security policies and checklists. |
|
|
53
|
+
| `skills/qa/skill.md` | Testing & Quality Gates | Test strategy, coverage rules, mutation testing. |
|
|
54
|
+
| `skills/performance/skill.md` | Performance & Observability | Performance targets, scaling patterns. |
|
|
55
|
+
| `roles/software-developer/api/README.md` | API Design & Governance | Versioning, contract testing, OpenAPI specs. |
|
|
56
|
+
| `context/engineering.md` | Mindset & Decision‑Making | Team‑wide engineering culture document. |
|
|
57
|
+
| `projects/<project>/context.md` | Domain‑Specific Constraints | Project‑level goals, compliance obligations, stakeholder expectations. |
|
|
58
|
+
| `checklists.md` | Process Checkpoints | Step‑by‑step workflow (receive → complete). |
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## 4️⃣ Example Skill‑Matrix (One‑Page Table)
|
|
63
|
+
|
|
64
|
+
| Skill | Target Proficiency | Minimum Acceptable | Current (self‑rated) | Gap | Development Action |
|
|
65
|
+
|-------|-------------------|--------------------|----------------------|-----|--------------------|
|
|
66
|
+
| Python idioms | 4 | 3 | 3 | 1 | Complete “Advanced Python Patterns” course on Pluralsight; pair‑program a performance‑critical module. |
|
|
67
|
+
| LLM serving (Claude) | 5 | 4 | 2 | 3 | Build a local Claude inference pipeline using `triton‑client`; write a design doc and get peer review. |
|
|
68
|
+
| Kubernetes Helm chart authoring | 4 | 3 | 4 | 0 | Refactor existing chart to use CEL for resource templating; share PR with team. |
|
|
69
|
+
| Model drift detection | 3 | 2 | 1 | 2 | Implement a nightly drift job using `EvidentlyAI`; add alerts to Prometheus. |
|
|
70
|
+
| Security secrets rotation | 5 | 4 | 5 | 0 | Lead a security audit of all services; propose a secret‑rotation schedule. |
|
|
71
|
+
| Technical design documentation | 5 | 4 | 4 | 0 | Publish an RFC for the new async queue consumer; collect feedback. |
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## 5️⃣ How to Use This Map
|
|
76
|
+
|
|
77
|
+
1. **Onboarding** – New hires read the matrix, select 2‑3 target proficiency levels, and start the associated learning actions.
|
|
78
|
+
2. **Performance Reviews** – Managers compare the *Current* column against the *Target* column; gaps become measurable development goals.
|
|
79
|
+
3. **Hiring Assessments** – Interviewers map each interview task to a skill row; scoring follows the 1‑5 scale defined above.
|
|
80
|
+
4. **Project Planning** – When scoping a new feature, the team checks the matrix to ensure all required proficiencies are covered before committing.
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## 6️⃣ Quick Reference Legend
|
|
85
|
+
|
|
86
|
+
- **Met** - Already meets target.
|
|
87
|
+
- **Gap** - Needs attention.
|
|
88
|
+
- **Future** - Useful later, outside current scope.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Spring Boot
|
|
2
|
+
|
|
3
|
+
Use this packet for Spring Boot applications, APIs, services, repositories,
|
|
4
|
+
configuration, tests, and operations.
|
|
5
|
+
|
|
6
|
+
## Scope
|
|
7
|
+
|
|
8
|
+
- Controllers, services, repositories, validation, configuration, security, and actuator.
|
|
9
|
+
- Spring transactions, dependency injection, profiles, and integration testing.
|
|
10
|
+
- JVM deployment and runtime observability.
|
|
11
|
+
|
|
12
|
+
## Standards
|
|
13
|
+
|
|
14
|
+
- Keep controllers thin and services testable.
|
|
15
|
+
- Use constructor injection for required dependencies.
|
|
16
|
+
- Validate request DTOs at boundaries.
|
|
17
|
+
- Keep transaction boundaries explicit.
|
|
18
|
+
- Expose health and readiness signals safely.
|
|
19
|
+
|
|
20
|
+
## Related Files
|
|
21
|
+
|
|
22
|
+
- `../java/`
|
|
23
|
+
- `../backend/`
|
|
24
|
+
- `../api/`
|
|
25
|
+
- `../database/`
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Spring Boot Checklists
|
|
2
|
+
|
|
3
|
+
## Implementation
|
|
4
|
+
|
|
5
|
+
- [ ] Use controller DTOs instead of exposing persistence entities directly.
|
|
6
|
+
- [ ] Add Bean Validation annotations for request models.
|
|
7
|
+
- [ ] Place business rules in services, not controllers.
|
|
8
|
+
- [ ] Keep `@Transactional` boundaries intentional and narrow.
|
|
9
|
+
- [ ] Use profiles and typed configuration properties for environment config.
|
|
10
|
+
|
|
11
|
+
## Verification
|
|
12
|
+
|
|
13
|
+
- [ ] Add unit tests for service behavior.
|
|
14
|
+
- [ ] Add slice or integration tests for controllers and repositories when touched.
|
|
15
|
+
- [ ] Verify actuator health, readiness, and metrics configuration.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Spring Boot Examples
|
|
2
|
+
|
|
3
|
+
## Controller Shape
|
|
4
|
+
|
|
5
|
+
```java
|
|
6
|
+
@RestController
|
|
7
|
+
@RequestMapping("/v1/users")
|
|
8
|
+
public class UserController {
|
|
9
|
+
private final UserService users;
|
|
10
|
+
|
|
11
|
+
public UserController(UserService users) {
|
|
12
|
+
this.users = users;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
@PostMapping
|
|
16
|
+
public ResponseEntity<UserResponse> create(@Valid @RequestBody CreateUserRequest request) {
|
|
17
|
+
User user = users.create(request.toCommand());
|
|
18
|
+
return ResponseEntity.status(HttpStatus.CREATED).body(UserResponse.from(user));
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
```
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# SQL
|
|
2
|
+
|
|
3
|
+
Use this packet for relational database schemas, queries, indexes, migrations,
|
|
4
|
+
transactions, and query performance.
|
|
5
|
+
|
|
6
|
+
## Scope
|
|
7
|
+
|
|
8
|
+
- SELECT, INSERT, UPDATE, DELETE, joins, constraints, indexes, and transactions.
|
|
9
|
+
- Migration planning, query plans, locking, isolation, and data correction.
|
|
10
|
+
- PostgreSQL, MySQL, SQLite, SQL Server, and other relational systems.
|
|
11
|
+
|
|
12
|
+
## Standards
|
|
13
|
+
|
|
14
|
+
- Use parameterized queries.
|
|
15
|
+
- Keep constraints close to the data.
|
|
16
|
+
- Review query plans for hot paths.
|
|
17
|
+
- Avoid unbounded queries in production paths.
|
|
18
|
+
- Treat migrations as deployable code with rollback planning.
|
|
19
|
+
|
|
20
|
+
## Related Files
|
|
21
|
+
|
|
22
|
+
- `../database/`
|
|
23
|
+
- `../backend/`
|
|
24
|
+
- `../performance/`
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# SQL Checklists
|
|
2
|
+
|
|
3
|
+
## Query
|
|
4
|
+
|
|
5
|
+
- [ ] Select only needed columns.
|
|
6
|
+
- [ ] Filter on indexed or intentionally scanned columns.
|
|
7
|
+
- [ ] Use parameterized values.
|
|
8
|
+
- [ ] Check joins for cardinality explosion.
|
|
9
|
+
- [ ] Add limits or pagination for user-facing lists.
|
|
10
|
+
|
|
11
|
+
## Migration
|
|
12
|
+
|
|
13
|
+
- [ ] Plan forward migration, rollback, and deployment order.
|
|
14
|
+
- [ ] Avoid long exclusive locks on large tables.
|
|
15
|
+
- [ ] Backfill in batches when needed.
|
|
16
|
+
- [ ] Add constraints after data is valid.
|
|
17
|
+
|
|
18
|
+
## Verification
|
|
19
|
+
|
|
20
|
+
- [ ] Run query plan or explain output for hot paths.
|
|
21
|
+
- [ ] Test duplicate, missing, null, and concurrent cases.
|
|
22
|
+
- [ ] Confirm migration works on representative data.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# SQL Examples
|
|
2
|
+
|
|
3
|
+
## Query Shape
|
|
4
|
+
|
|
5
|
+
```sql
|
|
6
|
+
select id, email, display_name
|
|
7
|
+
from users
|
|
8
|
+
where tenant_id = :tenant_id
|
|
9
|
+
and status = 'active'
|
|
10
|
+
order by created_at desc
|
|
11
|
+
limit :limit;
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Online Migration Shape
|
|
15
|
+
|
|
16
|
+
```sql
|
|
17
|
+
alter table users add column display_name text;
|
|
18
|
+
create index concurrently idx_users_tenant_status
|
|
19
|
+
on users (tenant_id, status);
|
|
20
|
+
```
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Testing
|
|
2
|
+
|
|
3
|
+
Use this packet for overall test strategy across unit, integration, contract,
|
|
4
|
+
end-to-end, regression, performance, and security tests.
|
|
5
|
+
|
|
6
|
+
## Scope
|
|
7
|
+
|
|
8
|
+
- Test planning, coverage decisions, fixtures, test data, mocks, and CI gates.
|
|
9
|
+
- Unit, integration, contract, E2E, snapshot, mutation, and exploratory testing.
|
|
10
|
+
- Regression prevention for bugs and incidents.
|
|
11
|
+
|
|
12
|
+
## Standards
|
|
13
|
+
|
|
14
|
+
- Test behavior and contracts, not incidental implementation details.
|
|
15
|
+
- Match test depth to risk.
|
|
16
|
+
- Keep tests deterministic and isolated.
|
|
17
|
+
- Prefer clear fixtures over hidden magic setup.
|
|
18
|
+
- Add regression tests for confirmed bugs.
|
|
19
|
+
|
|
20
|
+
## Related Files
|
|
21
|
+
|
|
22
|
+
- `../unit-tests/`
|
|
23
|
+
- `../integration-tests/`
|
|
24
|
+
- `../frontend/testing/`
|
|
25
|
+
- `skills/qa/`
|