universal-dev-standards 3.5.1-beta.1 → 3.5.1-beta.11
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 +2 -0
- package/bundled/core/ai-instruction-standards.md +205 -0
- package/bundled/core/anti-hallucination.md +684 -0
- package/bundled/core/changelog-standards.md +556 -0
- package/bundled/core/checkin-standards.md +935 -0
- package/bundled/core/code-review-checklist.md +684 -0
- package/bundled/core/commit-message-guide.md +915 -0
- package/bundled/core/documentation-structure.md +1117 -0
- package/bundled/core/documentation-writing-standards.md +487 -0
- package/bundled/core/error-code-standards.md +382 -0
- package/bundled/core/git-workflow.md +859 -0
- package/bundled/core/logging-standards.md +323 -0
- package/bundled/core/project-structure.md +354 -0
- package/bundled/core/refactoring-standards.md +636 -0
- package/bundled/core/spec-driven-development.md +207 -0
- package/bundled/core/test-completeness-dimensions.md +536 -0
- package/bundled/core/test-driven-development.md +995 -0
- package/bundled/core/testing-standards.md +3061 -0
- package/bundled/core/versioning.md +902 -0
- package/bundled/locales/README.md +88 -0
- package/bundled/locales/zh-CN/CHANGELOG.md +705 -0
- package/bundled/locales/zh-CN/CLAUDE.md +213 -0
- package/bundled/locales/zh-CN/MAINTENANCE.md +689 -0
- package/bundled/locales/zh-CN/README.md +707 -0
- package/bundled/locales/zh-CN/STANDARDS-MAPPING.md +177 -0
- package/bundled/locales/zh-CN/adoption/ADOPTION-GUIDE.md +392 -0
- package/bundled/locales/zh-CN/adoption/STATIC-DYNAMIC-GUIDE.md +302 -0
- package/bundled/locales/zh-CN/adoption/checklists/enterprise.md +332 -0
- package/bundled/locales/zh-CN/adoption/checklists/minimal.md +141 -0
- package/bundled/locales/zh-CN/adoption/checklists/recommended.md +272 -0
- package/bundled/locales/zh-CN/ai/MAINTENANCE.md +739 -0
- package/bundled/locales/zh-CN/ai/options/changelog/auto-generated.ai.yaml +76 -0
- package/bundled/locales/zh-CN/ai/options/changelog/keep-a-changelog.ai.yaml +99 -0
- package/bundled/locales/zh-CN/ai/options/code-review/automated-review.ai.yaml +120 -0
- package/bundled/locales/zh-CN/ai/options/code-review/pair-programming.ai.yaml +109 -0
- package/bundled/locales/zh-CN/ai/options/code-review/pr-review.ai.yaml +104 -0
- package/bundled/locales/zh-CN/ai/options/commit-message/bilingual.ai.yaml +105 -0
- package/bundled/locales/zh-CN/ai/options/commit-message/english.ai.yaml +79 -0
- package/bundled/locales/zh-CN/ai/options/commit-message/traditional-chinese.ai.yaml +100 -0
- package/bundled/locales/zh-CN/ai/options/documentation/api-docs.ai.yaml +140 -0
- package/bundled/locales/zh-CN/ai/options/documentation/markdown-docs.ai.yaml +89 -0
- package/bundled/locales/zh-CN/ai/options/documentation/wiki-style.ai.yaml +119 -0
- package/bundled/locales/zh-CN/ai/options/git-workflow/gitflow.ai.yaml +133 -0
- package/bundled/locales/zh-CN/ai/options/git-workflow/github-flow.ai.yaml +73 -0
- package/bundled/locales/zh-CN/ai/options/git-workflow/merge-commit.ai.yaml +88 -0
- package/bundled/locales/zh-CN/ai/options/git-workflow/rebase-ff.ai.yaml +113 -0
- package/bundled/locales/zh-CN/ai/options/git-workflow/squash-merge.ai.yaml +85 -0
- package/bundled/locales/zh-CN/ai/options/git-workflow/trunk-based.ai.yaml +117 -0
- package/bundled/locales/zh-CN/ai/options/project-structure/dotnet.ai.yaml +108 -0
- package/bundled/locales/zh-CN/ai/options/project-structure/go.ai.yaml +115 -0
- package/bundled/locales/zh-CN/ai/options/project-structure/java.ai.yaml +113 -0
- package/bundled/locales/zh-CN/ai/options/project-structure/kotlin.ai.yaml +123 -0
- package/bundled/locales/zh-CN/ai/options/project-structure/nodejs.ai.yaml +101 -0
- package/bundled/locales/zh-CN/ai/options/project-structure/php.ai.yaml +147 -0
- package/bundled/locales/zh-CN/ai/options/project-structure/python.ai.yaml +116 -0
- package/bundled/locales/zh-CN/ai/options/project-structure/ruby.ai.yaml +140 -0
- package/bundled/locales/zh-CN/ai/options/project-structure/rust.ai.yaml +117 -0
- package/bundled/locales/zh-CN/ai/options/project-structure/swift.ai.yaml +143 -0
- package/bundled/locales/zh-CN/ai/options/testing/contract-testing.ai.yaml +254 -0
- package/bundled/locales/zh-CN/ai/options/testing/e2e-testing.ai.yaml +116 -0
- package/bundled/locales/zh-CN/ai/options/testing/industry-pyramid.ai.yaml +144 -0
- package/bundled/locales/zh-CN/ai/options/testing/integration-testing.ai.yaml +90 -0
- package/bundled/locales/zh-CN/ai/options/testing/istqb-framework.ai.yaml +108 -0
- package/bundled/locales/zh-CN/ai/options/testing/performance-testing.ai.yaml +272 -0
- package/bundled/locales/zh-CN/ai/options/testing/security-testing.ai.yaml +160 -0
- package/bundled/locales/zh-CN/ai/options/testing/system-testing.ai.yaml +101 -0
- package/bundled/locales/zh-CN/ai/options/testing/unit-testing.ai.yaml +82 -0
- package/bundled/locales/zh-CN/ai/standards/anti-hallucination.ai.yaml +145 -0
- package/bundled/locales/zh-CN/ai/standards/changelog.ai.yaml +146 -0
- package/bundled/locales/zh-CN/ai/standards/checkin-standards.ai.yaml +170 -0
- package/bundled/locales/zh-CN/ai/standards/code-review.ai.yaml +148 -0
- package/bundled/locales/zh-CN/ai/standards/commit-message.ai.yaml +175 -0
- package/bundled/locales/zh-CN/ai/standards/documentation-structure.ai.yaml +124 -0
- package/bundled/locales/zh-CN/ai/standards/documentation-writing-standards.ai.yaml +190 -0
- package/bundled/locales/zh-CN/ai/standards/error-codes.ai.yaml +139 -0
- package/bundled/locales/zh-CN/ai/standards/git-workflow.ai.yaml +95 -0
- package/bundled/locales/zh-CN/ai/standards/logging.ai.yaml +128 -0
- package/bundled/locales/zh-CN/ai/standards/project-structure.ai.yaml +134 -0
- package/bundled/locales/zh-CN/ai/standards/spec-driven-development.ai.yaml +169 -0
- package/bundled/locales/zh-CN/ai/standards/test-completeness-dimensions.ai.yaml +220 -0
- package/bundled/locales/zh-CN/ai/standards/testing.ai.yaml +137 -0
- package/bundled/locales/zh-CN/ai/standards/versioning.ai.yaml +211 -0
- package/bundled/locales/zh-CN/core/ai-instruction-standards.md +213 -0
- package/bundled/locales/zh-CN/core/anti-hallucination.md +691 -0
- package/bundled/locales/zh-CN/core/changelog-standards.md +147 -0
- package/bundled/locales/zh-CN/core/checkin-standards.md +943 -0
- package/bundled/locales/zh-CN/core/code-review-guide.md +693 -0
- package/bundled/locales/zh-CN/core/commit-message-guide.md +129 -0
- package/bundled/locales/zh-CN/core/documentation-structure.md +173 -0
- package/bundled/locales/zh-CN/core/documentation-writing-standards.md +495 -0
- package/bundled/locales/zh-CN/core/error-code-standards.md +180 -0
- package/bundled/locales/zh-CN/core/git-workflow.md +193 -0
- package/bundled/locales/zh-CN/core/logging-standards.md +174 -0
- package/bundled/locales/zh-CN/core/project-structure.md +184 -0
- package/bundled/locales/zh-CN/core/refactoring-standards.md +642 -0
- package/bundled/locales/zh-CN/core/spec-driven-development.md +215 -0
- package/bundled/locales/zh-CN/core/test-completeness-dimensions.md +544 -0
- package/bundled/locales/zh-CN/core/test-driven-development.md +1002 -0
- package/bundled/locales/zh-CN/core/testing-standards.md +170 -0
- package/bundled/locales/zh-CN/core/versioning.md +177 -0
- package/bundled/locales/zh-CN/docs/AI-AGENT-ROADMAP.md +303 -0
- package/bundled/locales/zh-CN/docs/CLI-INIT-OPTIONS.md +990 -0
- package/bundled/locales/zh-CN/docs/OPERATION-WORKFLOW.md +1064 -0
- package/bundled/locales/zh-CN/docs/USAGE-MODES-COMPARISON.md +333 -0
- package/bundled/locales/zh-CN/docs/WINDOWS-GUIDE.md +215 -0
- package/bundled/locales/zh-CN/integrations/codex/AGENTS.md +115 -0
- package/bundled/locales/zh-CN/integrations/codex/README.md +67 -0
- package/bundled/locales/zh-CN/integrations/gemini-cli/GEMINI.md +102 -0
- package/bundled/locales/zh-CN/integrations/gemini-cli/README.md +140 -0
- package/bundled/locales/zh-CN/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +269 -0
- package/bundled/locales/zh-CN/integrations/github-copilot/README.md +167 -0
- package/bundled/locales/zh-CN/integrations/github-copilot/copilot-instructions.md +263 -0
- package/bundled/locales/zh-CN/integrations/github-copilot/skills-mapping.md +192 -0
- package/bundled/locales/zh-CN/integrations/google-antigravity/INSTRUCTIONS.md +61 -0
- package/bundled/locales/zh-CN/integrations/google-antigravity/README.md +84 -0
- package/bundled/locales/zh-CN/integrations/opencode/AGENTS.md +111 -0
- package/bundled/locales/zh-CN/integrations/opencode/README.md +176 -0
- package/bundled/locales/zh-CN/integrations/opencode/skills-mapping.md +396 -0
- package/bundled/locales/zh-CN/integrations/openspec/AGENTS.md +301 -0
- package/bundled/locales/zh-CN/integrations/openspec/README.md +43 -0
- package/bundled/locales/zh-CN/integrations/spec-kit/AGENTS.md +184 -0
- package/bundled/locales/zh-CN/integrations/spec-kit/README.md +43 -0
- package/bundled/locales/zh-CN/options/commit-message/bilingual.md +161 -0
- package/bundled/locales/zh-CN/options/commit-message/english.md +137 -0
- package/bundled/locales/zh-CN/options/commit-message/traditional-chinese.md +162 -0
- package/bundled/locales/zh-CN/options/git-workflow/gitflow.md +147 -0
- package/bundled/locales/zh-CN/options/git-workflow/github-flow.md +124 -0
- package/bundled/locales/zh-CN/options/git-workflow/merge-commit.md +124 -0
- package/bundled/locales/zh-CN/options/git-workflow/rebase-ff.md +160 -0
- package/bundled/locales/zh-CN/options/git-workflow/squash-merge.md +117 -0
- package/bundled/locales/zh-CN/options/git-workflow/trunk-based.md +125 -0
- package/bundled/locales/zh-CN/options/project-structure/dotnet.md +183 -0
- package/bundled/locales/zh-CN/options/project-structure/go.md +226 -0
- package/bundled/locales/zh-CN/options/project-structure/java.md +213 -0
- package/bundled/locales/zh-CN/options/project-structure/nodejs.md +185 -0
- package/bundled/locales/zh-CN/options/project-structure/python.md +229 -0
- package/bundled/locales/zh-CN/options/testing/e2e-testing.md +207 -0
- package/bundled/locales/zh-CN/options/testing/integration-testing.md +230 -0
- package/bundled/locales/zh-CN/options/testing/system-testing.md +183 -0
- package/bundled/locales/zh-CN/options/testing/unit-testing.md +165 -0
- package/bundled/locales/zh-CN/skills/INTEGRATION-GUIDE.md +218 -0
- package/bundled/locales/zh-CN/skills/README.md +134 -0
- package/bundled/locales/zh-CN/skills/_shared/README.md +68 -0
- package/bundled/locales/zh-CN/skills/claude-code/CONTRIBUTING.template.md +151 -0
- package/bundled/locales/zh-CN/skills/claude-code/README.md +174 -0
- package/bundled/locales/zh-CN/skills/claude-code/ai-collaboration-standards/SKILL.md +175 -0
- package/bundled/locales/zh-CN/skills/claude-code/ai-collaboration-standards/anti-hallucination.md +223 -0
- package/bundled/locales/zh-CN/skills/claude-code/ai-collaboration-standards/certainty-labels.md +132 -0
- package/bundled/locales/zh-CN/skills/claude-code/changelog-guide/SKILL.md +237 -0
- package/bundled/locales/zh-CN/skills/claude-code/checkin-assistant/SKILL.md +407 -0
- package/bundled/locales/zh-CN/skills/claude-code/code-review-assistant/SKILL.md +154 -0
- package/bundled/locales/zh-CN/skills/claude-code/code-review-assistant/checkin-checklist.md +257 -0
- package/bundled/locales/zh-CN/skills/claude-code/code-review-assistant/review-checklist.md +246 -0
- package/bundled/locales/zh-CN/skills/claude-code/commands/bdd.md +142 -0
- package/bundled/locales/zh-CN/skills/claude-code/commands/methodology.md +274 -0
- package/bundled/locales/zh-CN/skills/claude-code/commit-standards/SKILL.md +191 -0
- package/bundled/locales/zh-CN/skills/claude-code/commit-standards/conventional-commits.md +264 -0
- package/bundled/locales/zh-CN/skills/claude-code/commit-standards/language-options.md +172 -0
- package/bundled/locales/zh-CN/skills/claude-code/documentation-guide/SKILL.md +421 -0
- package/bundled/locales/zh-CN/skills/claude-code/documentation-guide/documentation-structure.md +357 -0
- package/bundled/locales/zh-CN/skills/claude-code/documentation-guide/readme-template.md +412 -0
- package/bundled/locales/zh-CN/skills/claude-code/error-code-guide/SKILL.md +269 -0
- package/bundled/locales/zh-CN/skills/claude-code/git-workflow-guide/SKILL.md +218 -0
- package/bundled/locales/zh-CN/skills/claude-code/git-workflow-guide/branch-naming.md +220 -0
- package/bundled/locales/zh-CN/skills/claude-code/git-workflow-guide/git-workflow.md +321 -0
- package/bundled/locales/zh-CN/skills/claude-code/logging-guide/SKILL.md +285 -0
- package/bundled/locales/zh-CN/skills/claude-code/methodology-system/SKILL.md +131 -0
- package/bundled/locales/zh-CN/skills/claude-code/methodology-system/create-methodology.md +350 -0
- package/bundled/locales/zh-CN/skills/claude-code/methodology-system/runtime.md +279 -0
- package/bundled/locales/zh-CN/skills/claude-code/project-structure-guide/SKILL.md +143 -0
- package/bundled/locales/zh-CN/skills/claude-code/project-structure-guide/language-patterns.md +271 -0
- package/bundled/locales/zh-CN/skills/claude-code/refactoring-assistant/SKILL.md +162 -0
- package/bundled/locales/zh-CN/skills/claude-code/release-standards/SKILL.md +191 -0
- package/bundled/locales/zh-CN/skills/claude-code/release-standards/changelog-format.md +247 -0
- package/bundled/locales/zh-CN/skills/claude-code/release-standards/release-workflow.md +345 -0
- package/bundled/locales/zh-CN/skills/claude-code/release-standards/semantic-versioning.md +250 -0
- package/bundled/locales/zh-CN/skills/claude-code/requirement-assistant/SKILL.md +227 -0
- package/bundled/locales/zh-CN/skills/claude-code/requirement-assistant/requirement-checklist.md +325 -0
- package/bundled/locales/zh-CN/skills/claude-code/requirement-assistant/requirement-writing.md +399 -0
- package/bundled/locales/zh-CN/skills/claude-code/spec-driven-dev/SKILL.md +243 -0
- package/bundled/locales/zh-CN/skills/claude-code/tdd-assistant/SKILL.md +332 -0
- package/bundled/locales/zh-CN/skills/claude-code/tdd-assistant/language-examples.md +639 -0
- package/bundled/locales/zh-CN/skills/claude-code/tdd-assistant/tdd-workflow.md +486 -0
- package/bundled/locales/zh-CN/skills/claude-code/test-coverage-assistant/SKILL.md +282 -0
- package/bundled/locales/zh-CN/skills/claude-code/testing-guide/SKILL.md +234 -0
- package/bundled/locales/zh-CN/skills/claude-code/testing-guide/testing-pyramid.md +448 -0
- package/bundled/locales/zh-CN/skills/cline/README.md +58 -0
- package/bundled/locales/zh-CN/skills/copilot/README.md +61 -0
- package/bundled/locales/zh-CN/skills/copilot/copilot-instructions.md +79 -0
- package/bundled/locales/zh-CN/skills/cursor/README.md +58 -0
- package/bundled/locales/zh-CN/skills/windsurf/README.md +59 -0
- package/bundled/locales/zh-TW/CHANGELOG.md +707 -0
- package/bundled/locales/zh-TW/CLAUDE.md +213 -0
- package/bundled/locales/zh-TW/MAINTENANCE.md +683 -0
- package/bundled/locales/zh-TW/README.md +687 -0
- package/bundled/locales/zh-TW/STANDARDS-MAPPING.md +177 -0
- package/bundled/locales/zh-TW/adoption/ADOPTION-GUIDE.md +392 -0
- package/bundled/locales/zh-TW/adoption/STATIC-DYNAMIC-GUIDE.md +299 -0
- package/bundled/locales/zh-TW/adoption/checklists/enterprise.md +332 -0
- package/bundled/locales/zh-TW/adoption/checklists/minimal.md +141 -0
- package/bundled/locales/zh-TW/adoption/checklists/recommended.md +272 -0
- package/bundled/locales/zh-TW/ai/MAINTENANCE.md +754 -0
- package/bundled/locales/zh-TW/ai/options/changelog/auto-generated.ai.yaml +76 -0
- package/bundled/locales/zh-TW/ai/options/changelog/keep-a-changelog.ai.yaml +99 -0
- package/bundled/locales/zh-TW/ai/options/code-review/automated-review.ai.yaml +120 -0
- package/bundled/locales/zh-TW/ai/options/code-review/pair-programming.ai.yaml +109 -0
- package/bundled/locales/zh-TW/ai/options/code-review/pr-review.ai.yaml +104 -0
- package/bundled/locales/zh-TW/ai/options/commit-message/bilingual.ai.yaml +105 -0
- package/bundled/locales/zh-TW/ai/options/commit-message/english.ai.yaml +79 -0
- package/bundled/locales/zh-TW/ai/options/commit-message/traditional-chinese.ai.yaml +100 -0
- package/bundled/locales/zh-TW/ai/options/documentation/api-docs.ai.yaml +140 -0
- package/bundled/locales/zh-TW/ai/options/documentation/markdown-docs.ai.yaml +89 -0
- package/bundled/locales/zh-TW/ai/options/documentation/wiki-style.ai.yaml +119 -0
- package/bundled/locales/zh-TW/ai/options/git-workflow/gitflow.ai.yaml +133 -0
- package/bundled/locales/zh-TW/ai/options/git-workflow/github-flow.ai.yaml +73 -0
- package/bundled/locales/zh-TW/ai/options/git-workflow/merge-commit.ai.yaml +88 -0
- package/bundled/locales/zh-TW/ai/options/git-workflow/rebase-ff.ai.yaml +113 -0
- package/bundled/locales/zh-TW/ai/options/git-workflow/squash-merge.ai.yaml +85 -0
- package/bundled/locales/zh-TW/ai/options/git-workflow/trunk-based.ai.yaml +117 -0
- package/bundled/locales/zh-TW/ai/options/project-structure/dotnet.ai.yaml +108 -0
- package/bundled/locales/zh-TW/ai/options/project-structure/go.ai.yaml +115 -0
- package/bundled/locales/zh-TW/ai/options/project-structure/java.ai.yaml +113 -0
- package/bundled/locales/zh-TW/ai/options/project-structure/kotlin.ai.yaml +123 -0
- package/bundled/locales/zh-TW/ai/options/project-structure/nodejs.ai.yaml +101 -0
- package/bundled/locales/zh-TW/ai/options/project-structure/php.ai.yaml +147 -0
- package/bundled/locales/zh-TW/ai/options/project-structure/python.ai.yaml +116 -0
- package/bundled/locales/zh-TW/ai/options/project-structure/ruby.ai.yaml +140 -0
- package/bundled/locales/zh-TW/ai/options/project-structure/rust.ai.yaml +117 -0
- package/bundled/locales/zh-TW/ai/options/project-structure/swift.ai.yaml +143 -0
- package/bundled/locales/zh-TW/ai/options/testing/contract-testing.ai.yaml +254 -0
- package/bundled/locales/zh-TW/ai/options/testing/e2e-testing.ai.yaml +116 -0
- package/bundled/locales/zh-TW/ai/options/testing/industry-pyramid.ai.yaml +144 -0
- package/bundled/locales/zh-TW/ai/options/testing/integration-testing.ai.yaml +90 -0
- package/bundled/locales/zh-TW/ai/options/testing/istqb-framework.ai.yaml +108 -0
- package/bundled/locales/zh-TW/ai/options/testing/performance-testing.ai.yaml +272 -0
- package/bundled/locales/zh-TW/ai/options/testing/security-testing.ai.yaml +160 -0
- package/bundled/locales/zh-TW/ai/options/testing/system-testing.ai.yaml +101 -0
- package/bundled/locales/zh-TW/ai/options/testing/unit-testing.ai.yaml +82 -0
- package/bundled/locales/zh-TW/ai/standards/anti-hallucination.ai.yaml +145 -0
- package/bundled/locales/zh-TW/ai/standards/changelog.ai.yaml +146 -0
- package/bundled/locales/zh-TW/ai/standards/checkin-standards.ai.yaml +170 -0
- package/bundled/locales/zh-TW/ai/standards/code-review.ai.yaml +148 -0
- package/bundled/locales/zh-TW/ai/standards/commit-message.ai.yaml +175 -0
- package/bundled/locales/zh-TW/ai/standards/documentation-structure.ai.yaml +124 -0
- package/bundled/locales/zh-TW/ai/standards/documentation-writing-standards.ai.yaml +190 -0
- package/bundled/locales/zh-TW/ai/standards/error-codes.ai.yaml +139 -0
- package/bundled/locales/zh-TW/ai/standards/git-workflow.ai.yaml +95 -0
- package/bundled/locales/zh-TW/ai/standards/logging.ai.yaml +128 -0
- package/bundled/locales/zh-TW/ai/standards/project-structure.ai.yaml +134 -0
- package/bundled/locales/zh-TW/ai/standards/spec-driven-development.ai.yaml +169 -0
- package/bundled/locales/zh-TW/ai/standards/test-completeness-dimensions.ai.yaml +220 -0
- package/bundled/locales/zh-TW/ai/standards/testing.ai.yaml +137 -0
- package/bundled/locales/zh-TW/ai/standards/versioning.ai.yaml +211 -0
- package/bundled/locales/zh-TW/core/ai-instruction-standards.md +213 -0
- package/bundled/locales/zh-TW/core/anti-hallucination.md +691 -0
- package/bundled/locales/zh-TW/core/changelog-standards.md +564 -0
- package/bundled/locales/zh-TW/core/checkin-standards.md +943 -0
- package/bundled/locales/zh-TW/core/code-review-checklist.md +693 -0
- package/bundled/locales/zh-TW/core/commit-message-guide.md +809 -0
- package/bundled/locales/zh-TW/core/documentation-structure.md +1125 -0
- package/bundled/locales/zh-TW/core/documentation-writing-standards.md +495 -0
- package/bundled/locales/zh-TW/core/error-code-standards.md +384 -0
- package/bundled/locales/zh-TW/core/git-workflow.md +860 -0
- package/bundled/locales/zh-TW/core/logging-standards.md +325 -0
- package/bundled/locales/zh-TW/core/project-structure.md +362 -0
- package/bundled/locales/zh-TW/core/refactoring-standards.md +642 -0
- package/bundled/locales/zh-TW/core/spec-driven-development.md +215 -0
- package/bundled/locales/zh-TW/core/test-completeness-dimensions.md +544 -0
- package/bundled/locales/zh-TW/core/test-driven-development.md +1004 -0
- package/bundled/locales/zh-TW/core/testing-standards.md +2158 -0
- package/bundled/locales/zh-TW/core/versioning.md +909 -0
- package/bundled/locales/zh-TW/docs/AI-AGENT-ROADMAP.md +303 -0
- package/bundled/locales/zh-TW/docs/CLI-INIT-OPTIONS.md +990 -0
- package/bundled/locales/zh-TW/docs/OPERATION-WORKFLOW.md +1064 -0
- package/bundled/locales/zh-TW/docs/USAGE-MODES-COMPARISON.md +333 -0
- package/bundled/locales/zh-TW/docs/WINDOWS-GUIDE.md +215 -0
- package/bundled/locales/zh-TW/integrations/codex/AGENTS.md +115 -0
- package/bundled/locales/zh-TW/integrations/codex/README.md +113 -0
- package/bundled/locales/zh-TW/integrations/gemini-cli/GEMINI.md +102 -0
- package/bundled/locales/zh-TW/integrations/gemini-cli/README.md +140 -0
- package/bundled/locales/zh-TW/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +269 -0
- package/bundled/locales/zh-TW/integrations/github-copilot/README.md +167 -0
- package/bundled/locales/zh-TW/integrations/github-copilot/copilot-instructions.md +263 -0
- package/bundled/locales/zh-TW/integrations/github-copilot/skills-mapping.md +192 -0
- package/bundled/locales/zh-TW/integrations/google-antigravity/INSTRUCTIONS.md +61 -0
- package/bundled/locales/zh-TW/integrations/google-antigravity/README.md +84 -0
- package/bundled/locales/zh-TW/integrations/opencode/AGENTS.md +111 -0
- package/bundled/locales/zh-TW/integrations/opencode/README.md +176 -0
- package/bundled/locales/zh-TW/integrations/opencode/skills-mapping.md +396 -0
- package/bundled/locales/zh-TW/integrations/openspec/AGENTS.md +301 -0
- package/bundled/locales/zh-TW/integrations/openspec/README.md +43 -0
- package/bundled/locales/zh-TW/integrations/spec-kit/AGENTS.md +184 -0
- package/bundled/locales/zh-TW/integrations/spec-kit/README.md +43 -0
- package/bundled/locales/zh-TW/options/commit-message/bilingual.md +161 -0
- package/bundled/locales/zh-TW/options/commit-message/english.md +137 -0
- package/bundled/locales/zh-TW/options/commit-message/traditional-chinese.md +162 -0
- package/bundled/locales/zh-TW/options/git-workflow/gitflow.md +147 -0
- package/bundled/locales/zh-TW/options/git-workflow/github-flow.md +124 -0
- package/bundled/locales/zh-TW/options/git-workflow/merge-commit.md +124 -0
- package/bundled/locales/zh-TW/options/git-workflow/rebase-ff.md +160 -0
- package/bundled/locales/zh-TW/options/git-workflow/squash-merge.md +117 -0
- package/bundled/locales/zh-TW/options/git-workflow/trunk-based.md +125 -0
- package/bundled/locales/zh-TW/options/project-structure/dotnet.md +183 -0
- package/bundled/locales/zh-TW/options/project-structure/go.md +226 -0
- package/bundled/locales/zh-TW/options/project-structure/java.md +213 -0
- package/bundled/locales/zh-TW/options/project-structure/nodejs.md +185 -0
- package/bundled/locales/zh-TW/options/project-structure/python.md +229 -0
- package/bundled/locales/zh-TW/options/testing/e2e-testing.md +207 -0
- package/bundled/locales/zh-TW/options/testing/integration-testing.md +230 -0
- package/bundled/locales/zh-TW/options/testing/system-testing.md +183 -0
- package/bundled/locales/zh-TW/options/testing/unit-testing.md +165 -0
- package/bundled/locales/zh-TW/skills/INTEGRATION-GUIDE.md +218 -0
- package/bundled/locales/zh-TW/skills/README.md +132 -0
- package/bundled/locales/zh-TW/skills/_shared/README.md +68 -0
- package/bundled/locales/zh-TW/skills/claude-code/CONTRIBUTING.template.md +151 -0
- package/bundled/locales/zh-TW/skills/claude-code/README.md +174 -0
- package/bundled/locales/zh-TW/skills/claude-code/ai-collaboration-standards/SKILL.md +175 -0
- package/bundled/locales/zh-TW/skills/claude-code/ai-collaboration-standards/anti-hallucination.md +223 -0
- package/bundled/locales/zh-TW/skills/claude-code/ai-collaboration-standards/certainty-labels.md +132 -0
- package/bundled/locales/zh-TW/skills/claude-code/changelog-guide/SKILL.md +237 -0
- package/bundled/locales/zh-TW/skills/claude-code/checkin-assistant/SKILL.md +407 -0
- package/bundled/locales/zh-TW/skills/claude-code/code-review-assistant/SKILL.md +154 -0
- package/bundled/locales/zh-TW/skills/claude-code/code-review-assistant/checkin-checklist.md +257 -0
- package/bundled/locales/zh-TW/skills/claude-code/code-review-assistant/review-checklist.md +246 -0
- package/bundled/locales/zh-TW/skills/claude-code/commands/bdd.md +142 -0
- package/bundled/locales/zh-TW/skills/claude-code/commands/methodology.md +274 -0
- package/bundled/locales/zh-TW/skills/claude-code/commit-standards/SKILL.md +191 -0
- package/bundled/locales/zh-TW/skills/claude-code/commit-standards/conventional-commits.md +264 -0
- package/bundled/locales/zh-TW/skills/claude-code/commit-standards/language-options.md +172 -0
- package/bundled/locales/zh-TW/skills/claude-code/documentation-guide/SKILL.md +421 -0
- package/bundled/locales/zh-TW/skills/claude-code/documentation-guide/documentation-structure.md +357 -0
- package/bundled/locales/zh-TW/skills/claude-code/documentation-guide/readme-template.md +412 -0
- package/bundled/locales/zh-TW/skills/claude-code/error-code-guide/SKILL.md +269 -0
- package/bundled/locales/zh-TW/skills/claude-code/git-workflow-guide/SKILL.md +218 -0
- package/bundled/locales/zh-TW/skills/claude-code/git-workflow-guide/branch-naming.md +220 -0
- package/bundled/locales/zh-TW/skills/claude-code/git-workflow-guide/git-workflow.md +321 -0
- package/bundled/locales/zh-TW/skills/claude-code/logging-guide/SKILL.md +285 -0
- package/bundled/locales/zh-TW/skills/claude-code/methodology-system/SKILL.md +131 -0
- package/bundled/locales/zh-TW/skills/claude-code/methodology-system/create-methodology.md +350 -0
- package/bundled/locales/zh-TW/skills/claude-code/methodology-system/runtime.md +279 -0
- package/bundled/locales/zh-TW/skills/claude-code/project-structure-guide/SKILL.md +143 -0
- package/bundled/locales/zh-TW/skills/claude-code/project-structure-guide/language-patterns.md +271 -0
- package/bundled/locales/zh-TW/skills/claude-code/refactoring-assistant/SKILL.md +162 -0
- package/bundled/locales/zh-TW/skills/claude-code/release-standards/SKILL.md +191 -0
- package/bundled/locales/zh-TW/skills/claude-code/release-standards/changelog-format.md +247 -0
- package/bundled/locales/zh-TW/skills/claude-code/release-standards/release-workflow.md +345 -0
- package/bundled/locales/zh-TW/skills/claude-code/release-standards/semantic-versioning.md +250 -0
- package/bundled/locales/zh-TW/skills/claude-code/requirement-assistant/SKILL.md +227 -0
- package/bundled/locales/zh-TW/skills/claude-code/requirement-assistant/requirement-checklist.md +325 -0
- package/bundled/locales/zh-TW/skills/claude-code/requirement-assistant/requirement-writing.md +399 -0
- package/bundled/locales/zh-TW/skills/claude-code/spec-driven-dev/SKILL.md +243 -0
- package/bundled/locales/zh-TW/skills/claude-code/tdd-assistant/SKILL.md +332 -0
- package/bundled/locales/zh-TW/skills/claude-code/tdd-assistant/language-examples.md +639 -0
- package/bundled/locales/zh-TW/skills/claude-code/tdd-assistant/tdd-workflow.md +486 -0
- package/bundled/locales/zh-TW/skills/claude-code/test-coverage-assistant/SKILL.md +282 -0
- package/bundled/locales/zh-TW/skills/claude-code/testing-guide/SKILL.md +234 -0
- package/bundled/locales/zh-TW/skills/claude-code/testing-guide/testing-pyramid.md +448 -0
- package/bundled/locales/zh-TW/skills/cline/README.md +58 -0
- package/bundled/locales/zh-TW/skills/copilot/README.md +61 -0
- package/bundled/locales/zh-TW/skills/copilot/copilot-instructions.md +79 -0
- package/bundled/locales/zh-TW/skills/cursor/README.md +58 -0
- package/bundled/locales/zh-TW/skills/windsurf/README.md +59 -0
- package/bundled/skills/claude-code/CONTRIBUTING.template.md +141 -0
- package/bundled/skills/claude-code/README.md +196 -0
- package/bundled/skills/claude-code/ai/standards/checkin.ai.yaml +21 -0
- package/bundled/skills/claude-code/ai/standards/commit.ai.yaml +20 -0
- package/bundled/skills/claude-code/ai/standards/refactoring.ai.yaml +34 -0
- package/bundled/skills/claude-code/ai/standards/testing.ai.yaml +41 -0
- package/bundled/skills/claude-code/ai-collaboration-standards/SKILL.md +175 -0
- package/bundled/skills/claude-code/ai-collaboration-standards/anti-hallucination.md +215 -0
- package/bundled/skills/claude-code/ai-collaboration-standards/certainty-labels.md +124 -0
- package/bundled/skills/claude-code/changelog-guide/SKILL.md +232 -0
- package/bundled/skills/claude-code/checkin-assistant/SKILL.md +402 -0
- package/bundled/skills/claude-code/code-review-assistant/SKILL.md +220 -0
- package/bundled/skills/claude-code/code-review-assistant/checkin-checklist.md +249 -0
- package/bundled/skills/claude-code/code-review-assistant/review-checklist.md +238 -0
- package/bundled/skills/claude-code/commands/README.md +78 -0
- package/bundled/skills/claude-code/commands/bdd.md +142 -0
- package/bundled/skills/claude-code/commands/changelog.md +57 -0
- package/bundled/skills/claude-code/commands/check.md +91 -0
- package/bundled/skills/claude-code/commands/commit.md +48 -0
- package/bundled/skills/claude-code/commands/config.md +97 -0
- package/bundled/skills/claude-code/commands/coverage.md +58 -0
- package/bundled/skills/claude-code/commands/docs.md +75 -0
- package/bundled/skills/claude-code/commands/init.md +88 -0
- package/bundled/skills/claude-code/commands/methodology.md +268 -0
- package/bundled/skills/claude-code/commands/release.md +50 -0
- package/bundled/skills/claude-code/commands/requirement.md +54 -0
- package/bundled/skills/claude-code/commands/review.md +50 -0
- package/bundled/skills/claude-code/commands/spec.md +69 -0
- package/bundled/skills/claude-code/commands/tdd.md +86 -0
- package/bundled/skills/claude-code/commands/update.md +122 -0
- package/bundled/skills/claude-code/commit-standards/SKILL.md +249 -0
- package/bundled/skills/claude-code/commit-standards/conventional-commits.md +256 -0
- package/bundled/skills/claude-code/commit-standards/language-options.md +164 -0
- package/bundled/skills/claude-code/documentation-guide/SKILL.md +416 -0
- package/bundled/skills/claude-code/documentation-guide/documentation-structure.md +349 -0
- package/bundled/skills/claude-code/documentation-guide/readme-template.md +404 -0
- package/bundled/skills/claude-code/error-code-guide/SKILL.md +264 -0
- package/bundled/skills/claude-code/git-workflow-guide/SKILL.md +226 -0
- package/bundled/skills/claude-code/git-workflow-guide/branch-naming.md +212 -0
- package/bundled/skills/claude-code/git-workflow-guide/git-workflow.md +313 -0
- package/bundled/skills/claude-code/logging-guide/SKILL.md +280 -0
- package/bundled/skills/claude-code/methodology-system/SKILL.md +215 -0
- package/bundled/skills/claude-code/methodology-system/create-methodology.md +450 -0
- package/bundled/skills/claude-code/methodology-system/runtime.md +271 -0
- package/bundled/skills/claude-code/project-structure-guide/SKILL.md +143 -0
- package/bundled/skills/claude-code/project-structure-guide/language-patterns.md +263 -0
- package/bundled/skills/claude-code/refactoring-assistant/SKILL.md +205 -0
- package/bundled/skills/claude-code/release-standards/SKILL.md +191 -0
- package/bundled/skills/claude-code/release-standards/changelog-format.md +239 -0
- package/bundled/skills/claude-code/release-standards/release-workflow.md +337 -0
- package/bundled/skills/claude-code/release-standards/semantic-versioning.md +242 -0
- package/bundled/skills/claude-code/requirement-assistant/SKILL.md +222 -0
- package/bundled/skills/claude-code/requirement-assistant/requirement-checklist.md +317 -0
- package/bundled/skills/claude-code/requirement-assistant/requirement-writing.md +391 -0
- package/bundled/skills/claude-code/spec-driven-dev/SKILL.md +238 -0
- package/bundled/skills/claude-code/tdd-assistant/SKILL.md +384 -0
- package/bundled/skills/claude-code/tdd-assistant/language-examples.md +1276 -0
- package/bundled/skills/claude-code/tdd-assistant/tdd-workflow.md +659 -0
- package/bundled/skills/claude-code/test-coverage-assistant/SKILL.md +277 -0
- package/bundled/skills/claude-code/testing-guide/SKILL.md +317 -0
- package/bundled/skills/claude-code/testing-guide/testing-pyramid.md +440 -0
- package/package.json +4 -2
- package/src/commands/check.js +38 -6
- package/src/commands/init.js +20 -6
- package/src/commands/list.js +7 -2
- package/src/commands/skills.js +0 -2
- package/src/commands/update.js +271 -0
- package/src/i18n/messages.js +161 -11
- package/src/utils/copier.js +63 -10
- package/src/utils/skills-installer.js +47 -11
- package/standards-registry.json +6 -3
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: test-coverage-assistant
|
|
3
|
+
description: |
|
|
4
|
+
Evaluate test completeness using the 7 dimensions framework.
|
|
5
|
+
Use when: writing tests, reviewing test coverage, ensuring test quality.
|
|
6
|
+
Keywords: test coverage, completeness, dimensions, 7 dimensions, test quality, 測試覆蓋, 測試完整性, 七維度.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Test Coverage Assistant
|
|
10
|
+
|
|
11
|
+
> **Language**: English | [繁體中文](../../../locales/zh-TW/skills/claude-code/test-coverage-assistant/SKILL.md)
|
|
12
|
+
|
|
13
|
+
**Version**: 1.0.0
|
|
14
|
+
**Last Updated**: 2025-12-30
|
|
15
|
+
**Applicability**: Claude Code Skills
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Purpose
|
|
20
|
+
|
|
21
|
+
This skill helps evaluate and improve test completeness using the 7 dimensions framework, ensuring comprehensive test coverage for each feature.
|
|
22
|
+
|
|
23
|
+
## Quick Reference
|
|
24
|
+
|
|
25
|
+
### The 7 Dimensions
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
29
|
+
│ Test Completeness = 7 Dimensions │
|
|
30
|
+
├─────────────────────────────────────────────────────────────┤
|
|
31
|
+
│ 1. Happy Path Normal expected behavior │
|
|
32
|
+
│ 2. Boundary Min/max values, limits │
|
|
33
|
+
│ 3. Error Handling Invalid input, exceptions │
|
|
34
|
+
│ 4. Authorization Role-based access control │
|
|
35
|
+
│ 5. State Changes Before/after verification │
|
|
36
|
+
│ 6. Validation Format, business rules │
|
|
37
|
+
│ 7. Integration Real query verification │
|
|
38
|
+
└─────────────────────────────────────────────────────────────┘
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Dimension Summary Table
|
|
42
|
+
|
|
43
|
+
| # | Dimension | What to Test | Key Question |
|
|
44
|
+
|---|-----------|--------------|--------------|
|
|
45
|
+
| 1 | **Happy Path** | Valid input → expected output | Does the normal flow work? |
|
|
46
|
+
| 2 | **Boundary** | Min/max values, limits | What happens at edges? |
|
|
47
|
+
| 3 | **Error Handling** | Invalid input, not found | How do errors behave? |
|
|
48
|
+
| 4 | **Authorization** | Role permissions | Who can do what? |
|
|
49
|
+
| 5 | **State Changes** | Before/after states | Did the state change correctly? |
|
|
50
|
+
| 6 | **Validation** | Format, business rules | Is input validated? |
|
|
51
|
+
| 7 | **Integration** | Real DB/API calls | Does the query really work? |
|
|
52
|
+
|
|
53
|
+
### When to Apply Each Dimension
|
|
54
|
+
|
|
55
|
+
| Feature Type | Required Dimensions |
|
|
56
|
+
|--------------|---------------------|
|
|
57
|
+
| CRUD API | 1, 2, 3, 4, 6, 7 |
|
|
58
|
+
| Query/Search | 1, 2, 3, 4, 7 |
|
|
59
|
+
| State Machine | 1, 3, 4, 5, 6 |
|
|
60
|
+
| Validation Logic | 1, 2, 3, 6 |
|
|
61
|
+
| Background Job | 1, 3, 5 |
|
|
62
|
+
| External Integration | 1, 3, 7 |
|
|
63
|
+
|
|
64
|
+
## Test Design Checklist
|
|
65
|
+
|
|
66
|
+
Use this checklist for each feature:
|
|
67
|
+
|
|
68
|
+
```
|
|
69
|
+
Feature: ___________________
|
|
70
|
+
|
|
71
|
+
□ Happy Path
|
|
72
|
+
□ Valid input produces expected success
|
|
73
|
+
□ Correct data is returned/created
|
|
74
|
+
□ Side effects occur as expected
|
|
75
|
+
|
|
76
|
+
□ Boundary Conditions
|
|
77
|
+
□ Minimum valid value
|
|
78
|
+
□ Maximum valid value
|
|
79
|
+
□ Empty collection
|
|
80
|
+
□ Single item collection
|
|
81
|
+
□ Large collection (if applicable)
|
|
82
|
+
|
|
83
|
+
□ Error Handling
|
|
84
|
+
□ Invalid input format
|
|
85
|
+
□ Missing required fields
|
|
86
|
+
□ Duplicate/conflict scenarios
|
|
87
|
+
□ Not found scenarios
|
|
88
|
+
□ External service failure (if applicable)
|
|
89
|
+
|
|
90
|
+
□ Authorization
|
|
91
|
+
□ Each permitted role tested
|
|
92
|
+
□ Each denied role tested
|
|
93
|
+
□ Unauthenticated access tested
|
|
94
|
+
□ Cross-boundary access tested
|
|
95
|
+
|
|
96
|
+
□ State Changes
|
|
97
|
+
□ Initial state verified
|
|
98
|
+
□ Final state verified
|
|
99
|
+
□ All valid state transitions tested
|
|
100
|
+
|
|
101
|
+
□ Validation
|
|
102
|
+
□ Format validation (email, phone, etc.)
|
|
103
|
+
□ Business rule validation
|
|
104
|
+
□ Cross-field validation
|
|
105
|
+
|
|
106
|
+
□ Integration (if UT uses wildcards)
|
|
107
|
+
□ Query predicates verified
|
|
108
|
+
□ Entity relationships verified
|
|
109
|
+
□ Pagination verified
|
|
110
|
+
□ Sorting/filtering verified
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
## Detailed Guidelines
|
|
114
|
+
|
|
115
|
+
For complete standards, see:
|
|
116
|
+
- [Test Completeness Dimensions](../../../core/test-completeness-dimensions.md)
|
|
117
|
+
- [Testing Standards](../../../core/testing-standards.md)
|
|
118
|
+
|
|
119
|
+
### AI-Optimized Format (Token-Efficient)
|
|
120
|
+
|
|
121
|
+
For AI assistants, use the YAML format files for reduced token usage:
|
|
122
|
+
- Base standard: `ai/standards/test-completeness-dimensions.ai.yaml`
|
|
123
|
+
|
|
124
|
+
## Examples
|
|
125
|
+
|
|
126
|
+
### 1. Happy Path
|
|
127
|
+
|
|
128
|
+
```csharp
|
|
129
|
+
[Fact]
|
|
130
|
+
public async Task CreateUser_WithValidData_ReturnsSuccess()
|
|
131
|
+
{
|
|
132
|
+
// Arrange
|
|
133
|
+
var request = new CreateUserRequest
|
|
134
|
+
{
|
|
135
|
+
Username = "newuser",
|
|
136
|
+
Email = "user@example.com"
|
|
137
|
+
};
|
|
138
|
+
|
|
139
|
+
// Act
|
|
140
|
+
var result = await _service.CreateUserAsync(request);
|
|
141
|
+
|
|
142
|
+
// Assert
|
|
143
|
+
result.Success.Should().BeTrue();
|
|
144
|
+
result.Data.Username.Should().Be("newuser");
|
|
145
|
+
}
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
### 2. Boundary
|
|
149
|
+
|
|
150
|
+
```csharp
|
|
151
|
+
[Theory]
|
|
152
|
+
[InlineData(0, false)] // Below minimum
|
|
153
|
+
[InlineData(1, true)] // Minimum valid
|
|
154
|
+
[InlineData(100, true)] // Maximum valid
|
|
155
|
+
[InlineData(101, false)] // Above maximum
|
|
156
|
+
public void ValidateQuantity_BoundaryValues_ReturnsExpected(
|
|
157
|
+
int quantity, bool expected)
|
|
158
|
+
{
|
|
159
|
+
var result = _validator.IsValidQuantity(quantity);
|
|
160
|
+
result.Should().Be(expected);
|
|
161
|
+
}
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
### 4. Authorization
|
|
165
|
+
|
|
166
|
+
```csharp
|
|
167
|
+
[Fact]
|
|
168
|
+
public async Task DeleteUser_AsAdmin_Succeeds()
|
|
169
|
+
{
|
|
170
|
+
var adminContext = CreateContext(role: "Admin");
|
|
171
|
+
var result = await _service.DeleteUserAsync(userId, adminContext);
|
|
172
|
+
result.Success.Should().BeTrue();
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
[Fact]
|
|
176
|
+
public async Task DeleteUser_AsMember_ReturnsForbidden()
|
|
177
|
+
{
|
|
178
|
+
var memberContext = CreateContext(role: "Member");
|
|
179
|
+
var result = await _service.DeleteUserAsync(userId, memberContext);
|
|
180
|
+
result.ErrorCode.Should().Be("FORBIDDEN");
|
|
181
|
+
}
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
### 5. State Changes
|
|
185
|
+
|
|
186
|
+
```csharp
|
|
187
|
+
[Fact]
|
|
188
|
+
public async Task DisableUser_UpdatesStateCorrectly()
|
|
189
|
+
{
|
|
190
|
+
// Arrange
|
|
191
|
+
var user = await CreateEnabledUser();
|
|
192
|
+
user.IsEnabled.Should().BeTrue(); // Verify initial state
|
|
193
|
+
|
|
194
|
+
// Act
|
|
195
|
+
await _service.DisableUserAsync(user.Id);
|
|
196
|
+
|
|
197
|
+
// Assert
|
|
198
|
+
var updatedUser = await _repository.GetByIdAsync(user.Id);
|
|
199
|
+
updatedUser.IsEnabled.Should().BeFalse(); // Verify final state
|
|
200
|
+
}
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
## Authorization Matrix Template
|
|
204
|
+
|
|
205
|
+
Create a matrix for each feature:
|
|
206
|
+
|
|
207
|
+
| Operation | Admin | Manager | Member | Guest |
|
|
208
|
+
|-----------|-------|---------|--------|-------|
|
|
209
|
+
| Create | ✅ | ✅ | ❌ | ❌ |
|
|
210
|
+
| Read All | ✅ | ⚠️ Scoped | ❌ | ❌ |
|
|
211
|
+
| Update | ✅ | ⚠️ Own dept | ❌ | ❌ |
|
|
212
|
+
| Delete | ✅ | ❌ | ❌ | ❌ |
|
|
213
|
+
|
|
214
|
+
Each cell should have a corresponding test case.
|
|
215
|
+
|
|
216
|
+
## Anti-Patterns to Avoid
|
|
217
|
+
|
|
218
|
+
- ❌ Testing only happy path
|
|
219
|
+
- ❌ Missing authorization tests for multi-role systems
|
|
220
|
+
- ❌ Not verifying state changes
|
|
221
|
+
- ❌ Using wildcards in UT without corresponding IT
|
|
222
|
+
- ❌ Same values for ID and business identifier in test data
|
|
223
|
+
- ❌ Testing implementation details instead of behavior
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## Configuration Detection
|
|
228
|
+
|
|
229
|
+
This skill supports project-specific configuration.
|
|
230
|
+
|
|
231
|
+
### Detection Order
|
|
232
|
+
|
|
233
|
+
1. Check `CONTRIBUTING.md` for "Testing Standards" section
|
|
234
|
+
2. Check for existing test patterns in the codebase
|
|
235
|
+
3. If not found, **default to all 7 dimensions**
|
|
236
|
+
|
|
237
|
+
### First-Time Setup
|
|
238
|
+
|
|
239
|
+
If no configuration found:
|
|
240
|
+
|
|
241
|
+
1. Suggest: "This project hasn't configured test completeness requirements. Would you like to customize which dimensions are required?"
|
|
242
|
+
2. Suggest documenting in `CONTRIBUTING.md`:
|
|
243
|
+
|
|
244
|
+
```markdown
|
|
245
|
+
## Test Completeness
|
|
246
|
+
|
|
247
|
+
We use the 7 Dimensions framework for test coverage.
|
|
248
|
+
|
|
249
|
+
### Required Dimensions by Feature Type
|
|
250
|
+
- API endpoints: All 7 dimensions
|
|
251
|
+
- Utility functions: Dimensions 1, 2, 3, 6
|
|
252
|
+
- Background jobs: Dimensions 1, 3, 5
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
---
|
|
256
|
+
|
|
257
|
+
## Related Standards
|
|
258
|
+
|
|
259
|
+
- [Test Completeness Dimensions](../../../core/test-completeness-dimensions.md)
|
|
260
|
+
- [Testing Standards](../../../core/testing-standards.md)
|
|
261
|
+
- [Testing Guide](../testing-guide/SKILL.md)
|
|
262
|
+
|
|
263
|
+
---
|
|
264
|
+
|
|
265
|
+
## Version History
|
|
266
|
+
|
|
267
|
+
| Version | Date | Changes |
|
|
268
|
+
|---------|------|---------|
|
|
269
|
+
| 1.0.0 | 2025-12-30 | Initial release |
|
|
270
|
+
|
|
271
|
+
---
|
|
272
|
+
|
|
273
|
+
## License
|
|
274
|
+
|
|
275
|
+
This skill is released under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
|
|
276
|
+
|
|
277
|
+
**Source**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
|
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: testing-guide
|
|
3
|
+
description: |
|
|
4
|
+
Testing pyramid and test writing standards for UT/IT/ST/E2E.
|
|
5
|
+
Supports ISTQB and Industry Pyramid frameworks.
|
|
6
|
+
Use when: writing tests, discussing test coverage, test strategy, or test naming.
|
|
7
|
+
Keywords: test, unit, integration, e2e, coverage, mock, ISTQB, SIT, 測試, 單元, 整合, 端對端.
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Testing Guide
|
|
11
|
+
|
|
12
|
+
> **Language**: English | [繁體中文](../../../locales/zh-TW/skills/claude-code/testing-guide/SKILL.md)
|
|
13
|
+
|
|
14
|
+
**Version**: 1.1.0
|
|
15
|
+
**Last Updated**: 2025-12-29
|
|
16
|
+
**Applicability**: Claude Code Skills
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Purpose
|
|
21
|
+
|
|
22
|
+
This skill provides testing pyramid standards and best practices for systematic testing, supporting both ISTQB and Industry Pyramid frameworks.
|
|
23
|
+
|
|
24
|
+
## Framework Selection
|
|
25
|
+
|
|
26
|
+
| Framework | Levels | Best For |
|
|
27
|
+
|-----------|--------|----------|
|
|
28
|
+
| **ISTQB** | UT → IT/SIT → ST → AT/UAT | Enterprise, compliance, formal QA |
|
|
29
|
+
| **Industry Pyramid** | UT (70%) → IT (20%) → E2E (10%) | Agile, DevOps, CI/CD |
|
|
30
|
+
|
|
31
|
+
**Note on Integration Testing abbreviation:**
|
|
32
|
+
- **IT** (Integration Testing): Agile/DevOps communities
|
|
33
|
+
- **SIT** (System Integration Testing): Enterprise/ISTQB contexts
|
|
34
|
+
- Both refer to the same testing level
|
|
35
|
+
|
|
36
|
+
## Quick Reference
|
|
37
|
+
|
|
38
|
+
### Testing Pyramid (Industry Standard)
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
┌─────────┐
|
|
42
|
+
│ E2E │ ← 10% (Fewer, slower)
|
|
43
|
+
─┴─────────┴─
|
|
44
|
+
┌─────────────┐
|
|
45
|
+
│ IT/SIT │ ← 20% (Integration)
|
|
46
|
+
─┴─────────────┴─
|
|
47
|
+
┌─────────────────┐
|
|
48
|
+
│ UT │ ← 70% (Unit)
|
|
49
|
+
└─────────────────┘
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### Test Levels Overview
|
|
53
|
+
|
|
54
|
+
| Level | Scope | Speed | Dependencies |
|
|
55
|
+
|-------|-------|-------|-------------|
|
|
56
|
+
| **UT** | Single function/class | < 100ms | Mocked |
|
|
57
|
+
| **IT/SIT** | Component interaction | 1-10s | Real DB (containerized) |
|
|
58
|
+
| **ST** | Full system (ISTQB) | Minutes | Production-like |
|
|
59
|
+
| **E2E** | User journeys | 30s+ | Everything real |
|
|
60
|
+
| **AT/UAT** | Business validation (ISTQB) | Varies | Everything real |
|
|
61
|
+
|
|
62
|
+
### Coverage Targets
|
|
63
|
+
|
|
64
|
+
| Metric | Minimum | Recommended |
|
|
65
|
+
|--------|---------|-------------|
|
|
66
|
+
| Line | 70% | 85% |
|
|
67
|
+
| Branch | 60% | 80% |
|
|
68
|
+
| Function | 80% | 90% |
|
|
69
|
+
|
|
70
|
+
## Detailed Guidelines
|
|
71
|
+
|
|
72
|
+
For complete standards, see:
|
|
73
|
+
- [Testing Pyramid](./testing-pyramid.md)
|
|
74
|
+
|
|
75
|
+
### AI-Optimized Format (Token-Efficient)
|
|
76
|
+
|
|
77
|
+
For AI assistants, use the YAML format files for reduced token usage:
|
|
78
|
+
- Base standard: `ai/standards/testing.ai.yaml`
|
|
79
|
+
- Framework options:
|
|
80
|
+
- ISTQB Framework: `ai/options/testing/istqb-framework.ai.yaml`
|
|
81
|
+
- Industry Pyramid: `ai/options/testing/industry-pyramid.ai.yaml`
|
|
82
|
+
- Test level options:
|
|
83
|
+
- Unit Testing: `ai/options/testing/unit-testing.ai.yaml`
|
|
84
|
+
- Integration Testing: `ai/options/testing/integration-testing.ai.yaml`
|
|
85
|
+
- System Testing: `ai/options/testing/system-testing.ai.yaml`
|
|
86
|
+
- E2E Testing: `ai/options/testing/e2e-testing.ai.yaml`
|
|
87
|
+
|
|
88
|
+
## Naming Conventions
|
|
89
|
+
|
|
90
|
+
### File Naming
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
[ClassName]Tests.cs # C#
|
|
94
|
+
[ClassName].test.ts # TypeScript
|
|
95
|
+
[class_name]_test.py # Python
|
|
96
|
+
[class_name]_test.go # Go
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### Method Naming
|
|
100
|
+
|
|
101
|
+
```
|
|
102
|
+
[MethodName]_[Scenario]_[ExpectedResult]()
|
|
103
|
+
should_[behavior]_when_[condition]()
|
|
104
|
+
test_[method]_[scenario]_[expected]()
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Test Doubles
|
|
108
|
+
|
|
109
|
+
| Type | Purpose | When to Use |
|
|
110
|
+
|------|---------|-------------|
|
|
111
|
+
| **Stub** | Returns predefined values | Fixed API responses |
|
|
112
|
+
| **Mock** | Verifies interactions | Check method called |
|
|
113
|
+
| **Fake** | Simplified implementation | In-memory database |
|
|
114
|
+
| **Spy** | Records calls, delegates | Partial mocking |
|
|
115
|
+
|
|
116
|
+
### When to Use What
|
|
117
|
+
|
|
118
|
+
- **UT**: Use mocks/stubs for all external deps
|
|
119
|
+
- **IT**: Use fakes for DB, stubs for external APIs
|
|
120
|
+
- **ST**: Real components, fake only external services
|
|
121
|
+
- **E2E**: Real everything
|
|
122
|
+
|
|
123
|
+
## AAA Pattern
|
|
124
|
+
|
|
125
|
+
```typescript
|
|
126
|
+
test('method_scenario_expected', () => {
|
|
127
|
+
// Arrange - Setup test data
|
|
128
|
+
const input = createTestInput();
|
|
129
|
+
const sut = new SystemUnderTest();
|
|
130
|
+
|
|
131
|
+
// Act - Execute behavior
|
|
132
|
+
const result = sut.execute(input);
|
|
133
|
+
|
|
134
|
+
// Assert - Verify result
|
|
135
|
+
expect(result).toBe(expected);
|
|
136
|
+
});
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
## FIRST Principles
|
|
140
|
+
|
|
141
|
+
- **F**ast - Tests run quickly
|
|
142
|
+
- **I**ndependent - Tests don't affect each other
|
|
143
|
+
- **R**epeatable - Same result every time
|
|
144
|
+
- **S**elf-validating - Clear pass/fail
|
|
145
|
+
- **T**imely - Written with production code
|
|
146
|
+
|
|
147
|
+
## Anti-Patterns to Avoid
|
|
148
|
+
|
|
149
|
+
- ❌ Test Interdependence (tests must run in order)
|
|
150
|
+
- ❌ Flaky Tests (sometimes pass, sometimes fail)
|
|
151
|
+
- ❌ Testing Implementation Details
|
|
152
|
+
- ❌ Over-Mocking
|
|
153
|
+
- ❌ Missing Assertions
|
|
154
|
+
- ❌ Magic Numbers/Strings
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## Testing Theory Essentials (YAML Compressed)
|
|
159
|
+
|
|
160
|
+
```yaml
|
|
161
|
+
# === ISTQB FUNDAMENTALS ===
|
|
162
|
+
terminology:
|
|
163
|
+
error: "Human mistake in thinking"
|
|
164
|
+
defect: "Bug in code (caused by error)"
|
|
165
|
+
failure: "System behaves incorrectly (caused by defect)"
|
|
166
|
+
chain: "Error → Defect → Failure"
|
|
167
|
+
|
|
168
|
+
oracle_problem:
|
|
169
|
+
definition: "How do we know the expected result is correct?"
|
|
170
|
+
approaches:
|
|
171
|
+
- specification_oracle: "Compare against spec"
|
|
172
|
+
- reference_oracle: "Compare against reference impl"
|
|
173
|
+
- consistency_oracle: "Same input → same output"
|
|
174
|
+
- heuristic_oracle: "Reasonable approximation"
|
|
175
|
+
|
|
176
|
+
# === STATIC vs DYNAMIC ===
|
|
177
|
+
static_testing:
|
|
178
|
+
definition: "Examine without executing"
|
|
179
|
+
techniques: [reviews, walkthroughs, inspections, static_analysis]
|
|
180
|
+
finds: "Defects before runtime"
|
|
181
|
+
examples: [ESLint, SonarQube, code_review]
|
|
182
|
+
|
|
183
|
+
dynamic_testing:
|
|
184
|
+
definition: "Execute and observe behavior"
|
|
185
|
+
techniques: [unit, integration, system, acceptance]
|
|
186
|
+
finds: "Failures during execution"
|
|
187
|
+
|
|
188
|
+
# === TEST DESIGN TECHNIQUES ===
|
|
189
|
+
black_box:
|
|
190
|
+
equivalence_partitioning:
|
|
191
|
+
principle: "Divide inputs into equivalent classes"
|
|
192
|
+
example: "Age: [<0 invalid], [0-17 minor], [18-64 adult], [65+ senior]"
|
|
193
|
+
boundary_value:
|
|
194
|
+
principle: "Test at boundaries of partitions"
|
|
195
|
+
example: "Age: test -1, 0, 17, 18, 64, 65"
|
|
196
|
+
decision_table:
|
|
197
|
+
principle: "Combinations of conditions → actions"
|
|
198
|
+
use: "Complex business rules"
|
|
199
|
+
state_transition:
|
|
200
|
+
principle: "Valid sequences of states"
|
|
201
|
+
use: "Workflow, state machines"
|
|
202
|
+
|
|
203
|
+
white_box:
|
|
204
|
+
statement_coverage: "Every statement executed once"
|
|
205
|
+
branch_coverage: "Every decision branch taken"
|
|
206
|
+
condition_coverage: "Every condition T/F"
|
|
207
|
+
path_coverage: "Every possible path (often impractical)"
|
|
208
|
+
|
|
209
|
+
# === RISK-BASED TESTING ===
|
|
210
|
+
risk_assessment:
|
|
211
|
+
likelihood: "How likely to fail?"
|
|
212
|
+
impact: "How bad if fails?"
|
|
213
|
+
priority: "likelihood × impact"
|
|
214
|
+
|
|
215
|
+
risk_matrix:
|
|
216
|
+
high_high: "Test extensively, first priority"
|
|
217
|
+
high_low: "Good coverage"
|
|
218
|
+
low_high: "Good coverage"
|
|
219
|
+
low_low: "Basic coverage"
|
|
220
|
+
|
|
221
|
+
# === DEFECT MANAGEMENT ===
|
|
222
|
+
defect_lifecycle:
|
|
223
|
+
states: [new, assigned, in_progress, fixed, verified, closed]
|
|
224
|
+
reopen_trigger: "Verification fails"
|
|
225
|
+
|
|
226
|
+
severity_vs_priority:
|
|
227
|
+
severity: "Technical impact (critical/major/minor/trivial)"
|
|
228
|
+
priority: "Business urgency (high/medium/low)"
|
|
229
|
+
example: "Typo on login page: low severity, high priority (brand)"
|
|
230
|
+
|
|
231
|
+
# === TEST ENVIRONMENT ===
|
|
232
|
+
isolation_levels:
|
|
233
|
+
unit: "In-memory, mocked deps"
|
|
234
|
+
integration: "Containerized DB (Docker)"
|
|
235
|
+
staging: "Production-like, isolated"
|
|
236
|
+
production: "Real, feature flags for testing"
|
|
237
|
+
|
|
238
|
+
test_data_strategies:
|
|
239
|
+
fixtures: "Static predefined data"
|
|
240
|
+
factories: "Dynamic generation (faker)"
|
|
241
|
+
snapshots: "Sanitized production copy"
|
|
242
|
+
synthetic: "Algorithm-generated edge cases"
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
---
|
|
246
|
+
|
|
247
|
+
## Configuration Detection
|
|
248
|
+
|
|
249
|
+
This skill supports project-specific configuration.
|
|
250
|
+
|
|
251
|
+
### Detection Order
|
|
252
|
+
|
|
253
|
+
1. Check `CONTRIBUTING.md` for "Disabled Skills" section
|
|
254
|
+
- If this skill is listed, it is disabled for this project
|
|
255
|
+
2. Check `CONTRIBUTING.md` for "Testing Standards" section
|
|
256
|
+
3. If not found, **default to standard coverage targets**
|
|
257
|
+
|
|
258
|
+
### First-Time Setup
|
|
259
|
+
|
|
260
|
+
If no configuration found and context is unclear:
|
|
261
|
+
|
|
262
|
+
1. Ask the user: "This project hasn't configured testing standards. Would you like to customize coverage targets?"
|
|
263
|
+
2. After user selection, suggest documenting in `CONTRIBUTING.md`:
|
|
264
|
+
|
|
265
|
+
```markdown
|
|
266
|
+
## Testing Standards
|
|
267
|
+
|
|
268
|
+
### Coverage Targets
|
|
269
|
+
| Metric | Target |
|
|
270
|
+
|--------|--------|
|
|
271
|
+
| Line | 80% |
|
|
272
|
+
| Branch | 70% |
|
|
273
|
+
| Function | 85% |
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
### Configuration Example
|
|
277
|
+
|
|
278
|
+
In project's `CONTRIBUTING.md`:
|
|
279
|
+
|
|
280
|
+
```markdown
|
|
281
|
+
## Testing Standards
|
|
282
|
+
|
|
283
|
+
### Coverage Targets
|
|
284
|
+
| Metric | Target |
|
|
285
|
+
|--------|--------|
|
|
286
|
+
| Line | 80% |
|
|
287
|
+
| Branch | 70% |
|
|
288
|
+
| Function | 85% |
|
|
289
|
+
|
|
290
|
+
### Testing Framework
|
|
291
|
+
- Unit Tests: Jest
|
|
292
|
+
- Integration Tests: Supertest
|
|
293
|
+
- E2E Tests: Playwright
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
---
|
|
297
|
+
|
|
298
|
+
## Related Standards
|
|
299
|
+
|
|
300
|
+
- [Testing Standards](../../core/testing-standards.md)
|
|
301
|
+
- [Code Review Checklist](../../core/code-review-checklist.md)
|
|
302
|
+
|
|
303
|
+
---
|
|
304
|
+
|
|
305
|
+
## Version History
|
|
306
|
+
|
|
307
|
+
| Version | Date | Changes |
|
|
308
|
+
|---------|------|---------|
|
|
309
|
+
| 1.0.0 | 2025-12-24 | Added: Standard sections (Purpose, Related Standards, Version History, License) |
|
|
310
|
+
|
|
311
|
+
---
|
|
312
|
+
|
|
313
|
+
## License
|
|
314
|
+
|
|
315
|
+
This skill is released under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
|
|
316
|
+
|
|
317
|
+
**Source**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
|