universal-dev-standards 4.2.0 → 5.0.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/bin/uds.js +165 -5
- package/bundled/core/acceptance-test-driven-development.md +19 -721
- package/bundled/core/accessibility-standards.md +862 -0
- package/bundled/core/ai-agreement-standards.md +95 -0
- package/bundled/core/ai-friendly-architecture.md +2 -0
- package/bundled/core/ai-instruction-standards.md +2 -0
- package/bundled/core/anti-hallucination.md +90 -637
- package/bundled/core/behavior-driven-development.md +20 -735
- package/bundled/core/changelog-standards.md +4 -0
- package/bundled/core/checkin-standards.md +21 -4
- package/bundled/core/code-review-checklist.md +3 -0
- package/bundled/core/commit-message-guide.md +14 -3
- package/bundled/core/deployment-standards.md +296 -0
- package/bundled/core/developer-memory.md +568 -0
- package/bundled/core/documentation-structure.md +114 -18
- package/bundled/core/documentation-writing-standards.md +272 -2
- package/bundled/core/error-code-standards.md +3 -0
- package/bundled/core/forward-derivation-standards.md +134 -8
- package/bundled/core/git-workflow.md +72 -686
- package/bundled/core/guides/anti-hallucination-guide.md +517 -0
- package/bundled/core/guides/git-workflow-guide.md +954 -0
- package/bundled/core/guides/performance-guide.md +508 -0
- package/bundled/core/guides/refactoring-guide.md +608 -0
- package/bundled/core/guides/security-guide.md +485 -0
- package/bundled/core/logging-standards.md +337 -2
- package/bundled/core/performance-standards.md +231 -0
- package/bundled/core/project-context-memory.md +180 -0
- package/bundled/core/project-structure.md +315 -2
- package/bundled/core/refactoring-standards.md +81 -761
- package/bundled/core/requirement-engineering.md +39 -0
- package/bundled/core/reverse-engineering-standards.md +6 -4
- package/bundled/core/security-standards.md +244 -0
- package/bundled/core/spec-driven-development.md +20 -319
- package/bundled/core/test-completeness-dimensions.md +213 -11
- package/bundled/core/test-driven-development.md +22 -978
- package/bundled/core/testing-standards.md +222 -2903
- package/bundled/core/versioning.md +16 -55
- package/bundled/core/virtual-organization-standards.md +85 -0
- package/bundled/locales/README.md +4 -4
- package/bundled/locales/zh-CN/CHANGELOG.md +18 -18
- package/bundled/locales/zh-CN/CLAUDE.md +3 -3
- package/bundled/locales/zh-CN/MAINTENANCE.md +7 -7
- package/bundled/locales/zh-CN/README.md +2 -2
- package/bundled/locales/zh-CN/STANDARDS-MAPPING.md +1 -1
- package/bundled/locales/zh-CN/adoption/ADOPTION-GUIDE.md +3 -3
- package/bundled/locales/zh-CN/adoption/DAILY-WORKFLOW-GUIDE.md +66 -7
- package/bundled/locales/zh-CN/adoption/STATIC-DYNAMIC-GUIDE.md +22 -22
- package/bundled/locales/zh-CN/adoption/checklists/enterprise.md +5 -5
- package/bundled/locales/zh-CN/adoption/checklists/minimal.md +4 -4
- package/bundled/locales/zh-CN/adoption/checklists/recommended.md +5 -5
- package/bundled/locales/zh-CN/ai/MAINTENANCE.md +13 -13
- package/bundled/locales/zh-CN/core/ai-instruction-standards.md +1 -1
- package/bundled/locales/zh-CN/core/anti-hallucination.md +39 -3
- package/bundled/locales/zh-CN/core/checkin-standards.md +18 -5
- package/bundled/locales/zh-CN/core/commit-message-guide.md +1 -1
- package/bundled/locales/zh-CN/core/developer-memory.md +576 -0
- package/bundled/locales/zh-CN/core/documentation-structure.md +43 -5
- package/bundled/locales/zh-CN/core/documentation-writing-standards.md +146 -5
- package/bundled/locales/zh-CN/core/git-workflow.md +179 -4
- package/bundled/locales/zh-CN/core/logging-standards.md +177 -4
- package/bundled/locales/zh-CN/core/project-structure.md +117 -5
- package/bundled/locales/zh-CN/core/refactoring-standards.md +3 -3
- package/bundled/locales/zh-CN/core/reverse-engineering-standards.md +6 -6
- package/bundled/locales/zh-CN/core/spec-driven-development.md +516 -14
- package/bundled/locales/zh-CN/core/test-completeness-dimensions.md +155 -24
- package/bundled/locales/zh-CN/core/test-driven-development.md +71 -20
- package/bundled/locales/zh-CN/core/testing-standards.md +4 -4
- package/bundled/locales/zh-CN/core/versioning.md +1 -1
- package/bundled/locales/zh-CN/docs/AI-AGENT-ROADMAP.md +90 -51
- package/bundled/locales/zh-CN/docs/CHEATSHEET.md +184 -0
- package/bundled/locales/zh-CN/docs/CLI-FLOW.md +239 -0
- package/bundled/locales/zh-CN/docs/FEATURE-REFERENCE.md +320 -0
- package/bundled/locales/zh-CN/docs/OPERATION-WORKFLOW.md +43 -43
- package/bundled/locales/zh-CN/docs/STANDARDS-REFERENCE.md +440 -0
- package/bundled/locales/zh-CN/docs/USAGE-MODES-COMPARISON.md +1 -1
- package/bundled/locales/zh-CN/docs/WINDOWS-GUIDE.md +1 -1
- package/bundled/locales/zh-CN/integrations/codex/README.md +3 -3
- package/bundled/locales/zh-CN/integrations/gemini-cli/README.md +3 -3
- package/bundled/locales/zh-CN/integrations/github-copilot/README.md +5 -5
- package/bundled/locales/zh-CN/integrations/github-copilot/copilot-instructions.md +9 -9
- package/bundled/locales/zh-CN/integrations/github-copilot/skills-mapping.md +18 -6
- package/bundled/locales/zh-CN/integrations/google-antigravity/README.md +2 -2
- package/bundled/locales/zh-CN/integrations/opencode/README.md +3 -3
- package/bundled/locales/zh-CN/integrations/opencode/skills-mapping.md +22 -10
- package/bundled/locales/zh-CN/integrations/openspec/README.md +1 -1
- package/bundled/locales/zh-CN/integrations/spec-kit/AGENTS.md +3 -3
- package/bundled/locales/zh-CN/integrations/spec-kit/README.md +1 -1
- package/bundled/locales/zh-CN/options/commit-message/bilingual.md +1 -1
- package/bundled/locales/zh-CN/options/commit-message/english.md +1 -1
- package/bundled/locales/zh-CN/options/commit-message/traditional-chinese.md +1 -1
- package/bundled/locales/zh-CN/options/git-workflow/gitflow.md +1 -1
- package/bundled/locales/zh-CN/options/git-workflow/github-flow.md +1 -1
- package/bundled/locales/zh-CN/options/git-workflow/merge-commit.md +1 -1
- package/bundled/locales/zh-CN/options/git-workflow/rebase-ff.md +1 -1
- package/bundled/locales/zh-CN/options/git-workflow/squash-merge.md +1 -1
- package/bundled/locales/zh-CN/options/git-workflow/trunk-based.md +1 -1
- package/bundled/locales/zh-CN/options/project-structure/dotnet.md +1 -1
- package/bundled/locales/zh-CN/options/project-structure/go.md +1 -1
- package/bundled/locales/zh-CN/options/project-structure/java.md +1 -1
- package/bundled/locales/zh-CN/options/project-structure/nodejs.md +1 -1
- package/bundled/locales/zh-CN/options/project-structure/python.md +1 -1
- package/bundled/locales/zh-CN/options/testing/e2e-testing.md +1 -1
- package/bundled/locales/zh-CN/options/testing/integration-testing.md +1 -1
- package/bundled/locales/zh-CN/options/testing/system-testing.md +1 -1
- package/bundled/locales/zh-CN/options/testing/unit-testing.md +1 -1
- package/bundled/locales/zh-CN/skills/{claude-code/CONTRIBUTING.template.md → CONTRIBUTING.template.md} +2 -2
- package/bundled/locales/zh-CN/skills/README.md +131 -81
- package/bundled/locales/zh-CN/skills/agents/README.md +281 -0
- package/bundled/locales/zh-CN/skills/{claude-code/ai-collaboration-standards → ai-collaboration-standards}/SKILL.md +10 -10
- package/bundled/locales/zh-CN/skills/{claude-code/ai-collaboration-standards → ai-collaboration-standards}/anti-hallucination.md +8 -8
- package/bundled/locales/zh-CN/skills/{claude-code/ai-collaboration-standards → ai-collaboration-standards}/certainty-labels.md +8 -8
- package/bundled/locales/zh-CN/skills/ai-friendly-architecture/SKILL.md +221 -0
- package/bundled/locales/zh-CN/skills/ai-instruction-standards/SKILL.md +214 -0
- package/bundled/locales/zh-CN/skills/atdd-assistant/SKILL.md +71 -0
- package/bundled/locales/zh-CN/skills/atdd-assistant/acceptance-criteria-guide.md +428 -0
- package/bundled/locales/zh-CN/skills/atdd-assistant/atdd-workflow.md +484 -0
- package/bundled/locales/zh-CN/skills/atdd-assistant/guide.md +368 -0
- package/bundled/locales/zh-CN/skills/bdd-assistant/SKILL.md +68 -0
- package/bundled/locales/zh-CN/skills/bdd-assistant/bdd-workflow.md +406 -0
- package/bundled/locales/zh-CN/skills/bdd-assistant/gherkin-guide.md +454 -0
- package/bundled/locales/zh-CN/skills/bdd-assistant/guide.md +324 -0
- package/bundled/locales/zh-CN/skills/changelog-guide/SKILL.md +64 -0
- package/bundled/locales/zh-CN/skills/{claude-code/changelog-guide/SKILL.md → changelog-guide/guide.md} +6 -7
- package/bundled/locales/zh-CN/skills/checkin-assistant/SKILL.md +56 -0
- package/bundled/locales/zh-CN/skills/{claude-code/checkin-assistant/SKILL.md → checkin-assistant/guide.md} +6 -7
- package/bundled/locales/zh-CN/skills/code-review-assistant/SKILL.md +56 -0
- package/bundled/locales/zh-CN/skills/{claude-code/code-review-assistant → code-review-assistant}/checkin-checklist.md +4 -4
- package/bundled/locales/zh-CN/skills/{claude-code/code-review-assistant/SKILL.md → code-review-assistant/guide.md} +5 -6
- package/bundled/locales/zh-CN/skills/{claude-code/code-review-assistant → code-review-assistant}/review-checklist.md +4 -4
- package/bundled/locales/zh-CN/skills/{claude-code/commands → commands}/bdd.md +2 -2
- package/bundled/locales/zh-CN/skills/{claude-code/commands → commands}/methodology.md +3 -3
- package/bundled/locales/zh-CN/skills/{claude-code/commands → commands}/refactor.md +3 -3
- package/bundled/locales/zh-CN/skills/commit-standards/SKILL.md +61 -0
- package/bundled/locales/zh-CN/skills/{claude-code/commit-standards → commit-standards}/conventional-commits.md +4 -4
- package/bundled/locales/zh-CN/skills/{claude-code/commit-standards/SKILL.md → commit-standards/guide.md} +5 -6
- package/bundled/locales/zh-CN/skills/{claude-code/commit-standards → commit-standards}/language-options.md +3 -3
- package/bundled/locales/zh-CN/skills/docs-generator/SKILL.md +59 -0
- package/bundled/locales/zh-CN/skills/docs-generator/guide.md +262 -0
- package/bundled/locales/zh-CN/skills/{claude-code/documentation-guide → documentation-guide}/SKILL.md +7 -8
- package/bundled/locales/zh-CN/skills/{claude-code/documentation-guide → documentation-guide}/documentation-structure.md +4 -4
- package/bundled/locales/zh-CN/skills/{claude-code/documentation-guide → documentation-guide}/readme-template.md +3 -3
- package/bundled/locales/zh-CN/skills/{claude-code/error-code-guide → error-code-guide}/SKILL.md +6 -6
- package/bundled/locales/zh-CN/skills/forward-derivation/SKILL.md +62 -0
- package/bundled/locales/zh-CN/skills/forward-derivation/guide.md +130 -0
- package/bundled/locales/zh-CN/skills/{claude-code/git-workflow-guide → git-workflow-guide}/SKILL.md +6 -6
- package/bundled/locales/zh-CN/skills/{claude-code/git-workflow-guide → git-workflow-guide}/branch-naming.md +3 -3
- package/bundled/locales/zh-CN/skills/{claude-code/git-workflow-guide → git-workflow-guide}/git-workflow.md +4 -4
- package/bundled/locales/zh-CN/skills/{claude-code/logging-guide → logging-guide}/SKILL.md +6 -6
- package/bundled/locales/zh-CN/skills/methodology-system/SKILL.md +78 -0
- package/bundled/locales/zh-CN/skills/{claude-code/methodology-system → methodology-system}/create-methodology.md +2 -2
- package/bundled/locales/zh-CN/skills/{claude-code/methodology-system/SKILL.md → methodology-system/guide.md} +2 -2
- package/bundled/locales/zh-CN/skills/{claude-code/methodology-system → methodology-system}/runtime.md +3 -3
- package/bundled/locales/zh-CN/skills/project-discovery/SKILL.md +66 -0
- package/bundled/locales/zh-CN/skills/project-discovery/guide.md +371 -0
- package/bundled/locales/zh-CN/skills/{claude-code/project-structure-guide → project-structure-guide}/SKILL.md +4 -4
- package/bundled/locales/zh-CN/skills/{claude-code/project-structure-guide → project-structure-guide}/language-patterns.md +1 -1
- package/bundled/locales/zh-CN/skills/refactoring-assistant/SKILL.md +67 -0
- package/bundled/locales/zh-CN/skills/{claude-code/refactoring-assistant/SKILL.md → refactoring-assistant/guide.md} +7 -8
- package/bundled/locales/zh-CN/skills/release-standards/SKILL.md +64 -0
- package/bundled/locales/zh-CN/skills/{claude-code/release-standards → release-standards}/changelog-format.md +3 -3
- package/bundled/locales/zh-CN/skills/{claude-code/release-standards/SKILL.md → release-standards/guide.md} +5 -6
- package/bundled/locales/zh-CN/skills/{claude-code/release-standards → release-standards}/release-workflow.md +7 -7
- package/bundled/locales/zh-CN/skills/{claude-code/release-standards → release-standards}/semantic-versioning.md +3 -3
- package/bundled/locales/zh-CN/skills/requirement-assistant/SKILL.md +67 -0
- package/bundled/locales/zh-CN/skills/{claude-code/requirement-assistant/SKILL.md → requirement-assistant/guide.md} +4 -5
- package/bundled/locales/zh-CN/skills/{claude-code/requirement-assistant → requirement-assistant}/requirement-checklist.md +3 -3
- package/bundled/locales/zh-CN/skills/{claude-code/requirement-assistant → requirement-assistant}/requirement-writing.md +3 -3
- package/bundled/locales/zh-CN/skills/reverse-engineer/SKILL.md +67 -0
- package/bundled/locales/zh-CN/skills/{claude-code/reverse-engineer → reverse-engineer}/bdd-extraction.md +2 -2
- package/bundled/locales/zh-CN/skills/{claude-code/reverse-engineer/SKILL.md → reverse-engineer/guide.md} +17 -18
- package/bundled/locales/zh-CN/skills/{claude-code/reverse-engineer → reverse-engineer}/tdd-analysis.md +2 -2
- package/bundled/locales/zh-CN/skills/{claude-code/reverse-engineer → reverse-engineer}/workflow.md +3 -3
- package/bundled/locales/zh-CN/skills/spec-driven-dev/SKILL.md +75 -0
- package/bundled/locales/zh-CN/skills/{claude-code/spec-driven-dev/SKILL.md → spec-driven-dev/guide.md} +10 -11
- package/bundled/locales/zh-CN/skills/tdd-assistant/SKILL.md +66 -0
- package/bundled/locales/zh-CN/skills/{claude-code/tdd-assistant/SKILL.md → tdd-assistant/guide.md} +12 -16
- package/bundled/locales/zh-CN/skills/{claude-code/tdd-assistant → tdd-assistant}/language-examples.md +3 -3
- package/bundled/locales/zh-CN/skills/{claude-code/tdd-assistant → tdd-assistant}/tdd-workflow.md +3 -3
- package/bundled/locales/zh-CN/skills/test-coverage-assistant/SKILL.md +65 -0
- package/bundled/locales/zh-CN/skills/test-coverage-assistant/guide.md +284 -0
- package/bundled/locales/zh-CN/skills/{claude-code/testing-guide → testing-guide}/SKILL.md +8 -8
- package/bundled/locales/zh-CN/skills/{claude-code/testing-guide → testing-guide}/testing-pyramid.md +4 -4
- package/bundled/locales/zh-CN/skills/{cline → tools/cline}/README.md +1 -1
- package/bundled/locales/zh-CN/skills/{copilot → tools/copilot}/README.md +1 -1
- package/bundled/locales/zh-CN/skills/{copilot → tools/copilot}/copilot-instructions.md +1 -1
- package/bundled/locales/zh-CN/skills/{cursor → tools/cursor}/README.md +1 -1
- package/bundled/locales/zh-CN/skills/{windsurf → tools/windsurf}/README.md +1 -1
- package/bundled/locales/zh-TW/CHANGELOG.md +16 -16
- package/bundled/locales/zh-TW/CLAUDE.md +3 -3
- package/bundled/locales/zh-TW/MAINTENANCE.md +7 -7
- package/bundled/locales/zh-TW/README.md +13 -7
- package/bundled/locales/zh-TW/STANDARDS-MAPPING.md +1 -1
- package/bundled/locales/zh-TW/adoption/ADOPTION-GUIDE.md +4 -4
- package/bundled/locales/zh-TW/adoption/DAILY-WORKFLOW-GUIDE.md +66 -7
- package/bundled/locales/zh-TW/adoption/STATIC-DYNAMIC-GUIDE.md +22 -22
- package/bundled/locales/zh-TW/adoption/checklists/enterprise.md +5 -5
- package/bundled/locales/zh-TW/adoption/checklists/minimal.md +4 -4
- package/bundled/locales/zh-TW/adoption/checklists/recommended.md +5 -5
- package/bundled/locales/zh-TW/ai/MAINTENANCE.md +13 -13
- package/bundled/locales/zh-TW/ai/standards/anti-hallucination.ai.yaml +3 -2
- package/bundled/locales/zh-TW/ai/standards/git-workflow.ai.yaml +4 -3
- package/bundled/locales/zh-TW/ai/standards/spec-driven-development.ai.yaml +3 -3
- package/bundled/locales/zh-TW/ai/standards/testing.ai.yaml +1 -0
- package/bundled/locales/zh-TW/core/ai-instruction-standards.md +1 -1
- package/bundled/locales/zh-TW/core/anti-hallucination.md +38 -701
- package/bundled/locales/zh-TW/core/changelog-standards.md +1 -1
- package/bundled/locales/zh-TW/core/checkin-standards.md +18 -5
- package/bundled/locales/zh-TW/core/code-review-checklist.md +1 -1
- package/bundled/locales/zh-TW/core/commit-message-guide.md +1 -1
- package/bundled/locales/zh-TW/core/developer-memory.md +576 -0
- package/bundled/locales/zh-TW/core/documentation-structure.md +115 -22
- package/bundled/locales/zh-TW/core/documentation-writing-standards.md +126 -5
- package/bundled/locales/zh-TW/core/forward-derivation-standards.md +2 -2
- package/bundled/locales/zh-TW/core/git-workflow.md +38 -812
- package/bundled/locales/zh-TW/core/guides/anti-hallucination-guide.md +779 -0
- package/bundled/locales/zh-TW/core/guides/git-workflow-guide.md +1016 -0
- package/bundled/locales/zh-TW/core/guides/refactoring-guide.md +864 -0
- package/bundled/locales/zh-TW/core/guides/testing-guide.md +2280 -0
- package/bundled/locales/zh-TW/core/logging-standards.md +159 -4
- package/bundled/locales/zh-TW/core/project-structure.md +102 -9
- package/bundled/locales/zh-TW/core/refactoring-standards.md +37 -823
- package/bundled/locales/zh-TW/core/reverse-engineering-standards.md +6 -6
- package/bundled/locales/zh-TW/core/spec-driven-development.md +17 -268
- package/bundled/locales/zh-TW/core/test-completeness-dimensions.md +128 -14
- package/bundled/locales/zh-TW/core/test-driven-development.md +20 -983
- package/bundled/locales/zh-TW/core/testing-standards.md +120 -2105
- package/bundled/locales/zh-TW/core/versioning.md +13 -55
- package/bundled/locales/zh-TW/docs/AI-AGENT-ROADMAP.md +90 -51
- package/bundled/locales/zh-TW/docs/CHEATSHEET.md +184 -0
- package/bundled/locales/zh-TW/docs/CLI-FLOW.md +239 -0
- package/bundled/locales/zh-TW/docs/FEATURE-REFERENCE.md +320 -0
- package/bundled/locales/zh-TW/docs/MIGRATION-V5.md +71 -0
- package/bundled/locales/zh-TW/docs/OPERATION-WORKFLOW.md +42 -42
- package/bundled/locales/zh-TW/docs/STANDARDS-REFERENCE.md +440 -0
- package/bundled/locales/zh-TW/docs/USAGE-MODES-COMPARISON.md +1 -1
- package/bundled/locales/zh-TW/docs/WINDOWS-GUIDE.md +1 -1
- package/bundled/locales/zh-TW/integrations/claude-code/README.md +44 -0
- package/bundled/locales/zh-TW/integrations/github-copilot/copilot-instructions.md +3 -3
- package/bundled/locales/zh-TW/integrations/github-copilot/skills-mapping.md +18 -6
- package/bundled/locales/zh-TW/integrations/opencode/skills-mapping.md +22 -10
- package/bundled/locales/zh-TW/methodologies/guides/sdd-guide.md +338 -0
- package/bundled/locales/zh-TW/methodologies/guides/tdd-guide.md +1055 -0
- package/bundled/locales/zh-TW/options/commit-message/bilingual.md +1 -1
- package/bundled/locales/zh-TW/options/commit-message/english.md +1 -1
- package/bundled/locales/zh-TW/options/commit-message/traditional-chinese.md +1 -1
- package/bundled/locales/zh-TW/options/git-workflow/gitflow.md +1 -1
- package/bundled/locales/zh-TW/options/git-workflow/github-flow.md +1 -1
- package/bundled/locales/zh-TW/options/git-workflow/merge-commit.md +1 -1
- package/bundled/locales/zh-TW/options/git-workflow/rebase-ff.md +1 -1
- package/bundled/locales/zh-TW/options/git-workflow/squash-merge.md +1 -1
- package/bundled/locales/zh-TW/options/git-workflow/trunk-based.md +1 -1
- package/bundled/locales/zh-TW/options/project-structure/dotnet.md +1 -1
- package/bundled/locales/zh-TW/options/project-structure/go.md +1 -1
- package/bundled/locales/zh-TW/options/project-structure/java.md +1 -1
- package/bundled/locales/zh-TW/options/project-structure/nodejs.md +1 -1
- package/bundled/locales/zh-TW/options/project-structure/python.md +1 -1
- package/bundled/locales/zh-TW/options/testing/e2e-testing.md +1 -1
- package/bundled/locales/zh-TW/options/testing/integration-testing.md +1 -1
- package/bundled/locales/zh-TW/options/testing/system-testing.md +1 -1
- package/bundled/locales/zh-TW/options/testing/unit-testing.md +1 -1
- package/bundled/locales/zh-TW/skills/{claude-code/CONTRIBUTING.template.md → CONTRIBUTING.template.md} +2 -2
- package/bundled/locales/zh-TW/skills/README.md +131 -79
- package/bundled/locales/zh-TW/skills/agents/README.md +281 -0
- package/bundled/locales/zh-TW/skills/{claude-code/ai-collaboration-standards → ai-collaboration-standards}/SKILL.md +7 -7
- package/bundled/locales/zh-TW/skills/{claude-code/ai-collaboration-standards → ai-collaboration-standards}/anti-hallucination.md +8 -8
- package/bundled/locales/zh-TW/skills/{claude-code/ai-collaboration-standards → ai-collaboration-standards}/certainty-labels.md +8 -8
- package/bundled/locales/zh-TW/skills/ai-friendly-architecture/SKILL.md +221 -0
- package/bundled/locales/zh-TW/skills/ai-instruction-standards/SKILL.md +214 -0
- package/bundled/locales/zh-TW/skills/atdd-assistant/SKILL.md +71 -0
- package/bundled/locales/zh-TW/skills/atdd-assistant/acceptance-criteria-guide.md +428 -0
- package/bundled/locales/zh-TW/skills/atdd-assistant/atdd-workflow.md +484 -0
- package/bundled/locales/zh-TW/skills/atdd-assistant/guide.md +368 -0
- package/bundled/locales/zh-TW/skills/bdd-assistant/SKILL.md +68 -0
- package/bundled/locales/zh-TW/skills/bdd-assistant/bdd-workflow.md +406 -0
- package/bundled/locales/zh-TW/skills/bdd-assistant/gherkin-guide.md +454 -0
- package/bundled/locales/zh-TW/skills/bdd-assistant/guide.md +324 -0
- package/bundled/locales/zh-TW/skills/changelog-guide/SKILL.md +64 -0
- package/bundled/locales/zh-TW/skills/{claude-code/changelog-guide/SKILL.md → changelog-guide/guide.md} +6 -7
- package/bundled/locales/zh-TW/skills/checkin-assistant/SKILL.md +56 -0
- package/bundled/locales/zh-TW/skills/{claude-code/checkin-assistant/SKILL.md → checkin-assistant/guide.md} +6 -7
- package/bundled/locales/zh-TW/skills/code-review-assistant/SKILL.md +56 -0
- package/bundled/locales/zh-TW/skills/{claude-code/code-review-assistant → code-review-assistant}/checkin-checklist.md +4 -4
- package/bundled/locales/zh-TW/skills/{claude-code/code-review-assistant/SKILL.md → code-review-assistant/guide.md} +2 -3
- package/bundled/locales/zh-TW/skills/{claude-code/code-review-assistant → code-review-assistant}/review-checklist.md +4 -4
- package/bundled/locales/zh-TW/skills/{claude-code/commands → commands}/bdd.md +2 -2
- package/bundled/locales/zh-TW/skills/{claude-code/commands → commands}/methodology.md +3 -3
- package/bundled/locales/zh-TW/skills/{claude-code/commands → commands}/refactor.md +3 -3
- package/bundled/locales/zh-TW/skills/commit-standards/SKILL.md +61 -0
- package/bundled/locales/zh-TW/skills/{claude-code/commit-standards → commit-standards}/conventional-commits.md +4 -4
- package/bundled/locales/zh-TW/skills/{claude-code/commit-standards/SKILL.md → commit-standards/guide.md} +5 -6
- package/bundled/locales/zh-TW/skills/{claude-code/commit-standards → commit-standards}/language-options.md +3 -3
- package/bundled/locales/zh-TW/skills/docs-generator/SKILL.md +59 -0
- package/bundled/locales/zh-TW/skills/docs-generator/guide.md +262 -0
- package/bundled/locales/zh-TW/skills/{claude-code/documentation-guide → documentation-guide}/SKILL.md +7 -8
- package/bundled/locales/zh-TW/skills/{claude-code/documentation-guide → documentation-guide}/documentation-structure.md +4 -4
- package/bundled/locales/zh-TW/skills/{claude-code/documentation-guide → documentation-guide}/readme-template.md +3 -3
- package/bundled/locales/zh-TW/skills/{claude-code/error-code-guide → error-code-guide}/SKILL.md +6 -6
- package/bundled/locales/zh-TW/skills/forward-derivation/SKILL.md +62 -0
- package/bundled/locales/zh-TW/skills/{claude-code/forward-derivation/SKILL.md → forward-derivation/guide.md} +24 -19
- package/bundled/locales/zh-TW/skills/{claude-code/git-workflow-guide → git-workflow-guide}/SKILL.md +3 -3
- package/bundled/locales/zh-TW/skills/{claude-code/git-workflow-guide → git-workflow-guide}/branch-naming.md +3 -3
- package/bundled/locales/zh-TW/skills/{claude-code/git-workflow-guide → git-workflow-guide}/git-workflow.md +4 -4
- package/bundled/locales/zh-TW/skills/{claude-code/logging-guide → logging-guide}/SKILL.md +6 -6
- package/bundled/locales/zh-TW/skills/methodology-system/SKILL.md +78 -0
- package/bundled/locales/zh-TW/skills/{claude-code/methodology-system → methodology-system}/create-methodology.md +2 -2
- package/bundled/locales/zh-TW/skills/{claude-code/methodology-system/SKILL.md → methodology-system/guide.md} +2 -2
- package/bundled/locales/zh-TW/skills/{claude-code/methodology-system → methodology-system}/runtime.md +3 -3
- package/bundled/locales/zh-TW/skills/project-discovery/SKILL.md +66 -0
- package/bundled/locales/zh-TW/skills/project-discovery/guide.md +371 -0
- package/bundled/locales/zh-TW/skills/project-discovery/workflow.md +574 -0
- package/bundled/locales/zh-TW/skills/{claude-code/project-structure-guide → project-structure-guide}/SKILL.md +4 -4
- package/bundled/locales/zh-TW/skills/{claude-code/project-structure-guide → project-structure-guide}/language-patterns.md +1 -1
- package/bundled/locales/zh-TW/skills/refactoring-assistant/SKILL.md +67 -0
- package/bundled/locales/zh-TW/skills/{claude-code/refactoring-assistant/SKILL.md → refactoring-assistant/guide.md} +7 -8
- package/bundled/locales/zh-TW/skills/release-standards/SKILL.md +64 -0
- package/bundled/locales/zh-TW/skills/{claude-code/release-standards → release-standards}/changelog-format.md +3 -3
- package/bundled/locales/zh-TW/skills/{claude-code/release-standards/SKILL.md → release-standards/guide.md} +2 -3
- package/bundled/locales/zh-TW/skills/{claude-code/release-standards → release-standards}/release-workflow.md +60 -28
- package/bundled/locales/zh-TW/skills/{claude-code/release-standards → release-standards}/semantic-versioning.md +3 -3
- package/bundled/locales/zh-TW/skills/requirement-assistant/SKILL.md +67 -0
- package/bundled/locales/zh-TW/skills/{claude-code/requirement-assistant/SKILL.md → requirement-assistant/guide.md} +2 -3
- package/bundled/locales/zh-TW/skills/{claude-code/requirement-assistant → requirement-assistant}/requirement-checklist.md +3 -3
- package/bundled/locales/zh-TW/skills/{claude-code/requirement-assistant → requirement-assistant}/requirement-writing.md +3 -3
- package/bundled/locales/zh-TW/skills/reverse-engineer/SKILL.md +67 -0
- package/bundled/locales/zh-TW/skills/{claude-code/reverse-engineer → reverse-engineer}/bdd-extraction.md +2 -2
- package/bundled/locales/zh-TW/skills/{claude-code/reverse-engineer/SKILL.md → reverse-engineer/guide.md} +17 -18
- package/bundled/locales/zh-TW/skills/{claude-code/reverse-engineer → reverse-engineer}/tdd-analysis.md +2 -2
- package/bundled/locales/zh-TW/skills/{claude-code/reverse-engineer → reverse-engineer}/workflow.md +3 -3
- package/bundled/locales/zh-TW/skills/spec-driven-dev/SKILL.md +75 -0
- package/bundled/locales/zh-TW/skills/{claude-code/spec-driven-dev/SKILL.md → spec-driven-dev/guide.md} +9 -10
- package/bundled/locales/zh-TW/skills/tdd-assistant/SKILL.md +66 -0
- package/bundled/locales/zh-TW/skills/{claude-code/tdd-assistant/SKILL.md → tdd-assistant/guide.md} +9 -10
- package/bundled/locales/zh-TW/skills/{claude-code/tdd-assistant → tdd-assistant}/language-examples.md +3 -3
- package/bundled/locales/zh-TW/skills/{claude-code/tdd-assistant → tdd-assistant}/tdd-workflow.md +3 -3
- package/bundled/locales/zh-TW/skills/test-coverage-assistant/SKILL.md +65 -0
- package/bundled/locales/zh-TW/skills/{claude-code/test-coverage-assistant/SKILL.md → test-coverage-assistant/guide.md} +27 -24
- package/bundled/locales/zh-TW/skills/{claude-code/testing-guide → testing-guide}/SKILL.md +6 -6
- package/bundled/locales/zh-TW/skills/{claude-code/testing-guide → testing-guide}/testing-pyramid.md +4 -4
- package/bundled/locales/zh-TW/skills/{cline → tools/cline}/README.md +1 -1
- package/bundled/locales/zh-TW/skills/{copilot → tools/copilot}/README.md +1 -1
- package/bundled/locales/zh-TW/skills/{copilot → tools/copilot}/copilot-instructions.md +1 -1
- package/bundled/locales/zh-TW/skills/{cursor → tools/cursor}/README.md +1 -1
- package/bundled/locales/zh-TW/skills/{windsurf → tools/windsurf}/README.md +1 -1
- package/bundled/skills/INTEGRATION-GUIDE.md +210 -0
- package/bundled/skills/README.md +95 -0
- package/bundled/skills/_shared/README.md +60 -0
- package/bundled/skills/{claude-code/agents → agents}/README.md +2 -2
- package/bundled/skills/{claude-code/agents → agents}/code-architect.md +1 -1
- package/bundled/skills/{claude-code/agents → agents}/doc-writer.md +1 -1
- package/bundled/skills/{claude-code/agents → agents}/reviewer.md +1 -1
- package/bundled/skills/{claude-code/agents → agents}/spec-analyst.md +1 -1
- package/bundled/skills/{claude-code/agents → agents}/test-specialist.md +1 -1
- package/bundled/skills/{claude-code/ai-collaboration-standards → ai-collaboration-standards}/SKILL.md +28 -5
- package/bundled/skills/{claude-code/ai-collaboration-standards → ai-collaboration-standards}/anti-hallucination.md +24 -5
- package/bundled/skills/{claude-code/ai-collaboration-standards → ai-collaboration-standards}/certainty-labels.md +31 -6
- package/bundled/skills/ai-friendly-architecture/SKILL.md +216 -0
- package/bundled/skills/ai-instruction-standards/SKILL.md +209 -0
- package/bundled/skills/atdd-assistant/SKILL.md +74 -0
- package/bundled/skills/{claude-code/atdd-assistant → atdd-assistant}/acceptance-criteria-guide.md +1 -1
- package/bundled/skills/{claude-code/atdd-assistant → atdd-assistant}/atdd-workflow.md +1 -1
- package/bundled/skills/{claude-code/atdd-assistant/SKILL.md → atdd-assistant/guide.md} +11 -11
- package/bundled/skills/bdd-assistant/SKILL.md +70 -0
- package/bundled/skills/{claude-code/bdd-assistant → bdd-assistant}/bdd-workflow.md +1 -1
- package/bundled/skills/{claude-code/bdd-assistant → bdd-assistant}/gherkin-guide.md +1 -1
- package/bundled/skills/{claude-code/bdd-assistant/SKILL.md → bdd-assistant/guide.md} +11 -11
- package/bundled/skills/changelog-guide/SKILL.md +66 -0
- package/bundled/skills/{claude-code/changelog-guide/SKILL.md → changelog-guide/guide.md} +8 -6
- package/bundled/skills/checkin-assistant/SKILL.md +52 -0
- package/bundled/skills/{claude-code/checkin-assistant/SKILL.md → checkin-assistant/guide.md} +6 -6
- package/bundled/skills/code-review-assistant/SKILL.md +53 -0
- package/bundled/skills/{claude-code/code-review-assistant → code-review-assistant}/checkin-checklist.md +3 -3
- package/bundled/skills/{claude-code/code-review-assistant/SKILL.md → code-review-assistant/guide.md} +7 -5
- package/bundled/skills/{claude-code/code-review-assistant → code-review-assistant}/review-checklist.md +3 -3
- package/bundled/skills/commands/COMMAND-FAMILY-OVERVIEW.md +290 -0
- package/bundled/skills/{claude-code/commands → commands}/README.md +13 -3
- package/bundled/skills/{claude-code/commands → commands}/atdd.md +3 -3
- package/bundled/skills/{claude-code/commands → commands}/bdd.md +2 -2
- package/bundled/skills/commands/changelog.md +58 -0
- package/bundled/skills/{claude-code/commands → commands}/check.md +1 -1
- package/bundled/skills/commands/checkin.md +53 -0
- package/bundled/skills/{claude-code/commands → commands}/commit.md +3 -3
- package/bundled/skills/{claude-code/commands → commands}/config.md +1 -1
- package/bundled/skills/{claude-code/commands → commands}/coverage.md +5 -4
- package/bundled/skills/commands/derive-all.md +53 -0
- package/bundled/skills/commands/derive-atdd.md +49 -0
- package/bundled/skills/commands/derive-bdd.md +47 -0
- package/bundled/skills/commands/derive-tdd.md +48 -0
- package/bundled/skills/commands/derive.md +72 -0
- package/bundled/skills/commands/discover.md +80 -0
- package/bundled/skills/commands/docgen.md +61 -0
- package/bundled/skills/commands/docs.md +59 -0
- package/bundled/skills/commands/guide.md +44 -0
- package/bundled/skills/{claude-code/commands → commands}/init.md +2 -2
- package/bundled/skills/{claude-code/commands → commands}/methodology.md +32 -16
- package/bundled/skills/{claude-code/commands → commands}/refactor.md +2 -2
- package/bundled/skills/commands/release.md +56 -0
- package/bundled/skills/{claude-code/commands → commands}/requirement.md +3 -3
- package/bundled/skills/commands/reverse-bdd.md +47 -0
- package/bundled/skills/commands/reverse-sdd.md +51 -0
- package/bundled/skills/commands/reverse-tdd.md +51 -0
- package/bundled/skills/commands/reverse.md +63 -0
- package/bundled/skills/{claude-code/commands → commands}/review.md +3 -3
- package/bundled/skills/commands/sdd.md +135 -0
- package/bundled/skills/{claude-code/commands → commands}/tdd.md +3 -3
- package/bundled/skills/{claude-code/commands → commands}/update.md +2 -2
- package/bundled/skills/commit-standards/SKILL.md +60 -0
- package/bundled/skills/{claude-code/commit-standards → commit-standards}/conventional-commits.md +3 -3
- package/bundled/skills/{claude-code/commit-standards/SKILL.md → commit-standards/guide.md} +17 -5
- package/bundled/skills/{claude-code/commit-standards → commit-standards}/language-options.md +2 -2
- package/bundled/skills/docs-generator/SKILL.md +69 -0
- package/bundled/skills/docs-generator/guide.md +258 -0
- package/bundled/skills/{claude-code/documentation-guide → documentation-guide}/SKILL.md +7 -7
- package/bundled/skills/{claude-code/documentation-guide → documentation-guide}/documentation-structure.md +3 -3
- package/bundled/skills/{claude-code/documentation-guide → documentation-guide}/readme-template.md +2 -2
- package/bundled/skills/{claude-code/error-code-guide → error-code-guide}/SKILL.md +7 -5
- package/bundled/skills/forward-derivation/SKILL.md +61 -0
- package/bundled/skills/{claude-code/forward-derivation/SKILL.md → forward-derivation/guide.md} +44 -29
- package/bundled/skills/{claude-code/git-workflow-guide → git-workflow-guide}/SKILL.md +7 -5
- package/bundled/skills/{claude-code/git-workflow-guide → git-workflow-guide}/branch-naming.md +2 -2
- package/bundled/skills/{claude-code/git-workflow-guide → git-workflow-guide}/git-workflow.md +3 -3
- package/bundled/skills/{claude-code/logging-guide → logging-guide}/SKILL.md +7 -5
- package/bundled/skills/methodology-system/SKILL.md +75 -0
- package/bundled/skills/{claude-code/methodology-system → methodology-system}/create-methodology.md +1 -1
- package/bundled/skills/{claude-code/methodology-system/SKILL.md → methodology-system/guide.md} +51 -16
- package/bundled/skills/methodology-system/integrated-flow.md +454 -0
- package/bundled/skills/{claude-code/methodology-system → methodology-system}/runtime.md +2 -2
- package/bundled/skills/project-discovery/SKILL.md +63 -0
- package/bundled/skills/project-discovery/guide.md +367 -0
- package/bundled/skills/project-discovery/workflow.md +566 -0
- package/bundled/skills/{claude-code/project-structure-guide → project-structure-guide}/SKILL.md +14 -4
- package/bundled/skills/refactoring-assistant/SKILL.md +78 -0
- package/bundled/skills/{claude-code/refactoring-assistant/SKILL.md → refactoring-assistant/guide.md} +7 -7
- package/bundled/skills/release-standards/SKILL.md +61 -0
- package/bundled/skills/{claude-code/release-standards → release-standards}/changelog-format.md +2 -2
- package/bundled/skills/{claude-code/release-standards/SKILL.md → release-standards/guide.md} +7 -5
- package/bundled/skills/{claude-code/release-standards → release-standards}/release-workflow.md +59 -24
- package/bundled/skills/{claude-code/release-standards → release-standards}/semantic-versioning.md +2 -2
- package/bundled/skills/requirement-assistant/SKILL.md +66 -0
- package/bundled/skills/{claude-code/requirement-assistant/SKILL.md → requirement-assistant/guide.md} +14 -6
- package/bundled/skills/{claude-code/requirement-assistant → requirement-assistant}/requirement-checklist.md +2 -2
- package/bundled/skills/{claude-code/requirement-assistant → requirement-assistant}/requirement-writing.md +2 -2
- package/bundled/skills/reverse-engineer/SKILL.md +64 -0
- package/bundled/skills/{claude-code/reverse-engineer → reverse-engineer}/bdd-extraction.md +1 -1
- package/bundled/skills/{claude-code/reverse-engineer/SKILL.md → reverse-engineer/guide.md} +21 -18
- package/bundled/skills/{claude-code/reverse-engineer → reverse-engineer}/tdd-analysis.md +1 -1
- package/bundled/skills/{claude-code/reverse-engineer → reverse-engineer}/workflow.md +2 -2
- package/bundled/skills/spec-driven-dev/SKILL.md +80 -0
- package/bundled/skills/{claude-code/spec-driven-dev/SKILL.md → spec-driven-dev/guide.md} +50 -8
- package/bundled/skills/tdd-assistant/SKILL.md +65 -0
- package/bundled/skills/{claude-code/tdd-assistant/SKILL.md → tdd-assistant/guide.md} +10 -10
- package/bundled/skills/{claude-code/tdd-assistant → tdd-assistant}/language-examples.md +3 -3
- package/bundled/skills/{claude-code/tdd-assistant → tdd-assistant}/tdd-workflow.md +2 -2
- package/bundled/skills/test-coverage-assistant/SKILL.md +63 -0
- package/bundled/skills/{claude-code/test-coverage-assistant/SKILL.md → test-coverage-assistant/guide.md} +39 -24
- package/bundled/skills/{claude-code/testing-guide → testing-guide}/SKILL.md +12 -7
- package/bundled/skills/{claude-code/testing-guide → testing-guide}/testing-pyramid.md +3 -3
- package/bundled/skills/testing-guide/testing-theory.md +2291 -0
- package/bundled/skills/tools/cline/.clinerules +79 -0
- package/bundled/skills/tools/cline/README.md +50 -0
- package/bundled/skills/tools/copilot/README.md +99 -0
- package/bundled/skills/tools/copilot/copilot-instructions.md +71 -0
- package/bundled/skills/tools/cursor/.cursorrules +101 -0
- package/bundled/skills/tools/cursor/README.md +50 -0
- package/bundled/skills/tools/windsurf/.windsurfrules +76 -0
- package/bundled/skills/tools/windsurf/README.md +51 -0
- package/bundled/skills/{claude-code/workflows → workflows}/README.md +1 -1
- package/bundled/skills/workflows/release.workflow.yaml +893 -0
- package/package.json +4 -1
- package/src/commands/check.js +195 -130
- package/src/commands/config.js +1262 -0
- package/src/commands/configure.js +3 -950
- package/src/commands/fix.js +53 -0
- package/src/commands/hitl.js +19 -0
- package/src/commands/init.js +320 -1030
- package/src/commands/list.js +1 -1
- package/src/commands/simulate.js +61 -0
- package/src/commands/spec.js +288 -0
- package/src/commands/start.js +373 -0
- package/src/commands/sweep.js +142 -0
- package/src/commands/update.js +136 -19
- package/src/commands/workflow.js +265 -1
- package/src/config/ai-agent-paths.js +89 -29
- package/src/core/constants.js +7 -1
- package/src/core/manifest.js +1 -0
- package/src/flows/init-flow.js +243 -0
- package/src/hitl/checkpoint.js +80 -0
- package/src/hitl/classifier.js +54 -0
- package/src/hitl/manager.js +88 -0
- package/src/i18n/messages.js +907 -99
- package/src/index.js +1 -0
- package/src/installers/integration-installer.js +237 -0
- package/src/installers/manifest-installer.js +131 -0
- package/src/installers/skills-installer.js +286 -0
- package/src/installers/standards-installer.js +193 -0
- package/src/missions/MissionManager.js +501 -0
- package/src/prompts/init.js +228 -130
- package/src/prompts/integrations.js +13 -1
- package/src/schemas/standard.schema.json +117 -0
- package/src/utils/agents-installer.js +2 -2
- package/src/utils/config-loader.js +47 -0
- package/src/utils/config-manager.js +108 -0
- package/src/utils/config-merger.js +47 -0
- package/src/utils/github.js +22 -18
- package/src/utils/inquirer-patch.js +98 -0
- package/src/utils/integration-generator.js +392 -58
- package/src/utils/reference-sync.js +69 -19
- package/src/utils/skills-installer.js +6 -3
- package/src/utils/standard-fixer.js +141 -0
- package/src/utils/standard-validator.js +329 -0
- package/src/utils/workflow-executor.js +886 -0
- package/src/utils/workflow-state.js +404 -0
- package/src/utils/workflows-installer.js +2 -2
- package/src/vibe/auto-sweep.js +349 -0
- package/src/vibe/micro-spec.js +428 -0
- package/standards-registry.json +278 -102
- package/bundled/locales/zh-CN/skills/claude-code/README.md +0 -174
- package/bundled/locales/zh-CN/skills/claude-code/test-coverage-assistant/SKILL.md +0 -282
- package/bundled/locales/zh-TW/skills/claude-code/README.md +0 -174
- package/bundled/skills/claude-code/README.md +0 -215
- package/bundled/skills/claude-code/commands/changelog.md +0 -57
- package/bundled/skills/claude-code/commands/derive-all.md +0 -214
- package/bundled/skills/claude-code/commands/derive-atdd.md +0 -177
- package/bundled/skills/claude-code/commands/derive-bdd.md +0 -158
- package/bundled/skills/claude-code/commands/derive-tdd.md +0 -259
- package/bundled/skills/claude-code/commands/docs.md +0 -75
- package/bundled/skills/claude-code/commands/release.md +0 -50
- package/bundled/skills/claude-code/commands/reverse-bdd.md +0 -264
- package/bundled/skills/claude-code/commands/reverse-spec.md +0 -185
- package/bundled/skills/claude-code/commands/reverse-tdd.md +0 -351
- package/bundled/skills/claude-code/commands/spec.md +0 -69
- package/bundled/skills/claude-code/methodology-system/integrated-flow.md +0 -322
- /package/bundled/skills/{claude-code/CONTRIBUTING.template.md → CONTRIBUTING.template.md} +0 -0
- /package/bundled/skills/{claude-code/ai → ai}/standards/checkin.ai.yaml +0 -0
- /package/bundled/skills/{claude-code/ai → ai}/standards/commit.ai.yaml +0 -0
- /package/bundled/skills/{claude-code/ai → ai}/standards/refactoring.ai.yaml +0 -0
- /package/bundled/skills/{claude-code/ai → ai}/standards/testing.ai.yaml +0 -0
- /package/bundled/skills/{claude-code/project-structure-guide → project-structure-guide}/language-patterns.md +0 -0
- /package/bundled/skills/{claude-code/workflows → workflows}/code-review.workflow.yaml +0 -0
- /package/bundled/skills/{claude-code/workflows → workflows}/feature-dev.workflow.yaml +0 -0
- /package/bundled/skills/{claude-code/workflows → workflows}/integrated-flow.workflow.yaml +0 -0
- /package/bundled/skills/{claude-code/workflows → workflows}/large-codebase-analysis.workflow.yaml +0 -0
|
@@ -0,0 +1,508 @@
|
|
|
1
|
+
# Performance Guide
|
|
2
|
+
|
|
3
|
+
> **Language**: English | [繁體中文](../../locales/zh-TW/core/guides/performance-guide.md)
|
|
4
|
+
|
|
5
|
+
**Version**: 1.0.0
|
|
6
|
+
**Last Updated**: 2026-01-29
|
|
7
|
+
**Related Standard**: [Performance Standards](../performance-standards.md)
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Purpose
|
|
12
|
+
|
|
13
|
+
This guide provides detailed explanations, optimization techniques, and educational content for software performance engineering. For performance budgets, thresholds, and mandatory checklists, see [Performance Standards](../performance-standards.md).
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Table of Contents
|
|
18
|
+
|
|
19
|
+
1. [Performance Fundamentals](#performance-fundamentals)
|
|
20
|
+
2. [Performance Testing Deep Dive](#performance-testing-deep-dive)
|
|
21
|
+
3. [Metrics Explained](#metrics-explained)
|
|
22
|
+
4. [Optimization Strategies](#optimization-strategies)
|
|
23
|
+
5. [Database Performance Tuning](#database-performance-tuning)
|
|
24
|
+
6. [API Performance Optimization](#api-performance-optimization)
|
|
25
|
+
7. [Frontend Performance Techniques](#frontend-performance-techniques)
|
|
26
|
+
8. [Caching Architecture](#caching-architecture)
|
|
27
|
+
9. [Monitoring and Observability](#monitoring-and-observability)
|
|
28
|
+
10. [Capacity Planning Process](#capacity-planning-process)
|
|
29
|
+
11. [References](#references)
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Performance Fundamentals
|
|
34
|
+
|
|
35
|
+
### ISO 25010 Performance Efficiency
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
39
|
+
│ ISO 25010: Performance Efficiency │
|
|
40
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
41
|
+
│ │
|
|
42
|
+
│ Performance Efficiency │
|
|
43
|
+
│ ├── Time Behavior │
|
|
44
|
+
│ │ └── Response time, processing time, throughput │
|
|
45
|
+
│ │ │
|
|
46
|
+
│ ├── Resource Utilization │
|
|
47
|
+
│ │ └── CPU, memory, disk, network usage │
|
|
48
|
+
│ │ │
|
|
49
|
+
│ └── Capacity │
|
|
50
|
+
│ └── Maximum limits that meet requirements │
|
|
51
|
+
│ │
|
|
52
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
ISO 25010 defines performance efficiency as one of the eight quality characteristics. Understanding this framework helps communicate with stakeholders using standardized terminology.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Performance Testing Deep Dive
|
|
60
|
+
|
|
61
|
+
### Testing Types Explained
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
65
|
+
│ Performance Testing Types │
|
|
66
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
67
|
+
│ │
|
|
68
|
+
│ Load Testing │
|
|
69
|
+
│ ├── Purpose: Verify system under expected load │
|
|
70
|
+
│ ├── Duration: 10-60 minutes │
|
|
71
|
+
│ └── Load: Normal to peak expected │
|
|
72
|
+
│ │
|
|
73
|
+
│ Stress Testing │
|
|
74
|
+
│ ├── Purpose: Find breaking point │
|
|
75
|
+
│ ├── Duration: Until failure │
|
|
76
|
+
│ └── Load: Beyond normal capacity │
|
|
77
|
+
│ │
|
|
78
|
+
│ Soak/Endurance Testing │
|
|
79
|
+
│ ├── Purpose: Find memory leaks, resource issues │
|
|
80
|
+
│ ├── Duration: 4-72 hours │
|
|
81
|
+
│ └── Load: Sustained normal load │
|
|
82
|
+
│ │
|
|
83
|
+
│ Spike Testing │
|
|
84
|
+
│ ├── Purpose: Verify sudden load changes │
|
|
85
|
+
│ ├── Duration: Short bursts │
|
|
86
|
+
│ └── Load: Sudden increase/decrease │
|
|
87
|
+
│ │
|
|
88
|
+
│ Scalability Testing │
|
|
89
|
+
│ ├── Purpose: Verify scaling behavior │
|
|
90
|
+
│ ├── Duration: Varies │
|
|
91
|
+
│ └── Load: Incrementally increasing │
|
|
92
|
+
│ │
|
|
93
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### k6 Load Test Example
|
|
97
|
+
|
|
98
|
+
```javascript
|
|
99
|
+
// Example: k6 Load Test Configuration
|
|
100
|
+
import http from 'k6/http';
|
|
101
|
+
import { check, sleep } from 'k6';
|
|
102
|
+
|
|
103
|
+
export const options = {
|
|
104
|
+
stages: [
|
|
105
|
+
{ duration: '2m', target: 100 }, // Ramp up to 100 users
|
|
106
|
+
{ duration: '5m', target: 100 }, // Stay at 100 users
|
|
107
|
+
{ duration: '2m', target: 200 }, // Ramp up to 200 users
|
|
108
|
+
{ duration: '5m', target: 200 }, // Stay at 200 users
|
|
109
|
+
{ duration: '2m', target: 0 }, // Ramp down
|
|
110
|
+
],
|
|
111
|
+
thresholds: {
|
|
112
|
+
'http_req_duration': ['p(95)<200', 'p(99)<500'],
|
|
113
|
+
'http_req_failed': ['rate<0.01'],
|
|
114
|
+
},
|
|
115
|
+
};
|
|
116
|
+
|
|
117
|
+
export default function () {
|
|
118
|
+
const res = http.get('https://api.example.com/users');
|
|
119
|
+
check(res, {
|
|
120
|
+
'status is 200': (r) => r.status === 200,
|
|
121
|
+
'response time < 200ms': (r) => r.timings.duration < 200,
|
|
122
|
+
});
|
|
123
|
+
sleep(1);
|
|
124
|
+
}
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
129
|
+
## Metrics Explained
|
|
130
|
+
|
|
131
|
+
### The RED Method (Request-oriented)
|
|
132
|
+
|
|
133
|
+
The RED method focuses on request-level metrics, ideal for services:
|
|
134
|
+
|
|
135
|
+
| Metric | Description | Why It Matters |
|
|
136
|
+
|--------|-------------|----------------|
|
|
137
|
+
| **R**ate | Requests per second | Indicates traffic volume |
|
|
138
|
+
| **E**rrors | Error rate percentage | Quality indicator |
|
|
139
|
+
| **D**uration | Response time distribution | User experience |
|
|
140
|
+
|
|
141
|
+
### The USE Method (Resource-oriented)
|
|
142
|
+
|
|
143
|
+
The USE method focuses on resource utilization, ideal for infrastructure:
|
|
144
|
+
|
|
145
|
+
| Metric | Description | Warning Sign |
|
|
146
|
+
|--------|-------------|--------------|
|
|
147
|
+
| **U**tilization | % resource busy | > 70% sustained |
|
|
148
|
+
| **S**aturation | Queue length | Growing queue |
|
|
149
|
+
| **E**rrors | Error count | Any increase |
|
|
150
|
+
|
|
151
|
+
### The Four Golden Signals (SRE)
|
|
152
|
+
|
|
153
|
+
Google's SRE book defines these as the most important metrics for any system:
|
|
154
|
+
|
|
155
|
+
```
|
|
156
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
157
|
+
│ The Four Golden Signals (Google SRE) │
|
|
158
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
159
|
+
│ │
|
|
160
|
+
│ 1. LATENCY │
|
|
161
|
+
│ ├── Successful request latency (what users see) │
|
|
162
|
+
│ ├── Failed request latency (often faster, misleading) │
|
|
163
|
+
│ └── Track percentiles: p50, p90, p95, p99 │
|
|
164
|
+
│ │
|
|
165
|
+
│ 2. TRAFFIC │
|
|
166
|
+
│ ├── HTTP requests per second │
|
|
167
|
+
│ ├── Transactions per second │
|
|
168
|
+
│ └── Messages processed per second │
|
|
169
|
+
│ │
|
|
170
|
+
│ 3. ERRORS │
|
|
171
|
+
│ ├── Explicit errors (HTTP 5xx) │
|
|
172
|
+
│ ├── Implicit errors (wrong content, slow response) │
|
|
173
|
+
│ └── Policy violations (response > SLA) │
|
|
174
|
+
│ │
|
|
175
|
+
│ 4. SATURATION │
|
|
176
|
+
│ ├── CPU utilization │
|
|
177
|
+
│ ├── Memory utilization │
|
|
178
|
+
│ ├── Disk I/O utilization │
|
|
179
|
+
│ └── Network bandwidth utilization │
|
|
180
|
+
│ │
|
|
181
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
### Understanding Percentiles
|
|
185
|
+
|
|
186
|
+
| Percentile | Meaning | Use Case |
|
|
187
|
+
|------------|---------|----------|
|
|
188
|
+
| **p50 (median)** | Half of requests are faster | Typical experience |
|
|
189
|
+
| **p90** | 90% of requests are faster | Most users |
|
|
190
|
+
| **p95** | 95% of requests are faster | SLA threshold |
|
|
191
|
+
| **p99** | 99% of requests are faster | Worst case for most |
|
|
192
|
+
| **p99.9** | 99.9% of requests are faster | High-volume systems |
|
|
193
|
+
|
|
194
|
+
**Why percentiles matter more than averages**: Averages can hide problems. If 99% of requests take 100ms but 1% take 10 seconds, the average might look acceptable (199ms) while 1% of users have a terrible experience.
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
## Optimization Strategies
|
|
199
|
+
|
|
200
|
+
### General Optimization Principles
|
|
201
|
+
|
|
202
|
+
```
|
|
203
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
204
|
+
│ Performance Optimization Principles │
|
|
205
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
206
|
+
│ │
|
|
207
|
+
│ 1. MEASURE FIRST │
|
|
208
|
+
│ └── Don't optimize without data (avoid premature opt) │
|
|
209
|
+
│ │
|
|
210
|
+
│ 2. IDENTIFY BOTTLENECK │
|
|
211
|
+
│ └── Focus on the slowest part (Amdahl's Law) │
|
|
212
|
+
│ │
|
|
213
|
+
│ 3. OPTIMIZE THE RIGHT LEVEL │
|
|
214
|
+
│ ├── Algorithm > Data Structure > Code > Hardware │
|
|
215
|
+
│ └── Higher level optimizations have bigger impact │
|
|
216
|
+
│ │
|
|
217
|
+
│ 4. CONSIDER TRADE-OFFS │
|
|
218
|
+
│ ├── Speed vs Memory │
|
|
219
|
+
│ ├── Latency vs Throughput │
|
|
220
|
+
│ └── Consistency vs Availability │
|
|
221
|
+
│ │
|
|
222
|
+
│ 5. VERIFY IMPROVEMENT │
|
|
223
|
+
│ └── Benchmark before and after │
|
|
224
|
+
│ │
|
|
225
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
### Optimization Techniques by Level
|
|
229
|
+
|
|
230
|
+
| Level | Technique | Impact | Effort |
|
|
231
|
+
|-------|-----------|--------|--------|
|
|
232
|
+
| **Algorithm** | Better complexity (O(n²) → O(n log n)) | Very High | Medium |
|
|
233
|
+
| **Architecture** | Caching, async processing, load balancing | High | High |
|
|
234
|
+
| **Database** | Indexing, query optimization, connection pooling | High | Medium |
|
|
235
|
+
| **Code** | Lazy loading, batching, memoization | Medium | Low |
|
|
236
|
+
| **Infrastructure** | Vertical/horizontal scaling, CDN | Medium | Medium |
|
|
237
|
+
| **Low-level** | Memory alignment, SIMD, JIT warmup | Low | High |
|
|
238
|
+
|
|
239
|
+
**Key insight**: Always start at the highest level. A better algorithm will outperform micro-optimizations every time.
|
|
240
|
+
|
|
241
|
+
---
|
|
242
|
+
|
|
243
|
+
## Database Performance Tuning
|
|
244
|
+
|
|
245
|
+
### Index Guidelines
|
|
246
|
+
|
|
247
|
+
```sql
|
|
248
|
+
-- ✅ Good: Index for frequently queried columns
|
|
249
|
+
CREATE INDEX idx_users_email ON users(email);
|
|
250
|
+
|
|
251
|
+
-- ✅ Good: Composite index for multi-column queries
|
|
252
|
+
CREATE INDEX idx_orders_user_date ON orders(user_id, created_at DESC);
|
|
253
|
+
|
|
254
|
+
-- ❌ Avoid: Index on low-cardinality columns
|
|
255
|
+
CREATE INDEX idx_users_active ON users(is_active); -- Only 2 values
|
|
256
|
+
|
|
257
|
+
-- ✅ Good: Partial index for specific queries
|
|
258
|
+
CREATE INDEX idx_orders_pending ON orders(created_at)
|
|
259
|
+
WHERE status = 'pending';
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
**Why partial indexes?** They're smaller and faster because they only include rows matching a condition. Perfect for frequently-queried subsets.
|
|
263
|
+
|
|
264
|
+
### N+1 Query Problem
|
|
265
|
+
|
|
266
|
+
The N+1 problem is one of the most common performance issues:
|
|
267
|
+
|
|
268
|
+
```typescript
|
|
269
|
+
// ❌ Bad: N+1 queries (1 query for users + N queries for orders)
|
|
270
|
+
const users = await User.findAll();
|
|
271
|
+
for (const user of users) {
|
|
272
|
+
const orders = await Order.findAll({ where: { userId: user.id } });
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
// ✅ Good: Single query with JOIN or eager loading
|
|
276
|
+
const users = await User.findAll({
|
|
277
|
+
include: [{ model: Order }]
|
|
278
|
+
});
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
---
|
|
282
|
+
|
|
283
|
+
## API Performance Optimization
|
|
284
|
+
|
|
285
|
+
### API Design for Performance
|
|
286
|
+
|
|
287
|
+
```typescript
|
|
288
|
+
// ❌ Bad: Returns all fields, all records
|
|
289
|
+
GET /api/users
|
|
290
|
+
|
|
291
|
+
// ✅ Good: Pagination, field selection
|
|
292
|
+
GET /api/users?page=1&limit=20&fields=id,name,email
|
|
293
|
+
|
|
294
|
+
// ❌ Bad: N+1 queries for related data
|
|
295
|
+
GET /api/users/1
|
|
296
|
+
GET /api/users/1/orders
|
|
297
|
+
GET /api/users/1/addresses
|
|
298
|
+
|
|
299
|
+
// ✅ Good: Single request with includes
|
|
300
|
+
GET /api/users/1?include=orders,addresses
|
|
301
|
+
|
|
302
|
+
// ✅ Good: Batch endpoint
|
|
303
|
+
POST /api/users/batch
|
|
304
|
+
{ "ids": [1, 2, 3, 4, 5] }
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
---
|
|
308
|
+
|
|
309
|
+
## Frontend Performance Techniques
|
|
310
|
+
|
|
311
|
+
### Core Web Vitals Explained
|
|
312
|
+
|
|
313
|
+
| Metric | What It Measures | Target | How to Improve |
|
|
314
|
+
|--------|------------------|--------|----------------|
|
|
315
|
+
| **LCP** | Largest Contentful Paint | < 2.5s | Optimize images, preload critical assets |
|
|
316
|
+
| **INP** | Interaction to Next Paint | < 200ms | Reduce JavaScript, defer non-critical scripts |
|
|
317
|
+
| **CLS** | Cumulative Layout Shift | < 0.1 | Set dimensions on images, reserve space for dynamic content |
|
|
318
|
+
|
|
319
|
+
### Performance Budget Example
|
|
320
|
+
|
|
321
|
+
```yaml
|
|
322
|
+
# Example Performance Budget
|
|
323
|
+
resources:
|
|
324
|
+
total_size: 500KB
|
|
325
|
+
javascript: 200KB
|
|
326
|
+
css: 50KB
|
|
327
|
+
images: 200KB
|
|
328
|
+
fonts: 50KB
|
|
329
|
+
|
|
330
|
+
metrics:
|
|
331
|
+
time_to_interactive: 3s
|
|
332
|
+
first_contentful_paint: 1.5s
|
|
333
|
+
speed_index: 3s
|
|
334
|
+
|
|
335
|
+
lighthouse_scores:
|
|
336
|
+
performance: 90
|
|
337
|
+
accessibility: 100
|
|
338
|
+
best_practices: 100
|
|
339
|
+
seo: 100
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
**Why budgets?** Without limits, page weight tends to grow over time. Budgets create accountability and force trade-offs.
|
|
343
|
+
|
|
344
|
+
---
|
|
345
|
+
|
|
346
|
+
## Caching Architecture
|
|
347
|
+
|
|
348
|
+
### Cache Levels
|
|
349
|
+
|
|
350
|
+
```
|
|
351
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
352
|
+
│ Caching Hierarchy │
|
|
353
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
354
|
+
│ │
|
|
355
|
+
│ Level 1: Browser Cache │
|
|
356
|
+
│ ├── HTTP cache headers (Cache-Control, ETag) │
|
|
357
|
+
│ ├── Service Worker cache │
|
|
358
|
+
│ └── TTL: Minutes to days │
|
|
359
|
+
│ │
|
|
360
|
+
│ Level 2: CDN Cache │
|
|
361
|
+
│ ├── Edge caching for static assets │
|
|
362
|
+
│ ├── API response caching (careful with personalization) │
|
|
363
|
+
│ └── TTL: Hours to days │
|
|
364
|
+
│ │
|
|
365
|
+
│ Level 3: Application Cache │
|
|
366
|
+
│ ├── In-memory cache (local, fast, limited size) │
|
|
367
|
+
│ ├── Distributed cache (Redis, Memcached) │
|
|
368
|
+
│ └── TTL: Seconds to hours │
|
|
369
|
+
│ │
|
|
370
|
+
│ Level 4: Database Cache │
|
|
371
|
+
│ ├── Query cache │
|
|
372
|
+
│ ├── Result set cache │
|
|
373
|
+
│ └── TTL: Managed by DB │
|
|
374
|
+
│ │
|
|
375
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
376
|
+
```
|
|
377
|
+
|
|
378
|
+
### Cache Invalidation Strategies
|
|
379
|
+
|
|
380
|
+
| Strategy | How It Works | Best For |
|
|
381
|
+
|----------|--------------|----------|
|
|
382
|
+
| **TTL-based** | Expire after fixed time | Static content |
|
|
383
|
+
| **Event-based** | Invalidate on write | Real-time data |
|
|
384
|
+
| **Version-based** | New version = new cache key | Deployments |
|
|
385
|
+
| **Stale-while-revalidate** | Serve stale, refresh in background | High availability |
|
|
386
|
+
|
|
387
|
+
### Cache Headers
|
|
388
|
+
|
|
389
|
+
```http
|
|
390
|
+
# Static assets (versioned filename)
|
|
391
|
+
Cache-Control: public, max-age=31536000, immutable
|
|
392
|
+
|
|
393
|
+
# API responses (short cache)
|
|
394
|
+
Cache-Control: private, max-age=60, stale-while-revalidate=300
|
|
395
|
+
|
|
396
|
+
# No cache (personalized content)
|
|
397
|
+
Cache-Control: no-store, no-cache, must-revalidate
|
|
398
|
+
|
|
399
|
+
# Conditional caching
|
|
400
|
+
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
|
|
401
|
+
Last-Modified: Wed, 21 Oct 2025 07:28:00 GMT
|
|
402
|
+
```
|
|
403
|
+
|
|
404
|
+
---
|
|
405
|
+
|
|
406
|
+
## Monitoring and Observability
|
|
407
|
+
|
|
408
|
+
### Dashboard Layout
|
|
409
|
+
|
|
410
|
+
```
|
|
411
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
412
|
+
│ Performance Dashboard Layout │
|
|
413
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
414
|
+
│ │
|
|
415
|
+
│ Row 1: Overview │
|
|
416
|
+
│ ├── Request rate (rps) │
|
|
417
|
+
│ ├── Error rate (%) │
|
|
418
|
+
│ ├── p50/p95/p99 latency │
|
|
419
|
+
│ └── Active users/connections │
|
|
420
|
+
│ │
|
|
421
|
+
│ Row 2: Infrastructure │
|
|
422
|
+
│ ├── CPU usage by service │
|
|
423
|
+
│ ├── Memory usage by service │
|
|
424
|
+
│ ├── Network I/O │
|
|
425
|
+
│ └── Disk I/O │
|
|
426
|
+
│ │
|
|
427
|
+
│ Row 3: Database │
|
|
428
|
+
│ ├── Query rate │
|
|
429
|
+
│ ├── Slow queries │
|
|
430
|
+
│ ├── Connection pool usage │
|
|
431
|
+
│ └── Replication lag │
|
|
432
|
+
│ │
|
|
433
|
+
│ Row 4: Dependencies │
|
|
434
|
+
│ ├── External API latency │
|
|
435
|
+
│ ├── Cache hit rate │
|
|
436
|
+
│ └── Queue depth │
|
|
437
|
+
│ │
|
|
438
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
439
|
+
```
|
|
440
|
+
|
|
441
|
+
---
|
|
442
|
+
|
|
443
|
+
## Capacity Planning Process
|
|
444
|
+
|
|
445
|
+
```
|
|
446
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
447
|
+
│ Capacity Planning Cycle │
|
|
448
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
449
|
+
│ │
|
|
450
|
+
│ 1. COLLECT │
|
|
451
|
+
│ ├── Historical usage data │
|
|
452
|
+
│ ├── Growth trends │
|
|
453
|
+
│ └── Business forecasts │
|
|
454
|
+
│ │
|
|
455
|
+
│ 2. ANALYZE │
|
|
456
|
+
│ ├── Peak usage patterns │
|
|
457
|
+
│ ├── Resource utilization trends │
|
|
458
|
+
│ └── Bottleneck identification │
|
|
459
|
+
│ │
|
|
460
|
+
│ 3. FORECAST │
|
|
461
|
+
│ ├── Project future demand │
|
|
462
|
+
│ ├── Apply growth factors │
|
|
463
|
+
│ └── Account for seasonal variations │
|
|
464
|
+
│ │
|
|
465
|
+
│ 4. PLAN │
|
|
466
|
+
│ ├── Define capacity requirements │
|
|
467
|
+
│ ├── Evaluate scaling options │
|
|
468
|
+
│ └── Calculate costs │
|
|
469
|
+
│ │
|
|
470
|
+
│ 5. EXECUTE │
|
|
471
|
+
│ ├── Implement scaling │
|
|
472
|
+
│ ├── Validate performance │
|
|
473
|
+
│ └── Monitor and iterate │
|
|
474
|
+
│ │
|
|
475
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
476
|
+
```
|
|
477
|
+
|
|
478
|
+
### Scaling Strategies Compared
|
|
479
|
+
|
|
480
|
+
| Strategy | Pros | Cons | When to Use |
|
|
481
|
+
|----------|------|------|-------------|
|
|
482
|
+
| **Vertical Scaling** | Simple, no code changes | Hardware limits, SPOF | Quick fix, small scale |
|
|
483
|
+
| **Horizontal Scaling** | No limit, fault tolerant | Complexity, stateless required | Production systems |
|
|
484
|
+
| **Auto-scaling** | Cost-effective, responsive | Warm-up time, complexity | Variable load |
|
|
485
|
+
|
|
486
|
+
---
|
|
487
|
+
|
|
488
|
+
## References
|
|
489
|
+
|
|
490
|
+
### Standards
|
|
491
|
+
- [ISO/IEC 25010:2011](https://www.iso.org/standard/35733.html) - Performance Efficiency
|
|
492
|
+
- [Web Vitals](https://web.dev/vitals/) - Google Core Web Vitals
|
|
493
|
+
|
|
494
|
+
### Books
|
|
495
|
+
- Brendan Gregg - "Systems Performance: Enterprise and the Cloud" (2020)
|
|
496
|
+
- Google - "Site Reliability Engineering" (2016)
|
|
497
|
+
- Martin Kleppmann - "Designing Data-Intensive Applications" (2017)
|
|
498
|
+
|
|
499
|
+
### Tools
|
|
500
|
+
- [k6](https://k6.io/) - Load testing
|
|
501
|
+
- [Lighthouse](https://developer.chrome.com/docs/lighthouse/) - Frontend performance
|
|
502
|
+
- [Grafana](https://grafana.com/) - Performance dashboards
|
|
503
|
+
|
|
504
|
+
---
|
|
505
|
+
|
|
506
|
+
## License
|
|
507
|
+
|
|
508
|
+
This guide is released under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
|