sddflow 3.0.2__tar.gz → 3.4.2__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.
Files changed (772) hide show
  1. sddflow-3.0.2/README.md → sddflow-3.4.2/PKG-INFO +107 -23
  2. sddflow-3.0.2/PKG-INFO → sddflow-3.4.2/README.md +71 -59
  3. {sddflow-3.0.2 → sddflow-3.4.2}/pyproject.toml +5 -5
  4. sddflow-3.4.2/sdd/__init__.py +1 -0
  5. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/__main__.py +6 -1
  6. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/config.py +53 -18
  7. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/confluence.py +3 -3
  8. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/cr.py +7 -3
  9. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/dashboard.py +5 -3
  10. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/dashboard_static/page.html +3 -0
  11. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/dashboard_static/style.css +9 -1
  12. sddflow-3.4.2/sdd/commands/doctor.py +152 -0
  13. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/init.py +200 -121
  14. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/jira.py +2 -2
  15. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/pr.py +1 -1
  16. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/review.py +23 -9
  17. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/upgrade.py +515 -11
  18. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/manifest.yml +2 -1
  19. {sddflow-3.0.2/sdd/packs/sdd-frontend-spa → sddflow-3.4.2/sdd/packs/sdd-backend-service}/FLOW-ROLES-GATES.md +1 -1
  20. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/QUICKSTART.md +2 -2
  21. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/README.md +3 -3
  22. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/manifest.yml +2 -1
  23. {sddflow-3.0.2/sdd/packs/sdd-mobile → sddflow-3.4.2/sdd/packs/sdd-frontend-spa}/FLOW-ROLES-GATES.md +1 -1
  24. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/QUICKSTART.md +2 -2
  25. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/README.md +3 -3
  26. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/manifest.yml +2 -1
  27. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/FLOW-ROLES-GATES.md +1 -1
  28. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/QUICKSTART.md +2 -2
  29. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/README.md +3 -3
  30. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.specify/manifest.yml +1 -0
  31. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/manifest.yml +2 -1
  32. {sddflow-3.0.2/sdd/packs/sdd-backend-service → sddflow-3.4.2/sdd/packs/sdd-mobile}/FLOW-ROLES-GATES.md +1 -1
  33. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/QUICKSTART.md +2 -2
  34. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/README.md +3 -3
  35. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/manifest.yml +2 -1
  36. sddflow-3.4.2/sdd/packs/sdd-universal/FLOW-ROLES-GATES.md +198 -0
  37. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/QUICKSTART.md +2 -2
  38. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/README.md +3 -3
  39. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/atlassian_auth.py +17 -0
  40. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/confluence_client.py +15 -3
  41. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/jira_client.py +17 -4
  42. sddflow-3.4.2/sdd/utils/managed_files.py +297 -0
  43. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/status.py +127 -67
  44. sddflow-3.0.2/sdd/__init__.py +0 -1
  45. sddflow-3.0.2/sdd/packs/sdd-universal/FLOW-ROLES-GATES.md +0 -198
  46. {sddflow-3.0.2 → sddflow-3.4.2}/.gitignore +0 -0
  47. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/__init__.py +0 -0
  48. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/dashboard_static/app.js +0 -0
  49. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/dashboard_static/theme.js +0 -0
  50. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/feature.py +0 -0
  51. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/hooks.py +0 -0
  52. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/project_type.py +0 -0
  53. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/commands/token_log.py +0 -0
  54. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/address-review.md +0 -0
  55. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/analyze.md +0 -0
  56. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/ava.md +0 -0
  57. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/bug-assess.md +0 -0
  58. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/bug-fix.md +0 -0
  59. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/change.md +0 -0
  60. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/check-review.md +0 -0
  61. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/checklist.md +0 -0
  62. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/clarify.md +0 -0
  63. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/create-context.md +0 -0
  64. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/implement.md +0 -0
  65. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/jira-push.md +0 -0
  66. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/kai.md +0 -0
  67. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/leo.md +0 -0
  68. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/maya.md +0 -0
  69. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/morgan.md +0 -0
  70. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/orchestrate.md +0 -0
  71. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/plan-adr.md +0 -0
  72. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/plan-arch.md +0 -0
  73. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/plan-design.md +0 -0
  74. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/plan-hld.md +0 -0
  75. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/plan-lld.md +0 -0
  76. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/pre-review.md +0 -0
  77. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/quinn.md +0 -0
  78. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/release.md +0 -0
  79. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/rex.md +0 -0
  80. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/riley.md +0 -0
  81. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/specify-brd.md +0 -0
  82. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/specify-doc.md +0 -0
  83. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/specify-srd.md +0 -0
  84. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/specify-uc.md +0 -0
  85. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/specify.md +0 -0
  86. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/start.md +0 -0
  87. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/submit-review.md +0 -0
  88. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/task.md +0 -0
  89. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/taskstoissues.md +0 -0
  90. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.claude/commands/validate.md +0 -0
  91. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.cursor/rules/sdd-framework.mdc +0 -0
  92. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/copilot-instructions.md +0 -0
  93. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/instructions/api.instructions.md +0 -0
  94. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/instructions/domain.instructions.md +0 -0
  95. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/instructions/java.instructions.md +0 -0
  96. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/instructions/tests.instructions.md +0 -0
  97. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/address-review.prompt.md +0 -0
  98. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/analyze.prompt.md +0 -0
  99. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/ava.prompt.md +0 -0
  100. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/bug-assess.prompt.md +0 -0
  101. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/bug-fix.prompt.md +0 -0
  102. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/change.prompt.md +0 -0
  103. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/check-review.prompt.md +0 -0
  104. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/checklist.prompt.md +0 -0
  105. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/clarify.prompt.md +0 -0
  106. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/create-context.prompt.md +0 -0
  107. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/implement.prompt.md +0 -0
  108. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/jira-push.prompt.md +0 -0
  109. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/kai.prompt.md +0 -0
  110. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/leo.prompt.md +0 -0
  111. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/maya.prompt.md +0 -0
  112. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/morgan.prompt.md +0 -0
  113. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/orchestrate.prompt.md +0 -0
  114. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/plan-adr.prompt.md +0 -0
  115. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/plan-arch.prompt.md +0 -0
  116. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/plan-design.prompt.md +0 -0
  117. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/plan-hld.prompt.md +0 -0
  118. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/plan-lld.prompt.md +0 -0
  119. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/pre-review.prompt.md +0 -0
  120. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/quinn.prompt.md +0 -0
  121. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/release.prompt.md +0 -0
  122. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/rex.prompt.md +0 -0
  123. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/riley.prompt.md +0 -0
  124. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/specify-brd.prompt.md +0 -0
  125. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/specify-doc.prompt.md +0 -0
  126. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/specify-srd.prompt.md +0 -0
  127. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/specify-uc.prompt.md +0 -0
  128. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/specify.prompt.md +0 -0
  129. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/submit-review.prompt.md +0 -0
  130. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/task.prompt.md +0 -0
  131. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/taskstoissues.prompt.md +0 -0
  132. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/prompts/validate.prompt.md +0 -0
  133. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.github/workflows/quality-gate.yml +0 -0
  134. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.gitignore +0 -0
  135. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.gitlab-ci.yml +0 -0
  136. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/contexts/CONTEXT-GUIDE.md +0 -0
  137. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/integrations.yml.example +0 -0
  138. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/memory/change-rules.md +0 -0
  139. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/memory/constitution.md +0 -0
  140. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/memory/roles.yml +0 -0
  141. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/memory/summary-rules.md +0 -0
  142. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/memory/token-pricing.yml.example +0 -0
  143. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/adr-template.md +0 -0
  144. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/analyze-template.md +0 -0
  145. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/api-spec-template.md +0 -0
  146. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/arch-template.md +0 -0
  147. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/brd-template.md +0 -0
  148. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/changeset-template.md +0 -0
  149. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/checklist-template.md +0 -0
  150. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/clarify-template.md +0 -0
  151. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/constitution-amendment-template.md +0 -0
  152. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/context-template.md +0 -0
  153. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/data-model-template.md +0 -0
  154. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/design-template.md +0 -0
  155. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/docker-config-template.md +0 -0
  156. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/feature-story-template.md +0 -0
  157. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/hld-template.md +0 -0
  158. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/investigation-template.md +0 -0
  159. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/jira-export-template.md +0 -0
  160. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/k8s-manifest-template.md +0 -0
  161. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/lld-template.md +0 -0
  162. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/openapi-template.md +0 -0
  163. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/plan-template.md +0 -0
  164. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/qa-testcases-template.md +0 -0
  165. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/release-template.md +0 -0
  166. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/resilience-template.md +0 -0
  167. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/runbook-template.md +0 -0
  168. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/security-design-template.md +0 -0
  169. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/srd-template.md +0 -0
  170. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/tasks-template.md +0 -0
  171. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/token-usage-template.md +0 -0
  172. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/use-cases-template.md +0 -0
  173. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.specify/templates/validate-template.md +0 -0
  174. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.vscode/extensions.json +0 -0
  175. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/.windsurfrules +0 -0
  176. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/CHANGE-GUIDE.md +0 -0
  177. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/CLAUDE.local.md +0 -0
  178. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/CLAUDE.md +0 -0
  179. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/HOW-TO-USE.md +0 -0
  180. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/PROMPT-GUIDE.md +0 -0
  181. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/SDLC-COMPLETE-GUIDE.md +0 -0
  182. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/WHY-SDD.md +0 -0
  183. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/azure-pipelines.yml +0 -0
  184. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/bitbucket-pipelines.yml +0 -0
  185. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/docs/SUMMARY-GUIDE.md +0 -0
  186. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/setup.ps1 +0 -0
  187. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-backend-service/setup.sh +0 -0
  188. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/address-review.md +0 -0
  189. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/analyze.md +0 -0
  190. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/ava.md +0 -0
  191. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/bug-assess.md +0 -0
  192. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/bug-fix.md +0 -0
  193. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/change.md +0 -0
  194. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/check-review.md +0 -0
  195. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/checklist.md +0 -0
  196. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/clarify.md +0 -0
  197. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/create-context.md +0 -0
  198. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/implement.md +0 -0
  199. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/jira-push.md +0 -0
  200. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/kai.md +0 -0
  201. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/leo.md +0 -0
  202. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/maya.md +0 -0
  203. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/morgan.md +0 -0
  204. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/orchestrate.md +0 -0
  205. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-adr.md +0 -0
  206. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-arch.md +0 -0
  207. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-design.md +0 -0
  208. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-hld.md +0 -0
  209. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-lld.md +0 -0
  210. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/pre-review.md +0 -0
  211. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/quinn.md +0 -0
  212. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/release.md +0 -0
  213. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/rex.md +0 -0
  214. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/riley.md +0 -0
  215. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/specify-brd.md +0 -0
  216. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/specify-doc.md +0 -0
  217. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/specify-srd.md +0 -0
  218. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/specify-uc.md +0 -0
  219. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/specify.md +0 -0
  220. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/start.md +0 -0
  221. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/submit-review.md +0 -0
  222. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/task.md +0 -0
  223. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/taskstoissues.md +0 -0
  224. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.claude/commands/validate.md +0 -0
  225. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.cursor/rules/sdd-framework.mdc +0 -0
  226. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/copilot-instructions.md +0 -0
  227. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/instructions/components.instructions.md +0 -0
  228. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/instructions/services.instructions.md +0 -0
  229. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/instructions/tests.instructions.md +0 -0
  230. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/address-review.prompt.md +0 -0
  231. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/analyze.prompt.md +0 -0
  232. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/ava.prompt.md +0 -0
  233. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/bug-assess.prompt.md +0 -0
  234. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/bug-fix.prompt.md +0 -0
  235. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/change.prompt.md +0 -0
  236. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/check-review.prompt.md +0 -0
  237. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/checklist.prompt.md +0 -0
  238. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/clarify.prompt.md +0 -0
  239. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/create-context.prompt.md +0 -0
  240. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/implement.prompt.md +0 -0
  241. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/jira-push.prompt.md +0 -0
  242. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/kai.prompt.md +0 -0
  243. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/leo.prompt.md +0 -0
  244. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/maya.prompt.md +0 -0
  245. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/morgan.prompt.md +0 -0
  246. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/orchestrate.prompt.md +0 -0
  247. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-adr.prompt.md +0 -0
  248. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-arch.prompt.md +0 -0
  249. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-design.prompt.md +0 -0
  250. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-hld.prompt.md +0 -0
  251. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-lld.prompt.md +0 -0
  252. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/pre-review.prompt.md +0 -0
  253. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/quinn.prompt.md +0 -0
  254. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/release.prompt.md +0 -0
  255. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/rex.prompt.md +0 -0
  256. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/riley.prompt.md +0 -0
  257. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/specify-brd.prompt.md +0 -0
  258. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/specify-doc.prompt.md +0 -0
  259. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/specify-srd.prompt.md +0 -0
  260. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/specify-uc.prompt.md +0 -0
  261. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/specify.prompt.md +0 -0
  262. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/submit-review.prompt.md +0 -0
  263. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/task.prompt.md +0 -0
  264. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/taskstoissues.prompt.md +0 -0
  265. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/prompts/validate.prompt.md +0 -0
  266. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.github/workflows/quality-gate.yml +0 -0
  267. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.gitignore +0 -0
  268. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.gitlab-ci.yml +0 -0
  269. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/contexts/CONTEXT-GUIDE.md +0 -0
  270. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/integrations.yml.example +0 -0
  271. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/memory/change-rules.md +0 -0
  272. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/memory/constitution.md +0 -0
  273. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/memory/roles.yml +0 -0
  274. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/memory/summary-rules.md +0 -0
  275. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/memory/token-pricing.yml.example +0 -0
  276. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/adr-template.md +0 -0
  277. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/analyze-template.md +0 -0
  278. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/api-spec-template.md +0 -0
  279. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/arch-template.md +0 -0
  280. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/brd-template.md +0 -0
  281. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/changeset-template.md +0 -0
  282. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/checklist-template.md +0 -0
  283. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/clarify-template.md +0 -0
  284. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/component-library-template.md +0 -0
  285. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/component-spec-template.md +0 -0
  286. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/constitution-amendment-template.md +0 -0
  287. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/context-template.md +0 -0
  288. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/data-model-template.md +0 -0
  289. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/design-template.md +0 -0
  290. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/docker-config-template.md +0 -0
  291. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/feature-story-template.md +0 -0
  292. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/hld-template.md +0 -0
  293. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/investigation-template.md +0 -0
  294. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/jira-export-template.md +0 -0
  295. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/lld-template.md +0 -0
  296. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/plan-template.md +0 -0
  297. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/qa-testcases-template.md +0 -0
  298. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/release-template.md +0 -0
  299. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/resilience-template.md +0 -0
  300. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/runbook-template.md +0 -0
  301. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/security-design-template.md +0 -0
  302. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/srd-template.md +0 -0
  303. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/tasks-template.md +0 -0
  304. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/token-usage-template.md +0 -0
  305. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/use-cases-template.md +0 -0
  306. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/ux-flow-template.md +0 -0
  307. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.specify/templates/validate-template.md +0 -0
  308. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.vscode/extensions.json +0 -0
  309. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/.windsurfrules +0 -0
  310. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/CHANGE-GUIDE.md +0 -0
  311. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/CLAUDE.local.md +0 -0
  312. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/CLAUDE.md +0 -0
  313. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/HOW-TO-USE.md +0 -0
  314. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/PROMPT-GUIDE.md +0 -0
  315. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/SDLC-COMPLETE-GUIDE.md +0 -0
  316. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/WHY-SDD.md +0 -0
  317. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/azure-pipelines.yml +0 -0
  318. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/bitbucket-pipelines.yml +0 -0
  319. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/docs/SUMMARY-GUIDE.md +0 -0
  320. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/setup.ps1 +0 -0
  321. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-frontend-spa/setup.sh +0 -0
  322. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/address-review.md +0 -0
  323. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/analyze.md +0 -0
  324. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/ava.md +0 -0
  325. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/bug-assess.md +0 -0
  326. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/bug-fix.md +0 -0
  327. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/change.md +0 -0
  328. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/check-review.md +0 -0
  329. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/checklist.md +0 -0
  330. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/clarify.md +0 -0
  331. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/create-context.md +0 -0
  332. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/implement.md +0 -0
  333. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/jira-push.md +0 -0
  334. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/kai.md +0 -0
  335. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/leo.md +0 -0
  336. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/maya.md +0 -0
  337. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/morgan.md +0 -0
  338. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/orchestrate.md +0 -0
  339. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/plan-adr.md +0 -0
  340. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/plan-arch.md +0 -0
  341. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/plan-design.md +0 -0
  342. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/plan-hld.md +0 -0
  343. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/plan-lld.md +0 -0
  344. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/pre-review.md +0 -0
  345. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/quinn.md +0 -0
  346. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/release.md +0 -0
  347. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/rex.md +0 -0
  348. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/riley.md +0 -0
  349. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/specify-brd.md +0 -0
  350. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/specify-doc.md +0 -0
  351. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/specify-srd.md +0 -0
  352. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/specify-uc.md +0 -0
  353. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/specify.md +0 -0
  354. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/start.md +0 -0
  355. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/submit-review.md +0 -0
  356. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/task.md +0 -0
  357. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/taskstoissues.md +0 -0
  358. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.claude/commands/validate.md +0 -0
  359. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.cursor/rules/sdd-framework.mdc +0 -0
  360. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/copilot-instructions.md +0 -0
  361. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/instructions/backend-tests.instructions.md +0 -0
  362. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/instructions/components.instructions.md +0 -0
  363. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/instructions/domain.instructions.md +0 -0
  364. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/instructions/frontend-services.instructions.md +0 -0
  365. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/instructions/java.instructions.md +0 -0
  366. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/address-review.prompt.md +0 -0
  367. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/analyze.prompt.md +0 -0
  368. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/ava.prompt.md +0 -0
  369. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/bug-assess.prompt.md +0 -0
  370. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/bug-fix.prompt.md +0 -0
  371. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/change.prompt.md +0 -0
  372. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/check-review.prompt.md +0 -0
  373. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/checklist.prompt.md +0 -0
  374. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/clarify.prompt.md +0 -0
  375. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/create-context.prompt.md +0 -0
  376. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/implement.prompt.md +0 -0
  377. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/jira-push.prompt.md +0 -0
  378. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/kai.prompt.md +0 -0
  379. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/leo.prompt.md +0 -0
  380. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/maya.prompt.md +0 -0
  381. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/morgan.prompt.md +0 -0
  382. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/orchestrate.prompt.md +0 -0
  383. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/plan-adr.prompt.md +0 -0
  384. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/plan-arch.prompt.md +0 -0
  385. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/plan-design.prompt.md +0 -0
  386. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/plan-hld.prompt.md +0 -0
  387. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/plan-lld.prompt.md +0 -0
  388. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/pre-review.prompt.md +0 -0
  389. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/quinn.prompt.md +0 -0
  390. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/release.prompt.md +0 -0
  391. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/rex.prompt.md +0 -0
  392. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/riley.prompt.md +0 -0
  393. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/specify-brd.prompt.md +0 -0
  394. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/specify-doc.prompt.md +0 -0
  395. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/specify-srd.prompt.md +0 -0
  396. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/specify-uc.prompt.md +0 -0
  397. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/specify.prompt.md +0 -0
  398. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/submit-review.prompt.md +0 -0
  399. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/task.prompt.md +0 -0
  400. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/taskstoissues.prompt.md +0 -0
  401. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/prompts/validate.prompt.md +0 -0
  402. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.github/workflows/quality-gate.yml +0 -0
  403. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.gitignore +0 -0
  404. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.gitlab-ci.yml +0 -0
  405. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/contexts/CONTEXT-GUIDE.md +0 -0
  406. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/integrations.yml.example +0 -0
  407. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/memory/change-rules.md +0 -0
  408. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/memory/constitution.md +0 -0
  409. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/memory/roles.yml +0 -0
  410. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/memory/summary-rules.md +0 -0
  411. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/memory/token-pricing.yml.example +0 -0
  412. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/adr-template.md +0 -0
  413. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/analyze-template.md +0 -0
  414. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/api-spec-template.md +0 -0
  415. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/arch-template.md +0 -0
  416. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/brd-template.md +0 -0
  417. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/changeset-template.md +0 -0
  418. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/checklist-template.md +0 -0
  419. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/clarify-template.md +0 -0
  420. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/component-library-template.md +0 -0
  421. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/component-spec-template.md +0 -0
  422. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/constitution-amendment-template.md +0 -0
  423. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/context-template.md +0 -0
  424. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/data-model-template.md +0 -0
  425. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/design-template.md +0 -0
  426. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/docker-config-template.md +0 -0
  427. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/feature-story-template.md +0 -0
  428. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/hld-template.md +0 -0
  429. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/investigation-template.md +0 -0
  430. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/jira-export-template.md +0 -0
  431. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/lld-template.md +0 -0
  432. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/openapi-template.md +0 -0
  433. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/plan-template.md +0 -0
  434. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/qa-testcases-template.md +0 -0
  435. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/release-template.md +0 -0
  436. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/resilience-template.md +0 -0
  437. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/runbook-template.md +0 -0
  438. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/screen-spec-template.md +0 -0
  439. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/security-design-template.md +0 -0
  440. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/srd-template.md +0 -0
  441. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/tasks-template.md +0 -0
  442. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/token-usage-template.md +0 -0
  443. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/use-cases-template.md +0 -0
  444. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/ux-flow-template.md +0 -0
  445. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.specify/templates/validate-template.md +0 -0
  446. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.vscode/extensions.json +0 -0
  447. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/.windsurfrules +0 -0
  448. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/CHANGE-GUIDE.md +0 -0
  449. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/CLAUDE.local.md +0 -0
  450. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/CLAUDE.md +0 -0
  451. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/HOW-TO-USE.md +0 -0
  452. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/PROMPT-GUIDE.md +0 -0
  453. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/SDLC-COMPLETE-GUIDE.md +0 -0
  454. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/WHY-SDD.md +0 -0
  455. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/azure-pipelines.yml +0 -0
  456. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/bitbucket-pipelines.yml +0 -0
  457. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/docs/SUMMARY-GUIDE.md +0 -0
  458. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/setup.ps1 +0 -0
  459. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-fullstack/setup.sh +0 -0
  460. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.claude/commands/create-context.md +0 -0
  461. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.claude/commands/implement.md +0 -0
  462. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.claude/commands/specify.md +0 -0
  463. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.claude/commands/start.md +0 -0
  464. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.claude/commands/task.md +0 -0
  465. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.cursor/rules/sdd-framework.mdc +0 -0
  466. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.github/copilot-instructions.md +0 -0
  467. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.github/prompts/create-context.prompt.md +0 -0
  468. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.github/prompts/implement.prompt.md +0 -0
  469. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.github/prompts/specify.prompt.md +0 -0
  470. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.github/prompts/task.prompt.md +0 -0
  471. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.specify/contexts/CONTEXT-GUIDE.md +0 -0
  472. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.specify/memory/constitution.md +0 -0
  473. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.specify/templates/context-template.md +0 -0
  474. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.specify/templates/tasks-template.md +0 -0
  475. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/.windsurfrules +0 -0
  476. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/CLAUDE.md +0 -0
  477. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/QUICKSTART.md +0 -0
  478. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/README.md +0 -0
  479. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/WHY-SDD.md +0 -0
  480. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/setup.ps1 +0 -0
  481. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-micro/setup.sh +0 -0
  482. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/address-review.md +0 -0
  483. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/analyze.md +0 -0
  484. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/ava.md +0 -0
  485. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/bug-assess.md +0 -0
  486. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/bug-fix.md +0 -0
  487. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/change.md +0 -0
  488. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/check-review.md +0 -0
  489. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/checklist.md +0 -0
  490. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/clarify.md +0 -0
  491. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/create-context.md +0 -0
  492. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/implement.md +0 -0
  493. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/jira-push.md +0 -0
  494. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/kai.md +0 -0
  495. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/leo.md +0 -0
  496. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/maya.md +0 -0
  497. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/morgan.md +0 -0
  498. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/orchestrate.md +0 -0
  499. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/plan-adr.md +0 -0
  500. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/plan-arch.md +0 -0
  501. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/plan-design.md +0 -0
  502. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/plan-hld.md +0 -0
  503. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/plan-lld.md +0 -0
  504. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/pre-review.md +0 -0
  505. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/quinn.md +0 -0
  506. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/release.md +0 -0
  507. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/rex.md +0 -0
  508. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/riley.md +0 -0
  509. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/specify-brd.md +0 -0
  510. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/specify-doc.md +0 -0
  511. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/specify-srd.md +0 -0
  512. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/specify-uc.md +0 -0
  513. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/specify.md +0 -0
  514. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/start.md +0 -0
  515. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/submit-review.md +0 -0
  516. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/task.md +0 -0
  517. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/taskstoissues.md +0 -0
  518. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.claude/commands/validate.md +0 -0
  519. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.cursor/rules/sdd-framework.mdc +0 -0
  520. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/copilot-instructions.md +0 -0
  521. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/instructions/screens.instructions.md +0 -0
  522. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/instructions/services.instructions.md +0 -0
  523. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/instructions/tests.instructions.md +0 -0
  524. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/address-review.prompt.md +0 -0
  525. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/analyze.prompt.md +0 -0
  526. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/ava.prompt.md +0 -0
  527. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/bug-assess.prompt.md +0 -0
  528. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/bug-fix.prompt.md +0 -0
  529. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/change.prompt.md +0 -0
  530. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/check-review.prompt.md +0 -0
  531. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/checklist.prompt.md +0 -0
  532. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/clarify.prompt.md +0 -0
  533. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/create-context.prompt.md +0 -0
  534. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/implement.prompt.md +0 -0
  535. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/jira-push.prompt.md +0 -0
  536. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/kai.prompt.md +0 -0
  537. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/leo.prompt.md +0 -0
  538. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/maya.prompt.md +0 -0
  539. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/morgan.prompt.md +0 -0
  540. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/orchestrate.prompt.md +0 -0
  541. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/plan-adr.prompt.md +0 -0
  542. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/plan-arch.prompt.md +0 -0
  543. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/plan-design.prompt.md +0 -0
  544. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/plan-hld.prompt.md +0 -0
  545. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/plan-lld.prompt.md +0 -0
  546. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/pre-review.prompt.md +0 -0
  547. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/quinn.prompt.md +0 -0
  548. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/release.prompt.md +0 -0
  549. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/rex.prompt.md +0 -0
  550. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/riley.prompt.md +0 -0
  551. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/specify-brd.prompt.md +0 -0
  552. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/specify-doc.prompt.md +0 -0
  553. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/specify-srd.prompt.md +0 -0
  554. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/specify-uc.prompt.md +0 -0
  555. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/specify.prompt.md +0 -0
  556. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/submit-review.prompt.md +0 -0
  557. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/task.prompt.md +0 -0
  558. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/taskstoissues.prompt.md +0 -0
  559. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/prompts/validate.prompt.md +0 -0
  560. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.github/workflows/quality-gate.yml +0 -0
  561. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.gitignore +0 -0
  562. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.gitlab-ci.yml +0 -0
  563. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/contexts/CONTEXT-GUIDE.md +0 -0
  564. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/integrations.yml.example +0 -0
  565. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/memory/change-rules.md +0 -0
  566. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/memory/constitution.md +0 -0
  567. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/memory/roles.yml +0 -0
  568. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/memory/summary-rules.md +0 -0
  569. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/memory/token-pricing.yml.example +0 -0
  570. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/adr-template.md +0 -0
  571. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/analyze-template.md +0 -0
  572. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/api-spec-template.md +0 -0
  573. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/arch-template.md +0 -0
  574. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/brd-template.md +0 -0
  575. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/changeset-template.md +0 -0
  576. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/checklist-template.md +0 -0
  577. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/clarify-template.md +0 -0
  578. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/constitution-amendment-template.md +0 -0
  579. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/context-template.md +0 -0
  580. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/data-model-template.md +0 -0
  581. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/design-template.md +0 -0
  582. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/docker-config-template.md +0 -0
  583. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/feature-story-template.md +0 -0
  584. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/hld-template.md +0 -0
  585. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/investigation-template.md +0 -0
  586. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/jira-export-template.md +0 -0
  587. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/lld-template.md +0 -0
  588. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/plan-template.md +0 -0
  589. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/qa-testcases-template.md +0 -0
  590. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/release-template.md +0 -0
  591. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/resilience-template.md +0 -0
  592. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/runbook-template.md +0 -0
  593. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/screen-spec-template.md +0 -0
  594. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/security-design-template.md +0 -0
  595. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/srd-template.md +0 -0
  596. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/tasks-template.md +0 -0
  597. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/token-usage-template.md +0 -0
  598. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/use-cases-template.md +0 -0
  599. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/ux-flow-template.md +0 -0
  600. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.specify/templates/validate-template.md +0 -0
  601. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.vscode/extensions.json +0 -0
  602. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/.windsurfrules +0 -0
  603. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/CHANGE-GUIDE.md +0 -0
  604. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/CLAUDE.local.md +0 -0
  605. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/CLAUDE.md +0 -0
  606. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/HOW-TO-USE.md +0 -0
  607. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/PROMPT-GUIDE.md +0 -0
  608. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/SDLC-COMPLETE-GUIDE.md +0 -0
  609. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/WHY-SDD.md +0 -0
  610. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/azure-pipelines.yml +0 -0
  611. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/bitbucket-pipelines.yml +0 -0
  612. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/docs/SUMMARY-GUIDE.md +0 -0
  613. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/setup.ps1 +0 -0
  614. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-mobile/setup.sh +0 -0
  615. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/address-review.md +0 -0
  616. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/analyze.md +0 -0
  617. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/ava.md +0 -0
  618. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/bug-assess.md +0 -0
  619. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/bug-fix.md +0 -0
  620. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/change.md +0 -0
  621. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/check-review.md +0 -0
  622. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/checklist.md +0 -0
  623. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/clarify.md +0 -0
  624. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/create-context.md +0 -0
  625. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/implement.md +0 -0
  626. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/jira-push.md +0 -0
  627. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/kai.md +0 -0
  628. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/leo.md +0 -0
  629. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/maya.md +0 -0
  630. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/morgan.md +0 -0
  631. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/orchestrate.md +0 -0
  632. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/plan-adr.md +0 -0
  633. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/plan-arch.md +0 -0
  634. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/plan-design.md +0 -0
  635. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/plan-hld.md +0 -0
  636. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/plan-lld.md +0 -0
  637. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/pre-review.md +0 -0
  638. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/quinn.md +0 -0
  639. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/release.md +0 -0
  640. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/rex.md +0 -0
  641. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/riley.md +0 -0
  642. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/specify-brd.md +0 -0
  643. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/specify-doc.md +0 -0
  644. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/specify-srd.md +0 -0
  645. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/specify-uc.md +0 -0
  646. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/specify.md +0 -0
  647. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/start.md +0 -0
  648. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/submit-review.md +0 -0
  649. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/task.md +0 -0
  650. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/taskstoissues.md +0 -0
  651. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.claude/commands/validate.md +0 -0
  652. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.cursor/rules/sdd-framework.mdc +0 -0
  653. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/copilot-instructions.md +0 -0
  654. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/instructions/domain.instructions.md +0 -0
  655. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/instructions/entrypoints.instructions.md +0 -0
  656. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/instructions/tests.instructions.md +0 -0
  657. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/address-review.prompt.md +0 -0
  658. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/analyze.prompt.md +0 -0
  659. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/ava.prompt.md +0 -0
  660. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/bug-assess.prompt.md +0 -0
  661. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/bug-fix.prompt.md +0 -0
  662. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/change.prompt.md +0 -0
  663. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/check-review.prompt.md +0 -0
  664. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/checklist.prompt.md +0 -0
  665. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/clarify.prompt.md +0 -0
  666. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/create-context.prompt.md +0 -0
  667. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/implement.prompt.md +0 -0
  668. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/jira-push.prompt.md +0 -0
  669. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/kai.prompt.md +0 -0
  670. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/leo.prompt.md +0 -0
  671. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/maya.prompt.md +0 -0
  672. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/morgan.prompt.md +0 -0
  673. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/orchestrate.prompt.md +0 -0
  674. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/plan-adr.prompt.md +0 -0
  675. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/plan-arch.prompt.md +0 -0
  676. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/plan-design.prompt.md +0 -0
  677. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/plan-hld.prompt.md +0 -0
  678. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/plan-lld.prompt.md +0 -0
  679. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/pre-review.prompt.md +0 -0
  680. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/quinn.prompt.md +0 -0
  681. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/release.prompt.md +0 -0
  682. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/rex.prompt.md +0 -0
  683. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/riley.prompt.md +0 -0
  684. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/specify-brd.prompt.md +0 -0
  685. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/specify-doc.prompt.md +0 -0
  686. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/specify-srd.prompt.md +0 -0
  687. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/specify-uc.prompt.md +0 -0
  688. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/specify.prompt.md +0 -0
  689. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/submit-review.prompt.md +0 -0
  690. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/task.prompt.md +0 -0
  691. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/taskstoissues.prompt.md +0 -0
  692. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/prompts/validate.prompt.md +0 -0
  693. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.github/workflows/quality-gate.yml +0 -0
  694. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.gitignore +0 -0
  695. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.gitlab-ci.yml +0 -0
  696. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/contexts/CONTEXT-GUIDE.md +0 -0
  697. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/integrations.yml.example +0 -0
  698. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/memory/change-rules.md +0 -0
  699. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/memory/constitution.md +0 -0
  700. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/memory/roles.yml +0 -0
  701. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/memory/summary-rules.md +0 -0
  702. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/memory/token-pricing.yml.example +0 -0
  703. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/adr-template.md +0 -0
  704. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/analyze-template.md +0 -0
  705. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/api-spec-template.md +0 -0
  706. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/arch-template.md +0 -0
  707. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/brd-template.md +0 -0
  708. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/changeset-template.md +0 -0
  709. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/checklist-template.md +0 -0
  710. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/clarify-template.md +0 -0
  711. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/component-library-template.md +0 -0
  712. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/component-spec-template.md +0 -0
  713. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/constitution-amendment-template.md +0 -0
  714. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/context-template.md +0 -0
  715. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/data-model-template-frontend.md +0 -0
  716. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/data-model-template-mobile.md +0 -0
  717. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/data-model-template.md +0 -0
  718. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/design-template.md +0 -0
  719. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/docker-config-template.md +0 -0
  720. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/feature-story-template.md +0 -0
  721. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/hld-template.md +0 -0
  722. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/investigation-template.md +0 -0
  723. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/jira-export-template.md +0 -0
  724. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/k8s-manifest-template.md +0 -0
  725. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/lld-template.md +0 -0
  726. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/openapi-template.md +0 -0
  727. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/plan-template.md +0 -0
  728. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/qa-testcases-template.md +0 -0
  729. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/release-template.md +0 -0
  730. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/resilience-template.md +0 -0
  731. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/runbook-template-frontend.md +0 -0
  732. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/runbook-template-mobile.md +0 -0
  733. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/runbook-template.md +0 -0
  734. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/screen-spec-template.md +0 -0
  735. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/security-design-template-frontend.md +0 -0
  736. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/security-design-template-mobile.md +0 -0
  737. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/security-design-template.md +0 -0
  738. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/srd-template.md +0 -0
  739. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/tasks-template.md +0 -0
  740. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/token-usage-template.md +0 -0
  741. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/use-cases-template.md +0 -0
  742. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/ux-flow-template.md +0 -0
  743. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.specify/templates/validate-template.md +0 -0
  744. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.vscode/extensions.json +0 -0
  745. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/.windsurfrules +0 -0
  746. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/CHANGE-GUIDE.md +0 -0
  747. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/CLAUDE.local.md +0 -0
  748. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/CLAUDE.md +0 -0
  749. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/HOW-TO-USE.md +0 -0
  750. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/PROMPT-GUIDE.md +0 -0
  751. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/SDLC-COMPLETE-GUIDE.md +0 -0
  752. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/WHY-SDD.md +0 -0
  753. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/azure-pipelines.yml +0 -0
  754. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/bitbucket-pipelines.yml +0 -0
  755. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/docs/SUMMARY-GUIDE.md +0 -0
  756. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/setup.ps1 +0 -0
  757. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/packs/sdd-universal/setup.sh +0 -0
  758. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/__init__.py +0 -0
  759. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/atomic_write.py +0 -0
  760. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/cf_to_md.py +0 -0
  761. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/claude_code_transcript.py +0 -0
  762. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/dashboard_comments.py +0 -0
  763. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/detect.py +0 -0
  764. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/git_host.py +0 -0
  765. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/integrations.py +0 -0
  766. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/manifest.py +0 -0
  767. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/md_to_cf.py +0 -0
  768. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/mermaid_render.py +0 -0
  769. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/project_type.py +0 -0
  770. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/scaffold.py +0 -0
  771. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/sdd_parser.py +0 -0
  772. {sddflow-3.0.2 → sddflow-3.4.2}/sdd/utils/validate.py +0 -0
@@ -1,10 +1,46 @@
1
+ Metadata-Version: 2.5
2
+ Name: sddflow
3
+ Version: 3.4.2
4
+ Summary: Spec-Driven Development CLI for AI coding agents — SDLC workflows with Jira/Confluence sync, multi-host PR automation, and live progress dashboards
5
+ Project-URL: Homepage, https://github.com/sunil1983us/sddflow
6
+ Project-URL: Repository, https://github.com/sunil1983us/sddflow
7
+ Project-URL: Bug Tracker, https://github.com/sunil1983us/sddflow/issues
8
+ Project-URL: Changelog, https://github.com/sunil1983us/sddflow/blob/main/CHANGELOG.md
9
+ Author-email: Sunil Kumar <sunil1983.us@gmail.com>
10
+ License: MIT
11
+ Keywords: ai,ai-agent,atlassian,claude,claude-code,code-review,confluence,jira,llm,pull-request,requirements,sdd,sdlc,spec-driven-development,specification
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Environment :: Console
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: License :: OSI Approved :: MIT License
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Programming Language :: Python :: 3
18
+ Classifier: Programming Language :: Python :: 3.10
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Programming Language :: Python :: 3.14
23
+ Classifier: Topic :: Software Development
24
+ Classifier: Topic :: Software Development :: Documentation
25
+ Classifier: Topic :: Utilities
26
+ Requires-Python: >=3.10
27
+ Requires-Dist: click>=8.0
28
+ Requires-Dist: keyring>=24.0
29
+ Requires-Dist: pyyaml>=6.0
30
+ Requires-Dist: questionary>=2.0
31
+ Requires-Dist: requests>=2.28
32
+ Requires-Dist: rich>=13.0
33
+ Provides-Extra: diagrams
34
+ Requires-Dist: mmdr>=0.3.0; extra == 'diagrams'
35
+ Description-Content-Type: text/markdown
36
+
1
37
  # sddflow (Python) — SDD Framework CLI
2
38
 
3
39
  [![PyPI version](https://img.shields.io/pypi/v/sddflow.svg?color=blue)](https://pypi.org/project/sddflow/)
4
40
  [![Python versions](https://img.shields.io/pypi/pyversions/sddflow.svg)](https://pypi.org/project/sddflow/)
5
41
  [![PyPI downloads](https://img.shields.io/pypi/dm/sddflow.svg?color=green)](https://pypistats.org/packages/sddflow)
6
42
  [![License](https://img.shields.io/pypi/l/sddflow.svg)](../LICENSE)
7
- [![CI](https://github.com/sunil1983us/universalguide/actions/workflows/ci.yml/badge.svg)](https://github.com/sunil1983us/universalguide/actions/workflows/ci.yml)
43
+ [![CI](https://github.com/sunil1983us/sddflow/actions/workflows/ci.yml/badge.svg)](https://github.com/sunil1983us/sddflow/actions/workflows/ci.yml)
8
44
 
9
45
  Python CLI for the SDD (Spec-Driven Development) Framework.
10
46
  Mirrors the Node.js CLI exactly and adds Jira + Confluence integration.
@@ -23,8 +59,8 @@ sdd init
23
59
  For development / contributors:
24
60
 
25
61
  ```bash
26
- git clone https://github.com/sunil1983us/universalguide.git
27
- pip install -e ./universalguide/cli-python
62
+ git clone https://github.com/sunil1983us/sddflow.git
63
+ pip install -e ./sddflow/cli-python
28
64
  ```
29
65
 
30
66
  ---
@@ -92,12 +128,46 @@ migration pending, it asks:
92
128
  and jumps straight to latest — so an automated `sdd upgrade` never needs
93
129
  N reruns to converge.
94
130
 
95
- **This only ever touches `manifest.yml`'s `sdd_version` field.** Fixes made
96
- to prompt file *content* (`.github/prompts/*.md`, `.claude/commands/*.md`)
97
- after your project was scaffolded do **not** reach an existing project just
98
- by running `sdd upgrade` or upgrading the `sddflow` package — those files
99
- were copied into your project once, at `sdd init` time, and nothing
100
- re-syncs them automatically. For that, use `--sync-prompts`:
131
+ **On its own, this only touches `manifest.yml`'s `sdd_version` field.**
132
+ Fixes made to your pack's actual files (templates, prompts, commands,
133
+ instructions, setup scripts, and a few IDE-integration files) after your
134
+ project was scaffolded do **not** reach an existing project just by
135
+ running plain `sdd upgrade` or upgrading the `sddflow` package — those
136
+ files were copied into your project once, at `sdd init` time, and nothing
137
+ re-syncs them automatically on its own. Two flags exist for that:
138
+
139
+ ```bash
140
+ sdd upgrade --apply-files # recommended: every managed file, conflict-aware
141
+ sdd upgrade --sync-prompts # narrower: prompts + commands only, always overwrites
142
+ ```
143
+
144
+ **`--apply-files`** (recommended) covers everything `sdd doctor` checks —
145
+ `.specify/templates/`, `.claude/commands/`, `.github/prompts/`,
146
+ `.github/instructions/`, `.github/workflows/`, `.cursor/rules/`,
147
+ `.vscode/`, plus `setup.sh`/`setup.ps1` — and tells a safe pack update
148
+ apart from your own hand edits before touching anything:
149
+
150
+ ```bash
151
+ sdd upgrade --apply-files # preview + confirm
152
+ sdd upgrade --apply-files --yes # skip the confirmation prompt
153
+ sdd upgrade --apply-files --pack sdd-backend-service # override pack detection
154
+ sdd upgrade --apply-files --force # also overwrite locally-modified files
155
+ ```
156
+
157
+ New files and files that still match their last recorded baseline (i.e.
158
+ you never touched them, only the pack moved on) are applied automatically.
159
+ Files that were hand-edited, or that have no recorded baseline to tell an
160
+ update apart from an edit (any project scaffolded before this existed),
161
+ are left alone and listed — pass `--force` to overwrite those too. Every
162
+ file actually overwritten is backed up to
163
+ `.specify/.managed-files-backups/{timestamp}/` first, never silently
164
+ discarded, and a fresh baseline is written after every run so future
165
+ `sdd doctor`/`sdd upgrade --apply-files` calls keep getting more precise.
166
+ See `sdd doctor` below to check drift without changing anything first.
167
+
168
+ **`--sync-prompts`** is the older, narrower mechanism — `.github/prompts/`
169
+ and `.claude/commands/` only, and always overwrites anything that differs
170
+ (no baseline, no conflict detection) — kept for backward compatibility:
101
171
 
102
172
  ```bash
103
173
  sdd upgrade --sync-prompts # preview + confirm, then re-copy
@@ -105,20 +175,34 @@ sdd upgrade --sync-prompts --yes # skip the confirmation prompt
105
175
  sdd upgrade --sync-prompts --pack sdd-backend-service # override pack detection
106
176
  ```
107
177
 
108
- Which pack to sync from is resolved, in order: `--pack` flag →
109
- `manifest.yml`'s `pack` field (written automatically by `sdd init` on
110
- every new project) → inferred from `project_type` → `sdd-universal` as a
111
- last resort. If it had to guess, it says so and tells you to pass `--pack`
112
- if the guess is wrong — projects scaffolded before this field existed
113
- won't have `pack` recorded, so double-check the inference on those.
114
-
115
- Every file about to be overwritten is shown first (and left alone if you
116
- say no); anything actually overwritten is backed up to
117
- `.specify/.prompt-sync-backups/{timestamp}/` first, so a project with
118
- hand-edited prompt files never just loses those edits silently. Only
119
- `.github/prompts/` and `.claude/commands/` are touched — nothing under
120
- `.specify/` (templates, constitution, your generated docs) is ever synced
121
- by this command.
178
+ For both flags, which pack to sync from is resolved, in order: `--pack`
179
+ flag → `manifest.yml`'s `pack` field (written automatically by `sdd init`
180
+ on every new project, and baked as a static default into every pack's own
181
+ `manifest.yml` template as of v3.3.0) → inferred from `project_type` →
182
+ `sdd-universal` as a last resort. If it had to guess, it says so and
183
+ tells you to pass `--pack` if the guess is wrong.
184
+
185
+ ---
186
+
187
+ ### `sdd doctor`
188
+
189
+ Read-only report of drift between your project's framework-managed files
190
+ and the pack content bundled with your currently installed `sddflow` CLI
191
+ — the same file set `sdd upgrade --apply-files` acts on, but this command
192
+ never changes anything.
193
+
194
+ ```bash
195
+ sdd doctor
196
+ sdd doctor --quiet # only show files that aren't up to date
197
+ sdd doctor --pack sdd-backend-service # check against a specific pack
198
+ ```
199
+
200
+ Each file is classified as up to date, needs update (pack content moved
201
+ on, you never touched it — safe to auto-apply), modified locally (a real
202
+ conflict), differs with no baseline recorded (can't tell an update apart
203
+ from a hand edit — the honest fallback for any project older than this
204
+ baseline mechanism), or missing. Exit code 0 if everything's clean, 1
205
+ otherwise (scriptable in CI).
122
206
 
123
207
  ---
124
208
 
@@ -1,46 +1,10 @@
1
- Metadata-Version: 2.4
2
- Name: sddflow
3
- Version: 3.0.2
4
- Summary: Spec-Driven Development CLI for AI coding agents — SDLC workflows with Jira/Confluence sync, multi-host PR automation, and live progress dashboards
5
- Project-URL: Homepage, https://github.com/sunil1983us/universalguide
6
- Project-URL: Repository, https://github.com/sunil1983us/universalguide
7
- Project-URL: Bug Tracker, https://github.com/sunil1983us/universalguide/issues
8
- Project-URL: Changelog, https://github.com/sunil1983us/universalguide/blob/main/CHANGELOG.md
9
- Author-email: Sunil Kumar <sunil1983.us@gmail.com>
10
- License: MIT
11
- Keywords: ai,ai-agent,atlassian,claude,claude-code,code-review,confluence,jira,llm,pull-request,requirements,sdd,sdlc,spec-driven-development,specification
12
- Classifier: Development Status :: 4 - Beta
13
- Classifier: Environment :: Console
14
- Classifier: Intended Audience :: Developers
15
- Classifier: License :: OSI Approved :: MIT License
16
- Classifier: Operating System :: OS Independent
17
- Classifier: Programming Language :: Python :: 3
18
- Classifier: Programming Language :: Python :: 3.10
19
- Classifier: Programming Language :: Python :: 3.11
20
- Classifier: Programming Language :: Python :: 3.12
21
- Classifier: Programming Language :: Python :: 3.13
22
- Classifier: Programming Language :: Python :: 3.14
23
- Classifier: Topic :: Software Development
24
- Classifier: Topic :: Software Development :: Documentation
25
- Classifier: Topic :: Utilities
26
- Requires-Python: >=3.10
27
- Requires-Dist: click>=8.0
28
- Requires-Dist: keyring>=24.0
29
- Requires-Dist: pyyaml>=6.0
30
- Requires-Dist: questionary>=2.0
31
- Requires-Dist: requests>=2.28
32
- Requires-Dist: rich>=13.0
33
- Provides-Extra: diagrams
34
- Requires-Dist: mmdr>=0.3.0; extra == 'diagrams'
35
- Description-Content-Type: text/markdown
36
-
37
1
  # sddflow (Python) — SDD Framework CLI
38
2
 
39
3
  [![PyPI version](https://img.shields.io/pypi/v/sddflow.svg?color=blue)](https://pypi.org/project/sddflow/)
40
4
  [![Python versions](https://img.shields.io/pypi/pyversions/sddflow.svg)](https://pypi.org/project/sddflow/)
41
5
  [![PyPI downloads](https://img.shields.io/pypi/dm/sddflow.svg?color=green)](https://pypistats.org/packages/sddflow)
42
6
  [![License](https://img.shields.io/pypi/l/sddflow.svg)](../LICENSE)
43
- [![CI](https://github.com/sunil1983us/universalguide/actions/workflows/ci.yml/badge.svg)](https://github.com/sunil1983us/universalguide/actions/workflows/ci.yml)
7
+ [![CI](https://github.com/sunil1983us/sddflow/actions/workflows/ci.yml/badge.svg)](https://github.com/sunil1983us/sddflow/actions/workflows/ci.yml)
44
8
 
45
9
  Python CLI for the SDD (Spec-Driven Development) Framework.
46
10
  Mirrors the Node.js CLI exactly and adds Jira + Confluence integration.
@@ -59,8 +23,8 @@ sdd init
59
23
  For development / contributors:
60
24
 
61
25
  ```bash
62
- git clone https://github.com/sunil1983us/universalguide.git
63
- pip install -e ./universalguide/cli-python
26
+ git clone https://github.com/sunil1983us/sddflow.git
27
+ pip install -e ./sddflow/cli-python
64
28
  ```
65
29
 
66
30
  ---
@@ -128,12 +92,46 @@ migration pending, it asks:
128
92
  and jumps straight to latest — so an automated `sdd upgrade` never needs
129
93
  N reruns to converge.
130
94
 
131
- **This only ever touches `manifest.yml`'s `sdd_version` field.** Fixes made
132
- to prompt file *content* (`.github/prompts/*.md`, `.claude/commands/*.md`)
133
- after your project was scaffolded do **not** reach an existing project just
134
- by running `sdd upgrade` or upgrading the `sddflow` package — those files
135
- were copied into your project once, at `sdd init` time, and nothing
136
- re-syncs them automatically. For that, use `--sync-prompts`:
95
+ **On its own, this only touches `manifest.yml`'s `sdd_version` field.**
96
+ Fixes made to your pack's actual files (templates, prompts, commands,
97
+ instructions, setup scripts, and a few IDE-integration files) after your
98
+ project was scaffolded do **not** reach an existing project just by
99
+ running plain `sdd upgrade` or upgrading the `sddflow` package — those
100
+ files were copied into your project once, at `sdd init` time, and nothing
101
+ re-syncs them automatically on its own. Two flags exist for that:
102
+
103
+ ```bash
104
+ sdd upgrade --apply-files # recommended: every managed file, conflict-aware
105
+ sdd upgrade --sync-prompts # narrower: prompts + commands only, always overwrites
106
+ ```
107
+
108
+ **`--apply-files`** (recommended) covers everything `sdd doctor` checks —
109
+ `.specify/templates/`, `.claude/commands/`, `.github/prompts/`,
110
+ `.github/instructions/`, `.github/workflows/`, `.cursor/rules/`,
111
+ `.vscode/`, plus `setup.sh`/`setup.ps1` — and tells a safe pack update
112
+ apart from your own hand edits before touching anything:
113
+
114
+ ```bash
115
+ sdd upgrade --apply-files # preview + confirm
116
+ sdd upgrade --apply-files --yes # skip the confirmation prompt
117
+ sdd upgrade --apply-files --pack sdd-backend-service # override pack detection
118
+ sdd upgrade --apply-files --force # also overwrite locally-modified files
119
+ ```
120
+
121
+ New files and files that still match their last recorded baseline (i.e.
122
+ you never touched them, only the pack moved on) are applied automatically.
123
+ Files that were hand-edited, or that have no recorded baseline to tell an
124
+ update apart from an edit (any project scaffolded before this existed),
125
+ are left alone and listed — pass `--force` to overwrite those too. Every
126
+ file actually overwritten is backed up to
127
+ `.specify/.managed-files-backups/{timestamp}/` first, never silently
128
+ discarded, and a fresh baseline is written after every run so future
129
+ `sdd doctor`/`sdd upgrade --apply-files` calls keep getting more precise.
130
+ See `sdd doctor` below to check drift without changing anything first.
131
+
132
+ **`--sync-prompts`** is the older, narrower mechanism — `.github/prompts/`
133
+ and `.claude/commands/` only, and always overwrites anything that differs
134
+ (no baseline, no conflict detection) — kept for backward compatibility:
137
135
 
138
136
  ```bash
139
137
  sdd upgrade --sync-prompts # preview + confirm, then re-copy
@@ -141,20 +139,34 @@ sdd upgrade --sync-prompts --yes # skip the confirmation prompt
141
139
  sdd upgrade --sync-prompts --pack sdd-backend-service # override pack detection
142
140
  ```
143
141
 
144
- Which pack to sync from is resolved, in order: `--pack` flag →
145
- `manifest.yml`'s `pack` field (written automatically by `sdd init` on
146
- every new project) → inferred from `project_type` → `sdd-universal` as a
147
- last resort. If it had to guess, it says so and tells you to pass `--pack`
148
- if the guess is wrong — projects scaffolded before this field existed
149
- won't have `pack` recorded, so double-check the inference on those.
150
-
151
- Every file about to be overwritten is shown first (and left alone if you
152
- say no); anything actually overwritten is backed up to
153
- `.specify/.prompt-sync-backups/{timestamp}/` first, so a project with
154
- hand-edited prompt files never just loses those edits silently. Only
155
- `.github/prompts/` and `.claude/commands/` are touched — nothing under
156
- `.specify/` (templates, constitution, your generated docs) is ever synced
157
- by this command.
142
+ For both flags, which pack to sync from is resolved, in order: `--pack`
143
+ flag → `manifest.yml`'s `pack` field (written automatically by `sdd init`
144
+ on every new project, and baked as a static default into every pack's own
145
+ `manifest.yml` template as of v3.3.0) → inferred from `project_type` →
146
+ `sdd-universal` as a last resort. If it had to guess, it says so and
147
+ tells you to pass `--pack` if the guess is wrong.
148
+
149
+ ---
150
+
151
+ ### `sdd doctor`
152
+
153
+ Read-only report of drift between your project's framework-managed files
154
+ and the pack content bundled with your currently installed `sddflow` CLI
155
+ — the same file set `sdd upgrade --apply-files` acts on, but this command
156
+ never changes anything.
157
+
158
+ ```bash
159
+ sdd doctor
160
+ sdd doctor --quiet # only show files that aren't up to date
161
+ sdd doctor --pack sdd-backend-service # check against a specific pack
162
+ ```
163
+
164
+ Each file is classified as up to date, needs update (pack content moved
165
+ on, you never touched it — safe to auto-apply), modified locally (a real
166
+ conflict), differs with no baseline recorded (can't tell an update apart
167
+ from a hand edit — the honest fallback for any project older than this
168
+ baseline mechanism), or missing. Exit code 0 if everything's clean, 1
169
+ otherwise (scriptable in CI).
158
170
 
159
171
  ---
160
172
 
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "sddflow"
7
- version = "3.0.2"
7
+ version = "3.4.2"
8
8
  description = "Spec-Driven Development CLI for AI coding agents — SDLC workflows with Jira/Confluence sync, multi-host PR automation, and live progress dashboards"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -56,10 +56,10 @@ diagrams = [
56
56
  sdd = "sdd.__main__:cli"
57
57
 
58
58
  [project.urls]
59
- Homepage = "https://github.com/sunil1983us/universalguide"
60
- Repository = "https://github.com/sunil1983us/universalguide"
61
- "Bug Tracker" = "https://github.com/sunil1983us/universalguide/issues"
62
- Changelog = "https://github.com/sunil1983us/universalguide/blob/main/CHANGELOG.md"
59
+ Homepage = "https://github.com/sunil1983us/sddflow"
60
+ Repository = "https://github.com/sunil1983us/sddflow"
61
+ "Bug Tracker" = "https://github.com/sunil1983us/sddflow/issues"
62
+ Changelog = "https://github.com/sunil1983us/sddflow/blob/main/CHANGELOG.md"
63
63
 
64
64
  [tool.hatch.build.targets.wheel]
65
65
  packages = ["sdd"]
@@ -0,0 +1 @@
1
+ __version__ = "3.4.2"
@@ -5,6 +5,7 @@ from sdd.commands.config import config_command
5
5
  from sdd.commands.confluence import confluence_command
6
6
  from sdd.commands.cr import cr_command
7
7
  from sdd.commands.dashboard import dashboard_command
8
+ from sdd.commands.doctor import doctor_command
8
9
  from sdd.commands.feature import feature_command
9
10
  from sdd.commands.hooks import hooks_command
10
11
  from sdd.commands.init import init_command
@@ -16,7 +17,10 @@ from sdd.commands.token_log import token_log_command
16
17
  from sdd.commands.upgrade import upgrade_command
17
18
 
18
19
 
19
- @click.group()
20
+ @click.group(
21
+ epilog="Found a bug or have a feature request? "
22
+ "https://github.com/sunil1983us/sddflow/issues"
23
+ )
20
24
  @click.version_option(__version__, prog_name="sdd")
21
25
  def cli():
22
26
  """SDD Framework CLI — Spec-Driven Development"""
@@ -35,6 +39,7 @@ cli.add_command(token_log_command, name="token-log")
35
39
  cli.add_command(project_type_command, name="project-type")
36
40
  cli.add_command(feature_command, name="feature")
37
41
  cli.add_command(hooks_command, name="hooks")
42
+ cli.add_command(doctor_command, name="doctor")
38
43
 
39
44
 
40
45
  if __name__ == "__main__":
@@ -1,5 +1,6 @@
1
1
  from __future__ import annotations
2
2
 
3
+ import json
3
4
  import re
4
5
  from pathlib import Path
5
6
 
@@ -517,31 +518,65 @@ def config_test(profile):
517
518
  console.print(f" [dim]Confluence profile: {cf_name}[/dim]")
518
519
  console.print()
519
520
 
521
+ _probe_service(
522
+ "Jira",
523
+ lambda: JiraClient(
524
+ jira_session, jira_prof.base_url, deployment=jira_prof.deployment
525
+ ).get_myself(),
526
+ ("displayName", "emailAddress"),
527
+ )
528
+ _probe_service(
529
+ "Confluence",
530
+ lambda: ConfluenceClient(
531
+ cf_session, cf_prof.base_url, deployment=cf_prof.deployment
532
+ ).get_myself(),
533
+ ("displayName", "username"),
534
+ )
535
+
536
+ console.print()
537
+
538
+
539
+ def _probe_service(label: str, get_myself_fn, name_keys: tuple[str, ...]) -> None:
540
+ """Runs a get_myself()-style connectivity probe and prints one status
541
+ line -- never lets it crash the whole `sdd config test` command.
542
+
543
+ Three failure modes, told apart because each points at a different
544
+ fix:
545
+ - HTTPError: the server itself said no (4xx/5xx) -- its status code
546
+ and body are the most useful thing to show.
547
+ - JSONDecodeError (raised by response.json() on a 200-but-non-JSON
548
+ body -- caught as the bare stdlib class since older `requests`
549
+ versions raise that directly, and as InvalidJSONError to also
550
+ catch requests>=2.27's own subclass that wraps it): most commonly
551
+ means base_url points at an SSO/login redirect page or the wrong
552
+ path entirely, not the real API root -- a raw "Expecting value:
553
+ line 1 column 1" message (what this looks like uncaught) gives the
554
+ user no clue what actually went wrong.
555
+ - Any other RequestException (connection refused, DNS failure,
556
+ timeout, TLS error, malformed URL): whatever requests' own message
557
+ says is usually clear enough on its own.
558
+ """
520
559
  try:
521
- me = JiraClient(jira_session, jira_prof.base_url).get_myself()
522
- name = me.get("displayName") or me.get("emailAddress", "?")
560
+ me = get_myself_fn()
561
+ name = next((me.get(k) for k in name_keys if me.get(k)), "?")
523
562
  console.print(
524
- f" [green]✓[/green] Jira — connected as [cyan]{name}[/cyan]"
563
+ f" [green]✓[/green] {label:<10} — connected as [cyan]{name}[/cyan]"
525
564
  )
526
- except requests.HTTPError as e:
565
+ except requests.exceptions.HTTPError as e:
527
566
  console.print(
528
- f" [red]✗ Jira — HTTP {e.response.status_code}: "
567
+ f" [red]✗ {label:<10} — HTTP {e.response.status_code}: "
529
568
  f"{e.response.text[:120]}[/red]"
530
569
  )
531
-
532
- try:
533
- me = ConfluenceClient(cf_session, cf_prof.base_url).get_myself()
534
- name = me.get("displayName") or me.get("username", "?")
535
- console.print(
536
- f" [green]✓[/green] Confluence — connected as [cyan]{name}[/cyan]"
537
- )
538
- except requests.HTTPError as e:
570
+ except (json.JSONDecodeError, requests.exceptions.InvalidJSONError):
539
571
  console.print(
540
- f" [red]✗ Confluence — HTTP {e.response.status_code}: "
541
- f"{e.response.text[:120]}[/red]"
572
+ f" [red]✗ {label:<10} — got a response, but it wasn't "
573
+ f"JSON.[/red]\n"
574
+ f" [dim]Check base_url points at the API root (not a "
575
+ f"login/SSO redirect page), and that the PAT/token is "
576
+ f"still valid.[/dim]"
542
577
  )
543
-
544
- console.print()
578
+ except requests.exceptions.RequestException as e:
579
+ console.print(f" [red]✗ {label:<10} — {e}[/red]")
545
580
 
546
581
 
547
582
  @config_command.command("fields")
@@ -577,7 +612,7 @@ def config_fields(profile, project):
577
612
  )
578
613
  raise SystemExit(1)
579
614
 
580
- fields = JiraClient(session, prof.base_url).get_fields()
615
+ fields = JiraClient(session, prof.base_url, deployment=prof.deployment).get_fields()
581
616
  custom = sorted(
582
617
  [f for f in fields if f.get("custom")],
583
618
  key=lambda f: f.get("name", ""),
@@ -342,7 +342,7 @@ def confluence_push(profile, feature, doc, summary, dry_run, force):
342
342
  console.print(f" [red]✗ Auth error: {e}[/red]")
343
343
  raise SystemExit(1)
344
344
 
345
- client = ConfluenceClient(session, prof.base_url)
345
+ client = ConfluenceClient(session, prof.base_url, deployment=prof.deployment)
346
346
 
347
347
  for key, md_path, title in available:
348
348
  body, attachments, diagram_warnings = md_to_storage(
@@ -471,7 +471,7 @@ def confluence_draft(doc, profile, feature, dry_run, force):
471
471
  console.print(f" [red]✗ Auth error: {e}[/red]")
472
472
  raise SystemExit(1)
473
473
 
474
- client = ConfluenceClient(session, prof.base_url)
474
+ client = ConfluenceClient(session, prof.base_url, deployment=prof.deployment)
475
475
  body, attachments, diagram_warnings = md_to_storage(
476
476
  doc_path.read_text(), cf_cfg.diagrams
477
477
  )
@@ -577,7 +577,7 @@ def confluence_pull(doc, profile, feature, page_id):
577
577
  console.print(f" [red]✗ Auth error: {e}[/red]")
578
578
  raise SystemExit(1)
579
579
 
580
- client = ConfluenceClient(session, prof.base_url)
580
+ client = ConfluenceClient(session, prof.base_url, deployment=prof.deployment)
581
581
 
582
582
  console.print(f" Fetching page [cyan]{resolved_page_id}[/cyan] from Confluence...")
583
583
  try:
@@ -122,7 +122,9 @@ def cr_submit(cr, profile, feature, reviewer, dry_run):
122
122
 
123
123
  # ── Push CR record to Confluence ─────────────────────────────────────────
124
124
  if cfg.confluence:
125
- cf_client = ConfluenceClient(cf_session, cf_prof.base_url)
125
+ cf_client = ConfluenceClient(
126
+ cf_session, cf_prof.base_url, deployment=cf_prof.deployment
127
+ )
126
128
  body_html, attachments, diagram_warnings = md_to_storage(
127
129
  cr_text, cfg.confluence.diagrams
128
130
  )
@@ -159,7 +161,9 @@ def cr_submit(cr, profile, feature, reviewer, dry_run):
159
161
 
160
162
  # ── Create / update Jira review task ─────────────────────────────────────
161
163
  if cfg.jira:
162
- jira_client = JiraClient(jira_session, jira_prof.base_url)
164
+ jira_client = JiraClient(
165
+ jira_session, jira_prof.base_url, deployment=jira_prof.deployment
166
+ )
163
167
  # feature_name included for the same reason page_title above is --
164
168
  # cr_id alone (e.g. "CHG-001") is scoped per feature's own tasks.md
165
169
  # counter, not globally unique across the project. Without it here,
@@ -288,7 +292,7 @@ def cr_check(cr, profile, feature):
288
292
  proj = manifest.get("project") or {}
289
293
  feature_name = feature or proj.get("feature", "")
290
294
 
291
- client = JiraClient(session, prof.base_url)
295
+ client = JiraClient(session, prof.base_url, deployment=prof.deployment)
292
296
  # Must match cr_submit's idempotency_label exactly (feature-qualified) --
293
297
  # otherwise this would never find the ticket cr_submit actually created.
294
298
  issue = client.find_by_label(
@@ -201,12 +201,14 @@ def _fetch_review_links(feature: str) -> dict:
201
201
  try:
202
202
  if cfg.jira:
203
203
  prof, session = load_jira_session(cfg)
204
- jira_client = JiraClient(session, prof.base_url)
204
+ jira_client = JiraClient(session, prof.base_url, deployment=prof.deployment)
205
205
  else:
206
206
  jira_client = None
207
207
  if cfg.confluence:
208
208
  cf_prof, cf_session = load_confluence_session(cfg)
209
- cf_client = ConfluenceClient(cf_session, cf_prof.base_url)
209
+ cf_client = ConfluenceClient(
210
+ cf_session, cf_prof.base_url, deployment=cf_prof.deployment
211
+ )
210
212
  else:
211
213
  cf_prof, cf_client = None, None
212
214
  except Exception as e:
@@ -305,7 +307,7 @@ def _jira_client_for_comments():
305
307
  return None
306
308
  try:
307
309
  prof, session = load_jira_session(cfg)
308
- return JiraClient(session, prof.base_url), cfg
310
+ return JiraClient(session, prof.base_url, deployment=prof.deployment), cfg
309
311
  except Exception:
310
312
  return None
311
313
 
@@ -49,6 +49,9 @@ __SDD_DASHBOARD_CSS__
49
49
  </div>
50
50
  </details>
51
51
  <div id="root"></div>
52
+ <footer class="dashboard-footer">
53
+ <a href="https://github.com/sunil1983us/sddflow/issues" target="_blank" rel="noopener">Report a bug / request a feature</a>
54
+ </footer>
52
55
 
53
56
  <script>
54
57
  __SDD_DASHBOARD_THEME_JS__
@@ -237,4 +237,12 @@
237
237
  .pager {
238
238
  display: flex; align-items: center; gap: .6rem; margin-top: .6rem;
239
239
  padding-top: .6rem; border-top: 1px solid var(--border);
240
- }
240
+ }
241
+
242
+ /* Static -- lives in page.html outside #root, so it survives every 5s
243
+ poll's innerHTML rebuild without needing any JS of its own. */
244
+ .dashboard-footer {
245
+ text-align: center; padding: 1.5rem 1rem 2rem; font-size: .8rem;
246
+ }
247
+ .dashboard-footer a { color: var(--muted); text-decoration: none; }
248
+ .dashboard-footer a:hover { color: var(--accent); text-decoration: underline; }