@umacloud/knowledge 1.0.1
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/00-governance/governance-capabilities.md +557 -0
- package/00-governance/knowledge-map.md +39 -0
- package/00-governance/maintenance-policy.md +76 -0
- package/00-governance/review-checklist.md +81 -0
- package/README.md +13 -0
- package/ai/01-standards/agent-development-complete.md +691 -0
- package/ai/01-standards/llm-application-complete.md +488 -0
- package/ai/01-standards/mlops-complete.md +798 -0
- package/ai/01-standards/prompt-engineering-complete.md +646 -0
- package/ai/01-standards/rag-architecture-complete.md +649 -0
- package/ai/02-playbooks/llm-evaluation-playbook.md +847 -0
- package/ai/03-checklists/ai-project-checklist.md +215 -0
- package/ai/04-antipatterns/ai-antipatterns.md +661 -0
- package/ai/05-cases/case-rag-production.md +147 -0
- package/ai/06-glossary/ai-glossary.md +162 -0
- package/ai/agent-evaluation-benchmark.md +53 -0
- package/ai/ai-agent-memory-context-management.md +41 -0
- package/ai/ai-cost-capacity-optimization-playbook.md +42 -0
- package/ai/ai-data-security-and-compliance-playbook.md +37 -0
- package/ai/ai-domain-index-and-checklist.md +40 -0
- package/ai/ai-governance-maturity-model.md +50 -0
- package/ai/ai-model-selection-and-routing-strategy.md +47 -0
- package/ai/ai-observability-and-oncall-runbook.md +52 -0
- package/ai/ai-rag-engineering-playbook.md +42 -0
- package/ai/ai-red-team-and-safety-evaluation.md +42 -0
- package/ai/ai-release-readiness-and-rollback-gate.md +42 -0
- package/ai/llm-agent-engineering-deep-dive.md +57 -0
- package/ai/prompt-and-tool-guardrails.md +52 -0
- package/api/01-standards/enterprise-api-standards.md +198 -0
- package/api/01-standards/rest-api-design-guide.md +63 -0
- package/api/02-playbooks/api-pagination-playbook.md +93 -0
- package/api/02-playbooks/graphql-production-playbook.md +176 -0
- package/api/03-checklists/api-review-checklist.md +55 -0
- package/api/04-antipatterns/api-antipatterns.md +112 -0
- package/architecture/01-standards/api-gateway-patterns.md +496 -0
- package/architecture/01-standards/cloud-native-patterns.md +644 -0
- package/architecture/01-standards/distributed-systems-patterns.md +591 -0
- package/architecture/01-standards/event-driven-architecture.md +595 -0
- package/architecture/01-standards/microservices-patterns-complete.md +968 -0
- package/architecture/01-standards/microservices-patterns.md +495 -0
- package/architecture/01-standards/system-design-interview.md +664 -0
- package/architecture/02-playbooks/microservices-patterns-playbook.md +137 -0
- package/architecture/02-playbooks/migration-playbook.md +780 -0
- package/architecture/02-playbooks/system-design-playbook.md +779 -0
- package/architecture/03-checklists/architecture-decision-checklist.md +297 -0
- package/architecture/04-antipatterns/architecture-antipatterns.md +417 -0
- package/architecture/05-cases/case-netflix-microservices.md +413 -0
- package/architecture/06-glossary/architecture-glossary.md +164 -0
- package/architecture/adr-template-and-examples.md +38 -0
- package/architecture/api-gateway-deep-dive.md +1291 -0
- package/architecture/configuration-management.md +1162 -0
- package/architecture/distributed-transactions.md +1220 -0
- package/architecture/microservices-complete.md +735 -0
- package/architecture/resilience-and-disaster-patterns.md +37 -0
- package/architecture/service-governance.md +1198 -0
- package/architecture/system-architecture-deep-dive.md +37 -0
- package/backend/01-standards/analytics-and-growth.md +65 -0
- package/backend/01-standards/api-and-error-conventions.md +120 -0
- package/backend/01-standards/application-layering-and-packaging.md +160 -0
- package/backend/01-standards/auth-implementation.md +104 -0
- package/backend/01-standards/backend-framework-idioms.md +74 -0
- package/backend/01-standards/background-jobs-and-async.md +66 -0
- package/backend/01-standards/caching-strategies-complete.md +390 -0
- package/backend/01-standards/config-and-observability.md +77 -0
- package/backend/01-standards/data-modeling-and-persistence.md +94 -0
- package/backend/01-standards/django-complete.md +1765 -0
- package/backend/01-standards/email-and-notifications.md +64 -0
- package/backend/01-standards/fastapi-complete.md +925 -0
- package/backend/01-standards/file-upload-and-storage.md +66 -0
- package/backend/01-standards/graphql-api-complete.md +416 -0
- package/backend/01-standards/llm-application-standard.md +78 -0
- package/backend/01-standards/message-queue-patterns.md +379 -0
- package/backend/01-standards/microservices-and-distributed.md +78 -0
- package/backend/01-standards/nestjs-complete.md +2167 -0
- package/backend/01-standards/payment-integration.md +80 -0
- package/backend/01-standards/rate-limiting-complete.md +451 -0
- package/backend/01-standards/realtime-and-websocket.md +65 -0
- package/backend/01-standards/search-and-filtering.md +64 -0
- package/backend/01-standards/spring-boot-complete.md +445 -0
- package/backend/02-playbooks/api-design-playbook.md +718 -0
- package/backend/02-playbooks/email-send-playbook.md +130 -0
- package/backend/02-playbooks/file-upload-s3-playbook.md +153 -0
- package/backend/02-playbooks/typescript-enterprise-playbook.md +133 -0
- package/backend/02-playbooks/websocket-realtime-playbook.md +154 -0
- package/backend/03-checklists/api-launch-checklist.md +189 -0
- package/backend/04-antipatterns/backend-antipatterns.md +1051 -0
- package/blockchain/01-standards/blockchain-basics.md +557 -0
- package/blockchain/01-standards/smart-contract-development.md +1315 -0
- package/cicd/01-standards/deployment-and-delivery-standard.md +96 -0
- package/cicd/01-standards/github-actions-complete.md +473 -0
- package/cicd/01-standards/release-and-store-submission.md +75 -0
- package/cicd/02-playbooks/cicd-pipeline-playbook.md +144 -0
- package/cicd/02-playbooks/release-management-playbook.md +605 -0
- package/cicd/03-checklists/pipeline-security-checklist.md +168 -0
- package/cicd/04-antipatterns/cicd-antipatterns.md +589 -0
- package/cicd/05-cases/case-deployment-automation.md +221 -0
- package/cicd/05-cases/case-gitops-transformation.md +212 -0
- package/cicd/06-glossary/cicd-glossary.md +114 -0
- package/cicd/cicd-blueprint-deep-dive.md +38 -0
- package/cicd/release-readiness-gate.md +37 -0
- package/cloud-native/01-standards/container-security.md +741 -0
- package/cloud-native/01-standards/kubernetes-complete.md +812 -0
- package/cloud-native/02-playbooks/api-gateway-playbook.md +155 -0
- package/cloud-native/02-playbooks/gitops-with-argocd.md +760 -0
- package/cloud-native/02-playbooks/k8s-troubleshooting-playbook.md +1942 -0
- package/cloud-native/02-playbooks/message-queue-playbook.md +129 -0
- package/cloud-native/02-playbooks/multicloud-governance.md +726 -0
- package/cloud-native/02-playbooks/serverless-patterns.md +788 -0
- package/cloud-native/02-playbooks/service-mesh-playbook.md +612 -0
- package/cloud-native/02-playbooks/terraform-iac-playbook.md +143 -0
- package/cloud-native/03-checklists/container-security-checklist.md +431 -0
- package/cloud-native/03-checklists/k8s-production-readiness-checklist.md +460 -0
- package/cloud-native/04-antipatterns/container-antipatterns.md +660 -0
- package/cloud-native/04-antipatterns/k8s-antipatterns.md +743 -0
- package/cloud-native/05-cases/case-k8s-migration.md +478 -0
- package/cloud-native/05-cases/case-k8s-scaling.md +642 -0
- package/cloud-native/05-cases/case-k8s-security-incident.md +397 -0
- package/cloud-native/06-glossary/cloud-native-glossary.md +337 -0
- package/cross-platform/01-standards/cross-platform-frameworks.md +83 -0
- package/cross-platform/01-standards/platform-selection-and-architecture.md +77 -0
- package/data/01-standards/elasticsearch-complete.md +2098 -0
- package/data/01-standards/postgresql-complete.md +1613 -0
- package/data/01-standards/redis-complete.md +1527 -0
- package/data/02-playbooks/database-optimization-playbook.md +403 -0
- package/data/02-playbooks/elasticsearch-production-playbook.md +132 -0
- package/data/03-checklists/database-launch-checklist.md +187 -0
- package/data/04-antipatterns/database-antipatterns.md +873 -0
- package/data/05-cases/case-database-migration.md +310 -0
- package/data/06-glossary/database-glossary.md +440 -0
- package/data/data-governance-and-modeling-deep-dive.md +39 -0
- package/data-engineering/01-standards/airflow-complete.md +523 -0
- package/data-engineering/01-standards/kafka-complete.md +1521 -0
- package/data-engineering/02-playbooks/spark-etl-playbook.md +496 -0
- package/data-engineering/03-checklists/pipeline-launch-checklist.md +194 -0
- package/data-engineering/04-antipatterns/data-pipeline-antipatterns.md +684 -0
- package/data-engineering/05-cases/case-real-time-pipeline.md +355 -0
- package/data-engineering/06-glossary/data-engineering-glossary.md +429 -0
- package/database/01-standards/database-schema-standards.md +147 -0
- package/database/02-playbooks/postgresql-optimization-quick.md +52 -0
- package/database/02-playbooks/postgresql-performance-optimization.md +58 -0
- package/database/02-playbooks/postgresql-production-playbook.md +146 -0
- package/database/02-playbooks/redis-caching-playbook.md +117 -0
- package/database/03-checklists/database-review-checklist.md +50 -0
- package/database/04-antipatterns/database-antipatterns.md +112 -0
- package/design/01-standards/ui-design-system-complete.md +423 -0
- package/design/02-playbooks/design-handoff-playbook.md +254 -0
- package/design/02-playbooks/design-review-playbook.md +388 -0
- package/design/03-checklists/design-review-checklist.md +246 -0
- package/design/04-antipatterns/design-antipatterns.md +378 -0
- package/design/05-cases/case-design-system-adoption.md +328 -0
- package/design/06-glossary/design-glossary.md +329 -0
- package/design/ui-full-lifecycle-cross-platform-playbook.md +571 -0
- package/design/ux-system-deep-dive.md +38 -0
- package/design-systems/00-craft-rules.md +71 -0
- package/design-systems/aesthetic-families.md +43 -0
- package/design-systems/anti-ai-slop.md +162 -0
- package/design-systems/bold-geometric.md +120 -0
- package/design-systems/brutalist-bold.md +103 -0
- package/design-systems/editorial-clean.md +109 -0
- package/design-systems/glass-aurora.md +108 -0
- package/design-systems/modern-minimal.md +145 -0
- package/design-systems/premium-luxury.md +106 -0
- package/design-systems/product-type-design-map.md +48 -0
- package/design-systems/soft-warm.md +123 -0
- package/design-systems/tech-utility.md +113 -0
- package/desktop/01-standards/desktop-app-standard.md +72 -0
- package/desktop/01-standards/desktop-design.md +71 -0
- package/development/00-governance/document-template.md +41 -0
- package/development/01-standards/api-versioning-strategies.md +432 -0
- package/development/01-standards/authentication-patterns-complete.md +479 -0
- package/development/01-standards/css-architecture-complete.md +550 -0
- package/development/01-standards/database-migration-strategies.md +484 -0
- package/development/01-standards/elasticsearch-complete.md +347 -0
- package/development/01-standards/git-complete.md +371 -0
- package/development/01-standards/golang-complete.md +1565 -0
- package/development/01-standards/graphql-complete.md +298 -0
- package/development/01-standards/javascript-bundlers-complete.md +469 -0
- package/development/01-standards/javascript-typescript-complete.md +528 -0
- package/development/01-standards/jest-complete.md +275 -0
- package/development/01-standards/linux-complete.md +234 -0
- package/development/01-standards/logging-observability-complete.md +526 -0
- package/development/01-standards/microservices-communication.md +502 -0
- package/development/01-standards/mongodb-complete.md +406 -0
- package/development/01-standards/oauth2-complete.md +285 -0
- package/development/01-standards/performance-optimization-complete.md +289 -0
- package/development/01-standards/playwright-complete.md +247 -0
- package/development/01-standards/postgresql-complete.md +456 -0
- package/development/01-standards/pytest-complete.md +340 -0
- package/development/01-standards/python-async-programming.md +902 -0
- package/development/01-standards/python-complete.md +956 -0
- package/development/01-standards/python-decorators-complete.md +799 -0
- package/development/01-standards/python-design-patterns.md +2854 -0
- package/development/01-standards/python-packaging-distribution.md +420 -0
- package/development/01-standards/python-testing-strategies.md +607 -0
- package/development/01-standards/python-web-frameworks-comparison.md +471 -0
- package/development/01-standards/redis-complete.md +317 -0
- package/development/01-standards/rest-api-complete.md +316 -0
- package/development/01-standards/rust-complete.md +578 -0
- package/development/01-standards/typescript-advanced-types.md +1513 -0
- package/development/01-standards/web-security-complete.md +292 -0
- package/development/02-playbooks/api-design-playbook.md +810 -0
- package/development/02-playbooks/database-migration-playbook.md +580 -0
- package/development/02-playbooks/debugging-playbook.md +692 -0
- package/development/02-playbooks/feature-delivery-playbook.md +430 -0
- package/development/02-playbooks/incident-hotfix-playbook.md +387 -0
- package/development/02-playbooks/performance-optimization-playbook.md +531 -0
- package/development/02-playbooks/performance-tuning-playbook.md +652 -0
- package/development/02-playbooks/refactor-playbook.md +403 -0
- package/development/02-playbooks/release-playbook.md +469 -0
- package/development/03-checklists/architecture-review-checklist.md +168 -0
- package/development/03-checklists/data-migration-checklist.md +157 -0
- package/development/03-checklists/oncall-handover-checklist.md +173 -0
- package/development/03-checklists/pr-checklist.md +158 -0
- package/development/03-checklists/production-readiness-checklist.md +190 -0
- package/development/03-checklists/release-readiness-checklist.md +154 -0
- package/development/03-checklists/security-review-checklist.md +182 -0
- package/development/04-antipatterns/api-antipatterns.md +657 -0
- package/development/04-antipatterns/architecture-antipatterns.md +686 -0
- package/development/04-antipatterns/backend-antipatterns.md +648 -0
- package/development/04-antipatterns/cicd-antipatterns.md +540 -0
- package/development/04-antipatterns/code-smell-antipatterns.md +571 -0
- package/development/04-antipatterns/data-antipatterns.md +658 -0
- package/development/04-antipatterns/database-antipatterns.md +578 -0
- package/development/04-antipatterns/frontend-antipatterns.md +635 -0
- package/development/04-antipatterns/reliability-antipatterns.md +700 -0
- package/development/04-antipatterns/security-antipatterns.md +747 -0
- package/development/05-cases/case-api-version-migration.md +428 -0
- package/development/05-cases/case-authorization-hardening.md +383 -0
- package/development/05-cases/case-bluegreen-rollback.md +466 -0
- package/development/05-cases/case-cache-snowball-protection.md +485 -0
- package/development/05-cases/case-ci-cd-pipeline.md +544 -0
- package/development/05-cases/case-database-scaling.md +500 -0
- package/development/05-cases/case-db-hotspot-optimization.md +487 -0
- package/development/05-cases/case-incident-mttr-reduction.md +563 -0
- package/development/05-cases/case-microservice-migration.md +375 -0
- package/development/05-cases/case-performance-optimization.md +406 -0
- package/development/05-cases/case-security-incident-response.md +345 -0
- package/development/06-glossary/full-stack-glossary.md +166 -0
- package/development/09-maturity/quarterly-audit-template.md +35 -0
- package/development/11-ui-excellence/ui-aesthetic-system.md +41 -0
- package/development/11-ui-excellence/ui-engineering-excellence.md +435 -0
- package/development/12-scenarios/development-scenarios-guide.md +565 -0
- package/development/13-implementation-assets/implementation-toolkit.md +282 -0
- package/development/13-implementation-assets/knowledge-gates-execution.md +43 -0
- package/development/14-full-lifecycle/software-lifecycle-gates.md +511 -0
- package/development/15-lifecycle-templates/project-templates-collection.md +791 -0
- package/development/api-contract-and-versioning-guide.md +36 -0
- package/development/api-governance-complete.md +43 -0
- package/development/backend-engineering-complete.md +43 -0
- package/development/code-review-quality-complete.md +43 -0
- package/development/concurrency-reliability-complete.md +43 -0
- package/development/database-engineering-complete.md +43 -0
- package/development/engineering-effectiveness-complete.md +43 -0
- package/development/engineering-standards-deep-dive.md +38 -0
- package/development/frontend-engineering-complete.md +43 -0
- package/development/performance-capacity-complete.md +43 -0
- package/development/refactor-migration-complete.md +42 -0
- package/development/refactoring-and-techdebt-playbook.md +37 -0
- package/development/security-in-development-complete.md +43 -0
- package/devops/01-standards/cicd-pipeline-complete.md +262 -0
- package/devops/01-standards/docker-complete.md +1490 -0
- package/devops/01-standards/github-actions-complete.md +337 -0
- package/devops/01-standards/kubernetes-complete.md +638 -0
- package/devops/01-standards/terraform-complete.md +2117 -0
- package/devops/02-playbooks/docker-compose-playbook.md +233 -0
- package/devops/02-playbooks/docker-k8s-production-playbook.md +186 -0
- package/devops/02-playbooks/docker-production-playbook.md +952 -0
- package/edge-iot/01-standards/edge-iot-complete.md +473 -0
- package/experts/architect/api-design.md +178 -0
- package/experts/architect/methodology.md +124 -0
- package/experts/architect/security.md +75 -0
- package/experts/backend-lead/methodology.md +216 -0
- package/experts/devops/methodology.md +160 -0
- package/experts/frontend-lead/methodology.md +178 -0
- package/experts/product-manager/industry/ecommerce.md +43 -0
- package/experts/product-manager/industry/saas.md +40 -0
- package/experts/product-manager/methodology.md +97 -0
- package/experts/qa-lead/methodology.md +123 -0
- package/experts/qa-lead/test-strategy.md +128 -0
- package/experts/uiux-designer/methodology.md +125 -0
- package/frontend/01-standards/accessibility-complete.md +532 -0
- package/frontend/01-standards/accessibility-standard.md +74 -0
- package/frontend/01-standards/admin-dashboard-and-crud.md +72 -0
- package/frontend/01-standards/design-tokens-complete.md +444 -0
- package/frontend/01-standards/forms-and-validation.md +77 -0
- package/frontend/01-standards/frontend-architecture-and-layering.md +119 -0
- package/frontend/01-standards/i18n-and-localization.md +65 -0
- package/frontend/01-standards/nextjs-complete.md +451 -0
- package/frontend/01-standards/react-complete.md +713 -0
- package/frontend/01-standards/react-hooks-complete-guide.md +1100 -0
- package/frontend/01-standards/react-hooks-complete.md +1171 -0
- package/frontend/01-standards/seo-and-web-vitals.md +77 -0
- package/frontend/01-standards/state-management-complete.md +444 -0
- package/frontend/01-standards/vue-complete.md +499 -0
- package/frontend/01-standards/vue3-complete.md +2002 -0
- package/frontend/01-standards/web-framework-best-practices.md +64 -0
- package/frontend/01-standards/web-performance-complete.md +495 -0
- package/frontend/02-playbooks/accessibility-a11y-playbook.md +161 -0
- package/frontend/02-playbooks/frontend-performance-playbook.md +707 -0
- package/frontend/02-playbooks/i18n-internationalization-playbook.md +120 -0
- package/frontend/02-playbooks/performance-optimization-playbook.md +163 -0
- package/frontend/02-playbooks/react-nextjs-production-playbook.md +167 -0
- package/frontend/02-playbooks/react-state-management-playbook.md +173 -0
- package/frontend/03-checklists/component-quality-checklist.md +166 -0
- package/frontend/03-checklists/frontend-launch-checklist.md +299 -0
- package/frontend/04-antipatterns/frontend-antipatterns.md +886 -0
- package/frontend/05-cases/case-performance-optimization.md +274 -0
- package/harmony/01-standards/harmonyos-arkts-standard.md +75 -0
- package/harmony/01-standards/harmonyos-design.md +65 -0
- package/high-quality-engineering-playbook.md +54 -0
- package/incident/01-standards/incident-response-complete.md +303 -0
- package/incident/02-playbooks/chaos-engineering-playbook.md +883 -0
- package/incident/02-playbooks/postmortem-playbook.md +398 -0
- package/incident/03-checklists/incident-readiness-checklist.md +181 -0
- package/incident/04-antipatterns/incident-antipatterns.md +490 -0
- package/incident/05-cases/case-cascade-failure.md +176 -0
- package/incident/06-glossary/incident-glossary.md +114 -0
- package/incident/postmortem-and-response-deep-dive.md +39 -0
- package/industries/ecommerce/ecommerce-complete.md +631 -0
- package/industries/education/education-complete.md +555 -0
- package/industries/fintech/fintech-complete.md +501 -0
- package/industries/gaming/gaming-complete.md +587 -0
- package/industries/healthcare/healthcare-complete.md +452 -0
- package/low-code/01-standards/low-code-complete.md +944 -0
- package/miniprogram/01-standards/ai-common-mistakes.md +61 -0
- package/miniprogram/01-standards/miniprogram-custom-navbar-capsule.md +77 -0
- package/miniprogram/01-standards/miniprogram-design.md +61 -0
- package/miniprogram/01-standards/miniprogram-standard.md +81 -0
- package/mobile/01-standards/android-material-design.md +70 -0
- package/mobile/01-standards/flutter-complete.md +384 -0
- package/mobile/01-standards/ios-design-hig.md +78 -0
- package/mobile/01-standards/mobile-app-standard.md +85 -0
- package/mobile/01-standards/react-native-complete.md +352 -0
- package/mobile/02-playbooks/mobile-cross-platform-playbook.md +175 -0
- package/mobile/02-playbooks/mobile-performance.md +473 -0
- package/mobile/03-checklists/mobile-release-checklist.md +234 -0
- package/mobile/04-antipatterns/mobile-antipatterns.md +798 -0
- package/mobile/05-cases/case-app-performance.md +500 -0
- package/mobile/05-cases/case-app-startup-optimization.md +218 -0
- package/mobile/06-glossary/mobile-glossary.md +484 -0
- package/observability/01-standards/observability-standards.md +103 -0
- package/observability/02-playbooks/prometheus-grafana-playbook.md +135 -0
- package/observability/02-playbooks/structured-logging-playbook.md +73 -0
- package/observability/03-checklists/observability-checklist.md +54 -0
- package/observability/04-antipatterns/observability-antipatterns.md +106 -0
- package/operations/01-standards/prometheus-monitoring-complete.md +1578 -0
- package/operations/02-playbooks/capacity-planning-playbook.md +620 -0
- package/operations/03-checklists/production-launch-checklist.md +365 -0
- package/operations/04-antipatterns/operations-antipatterns.md +664 -0
- package/operations/05-cases/case-sre-practices.md +581 -0
- package/operations/06-glossary/operations-glossary.md +120 -0
- package/operations/aiops-anomaly-detection.md +758 -0
- package/operations/capacity-planning.md +1061 -0
- package/operations/chaos-engineering.md +659 -0
- package/operations/incident-command-system.md +38 -0
- package/operations/observability-complete.md +442 -0
- package/operations/slo-sli-playbook.md +517 -0
- package/operations/sre-operations-deep-dive.md +39 -0
- package/package.json +8 -0
- package/performance/01-standards/performance-and-scalability.md +80 -0
- package/performance/01-standards/performance-standards.md +156 -0
- package/performance/02-playbooks/query-optimization-playbook.md +103 -0
- package/performance/03-checklists/performance-checklist.md +56 -0
- package/performance/04-antipatterns/performance-antipatterns.md +146 -0
- package/product/01-standards/product-management-complete.md +285 -0
- package/product/02-playbooks/feature-launch-playbook.md +207 -0
- package/product/02-playbooks/user-research-playbook.md +532 -0
- package/product/03-checklists/feature-launch-checklist.md +275 -0
- package/product/04-antipatterns/product-antipatterns.md +355 -0
- package/product/05-cases/case-mvp-to-scale.md +384 -0
- package/product/06-glossary/product-glossary.md +462 -0
- package/product/feature-prioritization-framework.md +40 -0
- package/product/kpi-and-metric-tree.md +37 -0
- package/product/product-discovery-and-prd-deep-dive.md +41 -0
- package/quantum/01-standards/quantum-complete.md +1186 -0
- package/security/01-standards/api-security-complete.md +511 -0
- package/security/01-standards/container-runtime-security.md +574 -0
- package/security/01-standards/data-protection-gdpr.md +543 -0
- package/security/01-standards/owasp-top10-complete.md +1890 -0
- package/security/01-standards/secure-coding-baseline.md +90 -0
- package/security/01-standards/supply-chain-security.md +441 -0
- package/security/01-standards/web-security-checklist.md +108 -0
- package/security/01-standards/zero-trust-architecture.md +521 -0
- package/security/02-playbooks/auth-sso-playbook.md +166 -0
- package/security/02-playbooks/incident-response-security-playbook.md +588 -0
- package/security/02-playbooks/owasp-api-security-playbook.md +129 -0
- package/security/02-playbooks/payment-integration-playbook.md +119 -0
- package/security/02-playbooks/penetration-testing-playbook.md +517 -0
- package/security/03-checklists/security-audit-checklist.md +356 -0
- package/security/04-antipatterns/security-coding-antipatterns.md +580 -0
- package/security/05-cases/case-log4shell-incident.md +537 -0
- package/security/05-cases/case-major-breaches.md +468 -0
- package/security/06-glossary/security-glossary.md +212 -0
- package/security/compliance-automation.md +993 -0
- package/security/container-security.md +680 -0
- package/security/devsecops-complete.md +426 -0
- package/security/sast-dast-sca.md +775 -0
- package/security/secrets-management.md +594 -0
- package/security/security-architecture-deep-dive.md +37 -0
- package/security/threat-modeling-stride-playbook.md +40 -0
- package/seed-templates/auth-system.md +59 -0
- package/seed-templates/blog-content.md +94 -0
- package/seed-templates/dashboard.md +89 -0
- package/seed-templates/docs-site.md +73 -0
- package/seed-templates/e-commerce.md +50 -0
- package/seed-templates/saas-landing.md +92 -0
- package/seed-templates/settings-page.md +51 -0
- package/testing/01-standards/test-strategy-and-layering.md +83 -0
- package/testing/01-standards/testing-strategy-complete.md +422 -0
- package/testing/01-standards/unit-testing-best-practices.md +118 -0
- package/testing/02-playbooks/e2e-testing-playbook.md +988 -0
- package/testing/02-playbooks/testing-strategy-playbook.md +126 -0
- package/testing/03-checklists/test-strategy-checklist.md +208 -0
- package/testing/04-antipatterns/testing-antipatterns.md +718 -0
- package/testing/05-cases/case-testing-transformation.md +300 -0
- package/testing/06-glossary/testing-glossary.md +110 -0
- package/testing/risk-based-test-matrix.md +36 -0
- package/testing/testing-strategy-deep-dive.md +37 -0
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: methodology
|
|
3
|
+
title: Frontend Lead — Development Methodology
|
|
4
|
+
domain: experts
|
|
5
|
+
category: frontend-lead
|
|
6
|
+
difficulty: intermediate
|
|
7
|
+
tags: [architecture, client, component, error, experts, handling, management, methodology]
|
|
8
|
+
quality_score: 70
|
|
9
|
+
last_updated: 2026-06-15
|
|
10
|
+
---
|
|
11
|
+
# Frontend Lead — Development Methodology
|
|
12
|
+
|
|
13
|
+
## 前端/客户端标准库速查(按需查阅,`<platform>/01-standards/<id>`)
|
|
14
|
+
|
|
15
|
+
**先看架构文档声明的目标平台**,再查对应标准照着做:
|
|
16
|
+
|
|
17
|
+
- Web 通用:frontend-architecture-and-layering(feature 分包/数据访问层/状态分治)· web-framework-best-practices(React/Next App Router/Vue 官方)· forms-and-validation · admin-dashboard-and-crud(后台/CRUD)· i18n-and-localization · accessibility-standard(无障碍)· seo-and-web-vitals
|
|
18
|
+
- 移动:mobile/mobile-app-standard + 设计 mobile/{ios-design-hig, android-material-design}
|
|
19
|
+
- 鸿蒙:harmony/{harmonyos-arkts-standard, harmonyos-design}
|
|
20
|
+
- 小程序:miniprogram/{miniprogram-standard, miniprogram-design}
|
|
21
|
+
- 桌面:desktop/{desktop-app-standard, desktop-design}
|
|
22
|
+
- 跨平台:cross-platform/{platform-selection-and-architecture, cross-platform-frameworks}
|
|
23
|
+
- **UI 务必遵循目标平台的官方设计规范**(iOS HIG / Android Material 3 / HarmonyOS Design / 微信 WeUI / macOS·Windows),不要套 web 范式。
|
|
24
|
+
|
|
25
|
+
## 结构第一:按功能分包 + 关注点分层(动手前先定骨架)
|
|
26
|
+
|
|
27
|
+
商业级前端的第一要务是结构。详见标准《前端架构与分层标准》(`frontend/01-standards/frontend-architecture-and-layering`),硬性底线:
|
|
28
|
+
|
|
29
|
+
- **按 feature 分包**(不按类型):`features/<x>/{api,components,hooks,stores,types,index.ts}`;跨 feature 只经对方 `index.ts` 引用,禁止深层 import;`utils/` 不是垃圾场,feature 相关的 helper 留在 feature 内。
|
|
30
|
+
- **分层**:展示组件(dumb,纯 props→UI) ↔ 容器组件(取数+编排) ↔ 数据访问层(typed API,唯一出口) ↔ 领域逻辑(纯函数/hook)。
|
|
31
|
+
- **数据访问隔离**:组件内**禁止裸 fetch/axios**,统一走 typed API 层;路径集中常量、与后端契约一致;每个视图处理 loading/error/empty 三态。
|
|
32
|
+
- **状态三类分治**:服务端数据用 React Query/SWR(别用 Redux 手动管),全局态用 Zustand/Redux/Pinia,UI 态用本地 useState/ref。
|
|
33
|
+
- **业务逻辑下沉**到纯函数/hook,JSX/模板只做声明式渲染,副作用在 hook 里并清理。
|
|
34
|
+
- **红线**:组件裸 fetch、业务逻辑写在 JSX、按类型分大筐、巨型组件、只画 happy path 不处理三态、emoji 当功能图标、硬编码颜色。
|
|
35
|
+
|
|
36
|
+
## Component Architecture
|
|
37
|
+
|
|
38
|
+
### Component Categories
|
|
39
|
+
1. **Primitives** (atoms): Button, Input, Badge, Avatar, Icon
|
|
40
|
+
- No business logic, only presentation
|
|
41
|
+
- Accept variants via props (size, color, disabled)
|
|
42
|
+
- Fully accessible (keyboard, ARIA)
|
|
43
|
+
|
|
44
|
+
2. **Composites** (molecules): SearchBar, FormField, Card, Modal
|
|
45
|
+
- Combine 2-3 primitives
|
|
46
|
+
- May have internal state (open/closed, input value)
|
|
47
|
+
- Still reusable across features
|
|
48
|
+
|
|
49
|
+
3. **Features** (organisms): LoginForm, DashboardHeader, UserList
|
|
50
|
+
- Business logic lives here
|
|
51
|
+
- Connect to API / state management
|
|
52
|
+
- Specific to one feature
|
|
53
|
+
|
|
54
|
+
4. **Pages** (templates): /dashboard, /settings, /auth/login
|
|
55
|
+
- Compose features into a full layout
|
|
56
|
+
- Handle routing, auth guards, data fetching
|
|
57
|
+
|
|
58
|
+
### Component File Structure
|
|
59
|
+
```
|
|
60
|
+
components/
|
|
61
|
+
Button/
|
|
62
|
+
Button.tsx # component
|
|
63
|
+
Button.test.tsx # unit tests
|
|
64
|
+
Button.stories.tsx # storybook (if used)
|
|
65
|
+
index.ts # re-export
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Props Design Rules
|
|
69
|
+
- Use interface, not inline types
|
|
70
|
+
- Required props first, optional last
|
|
71
|
+
- Sensible defaults for optional props
|
|
72
|
+
- Event handlers: `onX` naming (onClick, onChange, onSubmit)
|
|
73
|
+
- Children for composition, not deep prop drilling
|
|
74
|
+
- No more than 7 props (split into smaller components if needed)
|
|
75
|
+
|
|
76
|
+
## State Management
|
|
77
|
+
|
|
78
|
+
### Where State Lives
|
|
79
|
+
| State type | Storage | Example |
|
|
80
|
+
|---|---|---|
|
|
81
|
+
| UI state (local) | useState / ref | modal open, input value, accordion expanded |
|
|
82
|
+
| Form state | form library | field values, validation, dirty/touched |
|
|
83
|
+
| Server state | query cache (React Query / SWR) | API data, loading/error states |
|
|
84
|
+
| Global app state | context / store | auth user, theme, locale |
|
|
85
|
+
| URL state | search params / path | current page, filters, sort order |
|
|
86
|
+
|
|
87
|
+
### Rules
|
|
88
|
+
- Default to local state. Only lift when two+ components need it.
|
|
89
|
+
- Server state is NOT client state — use a cache library, not Redux/Zustand for API data.
|
|
90
|
+
- URL state for anything the user might bookmark or share.
|
|
91
|
+
- Never store derived values — compute them on render.
|
|
92
|
+
|
|
93
|
+
## API Client Pattern
|
|
94
|
+
|
|
95
|
+
### Centralized fetch wrapper
|
|
96
|
+
```typescript
|
|
97
|
+
// lib/api.ts
|
|
98
|
+
const API_BASE = process.env.NEXT_PUBLIC_API_URL;
|
|
99
|
+
|
|
100
|
+
export async function apiFetch<T>(path: string, options?: RequestInit): Promise<T> {
|
|
101
|
+
const res = await fetch(`${API_BASE}${path}`, {
|
|
102
|
+
headers: {
|
|
103
|
+
'Content-Type': 'application/json',
|
|
104
|
+
...getAuthHeader(),
|
|
105
|
+
...options?.headers,
|
|
106
|
+
},
|
|
107
|
+
...options,
|
|
108
|
+
});
|
|
109
|
+
if (!res.ok) {
|
|
110
|
+
const error = await res.json().catch(() => ({ message: res.statusText }));
|
|
111
|
+
throw new ApiError(res.status, error.message, error.details);
|
|
112
|
+
}
|
|
113
|
+
return res.json();
|
|
114
|
+
}
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### Per-resource API functions
|
|
118
|
+
```typescript
|
|
119
|
+
// api/users.ts
|
|
120
|
+
export const usersApi = {
|
|
121
|
+
list: (params?: ListParams) => apiFetch<User[]>('/users', { params }),
|
|
122
|
+
get: (id: string) => apiFetch<User>(`/users/${id}`),
|
|
123
|
+
create: (data: CreateUser) => apiFetch<User>('/users', { method: 'POST', body: JSON.stringify(data) }),
|
|
124
|
+
update: (id: string, data: Partial<User>) => apiFetch<User>(`/users/${id}`, { method: 'PATCH', body: JSON.stringify(data) }),
|
|
125
|
+
delete: (id: string) => apiFetch<void>(`/users/${id}`, { method: 'DELETE' }),
|
|
126
|
+
};
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Error Handling
|
|
130
|
+
|
|
131
|
+
### Error Boundary (global)
|
|
132
|
+
Catches rendering errors, shows fallback UI, reports to error tracking.
|
|
133
|
+
|
|
134
|
+
### API Error Handling (per-request)
|
|
135
|
+
```typescript
|
|
136
|
+
try {
|
|
137
|
+
const data = await usersApi.create(formData);
|
|
138
|
+
// success: redirect or show toast
|
|
139
|
+
} catch (error) {
|
|
140
|
+
if (error instanceof ApiError) {
|
|
141
|
+
if (error.status === 422) {
|
|
142
|
+
// validation: show field-level errors
|
|
143
|
+
setFieldErrors(error.details);
|
|
144
|
+
} else if (error.status === 409) {
|
|
145
|
+
// conflict: "email already exists"
|
|
146
|
+
showToast('error', error.message);
|
|
147
|
+
} else {
|
|
148
|
+
// other API error
|
|
149
|
+
showToast('error', 'Something went wrong');
|
|
150
|
+
}
|
|
151
|
+
} else {
|
|
152
|
+
// network error
|
|
153
|
+
showToast('error', 'Unable to connect to server');
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
### Loading States
|
|
159
|
+
- Skeleton screens for initial load (not spinners)
|
|
160
|
+
- Inline loading for mutations (button shows spinner, text changes to "Saving...")
|
|
161
|
+
- Optimistic updates for fast-feeling UI (update UI first, then sync with server)
|
|
162
|
+
|
|
163
|
+
### Empty States
|
|
164
|
+
Every list/table/grid must have:
|
|
165
|
+
- First-time empty: "No items yet. Create your first X."
|
|
166
|
+
- Filtered empty: "No results match your filters."
|
|
167
|
+
- Error empty: "Failed to load. [Retry button]"
|
|
168
|
+
|
|
169
|
+
## Performance Checklist
|
|
170
|
+
|
|
171
|
+
- [ ] Images: lazy loaded, responsive sizes, modern format (WebP/AVIF)
|
|
172
|
+
- [ ] Fonts: preloaded, `font-display: swap`, subset if possible
|
|
173
|
+
- [ ] JavaScript: code-split by route, tree-shaken, no unused dependencies
|
|
174
|
+
- [ ] CSS: purged unused styles, critical CSS inlined
|
|
175
|
+
- [ ] API calls: deduplicated (cache library), prefetched on hover
|
|
176
|
+
- [ ] Lists: virtualized if > 100 items (react-virtual / tanstack-virtual)
|
|
177
|
+
- [ ] Bundle size: < 200KB gzipped for initial load
|
|
178
|
+
- [ ] Core Web Vitals: LCP < 2.5s, FID < 100ms, CLS < 0.1
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: ecommerce
|
|
3
|
+
title: E-Commerce Product — Industry-Specific Knowledge
|
|
4
|
+
domain: experts
|
|
5
|
+
category: product-manager
|
|
6
|
+
difficulty: intermediate
|
|
7
|
+
tags: [architecture, considerations, e-commerce, e-commerce-specific, ecommerce, experts, metrics, patterns]
|
|
8
|
+
quality_score: 70
|
|
9
|
+
last_updated: 2026-06-15
|
|
10
|
+
---
|
|
11
|
+
# E-Commerce Product — Industry-Specific Knowledge
|
|
12
|
+
|
|
13
|
+
## Key Metrics
|
|
14
|
+
- **Conversion rate** — visitors → purchases, industry avg 2-3%
|
|
15
|
+
- **AOV** (Average Order Value) — optimize with upsells, bundles, free shipping threshold
|
|
16
|
+
- **Cart abandonment rate** — industry avg 70%, target < 55%
|
|
17
|
+
- **Repeat purchase rate** — % of customers who buy again within 90 days
|
|
18
|
+
- **ROAS** (Return on Ad Spend) — for paid acquisition channels
|
|
19
|
+
|
|
20
|
+
## E-Commerce-Specific PRD Considerations
|
|
21
|
+
- **Product catalog** — SKU management, variants (size/color), inventory tracking
|
|
22
|
+
- **Cart** — persistent across sessions, merge anonymous → logged-in
|
|
23
|
+
- **Checkout** — 1-page preferred, guest checkout required (don't force registration)
|
|
24
|
+
- **Payment** — Stripe/PayPal minimum, support Apple Pay/Google Pay for mobile
|
|
25
|
+
- **Shipping** — real-time rate calculation, multiple carriers, free shipping threshold
|
|
26
|
+
- **Tax** — per-jurisdiction calculation (use Stripe Tax / TaxJar)
|
|
27
|
+
- **Returns/refunds** — self-serve return requests, automated refund processing
|
|
28
|
+
- **Order tracking** — real-time status updates, email/SMS notifications
|
|
29
|
+
|
|
30
|
+
## E-Commerce Architecture Patterns
|
|
31
|
+
- **Cart service** — separate from order service, handles anonymous + authenticated
|
|
32
|
+
- **Inventory management** — optimistic locking to prevent overselling
|
|
33
|
+
- **Search** — faceted search with filters (price range, color, size, rating)
|
|
34
|
+
- **Image CDN** — responsive images, WebP/AVIF, lazy loading, zoom capability
|
|
35
|
+
- **Recommendation engine** — "customers also bought", "frequently bought together"
|
|
36
|
+
|
|
37
|
+
## E-Commerce UX Requirements
|
|
38
|
+
- **Product page** — hero image gallery, variant selector, price + savings, trust signals (reviews, return policy)
|
|
39
|
+
- **Add to cart** — no page navigation, drawer/modal confirmation, "continue shopping" option
|
|
40
|
+
- **Cart** — edit quantity, remove items, promo code input, shipping estimate
|
|
41
|
+
- **Checkout** — shipping → payment → review → confirm, progress indicator, save address for next time
|
|
42
|
+
- **Order confirmation** — order number, expected delivery, items summary, email confirmation
|
|
43
|
+
- **Mobile** — bottom sticky "Add to Cart" button, swipeable image gallery, one-tap payment
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: saas
|
|
3
|
+
title: SaaS Product — Industry-Specific Knowledge
|
|
4
|
+
domain: experts
|
|
5
|
+
category: product-manager
|
|
6
|
+
difficulty: intermediate
|
|
7
|
+
tags: [appear, architecture, common, considerations, experts, metrics, must, patterns]
|
|
8
|
+
quality_score: 70
|
|
9
|
+
last_updated: 2026-06-15
|
|
10
|
+
---
|
|
11
|
+
# SaaS Product — Industry-Specific Knowledge
|
|
12
|
+
|
|
13
|
+
## Key Metrics (must appear in PRD success metrics)
|
|
14
|
+
- **MRR** (Monthly Recurring Revenue) — the north star metric
|
|
15
|
+
- **Churn rate** — monthly: acceptable < 5%, good < 3%
|
|
16
|
+
- **CAC** (Customer Acquisition Cost) / **LTV** (Lifetime Value) — LTV/CAC > 3 is healthy
|
|
17
|
+
- **Activation rate** — % of signups who complete onboarding and reach "aha moment"
|
|
18
|
+
- **NPS** (Net Promoter Score) — measure after 30 days
|
|
19
|
+
|
|
20
|
+
## SaaS-Specific PRD Considerations
|
|
21
|
+
- **Multi-tenancy** — data isolation between customers is non-negotiable
|
|
22
|
+
- **Billing integration** — Stripe/Paddle, plan limits, usage metering, proration
|
|
23
|
+
- **Onboarding flow** — first-time user experience determines activation rate
|
|
24
|
+
- **Team management** — invite members, roles (admin/member/viewer), SSO
|
|
25
|
+
- **Self-serve vs sales-led** — affects pricing page, trial flow, upgrade prompts
|
|
26
|
+
|
|
27
|
+
## Common SaaS Architecture Patterns
|
|
28
|
+
- **Database per tenant** (expensive, max isolation) vs **shared DB with RLS** (efficient, careful isolation)
|
|
29
|
+
- **Feature flags** — launch to % of users, A/B test features
|
|
30
|
+
- **Webhook system** — customers need event notifications for integrations
|
|
31
|
+
- **API rate limiting** — per-plan rate limits (free: 100/min, pro: 1000/min)
|
|
32
|
+
- **Audit log** — enterprise customers require activity logging
|
|
33
|
+
|
|
34
|
+
## SaaS Pricing Page Requirements
|
|
35
|
+
- 2-4 tiers (free/starter/pro/enterprise)
|
|
36
|
+
- Annual vs monthly toggle with savings badge
|
|
37
|
+
- Feature comparison table below tier cards
|
|
38
|
+
- "Most popular" highlight on recommended tier
|
|
39
|
+
- Enterprise: "Contact sales" instead of price
|
|
40
|
+
- FAQ section addressing billing questions
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: methodology
|
|
3
|
+
title: Product Manager — Methodology
|
|
4
|
+
domain: experts
|
|
5
|
+
category: product-manager
|
|
6
|
+
difficulty: intermediate
|
|
7
|
+
tags: [experts, framework, methodology, writing]
|
|
8
|
+
quality_score: 70
|
|
9
|
+
last_updated: 2026-06-15
|
|
10
|
+
---
|
|
11
|
+
# Product Manager — Methodology
|
|
12
|
+
|
|
13
|
+
## PRD Writing Framework
|
|
14
|
+
|
|
15
|
+
### 1. Problem Statement First
|
|
16
|
+
|
|
17
|
+
Before any solution, define:
|
|
18
|
+
- Who has this problem? (persona, not demographics)
|
|
19
|
+
- How are they solving it today? (current workaround)
|
|
20
|
+
- Why is the current solution inadequate? (pain intensity 1-10)
|
|
21
|
+
- What evidence do we have? (user interviews, data, support tickets)
|
|
22
|
+
|
|
23
|
+
### 2. Requirements Prioritization
|
|
24
|
+
|
|
25
|
+
Use RICE scoring for feature prioritization:
|
|
26
|
+
|
|
27
|
+
| Factor | Definition | Scale |
|
|
28
|
+
|---|---|---|
|
|
29
|
+
| **R**each | How many users per quarter? | actual number |
|
|
30
|
+
| **I**mpact | How much does it move the needle? | 3=massive, 2=high, 1=medium, 0.5=low, 0.25=minimal |
|
|
31
|
+
| **C**onfidence | How sure are we? | 100%=high, 80%=medium, 50%=low |
|
|
32
|
+
| **E**ffort | Person-months to build | actual estimate |
|
|
33
|
+
|
|
34
|
+
RICE Score = (Reach × Impact × Confidence) / Effort
|
|
35
|
+
|
|
36
|
+
### 3. Acceptance Criteria Standard
|
|
37
|
+
|
|
38
|
+
Every AC must be:
|
|
39
|
+
- **Specific** — no ambiguous words ("fast", "nice", "easy")
|
|
40
|
+
- **Measurable** — has a number or binary check
|
|
41
|
+
- **Independent** — can be tested without other ACs
|
|
42
|
+
- **Format** — Given [precondition], When [action], Then [observable result]
|
|
43
|
+
|
|
44
|
+
Bad: "The page should load fast"
|
|
45
|
+
Good: "Given a user on 3G connection, when they open /dashboard, then First Contentful Paint < 2s"
|
|
46
|
+
|
|
47
|
+
Bad: "Login should be secure"
|
|
48
|
+
Good: "Given 5 failed login attempts from same IP in 10 minutes, when the 6th attempt is made, then return 429 and lock for 15 minutes"
|
|
49
|
+
|
|
50
|
+
### 4. Edge Cases Checklist
|
|
51
|
+
|
|
52
|
+
Every feature must consider:
|
|
53
|
+
- Empty state (no data yet)
|
|
54
|
+
- Error state (API failure, validation failure)
|
|
55
|
+
- Loading state (in-progress)
|
|
56
|
+
- Boundary values (0, 1, max, negative)
|
|
57
|
+
- Concurrent users (race conditions)
|
|
58
|
+
- Offline/slow network
|
|
59
|
+
- Permission denied
|
|
60
|
+
- Already deleted / stale data
|
|
61
|
+
|
|
62
|
+
### 5. Non-Functional Requirements Template
|
|
63
|
+
|
|
64
|
+
| Category | Requirement | Target | How to Measure |
|
|
65
|
+
|---|---|---|---|
|
|
66
|
+
| Performance | Page load time | FCP < 1.5s | Lighthouse CI |
|
|
67
|
+
| Performance | API response time | p95 < 200ms | Server metrics |
|
|
68
|
+
| Performance | Concurrent users | 1000 simultaneous | Load test |
|
|
69
|
+
| Security | Authentication | JWT with refresh | Manual audit |
|
|
70
|
+
| Security | Data encryption | TLS 1.3 + at-rest AES-256 | Security scan |
|
|
71
|
+
| Security | Input validation | All endpoints | Automated test |
|
|
72
|
+
| Accessibility | WCAG level | 2.1 AA | axe-core audit |
|
|
73
|
+
| Accessibility | Keyboard navigation | All interactive elements | Manual test |
|
|
74
|
+
| Reliability | Uptime | 99.9% | Monitoring |
|
|
75
|
+
| Reliability | Error rate | < 0.1% | Error tracking |
|
|
76
|
+
|
|
77
|
+
### 6. Success Metrics Framework
|
|
78
|
+
|
|
79
|
+
Use the HEART framework:
|
|
80
|
+
- **H**appiness — user satisfaction (NPS, CSAT)
|
|
81
|
+
- **E**ngagement — usage frequency, session duration
|
|
82
|
+
- **A**doption — new users, feature adoption rate
|
|
83
|
+
- **R**etention — day-1/7/30 retention
|
|
84
|
+
- **T**ask success — completion rate, time-to-complete
|
|
85
|
+
|
|
86
|
+
Each metric needs: baseline → target → measurement method → review cadence
|
|
87
|
+
|
|
88
|
+
### 7. Common PRD Mistakes to Avoid
|
|
89
|
+
|
|
90
|
+
1. **Solution before problem** — jumping to "we need a button" before defining the user need
|
|
91
|
+
2. **Vague acceptance criteria** — "should be intuitive" is not testable
|
|
92
|
+
3. **Missing edge cases** — happy path only, no error handling
|
|
93
|
+
4. **No success metrics** — shipping without knowing if it worked
|
|
94
|
+
5. **Scope creep built-in** — "and also it would be nice if..." without marking as out-of-scope
|
|
95
|
+
6. **Missing non-functional** — no performance targets, no security requirements
|
|
96
|
+
7. **No user flow** — feature list without showing how they connect
|
|
97
|
+
8. **Assuming implementation** — "use React" in a PRD (that's architecture, not product)
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: methodology
|
|
3
|
+
title: QA Lead — Quality Assurance Methodology
|
|
4
|
+
domain: experts
|
|
5
|
+
category: qa-lead
|
|
6
|
+
difficulty: intermediate
|
|
7
|
+
tags: [categories, experts, framework, gates, methodology, process, quality, strategy]
|
|
8
|
+
quality_score: 70
|
|
9
|
+
last_updated: 2026-06-15
|
|
10
|
+
---
|
|
11
|
+
# QA Lead — Quality Assurance Methodology
|
|
12
|
+
|
|
13
|
+
## Test Strategy Framework
|
|
14
|
+
|
|
15
|
+
### Test Pyramid
|
|
16
|
+
```
|
|
17
|
+
╱ E2E ╲ ~5% — critical user journeys only
|
|
18
|
+
╱ Integr. ╲ ~15% — API contracts, DB, external services
|
|
19
|
+
╱ Unit ╲ ~80% — business logic, pure functions
|
|
20
|
+
╱─────────────╲
|
|
21
|
+
```
|
|
22
|
+
- Unit tests: fast, isolated, test one behavior per test
|
|
23
|
+
- Integration tests: verify real interactions (DB, cache, APIs)
|
|
24
|
+
- E2E tests: cover the golden path + top 3 error scenarios per feature
|
|
25
|
+
- Never mock what you don't own; use fakes/containers instead
|
|
26
|
+
|
|
27
|
+
### Test Design Principles
|
|
28
|
+
- Arrange-Act-Assert (AAA) pattern for every test
|
|
29
|
+
- One assertion per test (logical assertion, not literally one `assert`)
|
|
30
|
+
- Test behavior, not implementation — don't test private methods
|
|
31
|
+
- Use descriptive test names: `should_reject_login_when_password_expired`
|
|
32
|
+
- Tests must be deterministic: no date/time, no random, no network
|
|
33
|
+
|
|
34
|
+
### Acceptance Criteria → Test Mapping
|
|
35
|
+
| AC Pattern | Test Type | Example |
|
|
36
|
+
|---|---|---|
|
|
37
|
+
| "User can..." | E2E + Integration | Login flow → API → DB |
|
|
38
|
+
| "System must..." | Integration + Unit | Rate limiting, validation |
|
|
39
|
+
| "When X, then Y" | Unit | Business rule logic |
|
|
40
|
+
| "Never/always..." | Unit + Property | Invariant tests |
|
|
41
|
+
| "Within N ms" | Performance | Load test, benchmark |
|
|
42
|
+
|
|
43
|
+
## Test Categories
|
|
44
|
+
|
|
45
|
+
### Functional Testing
|
|
46
|
+
- **Smoke tests**: top 5 critical paths pass? Deploy gate.
|
|
47
|
+
- **Regression tests**: previously broken scenarios stay fixed
|
|
48
|
+
- **Boundary tests**: min/max/empty/null/unicode/overflow
|
|
49
|
+
- **Negative tests**: invalid input, unauthorized access, rate limits
|
|
50
|
+
|
|
51
|
+
### Non-Functional Testing
|
|
52
|
+
- **Performance**: response time P50/P95/P99 under expected load
|
|
53
|
+
- **Load**: sustained traffic at 2x expected peak
|
|
54
|
+
- **Security**: OWASP Top 10 checklist, dependency audit
|
|
55
|
+
- **Accessibility**: WCAG 2.1 AA automated checks + manual screen reader
|
|
56
|
+
|
|
57
|
+
### Test Data Management
|
|
58
|
+
- Factory pattern for test data creation (not raw SQL inserts)
|
|
59
|
+
- Each test creates its own data; no shared fixtures between tests
|
|
60
|
+
- Use database transactions with rollback for test isolation
|
|
61
|
+
- Sensitive test data: use faker/fabricator, never real PII
|
|
62
|
+
|
|
63
|
+
## Quality Gates
|
|
64
|
+
|
|
65
|
+
### Pre-Merge Gate
|
|
66
|
+
- [ ] All unit tests pass
|
|
67
|
+
- [ ] All integration tests pass
|
|
68
|
+
- [ ] Code coverage ≥ 80% (new code ≥ 90%)
|
|
69
|
+
- [ ] No new linting errors
|
|
70
|
+
- [ ] Security scan clean (Snyk/Trivy/Dependabot)
|
|
71
|
+
- [ ] Type check passes
|
|
72
|
+
|
|
73
|
+
### Pre-Release Gate
|
|
74
|
+
- [ ] Smoke tests pass against staging
|
|
75
|
+
- [ ] E2E suite green (≤ 2% flaky tolerance)
|
|
76
|
+
- [ ] Performance benchmarks within baseline ± 10%
|
|
77
|
+
- [ ] Accessibility audit passes
|
|
78
|
+
- [ ] Manual QA sign-off on new features
|
|
79
|
+
- [ ] Rollback procedure verified
|
|
80
|
+
|
|
81
|
+
### Post-Release Verification
|
|
82
|
+
- [ ] Health checks green for 15 minutes
|
|
83
|
+
- [ ] Error rate ≤ baseline + 0.1%
|
|
84
|
+
- [ ] P95 latency ≤ baseline + 20%
|
|
85
|
+
- [ ] Key business metrics trending normally
|
|
86
|
+
- [ ] No new error patterns in log aggregation
|
|
87
|
+
|
|
88
|
+
## Bug Triage Process
|
|
89
|
+
|
|
90
|
+
### Severity Classification
|
|
91
|
+
| Severity | Impact | Response Time | Example |
|
|
92
|
+
|---|---|---|---|
|
|
93
|
+
| P0 - Critical | Service down, data loss | Immediate | Auth broken, DB corruption |
|
|
94
|
+
| P1 - High | Major feature broken | < 4 hours | Checkout fails for 20% users |
|
|
95
|
+
| P2 - Medium | Feature degraded | < 24 hours | Search returns stale results |
|
|
96
|
+
| P3 - Low | Minor issue | Next sprint | UI alignment off on Safari |
|
|
97
|
+
|
|
98
|
+
### Root Cause Analysis
|
|
99
|
+
1. Reproduce the bug with minimum steps
|
|
100
|
+
2. Identify the root cause (not just the symptom)
|
|
101
|
+
3. Write a failing test that catches the bug
|
|
102
|
+
4. Fix the code
|
|
103
|
+
5. Verify the test passes
|
|
104
|
+
6. Check for similar patterns elsewhere in codebase
|
|
105
|
+
|
|
106
|
+
## CI/CD Quality Integration
|
|
107
|
+
|
|
108
|
+
### Pipeline Quality Checks
|
|
109
|
+
```
|
|
110
|
+
commit → lint → type-check → unit → integration → build → deploy(staging) → smoke → deploy(prod) → verify
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Flaky Test Management
|
|
114
|
+
- Quarantine flaky tests (don't delete, don't block pipeline)
|
|
115
|
+
- Maximum 2% flaky rate; above this → halt new features until fixed
|
|
116
|
+
- Track flaky tests with retry count; >3 retries = quarantine
|
|
117
|
+
- Root-cause every flaky test: timing, ordering, shared state, network
|
|
118
|
+
|
|
119
|
+
### Test Coverage Policy
|
|
120
|
+
- Coverage is a floor, not a ceiling — high coverage ≠ good tests
|
|
121
|
+
- Focus coverage on: business logic, error handling, state transitions
|
|
122
|
+
- Exempt from coverage: generated code, configuration, type definitions
|
|
123
|
+
- Use mutation testing quarterly to verify test quality
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: test-strategy
|
|
3
|
+
title: QA Lead — Test Strategy
|
|
4
|
+
domain: experts
|
|
5
|
+
category: qa-lead
|
|
6
|
+
difficulty: intermediate
|
|
7
|
+
tags: [acceptance, cases, criteria, experts, from, integration, pyramid, standards]
|
|
8
|
+
quality_score: 70
|
|
9
|
+
last_updated: 2026-06-15
|
|
10
|
+
---
|
|
11
|
+
# QA Lead — Test Strategy
|
|
12
|
+
|
|
13
|
+
## 测试分层底线(按架构分层去测)
|
|
14
|
+
|
|
15
|
+
详见标准《测试策略与分层规范》(`testing/01-standards/test-strategy-and-layering`)。硬性底线:
|
|
16
|
+
|
|
17
|
+
- **金字塔**:大量单元(领域逻辑/纯函数,无 IO)+ 适量集成(服务+仓储+真 DB)+ 少量 E2E(关键业务流)。倒金字塔(一堆 e2e、几乎无单测)不合格。
|
|
18
|
+
- **各层测各层**:领域层测不变量/状态机;服务层 mock 依赖测用例编排与错误路径;repository 用真 DB 集成测;接口层测状态码/校验/错误信封/鉴权;关键流走 E2E。
|
|
19
|
+
- **写法**:AAA、一测一行为、覆盖正常+边界+错误、测行为不测私有实现、测试独立可并行无 flaky、外部依赖用替身。
|
|
20
|
+
- **CI**:每次 PR 跑 lint+单元+集成,失败阻断合并;关键路径覆盖达阈值;flaky 必修。
|
|
21
|
+
|
|
22
|
+
## Test Pyramid
|
|
23
|
+
|
|
24
|
+
```
|
|
25
|
+
╱ E2E Tests ╲ (few, slow, expensive)
|
|
26
|
+
╱─────────────╲
|
|
27
|
+
╱ Integration ╲ (moderate count)
|
|
28
|
+
╱─────────────────╲
|
|
29
|
+
╱ Unit Tests ╲ (many, fast, cheap)
|
|
30
|
+
╱─────────────────────╲
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Target ratios: 70% unit / 20% integration / 10% E2E
|
|
34
|
+
|
|
35
|
+
## From Acceptance Criteria to Test Cases
|
|
36
|
+
|
|
37
|
+
Each PRD acceptance criteria generates multiple test cases:
|
|
38
|
+
|
|
39
|
+
**AC**: Given a user on the login page, when they enter valid credentials, then they are redirected to /dashboard
|
|
40
|
+
|
|
41
|
+
**Test Cases**:
|
|
42
|
+
1. ✓ Valid email + correct password → redirect to /dashboard
|
|
43
|
+
2. ✓ Valid email + wrong password → show error "Invalid credentials"
|
|
44
|
+
3. ✓ Non-existent email → show same generic error (no user enumeration)
|
|
45
|
+
4. ✓ Empty email field → show validation "Email is required"
|
|
46
|
+
5. ✓ Invalid email format → show validation "Enter a valid email"
|
|
47
|
+
6. ✓ Empty password → show validation "Password is required"
|
|
48
|
+
7. ✓ 5 failed attempts → show "Account locked, try again in 15 minutes"
|
|
49
|
+
8. ✓ SQL injection in email field → sanitized, returns validation error
|
|
50
|
+
9. ✓ XSS in email field → sanitized, no script execution
|
|
51
|
+
10. ✓ Redirect to originally requested page after login (not always /dashboard)
|
|
52
|
+
|
|
53
|
+
## Unit Test Standards
|
|
54
|
+
|
|
55
|
+
### Naming Convention
|
|
56
|
+
```
|
|
57
|
+
test_[unit]_[scenario]_[expected_result]
|
|
58
|
+
|
|
59
|
+
test_login_valid_credentials_returns_jwt
|
|
60
|
+
test_login_wrong_password_returns_401
|
|
61
|
+
test_login_locked_account_returns_429
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Test Structure (Arrange-Act-Assert)
|
|
65
|
+
```
|
|
66
|
+
// Arrange: set up test data and dependencies
|
|
67
|
+
let user = create_test_user("test@example.com", "password123");
|
|
68
|
+
let req = LoginRequest { email: "test@example.com", password: "password123" };
|
|
69
|
+
|
|
70
|
+
// Act: call the function under test
|
|
71
|
+
let result = auth_service.login(req).await;
|
|
72
|
+
|
|
73
|
+
// Assert: verify the outcome
|
|
74
|
+
assert!(result.is_ok());
|
|
75
|
+
assert!(!result.unwrap().token.is_empty());
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### What to Test
|
|
79
|
+
- Happy path (normal operation)
|
|
80
|
+
- Boundary values (0, 1, max, max+1)
|
|
81
|
+
- Error paths (invalid input, missing data, network failure)
|
|
82
|
+
- Edge cases (empty collections, null/None, concurrent access)
|
|
83
|
+
|
|
84
|
+
### What NOT to Test
|
|
85
|
+
- Third-party library internals
|
|
86
|
+
- Private methods directly (test through public API)
|
|
87
|
+
- Configuration / constants
|
|
88
|
+
- Framework boilerplate
|
|
89
|
+
|
|
90
|
+
## Integration Test Standards
|
|
91
|
+
|
|
92
|
+
### API endpoint tests must verify:
|
|
93
|
+
1. Correct status code
|
|
94
|
+
2. Response body structure (schema validation)
|
|
95
|
+
3. Database state after mutation
|
|
96
|
+
4. Authentication/authorization enforcement
|
|
97
|
+
5. Error responses for invalid input
|
|
98
|
+
|
|
99
|
+
### Database test isolation:
|
|
100
|
+
- Each test uses a transaction that rolls back after
|
|
101
|
+
- OR each test uses a fresh test database
|
|
102
|
+
- Never share state between tests
|
|
103
|
+
|
|
104
|
+
## E2E Test Standards
|
|
105
|
+
|
|
106
|
+
### What to cover:
|
|
107
|
+
- Complete user flows (signup → onboard → core action → logout)
|
|
108
|
+
- Cross-page navigation
|
|
109
|
+
- Form submissions with validation
|
|
110
|
+
- Real API calls (not mocked)
|
|
111
|
+
|
|
112
|
+
### What NOT to E2E test:
|
|
113
|
+
- Every field validation (unit test those)
|
|
114
|
+
- Error edge cases (integration test those)
|
|
115
|
+
- Visual appearance (use visual regression tools separately)
|
|
116
|
+
|
|
117
|
+
## Pre-Release Checklist
|
|
118
|
+
|
|
119
|
+
- [ ] All unit tests pass
|
|
120
|
+
- [ ] All integration tests pass
|
|
121
|
+
- [ ] E2E smoke tests pass
|
|
122
|
+
- [ ] No console errors in browser
|
|
123
|
+
- [ ] Performance budget met (Lighthouse ≥ 90)
|
|
124
|
+
- [ ] Accessibility audit passes (axe-core, 0 violations)
|
|
125
|
+
- [ ] Security headers present
|
|
126
|
+
- [ ] Error tracking connected and receiving events
|
|
127
|
+
- [ ] Monitoring dashboards show expected metrics
|
|
128
|
+
- [ ] Rollback procedure documented and tested
|