sddflow 2.7.60__tar.gz → 2.7.74__tar.gz
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.
- {sddflow-2.7.60 → sddflow-2.7.74}/PKG-INFO +44 -1
- {sddflow-2.7.60 → sddflow-2.7.74}/README.md +43 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/pyproject.toml +1 -1
- sddflow-2.7.74/sdd/__init__.py +1 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/__main__.py +2 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/commands/confluence.py +47 -7
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/commands/dashboard.py +447 -83
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/commands/review.py +41 -35
- sddflow-2.7.74/sdd/commands/token_log.py +282 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/commands/upgrade.py +500 -0
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.github/prompts/change.prompt.md +18 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/clarify.prompt.md +44 -10
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/plan-design.prompt.md +11 -1
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/specify.prompt.md +11 -0
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.github/prompts/task.prompt.md +164 -6
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/integrations.yml.example +21 -2
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/manifest.yml +1 -1
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/adr-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/analyze-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/api-spec-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/arch-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/brd-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/clarify-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/data-model-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/design-template.md +5 -5
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/feature-story-template.md +5 -5
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/hld-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/investigation-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/lld-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/plan-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/qa-testcases-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/release-template.md +6 -6
- {sddflow-2.7.60/sdd/packs/sdd-universal → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/resilience-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/runbook-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/security-design-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/srd-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/tasks-template.md +3 -3
- sddflow-2.7.74/sdd/packs/sdd-backend-service/.specify/templates/token-usage-template.md +83 -0
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/use-cases-template.md +4 -4
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-backend-service}/.specify/templates/validate-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/CLAUDE.md +44 -23
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/HOW-TO-USE.md +42 -13
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.github/prompts/change.prompt.md +18 -3
- {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.github/prompts/clarify.prompt.md +46 -10
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.github/prompts/plan-design.prompt.md +11 -1
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/specify.prompt.md +7 -0
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.github/prompts/task.prompt.md +164 -6
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.specify/integrations.yml.example +21 -2
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/manifest.yml +1 -1
- {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.specify/templates/adr-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.specify/templates/analyze-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/api-spec-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/arch-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/brd-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.specify/templates/clarify-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/component-library-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/component-spec-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/data-model-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/design-template.md +5 -5
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.specify/templates/feature-story-template.md +5 -5
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.specify/templates/hld-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/investigation-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/lld-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.specify/templates/plan-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.specify/templates/qa-testcases-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/release-template.md +6 -6
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/resilience-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/runbook-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/security-design-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/srd-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.specify/templates/tasks-template.md +3 -3
- sddflow-2.7.74/sdd/packs/sdd-frontend-spa/.specify/templates/token-usage-template.md +83 -0
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.specify/templates/use-cases-template.md +4 -4
- {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.74/sdd/packs/sdd-frontend-spa}/.specify/templates/ux-flow-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/validate-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/CLAUDE.md +44 -23
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/HOW-TO-USE.md +42 -13
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.github/prompts/change.prompt.md +18 -3
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.github/prompts/clarify.prompt.md +46 -10
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.github/prompts/plan-design.prompt.md +11 -1
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/specify.prompt.md +7 -0
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.github/prompts/task.prompt.md +164 -6
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.specify/integrations.yml.example +21 -2
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/manifest.yml +1 -1
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.specify/templates/adr-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.specify/templates/analyze-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/api-spec-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/arch-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/brd-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.specify/templates/clarify-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/component-library-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/component-spec-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/data-model-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.specify/templates/design-template.md +5 -5
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/feature-story-template.md +5 -5
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.specify/templates/hld-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/investigation-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.specify/templates/lld-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.specify/templates/plan-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.specify/templates/qa-testcases-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/release-template.md +6 -6
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/resilience-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/runbook-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/screen-spec-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/security-design-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/srd-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/tasks-template.md +3 -3
- sddflow-2.7.74/sdd/packs/sdd-fullstack/.specify/templates/token-usage-template.md +83 -0
- {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.specify/templates/use-cases-template.md +4 -4
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.specify/templates/ux-flow-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.74/sdd/packs/sdd-fullstack}/.specify/templates/validate-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/CLAUDE.md +44 -23
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/HOW-TO-USE.md +42 -13
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/change.prompt.md +18 -3
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-mobile}/.github/prompts/clarify.prompt.md +46 -10
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/plan-design.prompt.md +11 -1
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/specify.prompt.md +7 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/task.prompt.md +164 -6
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/integrations.yml.example +21 -2
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/manifest.yml +1 -1
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-mobile}/.specify/templates/adr-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-mobile}/.specify/templates/analyze-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/api-spec-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/arch-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/brd-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-mobile}/.specify/templates/clarify-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/data-model-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-mobile}/.specify/templates/design-template.md +5 -5
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/feature-story-template.md +5 -5
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/hld-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/investigation-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-mobile}/.specify/templates/lld-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-mobile}/.specify/templates/plan-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-mobile}/.specify/templates/qa-testcases-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/release-template.md +6 -6
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/resilience-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/runbook-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/screen-spec-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/security-design-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/srd-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-mobile}/.specify/templates/tasks-template.md +3 -3
- sddflow-2.7.74/sdd/packs/sdd-mobile/.specify/templates/token-usage-template.md +83 -0
- {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.74/sdd/packs/sdd-mobile}/.specify/templates/use-cases-template.md +4 -4
- {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.74/sdd/packs/sdd-mobile}/.specify/templates/ux-flow-template.md +3 -3
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-mobile}/.specify/templates/validate-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/CLAUDE.md +44 -23
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/HOW-TO-USE.md +42 -13
- sddflow-2.7.74/sdd/packs/sdd-universal/.github/prompts/change.prompt.md +556 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/clarify.prompt.md +44 -10
- sddflow-2.7.74/sdd/packs/sdd-universal/.github/prompts/plan-design.prompt.md +352 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/specify.prompt.md +7 -1
- sddflow-2.7.74/sdd/packs/sdd-universal/.github/prompts/task.prompt.md +347 -0
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/integrations.yml.example +483 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/manifest.yml +1 -1
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/adr-template.md +67 -0
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/analyze-template.md +133 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/api-spec-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/arch-template.md +4 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/brd-template.md +4 -4
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/clarify-template.md +94 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/data-model-template.md +3 -3
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/design-template.md +279 -0
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/feature-story-template.md +164 -0
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/hld-template.md +115 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/investigation-template.md +3 -3
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/lld-template.md +181 -0
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/plan-template.md +101 -0
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/qa-testcases-template.md +198 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/release-template.md +6 -6
- {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.74/sdd/packs/sdd-universal}/.specify/templates/resilience-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/runbook-template.md +3 -3
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/security-design-template.md +4 -4
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/srd-template.md +82 -0
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/tasks-template.md +347 -0
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/token-usage-template.md +83 -0
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/use-cases-template.md +201 -0
- sddflow-2.7.74/sdd/packs/sdd-universal/.specify/templates/validate-template.md +131 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/CLAUDE.md +44 -23
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/HOW-TO-USE.md +42 -13
- sddflow-2.7.74/sdd/utils/claude_code_transcript.py +136 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/integrations.py +10 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/md_to_cf.py +28 -4
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/status.py +140 -6
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/validate.py +5 -0
- sddflow-2.7.60/sdd/__init__.py +0 -1
- sddflow-2.7.60/sdd/packs/sdd-backend-service/.specify/templates/token-usage-template.md +0 -46
- sddflow-2.7.60/sdd/packs/sdd-frontend-spa/.specify/templates/token-usage-template.md +0 -46
- sddflow-2.7.60/sdd/packs/sdd-fullstack/.specify/templates/token-usage-template.md +0 -46
- sddflow-2.7.60/sdd/packs/sdd-mobile/.specify/templates/token-usage-template.md +0 -46
- sddflow-2.7.60/sdd/packs/sdd-universal/.github/prompts/change.prompt.md +0 -541
- sddflow-2.7.60/sdd/packs/sdd-universal/.github/prompts/plan-design.prompt.md +0 -342
- sddflow-2.7.60/sdd/packs/sdd-universal/.github/prompts/task.prompt.md +0 -189
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/integrations.yml.example +0 -464
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/adr-template.md +0 -67
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/analyze-template.md +0 -133
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/clarify-template.md +0 -94
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/design-template.md +0 -279
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/feature-story-template.md +0 -164
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/hld-template.md +0 -115
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/lld-template.md +0 -181
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/plan-template.md +0 -101
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/qa-testcases-template.md +0 -198
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/srd-template.md +0 -82
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/tasks-template.md +0 -347
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/token-usage-template.md +0 -46
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/use-cases-template.md +0 -201
- sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/validate-template.md +0 -131
- {sddflow-2.7.60 → sddflow-2.7.74}/.gitignore +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/commands/__init__.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/commands/config.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/commands/cr.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/commands/init.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/commands/jira.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/commands/pr.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/address-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/analyze.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/ava.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/bug-assess.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/bug-fix.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/change.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/check-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/checklist.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/clarify.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/create-context.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/implement.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/jira-push.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/kai.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/leo.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/maya.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/morgan.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/orchestrate.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/plan-adr.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/plan-arch.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/plan-design.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/plan-hld.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/plan-lld.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/pre-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/quinn.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/release.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/rex.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/riley.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/specify-brd.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/specify-doc.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/specify-srd.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/specify-uc.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/specify.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/start.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/submit-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/task.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/taskstoissues.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.claude/commands/validate.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.cursor/rules/sdd-framework.mdc +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/copilot-instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/instructions/api.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/instructions/domain.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/instructions/java.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/instructions/tests.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/address-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/analyze.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/ava.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/bug-assess.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/bug-fix.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/check-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/checklist.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/create-context.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/implement.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/jira-push.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/kai.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/leo.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/maya.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/morgan.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/orchestrate.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/plan-adr.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/plan-arch.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/plan-hld.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/plan-lld.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/pre-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/quinn.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/release.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/rex.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/riley.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/specify-brd.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/specify-doc.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/specify-srd.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/specify-uc.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/submit-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/taskstoissues.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/prompts/validate.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.github/workflows/quality-gate.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.gitignore +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.gitlab-ci.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/contexts/CONTEXT-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/memory/change-rules.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/memory/constitution.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/memory/roles.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/memory/summary-rules.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/memory/token-pricing.yml.example +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/changeset-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/checklist-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/constitution-amendment-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/context-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/docker-config-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/jira-export-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/k8s-manifest-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.specify/templates/openapi-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.vscode/extensions.json +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/.windsurfrules +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/CHANGE-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/CLAUDE.local.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/FLOW-ROLES-GATES.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/IMPROVEMENT-BACKLOG.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/PROMPT-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/QUICKSTART.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/README.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/SDLC-COMPLETE-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/WHY-SDD.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/azure-pipelines.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/bitbucket-pipelines.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/docs/SUMMARY-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/setup.ps1 +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-backend-service/setup.sh +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/address-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/analyze.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/ava.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/bug-assess.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/bug-fix.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/change.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/check-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/checklist.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/clarify.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/create-context.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/implement.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/jira-push.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/kai.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/leo.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/maya.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/morgan.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/orchestrate.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-adr.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-arch.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-design.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-hld.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-lld.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/pre-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/quinn.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/release.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/rex.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/riley.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/specify-brd.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/specify-doc.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/specify-srd.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/specify-uc.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/specify.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/start.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/submit-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/task.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/taskstoissues.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.claude/commands/validate.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.cursor/rules/sdd-framework.mdc +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/copilot-instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/instructions/components.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/instructions/services.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/instructions/tests.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/address-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/analyze.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/ava.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/bug-assess.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/bug-fix.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/check-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/checklist.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/create-context.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/implement.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/jira-push.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/kai.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/leo.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/maya.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/morgan.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/orchestrate.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-adr.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-arch.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-hld.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-lld.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/pre-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/quinn.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/release.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/rex.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/riley.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/specify-brd.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/specify-doc.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/specify-srd.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/specify-uc.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/submit-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/taskstoissues.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/prompts/validate.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.github/workflows/quality-gate.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.gitignore +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.gitlab-ci.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/contexts/CONTEXT-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/memory/change-rules.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/memory/constitution.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/memory/roles.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/memory/summary-rules.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/memory/token-pricing.yml.example +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/changeset-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/checklist-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/constitution-amendment-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/context-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/docker-config-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.specify/templates/jira-export-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.vscode/extensions.json +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/.windsurfrules +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/CHANGE-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/CLAUDE.local.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/FLOW-ROLES-GATES.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/IMPROVEMENT-BACKLOG.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/PROMPT-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/QUICKSTART.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/README.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/SDLC-COMPLETE-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/WHY-SDD.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/azure-pipelines.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/bitbucket-pipelines.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/docs/SUMMARY-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/setup.ps1 +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-frontend-spa/setup.sh +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/address-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/analyze.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/ava.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/bug-assess.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/bug-fix.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/change.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/check-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/checklist.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/clarify.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/create-context.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/implement.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/jira-push.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/kai.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/leo.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/maya.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/morgan.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/orchestrate.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/plan-adr.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/plan-arch.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/plan-design.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/plan-hld.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/plan-lld.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/pre-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/quinn.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/release.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/rex.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/riley.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/specify-brd.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/specify-doc.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/specify-srd.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/specify-uc.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/specify.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/start.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/submit-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/task.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/taskstoissues.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.claude/commands/validate.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.cursor/rules/sdd-framework.mdc +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/copilot-instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/instructions/backend-tests.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/instructions/components.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/instructions/domain.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/instructions/frontend-services.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/instructions/java.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/address-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/analyze.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/ava.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/bug-assess.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/bug-fix.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/check-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/checklist.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/create-context.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/implement.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/jira-push.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/kai.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/leo.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/maya.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/morgan.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/orchestrate.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/plan-adr.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/plan-arch.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/plan-hld.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/plan-lld.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/pre-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/quinn.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/release.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/rex.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/riley.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/specify-brd.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/specify-doc.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/specify-srd.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/specify-uc.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/submit-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/taskstoissues.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/prompts/validate.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.github/workflows/quality-gate.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.gitignore +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.gitlab-ci.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/contexts/CONTEXT-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/memory/change-rules.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/memory/constitution.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/memory/roles.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/memory/summary-rules.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/memory/token-pricing.yml.example +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/changeset-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/checklist-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/constitution-amendment-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/context-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/docker-config-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/jira-export-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.specify/templates/openapi-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.vscode/extensions.json +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/.windsurfrules +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/CHANGE-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/CLAUDE.local.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/FLOW-ROLES-GATES.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/PROMPT-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/QUICKSTART.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/README.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/SDLC-COMPLETE-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/WHY-SDD.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/azure-pipelines.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/bitbucket-pipelines.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/docs/SUMMARY-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/setup.ps1 +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-fullstack/setup.sh +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.claude/commands/create-context.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.claude/commands/implement.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.claude/commands/specify.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.claude/commands/start.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.claude/commands/task.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.cursor/rules/sdd-framework.mdc +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.github/copilot-instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.github/prompts/create-context.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.github/prompts/implement.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.github/prompts/specify.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.github/prompts/task.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.specify/contexts/CONTEXT-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.specify/manifest.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.specify/memory/constitution.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.specify/templates/context-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.specify/templates/tasks-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/.windsurfrules +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/CLAUDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/QUICKSTART.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/README.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/WHY-SDD.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/setup.ps1 +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-micro/setup.sh +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/address-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/analyze.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/ava.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/bug-assess.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/bug-fix.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/change.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/check-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/checklist.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/clarify.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/create-context.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/implement.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/jira-push.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/kai.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/leo.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/maya.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/morgan.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/orchestrate.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/plan-adr.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/plan-arch.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/plan-design.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/plan-hld.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/plan-lld.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/pre-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/quinn.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/release.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/rex.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/riley.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/specify-brd.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/specify-doc.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/specify-srd.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/specify-uc.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/specify.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/start.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/submit-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/task.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/taskstoissues.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.claude/commands/validate.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.cursor/rules/sdd-framework.mdc +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/copilot-instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/instructions/screens.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/instructions/services.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/instructions/tests.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/address-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/analyze.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/ava.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/bug-assess.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/bug-fix.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/check-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/checklist.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/create-context.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/implement.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/jira-push.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/kai.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/leo.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/maya.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/morgan.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/orchestrate.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/plan-adr.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/plan-arch.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/plan-hld.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/plan-lld.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/pre-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/quinn.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/release.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/rex.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/riley.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/specify-brd.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/specify-doc.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/specify-srd.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/specify-uc.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/submit-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/taskstoissues.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/prompts/validate.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.github/workflows/quality-gate.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.gitignore +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.gitlab-ci.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/contexts/CONTEXT-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/memory/change-rules.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/memory/constitution.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/memory/roles.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/memory/summary-rules.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/memory/token-pricing.yml.example +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/changeset-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/checklist-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/constitution-amendment-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/context-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/docker-config-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.specify/templates/jira-export-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.vscode/extensions.json +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/.windsurfrules +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/CHANGE-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/CLAUDE.local.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/FLOW-ROLES-GATES.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/IMPROVEMENT-BACKLOG.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/PROMPT-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/QUICKSTART.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/README.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/SDLC-COMPLETE-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/WHY-SDD.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/azure-pipelines.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/bitbucket-pipelines.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/docs/SUMMARY-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/setup.ps1 +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-mobile/setup.sh +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/address-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/analyze.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/ava.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/bug-assess.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/bug-fix.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/change.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/check-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/checklist.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/clarify.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/create-context.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/implement.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/jira-push.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/kai.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/leo.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/maya.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/morgan.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/orchestrate.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/plan-adr.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/plan-arch.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/plan-design.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/plan-hld.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/plan-lld.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/pre-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/quinn.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/release.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/rex.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/riley.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/specify-brd.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/specify-doc.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/specify-srd.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/specify-uc.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/specify.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/start.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/submit-review.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/task.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/taskstoissues.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.claude/commands/validate.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.cursor/rules/sdd-framework.mdc +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/copilot-instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/instructions/domain.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/instructions/entrypoints.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/instructions/tests.instructions.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/address-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/analyze.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/ava.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/bug-assess.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/bug-fix.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/check-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/checklist.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/create-context.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/implement.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/jira-push.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/kai.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/leo.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/maya.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/morgan.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/orchestrate.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/plan-adr.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/plan-arch.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/plan-hld.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/plan-lld.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/pre-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/quinn.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/release.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/rex.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/riley.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/specify-brd.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/specify-doc.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/specify-srd.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/specify-uc.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/submit-review.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/taskstoissues.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/prompts/validate.prompt.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.github/workflows/quality-gate.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.gitignore +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.gitlab-ci.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/contexts/CONTEXT-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/memory/change-rules.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/memory/constitution.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/memory/roles.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/memory/summary-rules.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/memory/token-pricing.yml.example +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/changeset-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/checklist-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/constitution-amendment-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/context-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/docker-config-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/jira-export-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/k8s-manifest-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.specify/templates/openapi-template.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.vscode/extensions.json +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/.windsurfrules +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/CHANGE-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/CLAUDE.local.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/FLOW-ROLES-GATES.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/IMPROVEMENT-BACKLOG.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/PROMPT-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/QUICKSTART.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/README.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/SDLC-COMPLETE-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/WHY-SDD.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/azure-pipelines.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/bitbucket-pipelines.yml +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/docs/SUMMARY-GUIDE.md +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/setup.ps1 +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/packs/sdd-universal/setup.sh +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/__init__.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/atlassian_auth.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/cf_to_md.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/confluence_client.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/dashboard_comments.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/detect.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/git_host.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/jira_client.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/manifest.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/mermaid_render.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/scaffold.py +0 -0
- {sddflow-2.7.60 → sddflow-2.7.74}/sdd/utils/sdd_parser.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sddflow
|
|
3
|
-
Version: 2.7.
|
|
3
|
+
Version: 2.7.74
|
|
4
4
|
Summary: SDD Framework CLI — initialize and upgrade Spec-Driven Development packs
|
|
5
5
|
Project-URL: Homepage, https://github.com/sunil1983us/universalguide
|
|
6
6
|
Project-URL: Repository, https://github.com/sunil1983us/universalguide
|
|
@@ -647,6 +647,49 @@ your own `~/.sdd/config.yml`.
|
|
|
647
647
|
|
|
648
648
|
---
|
|
649
649
|
|
|
650
|
+
### `sdd token-log`
|
|
651
|
+
|
|
652
|
+
Logs **real** token usage for one command — reads Claude Code's own local
|
|
653
|
+
session transcript (`~/.claude/projects/{project}/{session-id}.jsonl`,
|
|
654
|
+
including any subagent transcripts spawned during the command) for actual
|
|
655
|
+
measured `input_tokens`/`output_tokens`/cache-token counts the Anthropic
|
|
656
|
+
API reported, not an estimate.
|
|
657
|
+
|
|
658
|
+
```bash
|
|
659
|
+
sdd token-log --command specify-brd # log real usage for this command
|
|
660
|
+
sdd token-log --command specify-brd --feature auth
|
|
661
|
+
sdd token-log --command specify-brd --dry-run # print without writing
|
|
662
|
+
```
|
|
663
|
+
|
|
664
|
+
Requires `.specify/memory/token-pricing.yml` to exist (same opt-in gate as
|
|
665
|
+
the estimate — see "Token Usage Logging" in `HOW-TO-USE.md`). Writes/creates
|
|
666
|
+
`.specify/features/{feature}/token-usage.md`, appending a row per model used
|
|
667
|
+
and updating its Running Totals table.
|
|
668
|
+
|
|
669
|
+
**This is Claude Code-only.** No other AI tool this framework supports
|
|
670
|
+
(GitHub Copilot, Cursor, Windsurf, copy-paste "any AI") has a local,
|
|
671
|
+
readable equivalent — the transcript path/format is undocumented,
|
|
672
|
+
reverse-engineered from observed file layout, not a published API, and
|
|
673
|
+
could change in a future Claude Code release. Exit codes tell a calling
|
|
674
|
+
prompt exactly what happened, so it can fall back to the character-count
|
|
675
|
+
estimate cleanly instead of surfacing a raw error:
|
|
676
|
+
|
|
677
|
+
| Exit code | Meaning |
|
|
678
|
+
|---|---|
|
|
679
|
+
| `0` | Logged successfully — or nothing new since the last logged row (also `0`, no row added) |
|
|
680
|
+
| `1` | Unexpected error (e.g. no feature name resolvable, or an existing `token-usage.md` doesn't match the expected table shape) |
|
|
681
|
+
| `2` | `token-pricing.yml` doesn't exist — logging is off entirely |
|
|
682
|
+
| `3` | No Claude Code session transcript found for this project — not running under Claude Code, or no session has touched it yet |
|
|
683
|
+
|
|
684
|
+
Each command's usage window is bounded by the previous logged row's
|
|
685
|
+
timestamp (or the whole current session, for the very first command
|
|
686
|
+
logged for a feature) — never re-sums usage already logged. A
|
|
687
|
+
pre-existing `token-usage.md` from before this column existed (7-column
|
|
688
|
+
rows, no `Source` column) is left untouched; new rows are only ever
|
|
689
|
+
appended, never used to rewrite old ones.
|
|
690
|
+
|
|
691
|
+
---
|
|
692
|
+
|
|
650
693
|
### `sdd pr create`
|
|
651
694
|
|
|
652
695
|
Create a git branch and a PR for a task, linked back to its Jira issue — on
|
|
@@ -612,6 +612,49 @@ your own `~/.sdd/config.yml`.
|
|
|
612
612
|
|
|
613
613
|
---
|
|
614
614
|
|
|
615
|
+
### `sdd token-log`
|
|
616
|
+
|
|
617
|
+
Logs **real** token usage for one command — reads Claude Code's own local
|
|
618
|
+
session transcript (`~/.claude/projects/{project}/{session-id}.jsonl`,
|
|
619
|
+
including any subagent transcripts spawned during the command) for actual
|
|
620
|
+
measured `input_tokens`/`output_tokens`/cache-token counts the Anthropic
|
|
621
|
+
API reported, not an estimate.
|
|
622
|
+
|
|
623
|
+
```bash
|
|
624
|
+
sdd token-log --command specify-brd # log real usage for this command
|
|
625
|
+
sdd token-log --command specify-brd --feature auth
|
|
626
|
+
sdd token-log --command specify-brd --dry-run # print without writing
|
|
627
|
+
```
|
|
628
|
+
|
|
629
|
+
Requires `.specify/memory/token-pricing.yml` to exist (same opt-in gate as
|
|
630
|
+
the estimate — see "Token Usage Logging" in `HOW-TO-USE.md`). Writes/creates
|
|
631
|
+
`.specify/features/{feature}/token-usage.md`, appending a row per model used
|
|
632
|
+
and updating its Running Totals table.
|
|
633
|
+
|
|
634
|
+
**This is Claude Code-only.** No other AI tool this framework supports
|
|
635
|
+
(GitHub Copilot, Cursor, Windsurf, copy-paste "any AI") has a local,
|
|
636
|
+
readable equivalent — the transcript path/format is undocumented,
|
|
637
|
+
reverse-engineered from observed file layout, not a published API, and
|
|
638
|
+
could change in a future Claude Code release. Exit codes tell a calling
|
|
639
|
+
prompt exactly what happened, so it can fall back to the character-count
|
|
640
|
+
estimate cleanly instead of surfacing a raw error:
|
|
641
|
+
|
|
642
|
+
| Exit code | Meaning |
|
|
643
|
+
|---|---|
|
|
644
|
+
| `0` | Logged successfully — or nothing new since the last logged row (also `0`, no row added) |
|
|
645
|
+
| `1` | Unexpected error (e.g. no feature name resolvable, or an existing `token-usage.md` doesn't match the expected table shape) |
|
|
646
|
+
| `2` | `token-pricing.yml` doesn't exist — logging is off entirely |
|
|
647
|
+
| `3` | No Claude Code session transcript found for this project — not running under Claude Code, or no session has touched it yet |
|
|
648
|
+
|
|
649
|
+
Each command's usage window is bounded by the previous logged row's
|
|
650
|
+
timestamp (or the whole current session, for the very first command
|
|
651
|
+
logged for a feature) — never re-sums usage already logged. A
|
|
652
|
+
pre-existing `token-usage.md` from before this column existed (7-column
|
|
653
|
+
rows, no `Source` column) is left untouched; new rows are only ever
|
|
654
|
+
appended, never used to rewrite old ones.
|
|
655
|
+
|
|
656
|
+
---
|
|
657
|
+
|
|
615
658
|
### `sdd pr create`
|
|
616
659
|
|
|
617
660
|
Create a git branch and a PR for a task, linked back to its Jira issue — on
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "2.7.74"
|
|
@@ -9,6 +9,7 @@ from sdd.commands.review import review_command
|
|
|
9
9
|
from sdd.commands.cr import cr_command
|
|
10
10
|
from sdd.commands.pr import pr_command
|
|
11
11
|
from sdd.commands.dashboard import dashboard_command
|
|
12
|
+
from sdd.commands.token_log import token_log_command
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
@click.group()
|
|
@@ -26,6 +27,7 @@ cli.add_command(review_command, name="review")
|
|
|
26
27
|
cli.add_command(cr_command, name="cr")
|
|
27
28
|
cli.add_command(pr_command, name="pr")
|
|
28
29
|
cli.add_command(dashboard_command, name="dashboard")
|
|
30
|
+
cli.add_command(token_log_command, name="token-log")
|
|
29
31
|
|
|
30
32
|
|
|
31
33
|
if __name__ == "__main__":
|
|
@@ -17,6 +17,7 @@ console = Console()
|
|
|
17
17
|
_DRAFTS_FILE = Path(".specify") / ".confluence-drafts.json"
|
|
18
18
|
|
|
19
19
|
_CONTEXT_PAGE_TITLE = "{feature} — Context"
|
|
20
|
+
_CONSTITUTION_PAGE_TITLE = "{project} — Constitution"
|
|
20
21
|
|
|
21
22
|
|
|
22
23
|
def _load_drafts() -> dict:
|
|
@@ -63,10 +64,10 @@ def resolve_feature_parent_id(client: ConfluenceClient, cf_cfg, project_name: st
|
|
|
63
64
|
def resolve_doc_parent_id(client: ConfluenceClient, cf_cfg, project_name: str,
|
|
64
65
|
feature_name: str, doc: str) -> str:
|
|
65
66
|
"""Like resolve_feature_parent_id(), except living/service-level docs
|
|
66
|
-
(LIVING_SERVICE_DOCS) nest directly under the
|
|
67
|
-
a Feature page, since they're shared across
|
|
68
|
-
per-feature."""
|
|
69
|
-
if doc in LIVING_SERVICE_DOCS:
|
|
67
|
+
(LIVING_SERVICE_DOCS) and "constitution" nest directly under the
|
|
68
|
+
Project page instead of a Feature page, since they're shared across
|
|
69
|
+
every feature, not per-feature."""
|
|
70
|
+
if doc in LIVING_SERVICE_DOCS or doc == "constitution":
|
|
70
71
|
return _ensure_container_page(client, cf_cfg.space_key, project_name, cf_cfg.parent_page_id)
|
|
71
72
|
return resolve_feature_parent_id(client, cf_cfg, project_name, feature_name)
|
|
72
73
|
|
|
@@ -84,7 +85,37 @@ def upload_diagram_attachments(client: ConfluenceClient, page_id: str,
|
|
|
84
85
|
try:
|
|
85
86
|
client.upload_attachment(page_id, filename, content, media_type)
|
|
86
87
|
except Exception as e:
|
|
87
|
-
console.print(
|
|
88
|
+
console.print(
|
|
89
|
+
f" [yellow]! {filename} — diagram attachment upload failed: "
|
|
90
|
+
f"{e}{_response_detail(e)}[/yellow]"
|
|
91
|
+
)
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
def _response_detail(e: Exception) -> str:
|
|
95
|
+
"""Confluence's own error message (the actual reason for a 4xx) lives
|
|
96
|
+
in the HTTP response body -- requests.HTTPError's default str() only
|
|
97
|
+
includes the status code and URL, which is why a bare '400 Client
|
|
98
|
+
Error: Bad Request for url: ...' told the user nothing about WHY.
|
|
99
|
+
Pulls the real reason out of the JSON error body (Confluence returns
|
|
100
|
+
{"message": "..."} or {"data": {"errors": [...]}} depending on
|
|
101
|
+
version) so a failure is actually diagnosable, not just visible."""
|
|
102
|
+
response = getattr(e, "response", None)
|
|
103
|
+
if response is None:
|
|
104
|
+
return ""
|
|
105
|
+
try:
|
|
106
|
+
body = response.json()
|
|
107
|
+
except ValueError:
|
|
108
|
+
text = (response.text or "").strip()
|
|
109
|
+
return f" -- {text[:300]}" if text else ""
|
|
110
|
+
message = body.get("message")
|
|
111
|
+
if not message:
|
|
112
|
+
errors = body.get("data", {}).get("errors") if isinstance(body.get("data"), dict) else None
|
|
113
|
+
if errors:
|
|
114
|
+
message = "; ".join(
|
|
115
|
+
err.get("message", str(err)) if isinstance(err, dict) else str(err)
|
|
116
|
+
for err in errors
|
|
117
|
+
)
|
|
118
|
+
return f" -- {message}" if message else ""
|
|
88
119
|
|
|
89
120
|
|
|
90
121
|
def _resolve_page_title(doc: str, project_name: str, feature: str,
|
|
@@ -108,6 +139,8 @@ def _resolve_page_title(doc: str, project_name: str, feature: str,
|
|
|
108
139
|
"""
|
|
109
140
|
if doc == "context":
|
|
110
141
|
return _CONTEXT_PAGE_TITLE.replace("{project}", project_name).replace("{feature}", feature)
|
|
142
|
+
if doc == "constitution":
|
|
143
|
+
return _CONSTITUTION_PAGE_TITLE.replace("{project}", project_name)
|
|
111
144
|
template = page_map.get(doc, f"{{project}} — {doc.upper()}")
|
|
112
145
|
title = template.replace("{project}", project_name)
|
|
113
146
|
if doc in LIVING_SERVICE_DOCS:
|
|
@@ -126,8 +159,11 @@ def confluence_command():
|
|
|
126
159
|
@click.option("--feature", default=None, help="Feature name (default: from manifest.yml)")
|
|
127
160
|
@click.option("--doc", default=None,
|
|
128
161
|
help="Push a single doc only (e.g. hld, brd, arch, runbook)")
|
|
162
|
+
@click.option("--summary", is_flag=True, default=False,
|
|
163
|
+
help="Push each doc's .summary.md to its own page (title suffixed "
|
|
164
|
+
"' — Summary') instead of the full .md")
|
|
129
165
|
@click.option("--dry-run", is_flag=True, help="Print page titles without calling the API")
|
|
130
|
-
def confluence_push(profile, feature, doc, dry_run):
|
|
166
|
+
def confluence_push(profile, feature, doc, summary, dry_run):
|
|
131
167
|
"""Publish SDD documents to Confluence pages (create or update)."""
|
|
132
168
|
console.print()
|
|
133
169
|
console.print("[bold]━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[/bold]")
|
|
@@ -167,10 +203,14 @@ def confluence_push(profile, feature, doc, dry_run):
|
|
|
167
203
|
except ValueError as e:
|
|
168
204
|
console.print(f" [red]✗ {e}[/red]")
|
|
169
205
|
raise SystemExit(1)
|
|
206
|
+
if summary:
|
|
207
|
+
md_path = md_path.parent / f"{md_path.stem}.summary.md"
|
|
170
208
|
if not md_path.exists():
|
|
171
|
-
console.print(f" [dim]·[/dim] {
|
|
209
|
+
console.print(f" [dim]·[/dim] {md_path.name} not found — skipped")
|
|
172
210
|
continue
|
|
173
211
|
title = _resolve_page_title(key, project_name, feature_name, page_map)
|
|
212
|
+
if summary:
|
|
213
|
+
title = f"{title} — Summary"
|
|
174
214
|
available.append((key, md_path, title))
|
|
175
215
|
|
|
176
216
|
if not available:
|