universal-dev-standards 5.16.0 → 6.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/bin/uds.js +13 -135
- package/bundled/ai/standards/acceptance-criteria-traceability.ai.yaml +13 -4
- package/bundled/ai/standards/accessibility-standards.ai.yaml +1 -1
- package/bundled/ai/standards/ai-response-navigation.ai.yaml +15 -2
- package/bundled/ai/standards/api-design-standards.ai.yaml +27 -4
- package/bundled/ai/standards/behavior-snapshot.ai.yaml +86 -9
- package/bundled/ai/standards/checkin-standards.ai.yaml +2 -2
- package/bundled/ai/standards/code-review.ai.yaml +2 -2
- package/bundled/ai/standards/context-aware-loading.ai.yaml +3 -3
- package/bundled/ai/standards/data-migration-testing.ai.yaml +79 -3
- package/bundled/ai/standards/deprecation-standards.ai.yaml +10 -2
- package/bundled/ai/standards/developer-memory.ai.yaml +4 -3
- package/bundled/ai/standards/flow-based-testing.ai.yaml +2 -2
- package/bundled/ai/standards/forward-derivation-standards.ai.yaml +26 -2
- package/bundled/ai/standards/full-coverage-testing.ai.yaml +34 -2
- package/bundled/ai/standards/git-worktree.ai.yaml +3 -3
- package/bundled/ai/standards/logging.ai.yaml +97 -3
- package/bundled/ai/standards/mock-boundary.ai.yaml +48 -2
- package/bundled/ai/standards/model-provenance.ai.yaml +297 -0
- package/bundled/ai/standards/model-selection.ai.yaml +11 -2
- package/bundled/ai/standards/observability-standards.ai.yaml +10 -0
- package/bundled/ai/standards/performance-standards.ai.yaml +46 -1
- package/bundled/ai/standards/pii-classification.ai.yaml +15 -1
- package/bundled/ai/standards/pipeline-security-gates.ai.yaml +10 -0
- package/bundled/ai/standards/privacy-standards.ai.yaml +2 -2
- package/bundled/ai/standards/project-context-memory.ai.yaml +2 -2
- package/bundled/ai/standards/refactoring-standards.ai.yaml +68 -3
- package/bundled/ai/standards/resource-cost-boundary.ai.yaml +279 -0
- package/bundled/ai/standards/reverse-engineering-standards.ai.yaml +55 -2
- package/bundled/ai/standards/security-testing.ai.yaml +13 -2
- package/bundled/ai/standards/skill-standard-alignment-check.ai.yaml +37 -2
- package/bundled/ai/standards/user-journey-testing.ai.yaml +107 -0
- package/bundled/ai/standards/verification-oracle.ai.yaml +278 -0
- package/bundled/ai/standards/versioning.ai.yaml +32 -38
- package/bundled/core/acceptance-criteria-traceability.md +15 -5
- package/bundled/core/accessibility-standards.md +8 -4
- package/bundled/core/ai-friendly-architecture.md +1 -1
- package/bundled/core/ai-response-navigation.md +31 -3
- package/bundled/core/anti-sycophancy-prompting.md +1 -1
- package/bundled/core/api-design-standards.md +92 -7
- package/bundled/core/audit-trail.md +119 -0
- package/bundled/core/behavior-snapshot.md +94 -7
- package/bundled/core/browser-compatibility-standards.md +15 -2
- package/bundled/core/checkin-standards.md +9 -2
- package/bundled/core/code-review-checklist.md +10 -2
- package/bundled/core/container-image-standards.md +97 -0
- package/bundled/core/context-aware-loading.md +2 -2
- package/bundled/core/cost-budget-test.md +1 -1
- package/bundled/core/cross-flow-regression.md +3 -2
- package/bundled/core/data-contract.md +104 -0
- package/bundled/core/data-migration-testing.md +90 -0
- package/bundled/core/data-pipeline.md +113 -0
- package/bundled/core/deprecation-standards.md +16 -2
- package/bundled/core/developer-memory.md +13 -8
- package/bundled/core/documentation-writing-standards.md +1 -1
- package/bundled/core/error-code-standards.md +4 -3
- package/bundled/core/flaky-test-management.md +1 -1
- package/bundled/core/flow-based-testing.md +3 -3
- package/bundled/core/forward-derivation-standards.md +33 -5
- package/bundled/core/full-coverage-testing.md +72 -0
- package/bundled/core/git-worktree.md +4 -4
- package/bundled/core/guides/performance-guide.md +1 -1
- package/bundled/core/guides/security-guide.md +1 -1
- package/bundled/core/health-check-standards.md +2 -2
- package/bundled/core/iac-design-principles.md +97 -0
- package/bundled/core/incident-response.md +119 -0
- package/bundled/core/license-compliance.md +2 -0
- package/bundled/core/logging-standards.md +78 -2
- package/bundled/core/mock-boundary.md +54 -2
- package/bundled/core/model-provenance.md +181 -0
- package/bundled/core/model-selection.md +27 -2
- package/bundled/core/packaging-standards.md +1 -0
- package/bundled/core/performance-standards.md +96 -2
- package/bundled/core/pii-classification.md +148 -0
- package/bundled/core/pipeline-security-gates.md +22 -2
- package/bundled/core/postmortem-standards.md +2 -0
- package/bundled/core/prd-standards.md +91 -0
- package/bundled/core/privacy-standards.md +14 -3
- package/bundled/core/product-metrics-standards.md +100 -0
- package/bundled/core/project-context-memory.md +8 -2
- package/bundled/core/prompt-regression.md +1 -1
- package/bundled/core/refactoring-standards.md +44 -3
- package/bundled/core/replay-test.md +1 -1
- package/bundled/core/resource-cost-boundary.md +180 -0
- package/bundled/core/reverse-engineering-standards.md +66 -2
- package/bundled/core/runbook.md +113 -0
- package/bundled/core/schema-evolution.md +105 -0
- package/bundled/core/secret-management-standards.md +110 -0
- package/bundled/core/security-testing.md +26 -2
- package/bundled/core/self-review-protocol.md +2 -2
- package/bundled/core/skill-standard-alignment-check.md +53 -0
- package/bundled/core/slo-sli.md +109 -0
- package/bundled/core/smoke-test.md +1 -1
- package/bundled/core/spec-driven-development.md +21 -3
- package/bundled/core/tech-debt-standards.md +1 -1
- package/bundled/core/test-data-standards.md +2 -2
- package/bundled/core/user-journey-testing.md +102 -0
- package/bundled/core/user-story-mapping.md +96 -0
- package/bundled/core/verification-oracle.md +167 -0
- package/bundled/core/versioning.md +133 -109
- package/bundled/locales/COVERAGE.md +84 -73
- package/bundled/locales/zh-CN/CHANGELOG.md +81 -6
- package/bundled/locales/zh-CN/CLAUDE.md +1 -1
- package/bundled/locales/zh-CN/README.md +22 -9
- package/bundled/locales/zh-CN/SECURITY.md +1 -1
- package/bundled/locales/zh-CN/adoption/DAILY-WORKFLOW-GUIDE.md +2 -2
- package/bundled/locales/zh-CN/core/acceptance-criteria-traceability.md +4 -6
- package/bundled/locales/zh-CN/core/accessibility-standards.md +1 -1
- package/bundled/locales/zh-CN/core/adversarial-test.md +226 -0
- package/bundled/locales/zh-CN/core/agent-behavior-discipline.md +187 -0
- package/bundled/locales/zh-CN/core/ai-response-navigation.md +32 -6
- package/bundled/locales/zh-CN/core/anti-sycophancy-prompting.md +1 -1
- package/bundled/locales/zh-CN/core/api-design-standards.md +1 -1
- package/bundled/locales/zh-CN/core/behavior-snapshot.md +335 -0
- package/bundled/locales/zh-CN/core/browser-compatibility-standards.md +229 -0
- package/bundled/locales/zh-CN/core/cd-deployment-strategies.md +135 -0
- package/bundled/locales/zh-CN/core/chaos-injection-tests.md +130 -0
- package/bundled/locales/zh-CN/core/checkin-standards.md +1 -1
- package/bundled/locales/zh-CN/core/code-review-checklist.md +1 -1
- package/bundled/locales/zh-CN/core/container-security.md +535 -0
- package/bundled/locales/zh-CN/core/context-aware-loading.md +1 -1
- package/bundled/locales/zh-CN/core/contract-testing-standards.md +191 -0
- package/bundled/locales/zh-CN/core/cost-budget-test.md +86 -0
- package/bundled/locales/zh-CN/core/cross-flow-regression.md +199 -0
- package/bundled/locales/zh-CN/core/data-migration-testing.md +217 -0
- package/bundled/locales/zh-CN/core/deployment-standards.md +328 -9
- package/bundled/locales/zh-CN/core/deprecation-standards.md +1 -1
- package/bundled/locales/zh-CN/core/developer-memory.md +2 -2
- package/bundled/locales/zh-CN/core/disaster-recovery-drill.md +87 -0
- package/bundled/locales/zh-CN/core/documentation-structure.md +1 -1
- package/bundled/locales/zh-CN/core/documentation-writing-standards.md +1 -1
- package/bundled/locales/zh-CN/core/error-code-standards.md +2 -2
- package/bundled/locales/zh-CN/core/feature-manifest-standard.md +222 -0
- package/bundled/locales/zh-CN/core/flaky-test-management.md +87 -0
- package/bundled/locales/zh-CN/core/flow-based-testing.md +284 -0
- package/bundled/locales/zh-CN/core/forward-derivation-standards.md +3 -4
- package/bundled/locales/zh-CN/core/full-coverage-testing.md +197 -0
- package/bundled/locales/zh-CN/core/git-worktree.md +1 -1
- package/bundled/locales/zh-CN/core/governance-layer.md +160 -0
- package/bundled/locales/zh-CN/core/guides/performance-guide.md +515 -0
- package/bundled/locales/zh-CN/core/guides/security-guide.md +494 -0
- package/bundled/locales/zh-CN/core/knowledge-graph-memory.md +128 -0
- package/bundled/locales/zh-CN/core/license-compliance.md +129 -0
- package/bundled/locales/zh-CN/core/llm-output-validation.md +192 -0
- package/bundled/locales/zh-CN/core/logging-standards.md +130 -8
- package/bundled/locales/zh-CN/core/mock-boundary.md +109 -0
- package/bundled/locales/zh-CN/core/model-selection.md +28 -5
- package/bundled/locales/zh-CN/core/mutation-testing.md +106 -0
- package/bundled/locales/zh-CN/core/no-cicd-deployment.md +219 -0
- package/bundled/locales/zh-CN/core/packaging-standards.md +76 -5
- package/bundled/locales/zh-CN/core/pipeline-security-gates.md +126 -0
- package/bundled/locales/zh-CN/core/policy-as-code-testing.md +203 -0
- package/bundled/locales/zh-CN/core/privacy-standards.md +1 -1
- package/bundled/locales/zh-CN/core/project-context-memory.md +1 -1
- package/bundled/locales/zh-CN/core/prompt-regression.md +88 -0
- package/bundled/locales/zh-CN/core/property-based-testing.md +87 -0
- package/bundled/locales/zh-CN/core/release-quality-manifest.md +207 -0
- package/bundled/locales/zh-CN/core/release-readiness-gate.md +193 -0
- package/bundled/locales/zh-CN/core/replay-test.md +102 -0
- package/bundled/locales/zh-CN/core/reverse-engineering-standards.md +46 -1
- package/bundled/locales/zh-CN/core/rollback-standards.md +120 -0
- package/bundled/locales/zh-CN/core/sast-advanced.md +309 -0
- package/bundled/locales/zh-CN/core/secure-op.md +328 -0
- package/bundled/locales/zh-CN/core/security-testing.md +96 -0
- package/bundled/locales/zh-CN/core/self-review-protocol.md +167 -0
- package/bundled/locales/zh-CN/core/server-ops-security.md +507 -0
- package/bundled/locales/zh-CN/core/smoke-test.md +79 -0
- package/bundled/locales/zh-CN/core/spec-driven-development.md +55 -5
- package/bundled/locales/zh-CN/core/supply-chain-attestation.md +131 -0
- package/bundled/locales/zh-CN/core/versioning.md +1 -1
- package/bundled/locales/zh-CN/docs/CHEATSHEET.md +31 -6
- package/bundled/locales/zh-CN/docs/FEATURE-REFERENCE.md +61 -34
- package/bundled/locales/zh-CN/docs/MIGRATION-v6.md +88 -0
- package/bundled/locales/zh-CN/docs/USAGE-MODES-COMPARISON.md +2 -2
- package/bundled/locales/zh-CN/docs/USER-MANUAL.md +14 -14
- package/bundled/locales/zh-CN/docs/specs/system/memory-adoption-strategy.md +105 -0
- package/bundled/locales/zh-CN/docs/user/FAQ.md +132 -0
- package/bundled/locales/zh-CN/docs/user/GETTING-STARTED.md +144 -0
- package/bundled/locales/zh-CN/docs/user/GLOSSARY.md +178 -0
- package/bundled/locales/zh-CN/docs/user/README.md +70 -0
- package/bundled/locales/zh-CN/docs/user/TROUBLESHOOTING.md +190 -0
- package/bundled/locales/zh-CN/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +1 -1
- package/bundled/locales/zh-CN/integrations/github-copilot/README.md +1 -1
- package/bundled/locales/zh-CN/integrations/github-copilot/skills-mapping.md +3 -3
- package/bundled/locales/zh-CN/integrations/opencode/skills-mapping.md +3 -3
- package/bundled/locales/zh-CN/methodologies/guides/sdd-guide.md +836 -0
- package/bundled/locales/zh-CN/options/changelog/auto-generated.md +166 -0
- package/bundled/locales/zh-CN/options/changelog/keep-a-changelog.md +140 -0
- package/bundled/locales/zh-CN/options/code-review/automated-review.md +214 -0
- package/bundled/locales/zh-CN/options/code-review/pair-programming.md +166 -0
- package/bundled/locales/zh-CN/options/code-review/pr-review.md +167 -0
- package/bundled/locales/zh-CN/options/documentation/api-docs.md +191 -0
- package/bundled/locales/zh-CN/options/documentation/markdown-docs.md +150 -0
- package/bundled/locales/zh-CN/options/documentation/wiki-style.md +131 -0
- package/bundled/locales/zh-CN/options/project-structure/kotlin.md +144 -0
- package/bundled/locales/zh-CN/options/project-structure/php.md +168 -0
- package/bundled/locales/zh-CN/options/project-structure/ruby.md +156 -0
- package/bundled/locales/zh-CN/options/project-structure/rust.md +136 -0
- package/bundled/locales/zh-CN/options/project-structure/swift.md +165 -0
- package/bundled/locales/zh-CN/options/testing/contract-testing.md +237 -0
- package/bundled/locales/zh-CN/options/testing/industry-pyramid.md +200 -0
- package/bundled/locales/zh-CN/options/testing/istqb-framework.md +144 -0
- package/bundled/locales/zh-CN/options/testing/performance-testing.md +251 -0
- package/bundled/locales/zh-CN/options/testing/security-testing.md +192 -0
- package/bundled/locales/zh-CN/skills/README.md +89 -126
- package/bundled/locales/zh-CN/skills/ac-coverage/SKILL.md +5 -7
- package/bundled/locales/zh-CN/skills/adr-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/agents/code-architect.md +263 -0
- package/bundled/locales/zh-CN/skills/agents/doc-writer.md +410 -0
- package/bundled/locales/zh-CN/skills/agents/reviewer.md +357 -0
- package/bundled/locales/zh-CN/skills/agents/spec-analyst.md +410 -0
- package/bundled/locales/zh-CN/skills/agents/test-specialist.md +368 -0
- package/bundled/locales/zh-CN/skills/ai-collaboration-standards/SKILL.md +2 -2
- package/bundled/locales/zh-CN/skills/ai-friendly-architecture/SKILL.md +2 -2
- package/bundled/locales/zh-CN/skills/ai-instruction-standards/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
- package/bundled/locales/zh-CN/skills/atdd-assistant/atdd-workflow.md +3 -4
- package/bundled/locales/zh-CN/skills/audit-assistant/SKILL.md +2 -2
- package/bundled/locales/zh-CN/skills/bdd-assistant/guide.md +1 -2
- package/bundled/locales/zh-CN/skills/brainstorm-assistant/SKILL.md +109 -13
- package/bundled/locales/zh-CN/skills/brainstorm-assistant/guide.md +30 -8
- package/bundled/locales/zh-CN/skills/checkin-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/ci-cd-assistant/SKILL.md +50 -0
- package/bundled/locales/zh-CN/skills/code-review-assistant/SKILL.md +5 -5
- package/bundled/locales/zh-CN/skills/commands/ac-coverage.md +1 -1
- package/bundled/locales/zh-CN/skills/commands/atdd.md +3 -3
- package/bundled/locales/zh-CN/skills/commands/bdd.md +2 -2
- package/bundled/locales/zh-CN/skills/commands/brainstorm.md +26 -17
- package/bundled/locales/zh-CN/skills/commands/{review.md → code-review.md} +4 -4
- package/bundled/locales/zh-CN/skills/commands/derive-all.md +1 -1
- package/bundled/locales/zh-CN/skills/commands/derive-atdd.md +1 -1
- package/bundled/locales/zh-CN/skills/commands/derive-bdd.md +2 -3
- package/bundled/locales/zh-CN/skills/commands/derive-tdd.md +1 -1
- package/bundled/locales/zh-CN/skills/commands/derive.md +1 -1
- package/bundled/locales/zh-CN/skills/commands/dev-workflow.md +2 -2
- package/bundled/locales/zh-CN/skills/commands/methodology.md +4 -4
- package/bundled/locales/zh-CN/skills/commands/pr.md +1 -1
- package/bundled/locales/zh-CN/skills/commands/tdd.md +1 -1
- package/bundled/locales/zh-CN/skills/commit-standards/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/contract-test-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/dev-methodology/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/dev-methodology/create-methodology.md +456 -0
- package/bundled/locales/zh-CN/skills/dev-methodology/guide.md +6 -6
- package/bundled/locales/zh-CN/skills/dev-methodology/runtime.md +296 -0
- package/bundled/locales/zh-CN/skills/dev-workflow-guide/SKILL.md +5 -5
- package/bundled/locales/zh-CN/skills/docs-generator/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/e2e-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/incident-response-assistant/SKILL.md +2 -2
- package/bundled/locales/zh-CN/skills/journey-test-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/logging-guide/SKILL.md +146 -142
- package/bundled/locales/zh-CN/skills/migration-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/observability-assistant/guide.md +1 -1
- package/bundled/locales/zh-CN/skills/pr-automation-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/project-discovery/guide.md +2 -2
- package/bundled/locales/zh-CN/skills/reverse-engineer/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/runbook-assistant/guide.md +1 -1
- package/bundled/locales/zh-CN/skills/security-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/skill-builder/SKILL.md +3 -3
- package/bundled/locales/zh-CN/skills/slo-assistant/guide.md +1 -1
- package/bundled/locales/zh-CN/skills/spec-derivation/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/spec-derivation/guide.md +8 -9
- package/bundled/locales/zh-CN/skills/spec-driven-dev/SKILL.md +2 -2
- package/bundled/locales/zh-CN/skills/sweep/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/tdd-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-CN/skills/testing-guide/SKILL.md +2 -2
- package/bundled/locales/zh-CN/skills/testing-guide/testing-theory.md +2298 -0
- package/bundled/locales/zh-CN/skills/workflows/README.md +451 -0
- package/bundled/locales/zh-TW/CHANGELOG.md +81 -6
- package/bundled/locales/zh-TW/CLAUDE.md +1 -1
- package/bundled/locales/zh-TW/MAINTENANCE.md +25 -2
- package/bundled/locales/zh-TW/README.md +22 -9
- package/bundled/locales/zh-TW/SECURITY.md +1 -1
- package/bundled/locales/zh-TW/adoption/DAILY-WORKFLOW-GUIDE.md +2 -2
- package/bundled/locales/zh-TW/ai/standards/versioning.ai.yaml +8 -48
- package/bundled/locales/zh-TW/core/acceptance-criteria-traceability.md +4 -6
- package/bundled/locales/zh-TW/core/accessibility-standards.md +1 -1
- package/bundled/locales/zh-TW/core/adversarial-test.md +226 -0
- package/bundled/locales/zh-TW/core/agent-behavior-discipline.md +187 -0
- package/bundled/locales/zh-TW/core/ai-response-navigation.md +32 -6
- package/bundled/locales/zh-TW/core/anti-sycophancy-prompting.md +1 -1
- package/bundled/locales/zh-TW/core/api-design-standards.md +91 -9
- package/bundled/locales/zh-TW/core/audit-trail.md +110 -0
- package/bundled/locales/zh-TW/core/behavior-snapshot.md +335 -0
- package/bundled/locales/zh-TW/core/browser-compatibility-standards.md +1 -0
- package/bundled/locales/zh-TW/core/cd-deployment-strategies.md +135 -0
- package/bundled/locales/zh-TW/core/chaos-injection-tests.md +130 -0
- package/bundled/locales/zh-TW/core/checkin-standards.md +1 -1
- package/bundled/locales/zh-TW/core/code-review-checklist.md +1 -1
- package/bundled/locales/zh-TW/core/container-image-standards.md +93 -0
- package/bundled/locales/zh-TW/core/container-security.md +535 -0
- package/bundled/locales/zh-TW/core/cost-budget-test.md +86 -0
- package/bundled/locales/zh-TW/core/cross-flow-regression.md +1 -0
- package/bundled/locales/zh-TW/core/data-contract.md +101 -0
- package/bundled/locales/zh-TW/core/data-migration-testing.md +217 -0
- package/bundled/locales/zh-TW/core/data-pipeline.md +105 -0
- package/bundled/locales/zh-TW/core/deployment-standards.md +363 -25
- package/bundled/locales/zh-TW/core/deprecation-standards.md +17 -4
- package/bundled/locales/zh-TW/core/developer-memory.md +2 -2
- package/bundled/locales/zh-TW/core/disaster-recovery-drill.md +87 -0
- package/bundled/locales/zh-TW/core/documentation-writing-standards.md +1 -1
- package/bundled/locales/zh-TW/core/error-code-standards.md +2 -2
- package/bundled/locales/zh-TW/core/feature-manifest-standard.md +222 -0
- package/bundled/locales/zh-TW/core/flaky-test-management.md +87 -0
- package/bundled/locales/zh-TW/core/flow-based-testing.md +284 -0
- package/bundled/locales/zh-TW/core/forward-derivation-standards.md +3 -4
- package/bundled/locales/zh-TW/core/full-coverage-testing.md +250 -0
- package/bundled/locales/zh-TW/core/git-worktree.md +1 -1
- package/bundled/locales/zh-TW/core/guides/performance-guide.md +515 -0
- package/bundled/locales/zh-TW/core/guides/security-guide.md +494 -0
- package/bundled/locales/zh-TW/core/iac-design-principles.md +90 -0
- package/bundled/locales/zh-TW/core/incident-response.md +111 -0
- package/bundled/locales/zh-TW/core/license-compliance.md +129 -0
- package/bundled/locales/zh-TW/core/llm-output-validation.md +192 -0
- package/bundled/locales/zh-TW/core/logging-standards.md +208 -4
- package/bundled/locales/zh-TW/core/mock-boundary.md +161 -0
- package/bundled/locales/zh-TW/core/model-provenance.md +173 -0
- package/bundled/locales/zh-TW/core/model-selection.md +28 -5
- package/bundled/locales/zh-TW/core/mutation-testing.md +106 -0
- package/bundled/locales/zh-TW/core/no-cicd-deployment.md +219 -0
- package/bundled/locales/zh-TW/core/packaging-standards.md +76 -5
- package/bundled/locales/zh-TW/core/performance-standards.md +84 -5
- package/bundled/locales/zh-TW/core/pii-classification.md +102 -0
- package/bundled/locales/zh-TW/core/pipeline-security-gates.md +126 -0
- package/bundled/locales/zh-TW/core/policy-as-code-testing.md +203 -0
- package/bundled/locales/zh-TW/core/prd-standards.md +88 -0
- package/bundled/locales/zh-TW/core/privacy-standards.md +1 -1
- package/bundled/locales/zh-TW/core/product-metrics-standards.md +96 -0
- package/bundled/locales/zh-TW/core/project-context-memory.md +1 -1
- package/bundled/locales/zh-TW/core/prompt-regression.md +88 -0
- package/bundled/locales/zh-TW/core/property-based-testing.md +87 -0
- package/bundled/locales/zh-TW/core/refactoring-standards.md +43 -6
- package/bundled/locales/zh-TW/core/release-quality-manifest.md +207 -0
- package/bundled/locales/zh-TW/core/replay-test.md +102 -0
- package/bundled/locales/zh-TW/core/resource-cost-boundary.md +175 -0
- package/bundled/locales/zh-TW/core/reverse-engineering-standards.md +64 -5
- package/bundled/locales/zh-TW/core/rollback-standards.md +120 -0
- package/bundled/locales/zh-TW/core/runbook.md +110 -0
- package/bundled/locales/zh-TW/core/sast-advanced.md +309 -0
- package/bundled/locales/zh-TW/core/schema-evolution.md +98 -0
- package/bundled/locales/zh-TW/core/secret-management-standards.md +101 -0
- package/bundled/locales/zh-TW/core/secure-op.md +328 -0
- package/bundled/locales/zh-TW/core/security-testing.md +96 -0
- package/bundled/locales/zh-TW/core/self-review-protocol.md +2 -2
- package/bundled/locales/zh-TW/core/server-ops-security.md +507 -0
- package/bundled/locales/zh-TW/core/slo-sli.md +108 -0
- package/bundled/locales/zh-TW/core/smoke-test.md +79 -0
- package/bundled/locales/zh-TW/core/spec-driven-development.md +39 -13
- package/bundled/locales/zh-TW/core/supply-chain-attestation.md +131 -0
- package/bundled/locales/zh-TW/core/user-journey-testing.md +111 -0
- package/bundled/locales/zh-TW/core/user-story-mapping.md +94 -0
- package/bundled/locales/zh-TW/core/verification-oracle.md +159 -0
- package/bundled/locales/zh-TW/core/versioning.md +112 -112
- package/bundled/locales/zh-TW/docs/CHEATSHEET.md +31 -6
- package/bundled/locales/zh-TW/docs/DEV-WORKFLOW-MAPPING.md +6 -6
- package/bundled/locales/zh-TW/docs/FEATURE-REFERENCE.md +61 -34
- package/bundled/locales/zh-TW/docs/MIGRATION-v6.md +88 -0
- package/bundled/locales/zh-TW/docs/USAGE-MODES-COMPARISON.md +2 -2
- package/bundled/locales/zh-TW/docs/USER-MANUAL.md +14 -14
- package/bundled/locales/zh-TW/docs/specs/system/memory-adoption-strategy.md +105 -0
- package/bundled/locales/zh-TW/docs/user/FAQ.md +132 -0
- package/bundled/locales/zh-TW/docs/user/GETTING-STARTED.md +144 -0
- package/bundled/locales/zh-TW/docs/user/GLOSSARY.md +178 -0
- package/bundled/locales/zh-TW/docs/user/README.md +70 -0
- package/bundled/locales/zh-TW/docs/user/TROUBLESHOOTING.md +190 -0
- package/bundled/locales/zh-TW/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +1 -1
- package/bundled/locales/zh-TW/integrations/github-copilot/README.md +1 -1
- package/bundled/locales/zh-TW/integrations/github-copilot/skills-mapping.md +3 -3
- package/bundled/locales/zh-TW/integrations/opencode/skills-mapping.md +3 -3
- package/bundled/locales/zh-TW/methodologies/guides/sdd-guide.md +523 -26
- package/bundled/locales/zh-TW/options/changelog/auto-generated.md +166 -0
- package/bundled/locales/zh-TW/options/changelog/keep-a-changelog.md +140 -0
- package/bundled/locales/zh-TW/options/code-review/automated-review.md +214 -0
- package/bundled/locales/zh-TW/options/code-review/pair-programming.md +166 -0
- package/bundled/locales/zh-TW/options/code-review/pr-review.md +167 -0
- package/bundled/locales/zh-TW/options/documentation/api-docs.md +191 -0
- package/bundled/locales/zh-TW/options/documentation/markdown-docs.md +150 -0
- package/bundled/locales/zh-TW/options/documentation/wiki-style.md +131 -0
- package/bundled/locales/zh-TW/options/project-structure/kotlin.md +144 -0
- package/bundled/locales/zh-TW/options/project-structure/php.md +168 -0
- package/bundled/locales/zh-TW/options/project-structure/ruby.md +156 -0
- package/bundled/locales/zh-TW/options/project-structure/rust.md +136 -0
- package/bundled/locales/zh-TW/options/project-structure/swift.md +165 -0
- package/bundled/locales/zh-TW/options/testing/contract-testing.md +237 -0
- package/bundled/locales/zh-TW/options/testing/industry-pyramid.md +200 -0
- package/bundled/locales/zh-TW/options/testing/istqb-framework.md +144 -0
- package/bundled/locales/zh-TW/options/testing/performance-testing.md +251 -0
- package/bundled/locales/zh-TW/options/testing/security-testing.md +192 -0
- package/bundled/locales/zh-TW/skills/README.md +91 -128
- package/bundled/locales/zh-TW/skills/ac-coverage/SKILL.md +4 -6
- package/bundled/locales/zh-TW/skills/adr-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-TW/skills/agents/code-architect.md +263 -0
- package/bundled/locales/zh-TW/skills/agents/doc-writer.md +410 -0
- package/bundled/locales/zh-TW/skills/agents/reviewer.md +357 -0
- package/bundled/locales/zh-TW/skills/agents/spec-analyst.md +410 -0
- package/bundled/locales/zh-TW/skills/agents/test-specialist.md +368 -0
- package/bundled/locales/zh-TW/skills/ai-collaboration-standards/SKILL.md +2 -2
- package/bundled/locales/zh-TW/skills/ai-friendly-architecture/SKILL.md +2 -2
- package/bundled/locales/zh-TW/skills/ai-instruction-standards/SKILL.md +1 -1
- package/bundled/locales/zh-TW/skills/atdd-assistant/SKILL.md +2 -0
- package/bundled/locales/zh-TW/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
- package/bundled/locales/zh-TW/skills/atdd-assistant/atdd-workflow.md +3 -4
- package/bundled/locales/zh-TW/skills/audit-assistant/SKILL.md +2 -2
- package/bundled/locales/zh-TW/skills/bdd-assistant/SKILL.md +2 -0
- package/bundled/locales/zh-TW/skills/bdd-assistant/guide.md +1 -2
- package/bundled/locales/zh-TW/skills/brainstorm-assistant/SKILL.md +110 -14
- package/bundled/locales/zh-TW/skills/brainstorm-assistant/guide.md +31 -7
- package/bundled/locales/zh-TW/skills/checkin-assistant/SKILL.md +3 -1
- package/bundled/locales/zh-TW/skills/ci-cd-assistant/SKILL.md +50 -0
- package/bundled/locales/zh-TW/skills/code-review-assistant/SKILL.md +7 -5
- package/bundled/locales/zh-TW/skills/commands/ac-coverage.md +1 -1
- package/bundled/locales/zh-TW/skills/commands/atdd.md +3 -3
- package/bundled/locales/zh-TW/skills/commands/bdd.md +2 -2
- package/bundled/locales/zh-TW/skills/commands/brainstorm.md +26 -17
- package/bundled/locales/zh-TW/skills/commands/{review.md → code-review.md} +5 -5
- package/bundled/locales/zh-TW/skills/commands/derive-all.md +1 -1
- package/bundled/locales/zh-TW/skills/commands/derive-atdd.md +1 -1
- package/bundled/locales/zh-TW/skills/commands/derive-bdd.md +2 -3
- package/bundled/locales/zh-TW/skills/commands/derive-tdd.md +1 -1
- package/bundled/locales/zh-TW/skills/commands/derive.md +1 -1
- package/bundled/locales/zh-TW/skills/commands/dev-workflow.md +2 -2
- package/bundled/locales/zh-TW/skills/commands/methodology.md +4 -4
- package/bundled/locales/zh-TW/skills/commands/pr.md +1 -1
- package/bundled/locales/zh-TW/skills/commands/tdd.md +1 -1
- package/bundled/locales/zh-TW/skills/commit-standards/SKILL.md +1 -1
- package/bundled/locales/zh-TW/skills/contract-test-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-TW/skills/dev-methodology/create-methodology.md +456 -0
- package/bundled/locales/zh-TW/skills/dev-methodology/guide.md +5 -5
- package/bundled/locales/zh-TW/skills/dev-methodology/runtime.md +296 -0
- package/bundled/locales/zh-TW/skills/dev-workflow-guide/SKILL.md +5 -5
- package/bundled/locales/zh-TW/skills/docs-generator/SKILL.md +1 -1
- package/bundled/locales/zh-TW/skills/e2e-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-TW/skills/incident-response-assistant/SKILL.md +2 -2
- package/bundled/locales/zh-TW/skills/logging-guide/SKILL.md +29 -27
- package/bundled/locales/zh-TW/skills/migration-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-TW/skills/pr-automation-assistant/SKILL.md +3 -1
- package/bundled/locales/zh-TW/skills/project-discovery/guide.md +2 -2
- package/bundled/locales/zh-TW/skills/reverse-engineer/SKILL.md +1 -1
- package/bundled/locales/zh-TW/skills/security-assistant/SKILL.md +1 -1
- package/bundled/locales/zh-TW/skills/spec-derivation/guide.md +7 -8
- package/bundled/locales/zh-TW/skills/spec-driven-dev/SKILL.md +2 -2
- package/bundled/locales/zh-TW/skills/sweep/SKILL.md +1 -1
- package/bundled/locales/zh-TW/skills/tdd-assistant/SKILL.md +3 -1
- package/bundled/locales/zh-TW/skills/testing-guide/SKILL.md +2 -2
- package/bundled/locales/zh-TW/skills/testing-guide/testing-theory.md +2298 -0
- package/bundled/locales/zh-TW/skills/workflows/README.md +451 -0
- package/bundled/skills/README.md +1 -1
- package/bundled/skills/ac-coverage/SKILL.md +17 -7
- package/bundled/skills/adr-assistant/SKILL.md +1 -1
- package/bundled/skills/agents/code-architect.md +1 -1
- package/bundled/skills/agents/doc-writer.md +1 -1
- package/bundled/skills/agents/reviewer.md +2 -2
- package/bundled/skills/agents/spec-analyst.md +1 -1
- package/bundled/skills/agents/test-specialist.md +1 -1
- package/bundled/skills/ai-collaboration-standards/SKILL.md +2 -2
- package/bundled/skills/ai-friendly-architecture/SKILL.md +2 -2
- package/bundled/skills/ai-instruction-standards/SKILL.md +1 -1
- package/bundled/skills/atdd-assistant/SKILL.md +7 -0
- package/bundled/skills/atdd-assistant/acceptance-criteria-guide.md +1 -1
- package/bundled/skills/atdd-assistant/atdd-workflow.md +6 -8
- package/bundled/skills/audit-assistant/SKILL.md +2 -2
- package/bundled/skills/bdd-assistant/SKILL.md +7 -0
- package/bundled/skills/bdd-assistant/guide.md +1 -2
- package/bundled/skills/brainstorm-assistant/SKILL.md +133 -11
- package/bundled/skills/brainstorm-assistant/guide.md +33 -5
- package/bundled/skills/checkin-assistant/SKILL.md +8 -1
- package/bundled/skills/ci-cd-assistant/SKILL.md +57 -0
- package/bundled/skills/code-review-assistant/SKILL.md +15 -8
- package/bundled/skills/commands/COMMAND-FAMILY-OVERVIEW.md +2 -2
- package/bundled/skills/commands/COMMAND-INDEX.json +3 -3
- package/bundled/skills/commands/README.md +2 -2
- package/bundled/skills/commands/ac-coverage.md +1 -1
- package/bundled/skills/commands/atdd.md +2 -2
- package/bundled/skills/commands/bdd.md +2 -2
- package/bundled/skills/commands/brainstorm.md +25 -14
- package/bundled/skills/commands/{review.md → code-review.md} +6 -6
- package/bundled/skills/commands/derive-all.md +1 -1
- package/bundled/skills/commands/derive-atdd.md +1 -1
- package/bundled/skills/commands/derive-bdd.md +2 -3
- package/bundled/skills/commands/derive-tdd.md +1 -1
- package/bundled/skills/commands/derive.md +1 -1
- package/bundled/skills/commands/dev-workflow.md +1 -1
- package/bundled/skills/commands/journey-test.md +45 -0
- package/bundled/skills/commands/methodology.md +4 -4
- package/bundled/skills/commands/pr.md +1 -1
- package/bundled/skills/commands/skill-builder.md +42 -0
- package/bundled/skills/commands/tdd.md +1 -1
- package/bundled/skills/dev-methodology/create-methodology.md +1 -1
- package/bundled/skills/dev-methodology/guide.md +1 -1
- package/bundled/skills/dev-methodology/runtime.md +1 -1
- package/bundled/skills/dev-workflow-guide/SKILL.md +3 -3
- package/bundled/skills/dev-workflow-guide/workflow-phases.md +3 -3
- package/bundled/skills/docs-generator/SKILL.md +3 -3
- package/bundled/skills/incident-response-assistant/SKILL.md +2 -2
- package/bundled/skills/logging-guide/SKILL.md +38 -2
- package/bundled/skills/migration-assistant/SKILL.md +226 -0
- package/bundled/skills/observability-assistant/SKILL.md +74 -0
- package/bundled/skills/pr-automation-assistant/SKILL.md +5 -1
- package/bundled/skills/project-discovery/guide.md +2 -2
- package/bundled/skills/push/SKILL.md +1 -1
- package/bundled/skills/release-standards/SKILL.md +19 -5
- package/bundled/skills/security-assistant/SKILL.md +1 -1
- package/bundled/skills/skill-builder/SKILL.md +1 -1
- package/bundled/skills/spec-derivation/guide.md +3 -4
- package/bundled/skills/spec-driven-dev/SKILL.md +27 -0
- package/bundled/skills/sweep/SKILL.md +1 -1
- package/bundled/skills/tdd-assistant/SKILL.md +8 -1
- package/bundled/skills/testing-guide/SKILL.md +1 -1
- package/bundled/skills/testing-guide/testing-theory.md +1 -1
- package/bundled/skills/workflows/README.md +2 -2
- package/package.json +3 -3
- package/src/commands/audit.js +30 -9
- package/src/commands/config.js +33 -2
- package/src/commands/hitl.js +14 -1
- package/src/commands/init.js +110 -58
- package/src/commands/quickstart.js +1 -2
- package/src/commands/release.js +51 -6
- package/src/commands/run-intent.js +9 -0
- package/src/commands/spec-split.js +27 -2
- package/src/commands/update.js +22 -6
- package/src/config/ai-agent-paths.js +3 -1
- package/src/i18n/messages.js +3 -102
- package/src/missions/MissionManager.js +44 -12
- package/src/utils/build-manifest.js +35 -3
- package/src/utils/friction-detector.js +71 -22
- package/src/utils/health-checker.js +29 -2
- package/src/utils/transaction.js +111 -0
- package/src/utils/version-promote.js +16 -0
- package/standards-registry.json +58 -146
- package/bundled/ai/standards/agent-communication-protocol.ai.yaml +0 -42
- package/bundled/ai/standards/agent-dispatch.ai.yaml +0 -42
- package/bundled/ai/standards/branch-completion.ai.yaml +0 -44
- package/bundled/ai/standards/change-batching-standards.ai.yaml +0 -44
- package/bundled/ai/standards/execution-history.ai.yaml +0 -42
- package/bundled/ai/standards/pipeline-integration-standards.ai.yaml +0 -42
- package/bundled/ai/standards/workflow-enforcement.ai.yaml +0 -44
- package/bundled/ai/standards/workflow-state-protocol.ai.yaml +0 -43
- package/src/commands/flow.js +0 -260
- package/src/commands/start.js +0 -372
- package/src/commands/sweep.js +0 -151
- package/src/commands/workflow.js +0 -681
|
@@ -0,0 +1,515 @@
|
|
|
1
|
+
---
|
|
2
|
+
source: core/guides/performance-guide.md
|
|
3
|
+
source_version: 1.0.0
|
|
4
|
+
translation_version: 1.0.0
|
|
5
|
+
status: current
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Performance Guide
|
|
9
|
+
|
|
10
|
+
> **语言**: [English](../../../../core/guides/performance-guide.md) | 简体中文
|
|
11
|
+
|
|
12
|
+
**Version**: 1.0.0
|
|
13
|
+
**Last Updated**: 2026-01-29
|
|
14
|
+
**Related Standard**: [Performance Standards](../performance-standards.md)
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## Purpose
|
|
19
|
+
|
|
20
|
+
本指南为软件性能工程提供详细的说明、优化技巧与教学内容。关于性能预算(performance budget)、阈值与必备检查清单,请参阅 [Performance Standards](../performance-standards.md)。
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## Table of Contents
|
|
25
|
+
|
|
26
|
+
1. [Performance Fundamentals](#performance-fundamentals)
|
|
27
|
+
2. [Performance Testing Deep Dive](#performance-testing-deep-dive)
|
|
28
|
+
3. [Metrics Explained](#metrics-explained)
|
|
29
|
+
4. [Optimization Strategies](#optimization-strategies)
|
|
30
|
+
5. [Database Performance Tuning](#database-performance-tuning)
|
|
31
|
+
6. [API Performance Optimization](#api-performance-optimization)
|
|
32
|
+
7. [Frontend Performance Techniques](#frontend-performance-techniques)
|
|
33
|
+
8. [Caching Architecture](#caching-architecture)
|
|
34
|
+
9. [Monitoring and Observability](#monitoring-and-observability)
|
|
35
|
+
10. [Capacity Planning Process](#capacity-planning-process)
|
|
36
|
+
11. [References](#references)
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## Performance Fundamentals
|
|
41
|
+
|
|
42
|
+
### ISO 25010 Performance Efficiency
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
46
|
+
│ ISO 25010: Performance Efficiency │
|
|
47
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
48
|
+
│ │
|
|
49
|
+
│ Performance Efficiency │
|
|
50
|
+
│ ├── Time Behavior │
|
|
51
|
+
│ │ └── Response time, processing time, throughput │
|
|
52
|
+
│ │ │
|
|
53
|
+
│ ├── Resource Utilization │
|
|
54
|
+
│ │ └── CPU, memory, disk, network usage │
|
|
55
|
+
│ │ │
|
|
56
|
+
│ └── Capacity │
|
|
57
|
+
│ └── Maximum limits that meet requirements │
|
|
58
|
+
│ │
|
|
59
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
ISO 25010 将性能效率(performance efficiency)定义为八项质量特性之一。理解这套框架有助于以标准化的术语与利益相关者沟通。
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
## Performance Testing Deep Dive
|
|
67
|
+
|
|
68
|
+
### Testing Types Explained
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
72
|
+
│ Performance Testing Types │
|
|
73
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
74
|
+
│ │
|
|
75
|
+
│ Load Testing │
|
|
76
|
+
│ ├── Purpose: Verify system under expected load │
|
|
77
|
+
│ ├── Duration: 10-60 minutes │
|
|
78
|
+
│ └── Load: Normal to peak expected │
|
|
79
|
+
│ │
|
|
80
|
+
│ Stress Testing │
|
|
81
|
+
│ ├── Purpose: Find breaking point │
|
|
82
|
+
│ ├── Duration: Until failure │
|
|
83
|
+
│ └── Load: Beyond normal capacity │
|
|
84
|
+
│ │
|
|
85
|
+
│ Soak/Endurance Testing │
|
|
86
|
+
│ ├── Purpose: Find memory leaks, resource issues │
|
|
87
|
+
│ ├── Duration: 4-72 hours │
|
|
88
|
+
│ └── Load: Sustained normal load │
|
|
89
|
+
│ │
|
|
90
|
+
│ Spike Testing │
|
|
91
|
+
│ ├── Purpose: Verify sudden load changes │
|
|
92
|
+
│ ├── Duration: Short bursts │
|
|
93
|
+
│ └── Load: Sudden increase/decrease │
|
|
94
|
+
│ │
|
|
95
|
+
│ Scalability Testing │
|
|
96
|
+
│ ├── Purpose: Verify scaling behavior │
|
|
97
|
+
│ ├── Duration: Varies │
|
|
98
|
+
│ └── Load: Incrementally increasing │
|
|
99
|
+
│ │
|
|
100
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### k6 Load Test Example
|
|
104
|
+
|
|
105
|
+
```javascript
|
|
106
|
+
// Example: k6 Load Test Configuration
|
|
107
|
+
import http from 'k6/http';
|
|
108
|
+
import { check, sleep } from 'k6';
|
|
109
|
+
|
|
110
|
+
export const options = {
|
|
111
|
+
stages: [
|
|
112
|
+
{ duration: '2m', target: 100 }, // Ramp up to 100 users
|
|
113
|
+
{ duration: '5m', target: 100 }, // Stay at 100 users
|
|
114
|
+
{ duration: '2m', target: 200 }, // Ramp up to 200 users
|
|
115
|
+
{ duration: '5m', target: 200 }, // Stay at 200 users
|
|
116
|
+
{ duration: '2m', target: 0 }, // Ramp down
|
|
117
|
+
],
|
|
118
|
+
thresholds: {
|
|
119
|
+
'http_req_duration': ['p(95)<200', 'p(99)<500'],
|
|
120
|
+
'http_req_failed': ['rate<0.01'],
|
|
121
|
+
},
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
export default function () {
|
|
125
|
+
const res = http.get('https://api.example.com/users');
|
|
126
|
+
check(res, {
|
|
127
|
+
'status is 200': (r) => r.status === 200,
|
|
128
|
+
'response time < 200ms': (r) => r.timings.duration < 200,
|
|
129
|
+
});
|
|
130
|
+
sleep(1);
|
|
131
|
+
}
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## Metrics Explained
|
|
137
|
+
|
|
138
|
+
### The RED Method (Request-oriented)
|
|
139
|
+
|
|
140
|
+
RED 方法聚焦于请求级别(request-level)的指标,最适合用于服务:
|
|
141
|
+
|
|
142
|
+
| 指标 | 说明 | 为何重要 |
|
|
143
|
+
|--------|-------------|----------------|
|
|
144
|
+
| **R**ate | 每秒请求数 | 反映流量规模 |
|
|
145
|
+
| **E**rrors | 错误率百分比 | 质量指标 |
|
|
146
|
+
| **D**uration | 响应时间分布 | 用户体验 |
|
|
147
|
+
|
|
148
|
+
### The USE Method (Resource-oriented)
|
|
149
|
+
|
|
150
|
+
USE 方法聚焦于资源使用率(resource utilization),最适合用于基础设施:
|
|
151
|
+
|
|
152
|
+
| 指标 | 说明 | 警讯 |
|
|
153
|
+
|--------|-------------|--------------|
|
|
154
|
+
| **U**tilization | 资源繁忙百分比 | 持续 > 70% |
|
|
155
|
+
| **S**aturation | 队列长度 | 队列持续增长 |
|
|
156
|
+
| **E**rrors | 错误计数 | 任何增加 |
|
|
157
|
+
|
|
158
|
+
### The Four Golden Signals (SRE)
|
|
159
|
+
|
|
160
|
+
Google 的 SRE 著作将以下四项定义为任何系统最重要的指标:
|
|
161
|
+
|
|
162
|
+
```
|
|
163
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
164
|
+
│ The Four Golden Signals (Google SRE) │
|
|
165
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
166
|
+
│ │
|
|
167
|
+
│ 1. LATENCY │
|
|
168
|
+
│ ├── Successful request latency (what users see) │
|
|
169
|
+
│ ├── Failed request latency (often faster, misleading) │
|
|
170
|
+
│ └── Track percentiles: p50, p90, p95, p99 │
|
|
171
|
+
│ │
|
|
172
|
+
│ 2. TRAFFIC │
|
|
173
|
+
│ ├── HTTP requests per second │
|
|
174
|
+
│ ├── Transactions per second │
|
|
175
|
+
│ └── Messages processed per second │
|
|
176
|
+
│ │
|
|
177
|
+
│ 3. ERRORS │
|
|
178
|
+
│ ├── Explicit errors (HTTP 5xx) │
|
|
179
|
+
│ ├── Implicit errors (wrong content, slow response) │
|
|
180
|
+
│ └── Policy violations (response > SLA) │
|
|
181
|
+
│ │
|
|
182
|
+
│ 4. SATURATION │
|
|
183
|
+
│ ├── CPU utilization │
|
|
184
|
+
│ ├── Memory utilization │
|
|
185
|
+
│ ├── Disk I/O utilization │
|
|
186
|
+
│ └── Network bandwidth utilization │
|
|
187
|
+
│ │
|
|
188
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
### Understanding Percentiles
|
|
192
|
+
|
|
193
|
+
| Percentile | 含义 | 使用场景 |
|
|
194
|
+
|------------|---------|----------|
|
|
195
|
+
| **p50 (median)** | 一半的请求比此更快 | 典型体验 |
|
|
196
|
+
| **p90** | 90% 的请求比此更快 | 多数用户 |
|
|
197
|
+
| **p95** | 95% 的请求比此更快 | SLA 阈值 |
|
|
198
|
+
| **p99** | 99% 的请求比此更快 | 多数情况下的最差案例 |
|
|
199
|
+
| **p99.9** | 99.9% 的请求比此更快 | 高流量系统 |
|
|
200
|
+
|
|
201
|
+
**为何 percentile 比平均值更重要**:平均值可能掩盖问题。若 99% 的请求耗时 100ms,但 1% 耗时 10 秒,平均值看起来可能可以接受(199ms),然而却有 1% 的用户体验极差。
|
|
202
|
+
|
|
203
|
+
---
|
|
204
|
+
|
|
205
|
+
## Optimization Strategies
|
|
206
|
+
|
|
207
|
+
### General Optimization Principles
|
|
208
|
+
|
|
209
|
+
```
|
|
210
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
211
|
+
│ Performance Optimization Principles │
|
|
212
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
213
|
+
│ │
|
|
214
|
+
│ 1. MEASURE FIRST │
|
|
215
|
+
│ └── Don't optimize without data (avoid premature opt) │
|
|
216
|
+
│ │
|
|
217
|
+
│ 2. IDENTIFY BOTTLENECK │
|
|
218
|
+
│ └── Focus on the slowest part (Amdahl's Law) │
|
|
219
|
+
│ │
|
|
220
|
+
│ 3. OPTIMIZE THE RIGHT LEVEL │
|
|
221
|
+
│ ├── Algorithm > Data Structure > Code > Hardware │
|
|
222
|
+
│ └── Higher level optimizations have bigger impact │
|
|
223
|
+
│ │
|
|
224
|
+
│ 4. CONSIDER TRADE-OFFS │
|
|
225
|
+
│ ├── Speed vs Memory │
|
|
226
|
+
│ ├── Latency vs Throughput │
|
|
227
|
+
│ └── Consistency vs Availability │
|
|
228
|
+
│ │
|
|
229
|
+
│ 5. VERIFY IMPROVEMENT │
|
|
230
|
+
│ └── Benchmark before and after │
|
|
231
|
+
│ │
|
|
232
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
### Optimization Techniques by Level
|
|
236
|
+
|
|
237
|
+
| 层级 | 技巧 | 影响 | 投入成本 |
|
|
238
|
+
|-------|-----------|--------|--------|
|
|
239
|
+
| **Algorithm** | 改善复杂度(O(n²) → O(n log n)) | 极高 | 中 |
|
|
240
|
+
| **Architecture** | caching、异步处理、load balancing | 高 | 高 |
|
|
241
|
+
| **Database** | indexing、查询优化、connection pooling | 高 | 中 |
|
|
242
|
+
| **Code** | lazy loading、批处理、memoization | 中 | 低 |
|
|
243
|
+
| **Infrastructure** | 垂直/水平扩展、CDN | 中 | 中 |
|
|
244
|
+
| **Low-level** | 内存对齐、SIMD、JIT warmup | 低 | 高 |
|
|
245
|
+
|
|
246
|
+
**关键洞察**:永远从最高层级开始着手。更好的算法每次都会胜过微优化(micro-optimization)。
|
|
247
|
+
|
|
248
|
+
---
|
|
249
|
+
|
|
250
|
+
## Database Performance Tuning
|
|
251
|
+
|
|
252
|
+
### Index Guidelines
|
|
253
|
+
|
|
254
|
+
```sql
|
|
255
|
+
-- ✅ Good: Index for frequently queried columns
|
|
256
|
+
CREATE INDEX idx_users_email ON users(email);
|
|
257
|
+
|
|
258
|
+
-- ✅ Good: Composite index for multi-column queries
|
|
259
|
+
CREATE INDEX idx_orders_user_date ON orders(user_id, created_at DESC);
|
|
260
|
+
|
|
261
|
+
-- ❌ Avoid: Index on low-cardinality columns
|
|
262
|
+
CREATE INDEX idx_users_active ON users(is_active); -- Only 2 values
|
|
263
|
+
|
|
264
|
+
-- ✅ Good: Partial index for specific queries
|
|
265
|
+
CREATE INDEX idx_orders_pending ON orders(created_at)
|
|
266
|
+
WHERE status = 'pending';
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
**为何使用 partial index?** 它们更小、更快,因为只包含符合特定条件的数据行。非常适合用于频繁查询的数据子集。
|
|
270
|
+
|
|
271
|
+
### N+1 Query Problem
|
|
272
|
+
|
|
273
|
+
N+1 问题是最常见的性能问题之一:
|
|
274
|
+
|
|
275
|
+
```typescript
|
|
276
|
+
// ❌ Bad: N+1 queries (1 query for users + N queries for orders)
|
|
277
|
+
const users = await User.findAll();
|
|
278
|
+
for (const user of users) {
|
|
279
|
+
const orders = await Order.findAll({ where: { userId: user.id } });
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
// ✅ Good: Single query with JOIN or eager loading
|
|
283
|
+
const users = await User.findAll({
|
|
284
|
+
include: [{ model: Order }]
|
|
285
|
+
});
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
---
|
|
289
|
+
|
|
290
|
+
## API Performance Optimization
|
|
291
|
+
|
|
292
|
+
### API Design for Performance
|
|
293
|
+
|
|
294
|
+
```typescript
|
|
295
|
+
// ❌ Bad: Returns all fields, all records
|
|
296
|
+
GET /api/users
|
|
297
|
+
|
|
298
|
+
// ✅ Good: Pagination, field selection
|
|
299
|
+
GET /api/users?page=1&limit=20&fields=id,name,email
|
|
300
|
+
|
|
301
|
+
// ❌ Bad: N+1 queries for related data
|
|
302
|
+
GET /api/users/1
|
|
303
|
+
GET /api/users/1/orders
|
|
304
|
+
GET /api/users/1/addresses
|
|
305
|
+
|
|
306
|
+
// ✅ Good: Single request with includes
|
|
307
|
+
GET /api/users/1?include=orders,addresses
|
|
308
|
+
|
|
309
|
+
// ✅ Good: Batch endpoint
|
|
310
|
+
POST /api/users/batch
|
|
311
|
+
{ "ids": [1, 2, 3, 4, 5] }
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
---
|
|
315
|
+
|
|
316
|
+
## Frontend Performance Techniques
|
|
317
|
+
|
|
318
|
+
### Core Web Vitals Explained
|
|
319
|
+
|
|
320
|
+
| 指标 | 衡量内容 | 目标 | 如何改善 |
|
|
321
|
+
|--------|------------------|--------|----------------|
|
|
322
|
+
| **LCP** | Largest Contentful Paint | < 2.5s | 优化图片、预先加载关键资源 |
|
|
323
|
+
| **INP** | Interaction to Next Paint | < 200ms | 减少 JavaScript、延后非关键脚本 |
|
|
324
|
+
| **CLS** | Cumulative Layout Shift | < 0.1 | 为图片设置尺寸、为动态内容预留空间 |
|
|
325
|
+
|
|
326
|
+
### Performance Budget Example
|
|
327
|
+
|
|
328
|
+
```yaml
|
|
329
|
+
# Example Performance Budget
|
|
330
|
+
resources:
|
|
331
|
+
total_size: 500KB
|
|
332
|
+
javascript: 200KB
|
|
333
|
+
css: 50KB
|
|
334
|
+
images: 200KB
|
|
335
|
+
fonts: 50KB
|
|
336
|
+
|
|
337
|
+
metrics:
|
|
338
|
+
time_to_interactive: 3s
|
|
339
|
+
first_contentful_paint: 1.5s
|
|
340
|
+
speed_index: 3s
|
|
341
|
+
|
|
342
|
+
lighthouse_scores:
|
|
343
|
+
performance: 90
|
|
344
|
+
accessibility: 100
|
|
345
|
+
best_practices: 100
|
|
346
|
+
seo: 100
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
**为何需要预算?** 若没有限制,页面重量往往会随时间增长。预算能建立责任归属,并强制做出取舍。
|
|
350
|
+
|
|
351
|
+
---
|
|
352
|
+
|
|
353
|
+
## Caching Architecture
|
|
354
|
+
|
|
355
|
+
### Cache Levels
|
|
356
|
+
|
|
357
|
+
```
|
|
358
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
359
|
+
│ Caching Hierarchy │
|
|
360
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
361
|
+
│ │
|
|
362
|
+
│ Level 1: Browser Cache │
|
|
363
|
+
│ ├── HTTP cache headers (Cache-Control, ETag) │
|
|
364
|
+
│ ├── Service Worker cache │
|
|
365
|
+
│ └── TTL: Minutes to days │
|
|
366
|
+
│ │
|
|
367
|
+
│ Level 2: CDN Cache │
|
|
368
|
+
│ ├── Edge caching for static assets │
|
|
369
|
+
│ ├── API response caching (careful with personalization) │
|
|
370
|
+
│ └── TTL: Hours to days │
|
|
371
|
+
│ │
|
|
372
|
+
│ Level 3: Application Cache │
|
|
373
|
+
│ ├── In-memory cache (local, fast, limited size) │
|
|
374
|
+
│ ├── Distributed cache (Redis, Memcached) │
|
|
375
|
+
│ └── TTL: Seconds to hours │
|
|
376
|
+
│ │
|
|
377
|
+
│ Level 4: Database Cache │
|
|
378
|
+
│ ├── Query cache │
|
|
379
|
+
│ ├── Result set cache │
|
|
380
|
+
│ └── TTL: Managed by DB │
|
|
381
|
+
│ │
|
|
382
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
383
|
+
```
|
|
384
|
+
|
|
385
|
+
### Cache Invalidation Strategies
|
|
386
|
+
|
|
387
|
+
| 策略 | 运作方式 | 最适用于 |
|
|
388
|
+
|----------|--------------|----------|
|
|
389
|
+
| **TTL-based** | 固定时间后过期 | 静态内容 |
|
|
390
|
+
| **Event-based** | 写入时失效 | 实时数据 |
|
|
391
|
+
| **Version-based** | 新版本 = 新的 cache key | 部署 |
|
|
392
|
+
| **Stale-while-revalidate** | 先提供过期内容,后台刷新 | 高可用性 |
|
|
393
|
+
|
|
394
|
+
### Cache Headers
|
|
395
|
+
|
|
396
|
+
```http
|
|
397
|
+
# Static assets (versioned filename)
|
|
398
|
+
Cache-Control: public, max-age=31536000, immutable
|
|
399
|
+
|
|
400
|
+
# API responses (short cache)
|
|
401
|
+
Cache-Control: private, max-age=60, stale-while-revalidate=300
|
|
402
|
+
|
|
403
|
+
# No cache (personalized content)
|
|
404
|
+
Cache-Control: no-store, no-cache, must-revalidate
|
|
405
|
+
|
|
406
|
+
# Conditional caching
|
|
407
|
+
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
|
|
408
|
+
Last-Modified: Wed, 21 Oct 2025 07:28:00 GMT
|
|
409
|
+
```
|
|
410
|
+
|
|
411
|
+
---
|
|
412
|
+
|
|
413
|
+
## Monitoring and Observability
|
|
414
|
+
|
|
415
|
+
### Dashboard Layout
|
|
416
|
+
|
|
417
|
+
```
|
|
418
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
419
|
+
│ Performance Dashboard Layout │
|
|
420
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
421
|
+
│ │
|
|
422
|
+
│ Row 1: Overview │
|
|
423
|
+
│ ├── Request rate (rps) │
|
|
424
|
+
│ ├── Error rate (%) │
|
|
425
|
+
│ ├── p50/p95/p99 latency │
|
|
426
|
+
│ └── Active users/connections │
|
|
427
|
+
│ │
|
|
428
|
+
│ Row 2: Infrastructure │
|
|
429
|
+
│ ├── CPU usage by service │
|
|
430
|
+
│ ├── Memory usage by service │
|
|
431
|
+
│ ├── Network I/O │
|
|
432
|
+
│ └── Disk I/O │
|
|
433
|
+
│ │
|
|
434
|
+
│ Row 3: Database │
|
|
435
|
+
│ ├── Query rate │
|
|
436
|
+
│ ├── Slow queries │
|
|
437
|
+
│ ├── Connection pool usage │
|
|
438
|
+
│ └── Replication lag │
|
|
439
|
+
│ │
|
|
440
|
+
│ Row 4: Dependencies │
|
|
441
|
+
│ ├── External API latency │
|
|
442
|
+
│ ├── Cache hit rate │
|
|
443
|
+
│ └── Queue depth │
|
|
444
|
+
│ │
|
|
445
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
446
|
+
```
|
|
447
|
+
|
|
448
|
+
---
|
|
449
|
+
|
|
450
|
+
## Capacity Planning Process
|
|
451
|
+
|
|
452
|
+
```
|
|
453
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
454
|
+
│ Capacity Planning Cycle │
|
|
455
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
456
|
+
│ │
|
|
457
|
+
│ 1. COLLECT │
|
|
458
|
+
│ ├── Historical usage data │
|
|
459
|
+
│ ├── Growth trends │
|
|
460
|
+
│ └── Business forecasts │
|
|
461
|
+
│ │
|
|
462
|
+
│ 2. ANALYZE │
|
|
463
|
+
│ ├── Peak usage patterns │
|
|
464
|
+
│ ├── Resource utilization trends │
|
|
465
|
+
│ └── Bottleneck identification │
|
|
466
|
+
│ │
|
|
467
|
+
│ 3. FORECAST │
|
|
468
|
+
│ ├── Project future demand │
|
|
469
|
+
│ ├── Apply growth factors │
|
|
470
|
+
│ └── Account for seasonal variations │
|
|
471
|
+
│ │
|
|
472
|
+
│ 4. PLAN │
|
|
473
|
+
│ ├── Define capacity requirements │
|
|
474
|
+
│ ├── Evaluate scaling options │
|
|
475
|
+
│ └── Calculate costs │
|
|
476
|
+
│ │
|
|
477
|
+
│ 5. EXECUTE │
|
|
478
|
+
│ ├── Implement scaling │
|
|
479
|
+
│ ├── Validate performance │
|
|
480
|
+
│ └── Monitor and iterate │
|
|
481
|
+
│ │
|
|
482
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
483
|
+
```
|
|
484
|
+
|
|
485
|
+
### Scaling Strategies Compared
|
|
486
|
+
|
|
487
|
+
| 策略 | 优点 | 缺点 | 何时使用 |
|
|
488
|
+
|----------|------|------|-------------|
|
|
489
|
+
| **Vertical Scaling** | 简单、无需修改代码 | 硬件上限、单点故障(SPOF) | 快速修复、小规模 |
|
|
490
|
+
| **Horizontal Scaling** | 无上限、容错 | 复杂度高、需无状态(stateless) | 生产系统 |
|
|
491
|
+
| **Auto-scaling** | 符合成本效益、反应灵敏 | warm-up 时间、复杂度 | 变动负载 |
|
|
492
|
+
|
|
493
|
+
---
|
|
494
|
+
|
|
495
|
+
## References
|
|
496
|
+
|
|
497
|
+
### Standards
|
|
498
|
+
- [ISO/IEC 25010:2011](https://www.iso.org/standard/35733.html) - Performance Efficiency
|
|
499
|
+
- [Web Vitals](https://web.dev/vitals/) - Google Core Web Vitals
|
|
500
|
+
|
|
501
|
+
### Books
|
|
502
|
+
- Brendan Gregg - "Systems Performance: Enterprise and the Cloud" (2020)
|
|
503
|
+
- Google - "Site Reliability Engineering" (2016)
|
|
504
|
+
- Martin Kleppmann - "Designing Data-Intensive Applications" (2017)
|
|
505
|
+
|
|
506
|
+
### Tools
|
|
507
|
+
- [k6](https://k6.io/) - Load testing
|
|
508
|
+
- [Lighthouse](https://developer.chrome.com/docs/lighthouse/) - Frontend performance
|
|
509
|
+
- [Grafana](https://grafana.com/) - Performance dashboards
|
|
510
|
+
|
|
511
|
+
---
|
|
512
|
+
|
|
513
|
+
## License
|
|
514
|
+
|
|
515
|
+
This guide is released under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
|