sddflow 2.7.60__tar.gz → 2.7.77__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 (787) hide show
  1. {sddflow-2.7.60 → sddflow-2.7.77}/PKG-INFO +44 -1
  2. {sddflow-2.7.60 → sddflow-2.7.77}/README.md +43 -0
  3. {sddflow-2.7.60 → sddflow-2.7.77}/pyproject.toml +1 -1
  4. sddflow-2.7.77/sdd/__init__.py +1 -0
  5. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/__main__.py +2 -0
  6. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/commands/confluence.py +55 -14
  7. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/commands/dashboard.py +447 -83
  8. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/commands/review.py +42 -36
  9. sddflow-2.7.77/sdd/commands/token_log.py +282 -0
  10. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/commands/upgrade.py +627 -0
  11. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.github/prompts/change.prompt.md +18 -3
  12. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/clarify.prompt.md +44 -10
  13. sddflow-2.7.77/sdd/packs/sdd-backend-service/.github/prompts/implement.prompt.md +231 -0
  14. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/plan-design.prompt.md +11 -1
  15. sddflow-2.7.77/sdd/packs/sdd-backend-service/.github/prompts/release.prompt.md +223 -0
  16. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/specify.prompt.md +11 -0
  17. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.github/prompts/task.prompt.md +164 -6
  18. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/workflows/quality-gate.yml +16 -4
  19. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/integrations.yml.example +22 -3
  20. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/manifest.yml +1 -1
  21. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/adr-template.md +3 -3
  22. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/analyze-template.md +4 -4
  23. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/api-spec-template.md +3 -3
  24. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/arch-template.md +4 -4
  25. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/brd-template.md +3 -3
  26. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/clarify-template.md +3 -3
  27. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/data-model-template.md +3 -3
  28. {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/design-template.md +5 -5
  29. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/feature-story-template.md +5 -5
  30. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/hld-template.md +4 -4
  31. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/investigation-template.md +3 -3
  32. {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/lld-template.md +3 -3
  33. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/plan-template.md +3 -3
  34. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/qa-testcases-template.md +4 -4
  35. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/release-template.md +6 -6
  36. {sddflow-2.7.60/sdd/packs/sdd-universal → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/resilience-template.md +3 -3
  37. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/runbook-template.md +3 -3
  38. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/security-design-template.md +3 -3
  39. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/srd-template.md +3 -3
  40. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/tasks-template.md +3 -3
  41. sddflow-2.7.77/sdd/packs/sdd-backend-service/.specify/templates/token-usage-template.md +83 -0
  42. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/use-cases-template.md +4 -4
  43. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-backend-service}/.specify/templates/validate-template.md +4 -4
  44. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/CLAUDE.md +57 -23
  45. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/HOW-TO-USE.md +42 -13
  46. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.github/prompts/change.prompt.md +18 -3
  47. {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.github/prompts/clarify.prompt.md +46 -10
  48. sddflow-2.7.77/sdd/packs/sdd-frontend-spa/.github/prompts/implement.prompt.md +217 -0
  49. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.github/prompts/plan-design.prompt.md +11 -1
  50. sddflow-2.7.77/sdd/packs/sdd-frontend-spa/.github/prompts/release.prompt.md +230 -0
  51. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/specify.prompt.md +7 -0
  52. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.github/prompts/task.prompt.md +164 -6
  53. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/workflows/quality-gate.yml +20 -4
  54. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.specify/integrations.yml.example +22 -3
  55. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/manifest.yml +1 -1
  56. {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.specify/templates/adr-template.md +3 -3
  57. {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.specify/templates/analyze-template.md +4 -4
  58. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/api-spec-template.md +3 -3
  59. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/arch-template.md +4 -4
  60. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/brd-template.md +3 -3
  61. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.specify/templates/clarify-template.md +3 -3
  62. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/component-library-template.md +3 -3
  63. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/component-spec-template.md +3 -3
  64. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/data-model-template.md +3 -3
  65. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/design-template.md +5 -5
  66. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.specify/templates/feature-story-template.md +5 -5
  67. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.specify/templates/hld-template.md +4 -4
  68. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/investigation-template.md +3 -3
  69. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/lld-template.md +3 -3
  70. {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.specify/templates/plan-template.md +3 -3
  71. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.specify/templates/qa-testcases-template.md +4 -4
  72. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/release-template.md +6 -6
  73. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/resilience-template.md +3 -3
  74. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/runbook-template.md +3 -3
  75. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/security-design-template.md +3 -3
  76. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/srd-template.md +3 -3
  77. {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.specify/templates/tasks-template.md +3 -3
  78. sddflow-2.7.77/sdd/packs/sdd-frontend-spa/.specify/templates/token-usage-template.md +83 -0
  79. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.specify/templates/use-cases-template.md +4 -4
  80. {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.77/sdd/packs/sdd-frontend-spa}/.specify/templates/ux-flow-template.md +3 -3
  81. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/validate-template.md +4 -4
  82. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/CLAUDE.md +57 -23
  83. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/HOW-TO-USE.md +42 -13
  84. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.github/prompts/change.prompt.md +18 -3
  85. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.github/prompts/clarify.prompt.md +46 -10
  86. sddflow-2.7.77/sdd/packs/sdd-fullstack/.github/prompts/implement.prompt.md +219 -0
  87. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.github/prompts/plan-design.prompt.md +11 -1
  88. sddflow-2.7.77/sdd/packs/sdd-fullstack/.github/prompts/release.prompt.md +230 -0
  89. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/specify.prompt.md +7 -0
  90. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.github/prompts/task.prompt.md +164 -6
  91. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/workflows/quality-gate.yml +36 -8
  92. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.specify/integrations.yml.example +22 -3
  93. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/manifest.yml +1 -1
  94. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.specify/templates/adr-template.md +3 -3
  95. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.specify/templates/analyze-template.md +4 -4
  96. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/api-spec-template.md +3 -3
  97. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/arch-template.md +4 -4
  98. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/brd-template.md +3 -3
  99. {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.specify/templates/clarify-template.md +3 -3
  100. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/component-library-template.md +3 -3
  101. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/component-spec-template.md +3 -3
  102. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/data-model-template.md +3 -3
  103. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.specify/templates/design-template.md +5 -5
  104. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/feature-story-template.md +5 -5
  105. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.specify/templates/hld-template.md +4 -4
  106. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/investigation-template.md +3 -3
  107. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.specify/templates/lld-template.md +3 -3
  108. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.specify/templates/plan-template.md +3 -3
  109. {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.specify/templates/qa-testcases-template.md +4 -4
  110. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/release-template.md +6 -6
  111. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/resilience-template.md +3 -3
  112. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/runbook-template.md +3 -3
  113. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/screen-spec-template.md +3 -3
  114. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/security-design-template.md +3 -3
  115. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/srd-template.md +3 -3
  116. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/tasks-template.md +3 -3
  117. sddflow-2.7.77/sdd/packs/sdd-fullstack/.specify/templates/token-usage-template.md +83 -0
  118. {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.specify/templates/use-cases-template.md +4 -4
  119. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.specify/templates/ux-flow-template.md +3 -3
  120. {sddflow-2.7.60/sdd/packs/sdd-mobile → sddflow-2.7.77/sdd/packs/sdd-fullstack}/.specify/templates/validate-template.md +4 -4
  121. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/CLAUDE.md +57 -23
  122. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/HOW-TO-USE.md +42 -13
  123. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/change.prompt.md +18 -3
  124. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-mobile}/.github/prompts/clarify.prompt.md +46 -10
  125. sddflow-2.7.77/sdd/packs/sdd-mobile/.github/prompts/implement.prompt.md +217 -0
  126. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/plan-design.prompt.md +11 -1
  127. sddflow-2.7.77/sdd/packs/sdd-mobile/.github/prompts/release.prompt.md +226 -0
  128. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/specify.prompt.md +7 -0
  129. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/task.prompt.md +164 -6
  130. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/workflows/quality-gate.yml +22 -5
  131. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/integrations.yml.example +22 -3
  132. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/manifest.yml +1 -1
  133. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-mobile}/.specify/templates/adr-template.md +3 -3
  134. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-mobile}/.specify/templates/analyze-template.md +4 -4
  135. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/api-spec-template.md +3 -3
  136. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/arch-template.md +4 -4
  137. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/brd-template.md +3 -3
  138. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-mobile}/.specify/templates/clarify-template.md +3 -3
  139. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/data-model-template.md +3 -3
  140. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-mobile}/.specify/templates/design-template.md +5 -5
  141. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/feature-story-template.md +5 -5
  142. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/hld-template.md +4 -4
  143. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/investigation-template.md +3 -3
  144. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-mobile}/.specify/templates/lld-template.md +3 -3
  145. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-mobile}/.specify/templates/plan-template.md +3 -3
  146. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-mobile}/.specify/templates/qa-testcases-template.md +4 -4
  147. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/release-template.md +6 -6
  148. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/resilience-template.md +3 -3
  149. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/runbook-template.md +3 -3
  150. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/screen-spec-template.md +3 -3
  151. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/security-design-template.md +3 -3
  152. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/srd-template.md +3 -3
  153. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-mobile}/.specify/templates/tasks-template.md +3 -3
  154. sddflow-2.7.77/sdd/packs/sdd-mobile/.specify/templates/token-usage-template.md +83 -0
  155. {sddflow-2.7.60/sdd/packs/sdd-frontend-spa → sddflow-2.7.77/sdd/packs/sdd-mobile}/.specify/templates/use-cases-template.md +4 -4
  156. {sddflow-2.7.60/sdd/packs/sdd-fullstack → sddflow-2.7.77/sdd/packs/sdd-mobile}/.specify/templates/ux-flow-template.md +3 -3
  157. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-mobile}/.specify/templates/validate-template.md +4 -4
  158. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/CLAUDE.md +57 -23
  159. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/HOW-TO-USE.md +42 -13
  160. sddflow-2.7.77/sdd/packs/sdd-universal/.github/prompts/change.prompt.md +556 -0
  161. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/clarify.prompt.md +44 -10
  162. sddflow-2.7.77/sdd/packs/sdd-universal/.github/prompts/implement.prompt.md +220 -0
  163. sddflow-2.7.77/sdd/packs/sdd-universal/.github/prompts/plan-design.prompt.md +352 -0
  164. sddflow-2.7.77/sdd/packs/sdd-universal/.github/prompts/release.prompt.md +225 -0
  165. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/specify.prompt.md +7 -1
  166. sddflow-2.7.77/sdd/packs/sdd-universal/.github/prompts/task.prompt.md +347 -0
  167. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/workflows/quality-gate.yml +16 -4
  168. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/integrations.yml.example +483 -0
  169. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/manifest.yml +1 -1
  170. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/adr-template.md +67 -0
  171. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/analyze-template.md +133 -0
  172. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/api-spec-template.md +3 -3
  173. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/arch-template.md +4 -4
  174. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/brd-template.md +4 -4
  175. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/clarify-template.md +94 -0
  176. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/data-model-template.md +3 -3
  177. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/design-template.md +279 -0
  178. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/feature-story-template.md +164 -0
  179. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/hld-template.md +115 -0
  180. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/investigation-template.md +3 -3
  181. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/lld-template.md +181 -0
  182. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/plan-template.md +101 -0
  183. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/qa-testcases-template.md +198 -0
  184. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/release-template.md +6 -6
  185. {sddflow-2.7.60/sdd/packs/sdd-backend-service → sddflow-2.7.77/sdd/packs/sdd-universal}/.specify/templates/resilience-template.md +3 -3
  186. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/runbook-template.md +3 -3
  187. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/security-design-template.md +4 -4
  188. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/srd-template.md +82 -0
  189. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/tasks-template.md +347 -0
  190. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/token-usage-template.md +83 -0
  191. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/use-cases-template.md +201 -0
  192. sddflow-2.7.77/sdd/packs/sdd-universal/.specify/templates/validate-template.md +131 -0
  193. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/CLAUDE.md +57 -23
  194. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/HOW-TO-USE.md +42 -13
  195. sddflow-2.7.77/sdd/utils/claude_code_transcript.py +136 -0
  196. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/integrations.py +10 -0
  197. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/md_to_cf.py +28 -4
  198. sddflow-2.7.77/sdd/utils/sdd_parser.py +334 -0
  199. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/status.py +140 -6
  200. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/validate.py +19 -0
  201. sddflow-2.7.60/sdd/__init__.py +0 -1
  202. sddflow-2.7.60/sdd/packs/sdd-backend-service/.github/prompts/implement.prompt.md +0 -104
  203. sddflow-2.7.60/sdd/packs/sdd-backend-service/.github/prompts/release.prompt.md +0 -100
  204. sddflow-2.7.60/sdd/packs/sdd-backend-service/.specify/templates/token-usage-template.md +0 -46
  205. sddflow-2.7.60/sdd/packs/sdd-frontend-spa/.github/prompts/implement.prompt.md +0 -90
  206. sddflow-2.7.60/sdd/packs/sdd-frontend-spa/.github/prompts/release.prompt.md +0 -107
  207. sddflow-2.7.60/sdd/packs/sdd-frontend-spa/.specify/templates/token-usage-template.md +0 -46
  208. sddflow-2.7.60/sdd/packs/sdd-fullstack/.github/prompts/implement.prompt.md +0 -92
  209. sddflow-2.7.60/sdd/packs/sdd-fullstack/.github/prompts/release.prompt.md +0 -107
  210. sddflow-2.7.60/sdd/packs/sdd-fullstack/.specify/templates/token-usage-template.md +0 -46
  211. sddflow-2.7.60/sdd/packs/sdd-mobile/.github/prompts/implement.prompt.md +0 -90
  212. sddflow-2.7.60/sdd/packs/sdd-mobile/.github/prompts/release.prompt.md +0 -103
  213. sddflow-2.7.60/sdd/packs/sdd-mobile/.specify/templates/token-usage-template.md +0 -46
  214. sddflow-2.7.60/sdd/packs/sdd-universal/.github/prompts/change.prompt.md +0 -541
  215. sddflow-2.7.60/sdd/packs/sdd-universal/.github/prompts/implement.prompt.md +0 -93
  216. sddflow-2.7.60/sdd/packs/sdd-universal/.github/prompts/plan-design.prompt.md +0 -342
  217. sddflow-2.7.60/sdd/packs/sdd-universal/.github/prompts/release.prompt.md +0 -102
  218. sddflow-2.7.60/sdd/packs/sdd-universal/.github/prompts/task.prompt.md +0 -189
  219. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/integrations.yml.example +0 -464
  220. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/adr-template.md +0 -67
  221. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/analyze-template.md +0 -133
  222. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/clarify-template.md +0 -94
  223. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/design-template.md +0 -279
  224. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/feature-story-template.md +0 -164
  225. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/hld-template.md +0 -115
  226. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/lld-template.md +0 -181
  227. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/plan-template.md +0 -101
  228. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/qa-testcases-template.md +0 -198
  229. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/srd-template.md +0 -82
  230. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/tasks-template.md +0 -347
  231. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/token-usage-template.md +0 -46
  232. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/use-cases-template.md +0 -201
  233. sddflow-2.7.60/sdd/packs/sdd-universal/.specify/templates/validate-template.md +0 -131
  234. sddflow-2.7.60/sdd/utils/sdd_parser.py +0 -234
  235. {sddflow-2.7.60 → sddflow-2.7.77}/.gitignore +0 -0
  236. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/commands/__init__.py +0 -0
  237. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/commands/config.py +0 -0
  238. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/commands/cr.py +0 -0
  239. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/commands/init.py +0 -0
  240. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/commands/jira.py +0 -0
  241. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/commands/pr.py +0 -0
  242. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/address-review.md +0 -0
  243. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/analyze.md +0 -0
  244. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/ava.md +0 -0
  245. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/bug-assess.md +0 -0
  246. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/bug-fix.md +0 -0
  247. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/change.md +0 -0
  248. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/check-review.md +0 -0
  249. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/checklist.md +0 -0
  250. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/clarify.md +0 -0
  251. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/create-context.md +0 -0
  252. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/implement.md +0 -0
  253. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/jira-push.md +0 -0
  254. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/kai.md +0 -0
  255. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/leo.md +0 -0
  256. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/maya.md +0 -0
  257. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/morgan.md +0 -0
  258. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/orchestrate.md +0 -0
  259. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/plan-adr.md +0 -0
  260. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/plan-arch.md +0 -0
  261. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/plan-design.md +0 -0
  262. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/plan-hld.md +0 -0
  263. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/plan-lld.md +0 -0
  264. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/pre-review.md +0 -0
  265. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/quinn.md +0 -0
  266. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/release.md +0 -0
  267. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/rex.md +0 -0
  268. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/riley.md +0 -0
  269. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/specify-brd.md +0 -0
  270. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/specify-doc.md +0 -0
  271. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/specify-srd.md +0 -0
  272. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/specify-uc.md +0 -0
  273. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/specify.md +0 -0
  274. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/start.md +0 -0
  275. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/submit-review.md +0 -0
  276. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/task.md +0 -0
  277. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/taskstoissues.md +0 -0
  278. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.claude/commands/validate.md +0 -0
  279. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.cursor/rules/sdd-framework.mdc +0 -0
  280. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/copilot-instructions.md +0 -0
  281. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/instructions/api.instructions.md +0 -0
  282. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/instructions/domain.instructions.md +0 -0
  283. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/instructions/java.instructions.md +0 -0
  284. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/instructions/tests.instructions.md +0 -0
  285. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/address-review.prompt.md +0 -0
  286. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/analyze.prompt.md +0 -0
  287. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/ava.prompt.md +0 -0
  288. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/bug-assess.prompt.md +0 -0
  289. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/bug-fix.prompt.md +0 -0
  290. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/check-review.prompt.md +0 -0
  291. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/checklist.prompt.md +0 -0
  292. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/create-context.prompt.md +0 -0
  293. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/jira-push.prompt.md +0 -0
  294. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/kai.prompt.md +0 -0
  295. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/leo.prompt.md +0 -0
  296. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/maya.prompt.md +0 -0
  297. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/morgan.prompt.md +0 -0
  298. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/orchestrate.prompt.md +0 -0
  299. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/plan-adr.prompt.md +0 -0
  300. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/plan-arch.prompt.md +0 -0
  301. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/plan-hld.prompt.md +0 -0
  302. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/plan-lld.prompt.md +0 -0
  303. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/pre-review.prompt.md +0 -0
  304. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/quinn.prompt.md +0 -0
  305. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/rex.prompt.md +0 -0
  306. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/riley.prompt.md +0 -0
  307. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/specify-brd.prompt.md +0 -0
  308. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/specify-doc.prompt.md +0 -0
  309. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/specify-srd.prompt.md +0 -0
  310. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/specify-uc.prompt.md +0 -0
  311. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/submit-review.prompt.md +0 -0
  312. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/taskstoissues.prompt.md +0 -0
  313. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.github/prompts/validate.prompt.md +0 -0
  314. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.gitignore +0 -0
  315. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.gitlab-ci.yml +0 -0
  316. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/contexts/CONTEXT-GUIDE.md +0 -0
  317. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/memory/change-rules.md +0 -0
  318. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/memory/constitution.md +0 -0
  319. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/memory/roles.yml +0 -0
  320. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/memory/summary-rules.md +0 -0
  321. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/memory/token-pricing.yml.example +0 -0
  322. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/changeset-template.md +0 -0
  323. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/checklist-template.md +0 -0
  324. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/constitution-amendment-template.md +0 -0
  325. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/context-template.md +0 -0
  326. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/docker-config-template.md +0 -0
  327. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/jira-export-template.md +0 -0
  328. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/k8s-manifest-template.md +0 -0
  329. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.specify/templates/openapi-template.md +0 -0
  330. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.vscode/extensions.json +0 -0
  331. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/.windsurfrules +0 -0
  332. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/CHANGE-GUIDE.md +0 -0
  333. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/CLAUDE.local.md +0 -0
  334. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/FLOW-ROLES-GATES.md +0 -0
  335. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/IMPROVEMENT-BACKLOG.md +0 -0
  336. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/PROMPT-GUIDE.md +0 -0
  337. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/QUICKSTART.md +0 -0
  338. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/README.md +0 -0
  339. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/SDLC-COMPLETE-GUIDE.md +0 -0
  340. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/WHY-SDD.md +0 -0
  341. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/azure-pipelines.yml +0 -0
  342. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/bitbucket-pipelines.yml +0 -0
  343. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/docs/SUMMARY-GUIDE.md +0 -0
  344. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/setup.ps1 +0 -0
  345. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-backend-service/setup.sh +0 -0
  346. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/address-review.md +0 -0
  347. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/analyze.md +0 -0
  348. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/ava.md +0 -0
  349. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/bug-assess.md +0 -0
  350. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/bug-fix.md +0 -0
  351. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/change.md +0 -0
  352. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/check-review.md +0 -0
  353. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/checklist.md +0 -0
  354. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/clarify.md +0 -0
  355. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/create-context.md +0 -0
  356. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/implement.md +0 -0
  357. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/jira-push.md +0 -0
  358. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/kai.md +0 -0
  359. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/leo.md +0 -0
  360. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/maya.md +0 -0
  361. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/morgan.md +0 -0
  362. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/orchestrate.md +0 -0
  363. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-adr.md +0 -0
  364. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-arch.md +0 -0
  365. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-design.md +0 -0
  366. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-hld.md +0 -0
  367. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/plan-lld.md +0 -0
  368. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/pre-review.md +0 -0
  369. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/quinn.md +0 -0
  370. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/release.md +0 -0
  371. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/rex.md +0 -0
  372. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/riley.md +0 -0
  373. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/specify-brd.md +0 -0
  374. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/specify-doc.md +0 -0
  375. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/specify-srd.md +0 -0
  376. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/specify-uc.md +0 -0
  377. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/specify.md +0 -0
  378. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/start.md +0 -0
  379. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/submit-review.md +0 -0
  380. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/task.md +0 -0
  381. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/taskstoissues.md +0 -0
  382. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.claude/commands/validate.md +0 -0
  383. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.cursor/rules/sdd-framework.mdc +0 -0
  384. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/copilot-instructions.md +0 -0
  385. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/instructions/components.instructions.md +0 -0
  386. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/instructions/services.instructions.md +0 -0
  387. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/instructions/tests.instructions.md +0 -0
  388. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/address-review.prompt.md +0 -0
  389. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/analyze.prompt.md +0 -0
  390. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/ava.prompt.md +0 -0
  391. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/bug-assess.prompt.md +0 -0
  392. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/bug-fix.prompt.md +0 -0
  393. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/check-review.prompt.md +0 -0
  394. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/checklist.prompt.md +0 -0
  395. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/create-context.prompt.md +0 -0
  396. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/jira-push.prompt.md +0 -0
  397. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/kai.prompt.md +0 -0
  398. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/leo.prompt.md +0 -0
  399. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/maya.prompt.md +0 -0
  400. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/morgan.prompt.md +0 -0
  401. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/orchestrate.prompt.md +0 -0
  402. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-adr.prompt.md +0 -0
  403. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-arch.prompt.md +0 -0
  404. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-hld.prompt.md +0 -0
  405. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/plan-lld.prompt.md +0 -0
  406. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/pre-review.prompt.md +0 -0
  407. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/quinn.prompt.md +0 -0
  408. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/rex.prompt.md +0 -0
  409. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/riley.prompt.md +0 -0
  410. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/specify-brd.prompt.md +0 -0
  411. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/specify-doc.prompt.md +0 -0
  412. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/specify-srd.prompt.md +0 -0
  413. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/specify-uc.prompt.md +0 -0
  414. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/submit-review.prompt.md +0 -0
  415. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/taskstoissues.prompt.md +0 -0
  416. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.github/prompts/validate.prompt.md +0 -0
  417. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.gitignore +0 -0
  418. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.gitlab-ci.yml +0 -0
  419. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/contexts/CONTEXT-GUIDE.md +0 -0
  420. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/memory/change-rules.md +0 -0
  421. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/memory/constitution.md +0 -0
  422. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/memory/roles.yml +0 -0
  423. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/memory/summary-rules.md +0 -0
  424. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/memory/token-pricing.yml.example +0 -0
  425. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/changeset-template.md +0 -0
  426. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/checklist-template.md +0 -0
  427. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/constitution-amendment-template.md +0 -0
  428. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/context-template.md +0 -0
  429. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/docker-config-template.md +0 -0
  430. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.specify/templates/jira-export-template.md +0 -0
  431. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.vscode/extensions.json +0 -0
  432. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/.windsurfrules +0 -0
  433. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/CHANGE-GUIDE.md +0 -0
  434. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/CLAUDE.local.md +0 -0
  435. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/FLOW-ROLES-GATES.md +0 -0
  436. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/IMPROVEMENT-BACKLOG.md +0 -0
  437. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/PROMPT-GUIDE.md +0 -0
  438. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/QUICKSTART.md +0 -0
  439. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/README.md +0 -0
  440. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/SDLC-COMPLETE-GUIDE.md +0 -0
  441. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/WHY-SDD.md +0 -0
  442. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/azure-pipelines.yml +0 -0
  443. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/bitbucket-pipelines.yml +0 -0
  444. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/docs/SUMMARY-GUIDE.md +0 -0
  445. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/setup.ps1 +0 -0
  446. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-frontend-spa/setup.sh +0 -0
  447. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/address-review.md +0 -0
  448. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/analyze.md +0 -0
  449. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/ava.md +0 -0
  450. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/bug-assess.md +0 -0
  451. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/bug-fix.md +0 -0
  452. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/change.md +0 -0
  453. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/check-review.md +0 -0
  454. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/checklist.md +0 -0
  455. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/clarify.md +0 -0
  456. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/create-context.md +0 -0
  457. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/implement.md +0 -0
  458. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/jira-push.md +0 -0
  459. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/kai.md +0 -0
  460. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/leo.md +0 -0
  461. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/maya.md +0 -0
  462. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/morgan.md +0 -0
  463. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/orchestrate.md +0 -0
  464. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/plan-adr.md +0 -0
  465. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/plan-arch.md +0 -0
  466. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/plan-design.md +0 -0
  467. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/plan-hld.md +0 -0
  468. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/plan-lld.md +0 -0
  469. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/pre-review.md +0 -0
  470. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/quinn.md +0 -0
  471. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/release.md +0 -0
  472. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/rex.md +0 -0
  473. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/riley.md +0 -0
  474. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/specify-brd.md +0 -0
  475. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/specify-doc.md +0 -0
  476. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/specify-srd.md +0 -0
  477. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/specify-uc.md +0 -0
  478. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/specify.md +0 -0
  479. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/start.md +0 -0
  480. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/submit-review.md +0 -0
  481. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/task.md +0 -0
  482. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/taskstoissues.md +0 -0
  483. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.claude/commands/validate.md +0 -0
  484. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.cursor/rules/sdd-framework.mdc +0 -0
  485. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/copilot-instructions.md +0 -0
  486. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/instructions/backend-tests.instructions.md +0 -0
  487. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/instructions/components.instructions.md +0 -0
  488. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/instructions/domain.instructions.md +0 -0
  489. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/instructions/frontend-services.instructions.md +0 -0
  490. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/instructions/java.instructions.md +0 -0
  491. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/address-review.prompt.md +0 -0
  492. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/analyze.prompt.md +0 -0
  493. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/ava.prompt.md +0 -0
  494. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/bug-assess.prompt.md +0 -0
  495. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/bug-fix.prompt.md +0 -0
  496. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/check-review.prompt.md +0 -0
  497. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/checklist.prompt.md +0 -0
  498. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/create-context.prompt.md +0 -0
  499. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/jira-push.prompt.md +0 -0
  500. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/kai.prompt.md +0 -0
  501. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/leo.prompt.md +0 -0
  502. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/maya.prompt.md +0 -0
  503. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/morgan.prompt.md +0 -0
  504. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/orchestrate.prompt.md +0 -0
  505. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/plan-adr.prompt.md +0 -0
  506. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/plan-arch.prompt.md +0 -0
  507. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/plan-hld.prompt.md +0 -0
  508. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/plan-lld.prompt.md +0 -0
  509. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/pre-review.prompt.md +0 -0
  510. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/quinn.prompt.md +0 -0
  511. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/rex.prompt.md +0 -0
  512. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/riley.prompt.md +0 -0
  513. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/specify-brd.prompt.md +0 -0
  514. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/specify-doc.prompt.md +0 -0
  515. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/specify-srd.prompt.md +0 -0
  516. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/specify-uc.prompt.md +0 -0
  517. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/submit-review.prompt.md +0 -0
  518. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/taskstoissues.prompt.md +0 -0
  519. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.github/prompts/validate.prompt.md +0 -0
  520. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.gitignore +0 -0
  521. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.gitlab-ci.yml +0 -0
  522. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/contexts/CONTEXT-GUIDE.md +0 -0
  523. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/memory/change-rules.md +0 -0
  524. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/memory/constitution.md +0 -0
  525. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/memory/roles.yml +0 -0
  526. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/memory/summary-rules.md +0 -0
  527. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/memory/token-pricing.yml.example +0 -0
  528. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/changeset-template.md +0 -0
  529. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/checklist-template.md +0 -0
  530. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/constitution-amendment-template.md +0 -0
  531. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/context-template.md +0 -0
  532. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/docker-config-template.md +0 -0
  533. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/jira-export-template.md +0 -0
  534. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.specify/templates/openapi-template.md +0 -0
  535. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.vscode/extensions.json +0 -0
  536. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/.windsurfrules +0 -0
  537. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/CHANGE-GUIDE.md +0 -0
  538. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/CLAUDE.local.md +0 -0
  539. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/FLOW-ROLES-GATES.md +0 -0
  540. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/PROMPT-GUIDE.md +0 -0
  541. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/QUICKSTART.md +0 -0
  542. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/README.md +0 -0
  543. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/SDLC-COMPLETE-GUIDE.md +0 -0
  544. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/WHY-SDD.md +0 -0
  545. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/azure-pipelines.yml +0 -0
  546. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/bitbucket-pipelines.yml +0 -0
  547. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/docs/SUMMARY-GUIDE.md +0 -0
  548. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/setup.ps1 +0 -0
  549. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-fullstack/setup.sh +0 -0
  550. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.claude/commands/create-context.md +0 -0
  551. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.claude/commands/implement.md +0 -0
  552. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.claude/commands/specify.md +0 -0
  553. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.claude/commands/start.md +0 -0
  554. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.claude/commands/task.md +0 -0
  555. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.cursor/rules/sdd-framework.mdc +0 -0
  556. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.github/copilot-instructions.md +0 -0
  557. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.github/prompts/create-context.prompt.md +0 -0
  558. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.github/prompts/implement.prompt.md +0 -0
  559. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.github/prompts/specify.prompt.md +0 -0
  560. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.github/prompts/task.prompt.md +0 -0
  561. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.specify/contexts/CONTEXT-GUIDE.md +0 -0
  562. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.specify/manifest.yml +0 -0
  563. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.specify/memory/constitution.md +0 -0
  564. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.specify/templates/context-template.md +0 -0
  565. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.specify/templates/tasks-template.md +0 -0
  566. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/.windsurfrules +0 -0
  567. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/CLAUDE.md +0 -0
  568. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/QUICKSTART.md +0 -0
  569. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/README.md +0 -0
  570. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/WHY-SDD.md +0 -0
  571. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/setup.ps1 +0 -0
  572. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-micro/setup.sh +0 -0
  573. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/address-review.md +0 -0
  574. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/analyze.md +0 -0
  575. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/ava.md +0 -0
  576. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/bug-assess.md +0 -0
  577. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/bug-fix.md +0 -0
  578. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/change.md +0 -0
  579. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/check-review.md +0 -0
  580. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/checklist.md +0 -0
  581. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/clarify.md +0 -0
  582. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/create-context.md +0 -0
  583. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/implement.md +0 -0
  584. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/jira-push.md +0 -0
  585. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/kai.md +0 -0
  586. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/leo.md +0 -0
  587. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/maya.md +0 -0
  588. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/morgan.md +0 -0
  589. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/orchestrate.md +0 -0
  590. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/plan-adr.md +0 -0
  591. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/plan-arch.md +0 -0
  592. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/plan-design.md +0 -0
  593. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/plan-hld.md +0 -0
  594. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/plan-lld.md +0 -0
  595. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/pre-review.md +0 -0
  596. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/quinn.md +0 -0
  597. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/release.md +0 -0
  598. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/rex.md +0 -0
  599. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/riley.md +0 -0
  600. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/specify-brd.md +0 -0
  601. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/specify-doc.md +0 -0
  602. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/specify-srd.md +0 -0
  603. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/specify-uc.md +0 -0
  604. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/specify.md +0 -0
  605. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/start.md +0 -0
  606. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/submit-review.md +0 -0
  607. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/task.md +0 -0
  608. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/taskstoissues.md +0 -0
  609. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.claude/commands/validate.md +0 -0
  610. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.cursor/rules/sdd-framework.mdc +0 -0
  611. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/copilot-instructions.md +0 -0
  612. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/instructions/screens.instructions.md +0 -0
  613. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/instructions/services.instructions.md +0 -0
  614. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/instructions/tests.instructions.md +0 -0
  615. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/address-review.prompt.md +0 -0
  616. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/analyze.prompt.md +0 -0
  617. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/ava.prompt.md +0 -0
  618. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/bug-assess.prompt.md +0 -0
  619. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/bug-fix.prompt.md +0 -0
  620. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/check-review.prompt.md +0 -0
  621. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/checklist.prompt.md +0 -0
  622. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/create-context.prompt.md +0 -0
  623. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/jira-push.prompt.md +0 -0
  624. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/kai.prompt.md +0 -0
  625. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/leo.prompt.md +0 -0
  626. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/maya.prompt.md +0 -0
  627. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/morgan.prompt.md +0 -0
  628. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/orchestrate.prompt.md +0 -0
  629. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/plan-adr.prompt.md +0 -0
  630. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/plan-arch.prompt.md +0 -0
  631. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/plan-hld.prompt.md +0 -0
  632. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/plan-lld.prompt.md +0 -0
  633. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/pre-review.prompt.md +0 -0
  634. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/quinn.prompt.md +0 -0
  635. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/rex.prompt.md +0 -0
  636. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/riley.prompt.md +0 -0
  637. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/specify-brd.prompt.md +0 -0
  638. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/specify-doc.prompt.md +0 -0
  639. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/specify-srd.prompt.md +0 -0
  640. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/specify-uc.prompt.md +0 -0
  641. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/submit-review.prompt.md +0 -0
  642. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/taskstoissues.prompt.md +0 -0
  643. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.github/prompts/validate.prompt.md +0 -0
  644. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.gitignore +0 -0
  645. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.gitlab-ci.yml +0 -0
  646. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/contexts/CONTEXT-GUIDE.md +0 -0
  647. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/memory/change-rules.md +0 -0
  648. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/memory/constitution.md +0 -0
  649. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/memory/roles.yml +0 -0
  650. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/memory/summary-rules.md +0 -0
  651. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/memory/token-pricing.yml.example +0 -0
  652. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/changeset-template.md +0 -0
  653. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/checklist-template.md +0 -0
  654. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/constitution-amendment-template.md +0 -0
  655. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/context-template.md +0 -0
  656. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/docker-config-template.md +0 -0
  657. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.specify/templates/jira-export-template.md +0 -0
  658. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.vscode/extensions.json +0 -0
  659. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/.windsurfrules +0 -0
  660. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/CHANGE-GUIDE.md +0 -0
  661. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/CLAUDE.local.md +0 -0
  662. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/FLOW-ROLES-GATES.md +0 -0
  663. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/IMPROVEMENT-BACKLOG.md +0 -0
  664. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/PROMPT-GUIDE.md +0 -0
  665. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/QUICKSTART.md +0 -0
  666. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/README.md +0 -0
  667. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/SDLC-COMPLETE-GUIDE.md +0 -0
  668. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/WHY-SDD.md +0 -0
  669. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/azure-pipelines.yml +0 -0
  670. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/bitbucket-pipelines.yml +0 -0
  671. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/docs/SUMMARY-GUIDE.md +0 -0
  672. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/setup.ps1 +0 -0
  673. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-mobile/setup.sh +0 -0
  674. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/address-review.md +0 -0
  675. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/analyze.md +0 -0
  676. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/ava.md +0 -0
  677. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/bug-assess.md +0 -0
  678. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/bug-fix.md +0 -0
  679. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/change.md +0 -0
  680. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/check-review.md +0 -0
  681. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/checklist.md +0 -0
  682. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/clarify.md +0 -0
  683. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/create-context.md +0 -0
  684. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/implement.md +0 -0
  685. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/jira-push.md +0 -0
  686. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/kai.md +0 -0
  687. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/leo.md +0 -0
  688. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/maya.md +0 -0
  689. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/morgan.md +0 -0
  690. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/orchestrate.md +0 -0
  691. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/plan-adr.md +0 -0
  692. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/plan-arch.md +0 -0
  693. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/plan-design.md +0 -0
  694. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/plan-hld.md +0 -0
  695. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/plan-lld.md +0 -0
  696. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/pre-review.md +0 -0
  697. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/quinn.md +0 -0
  698. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/release.md +0 -0
  699. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/rex.md +0 -0
  700. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/riley.md +0 -0
  701. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/specify-brd.md +0 -0
  702. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/specify-doc.md +0 -0
  703. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/specify-srd.md +0 -0
  704. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/specify-uc.md +0 -0
  705. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/specify.md +0 -0
  706. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/start.md +0 -0
  707. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/submit-review.md +0 -0
  708. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/task.md +0 -0
  709. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/taskstoissues.md +0 -0
  710. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.claude/commands/validate.md +0 -0
  711. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.cursor/rules/sdd-framework.mdc +0 -0
  712. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/copilot-instructions.md +0 -0
  713. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/instructions/domain.instructions.md +0 -0
  714. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/instructions/entrypoints.instructions.md +0 -0
  715. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/instructions/tests.instructions.md +0 -0
  716. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/address-review.prompt.md +0 -0
  717. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/analyze.prompt.md +0 -0
  718. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/ava.prompt.md +0 -0
  719. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/bug-assess.prompt.md +0 -0
  720. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/bug-fix.prompt.md +0 -0
  721. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/check-review.prompt.md +0 -0
  722. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/checklist.prompt.md +0 -0
  723. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/create-context.prompt.md +0 -0
  724. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/jira-push.prompt.md +0 -0
  725. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/kai.prompt.md +0 -0
  726. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/leo.prompt.md +0 -0
  727. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/maya.prompt.md +0 -0
  728. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/morgan.prompt.md +0 -0
  729. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/orchestrate.prompt.md +0 -0
  730. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/plan-adr.prompt.md +0 -0
  731. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/plan-arch.prompt.md +0 -0
  732. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/plan-hld.prompt.md +0 -0
  733. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/plan-lld.prompt.md +0 -0
  734. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/pre-review.prompt.md +0 -0
  735. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/quinn.prompt.md +0 -0
  736. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/rex.prompt.md +0 -0
  737. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/riley.prompt.md +0 -0
  738. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/specify-brd.prompt.md +0 -0
  739. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/specify-doc.prompt.md +0 -0
  740. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/specify-srd.prompt.md +0 -0
  741. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/specify-uc.prompt.md +0 -0
  742. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/submit-review.prompt.md +0 -0
  743. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/taskstoissues.prompt.md +0 -0
  744. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.github/prompts/validate.prompt.md +0 -0
  745. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.gitignore +0 -0
  746. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.gitlab-ci.yml +0 -0
  747. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/contexts/CONTEXT-GUIDE.md +0 -0
  748. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/memory/change-rules.md +0 -0
  749. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/memory/constitution.md +0 -0
  750. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/memory/roles.yml +0 -0
  751. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/memory/summary-rules.md +0 -0
  752. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/memory/token-pricing.yml.example +0 -0
  753. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/changeset-template.md +0 -0
  754. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/checklist-template.md +0 -0
  755. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/constitution-amendment-template.md +0 -0
  756. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/context-template.md +0 -0
  757. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/docker-config-template.md +0 -0
  758. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/jira-export-template.md +0 -0
  759. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/k8s-manifest-template.md +0 -0
  760. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.specify/templates/openapi-template.md +0 -0
  761. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.vscode/extensions.json +0 -0
  762. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/.windsurfrules +0 -0
  763. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/CHANGE-GUIDE.md +0 -0
  764. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/CLAUDE.local.md +0 -0
  765. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/FLOW-ROLES-GATES.md +0 -0
  766. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/IMPROVEMENT-BACKLOG.md +0 -0
  767. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/PROMPT-GUIDE.md +0 -0
  768. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/QUICKSTART.md +0 -0
  769. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/README.md +0 -0
  770. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/SDLC-COMPLETE-GUIDE.md +0 -0
  771. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/WHY-SDD.md +0 -0
  772. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/azure-pipelines.yml +0 -0
  773. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/bitbucket-pipelines.yml +0 -0
  774. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/docs/SUMMARY-GUIDE.md +0 -0
  775. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/setup.ps1 +0 -0
  776. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/packs/sdd-universal/setup.sh +0 -0
  777. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/__init__.py +0 -0
  778. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/atlassian_auth.py +0 -0
  779. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/cf_to_md.py +0 -0
  780. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/confluence_client.py +0 -0
  781. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/dashboard_comments.py +0 -0
  782. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/detect.py +0 -0
  783. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/git_host.py +0 -0
  784. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/jira_client.py +0 -0
  785. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/manifest.py +0 -0
  786. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/mermaid_render.py +0 -0
  787. {sddflow-2.7.60 → sddflow-2.7.77}/sdd/utils/scaffold.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sddflow
3
- Version: 2.7.60
3
+ Version: 2.7.77
4
4
  Summary: SDD Framework CLI — initialize and upgrade Spec-Driven Development packs
5
5
  Project-URL: Homepage, https://github.com/sunil1983us/universalguide
6
6
  Project-URL: Repository, https://github.com/sunil1983us/universalguide
@@ -647,6 +647,49 @@ your own `~/.sdd/config.yml`.
647
647
 
648
648
  ---
649
649
 
650
+ ### `sdd token-log`
651
+
652
+ Logs **real** token usage for one command — reads Claude Code's own local
653
+ session transcript (`~/.claude/projects/{project}/{session-id}.jsonl`,
654
+ including any subagent transcripts spawned during the command) for actual
655
+ measured `input_tokens`/`output_tokens`/cache-token counts the Anthropic
656
+ API reported, not an estimate.
657
+
658
+ ```bash
659
+ sdd token-log --command specify-brd # log real usage for this command
660
+ sdd token-log --command specify-brd --feature auth
661
+ sdd token-log --command specify-brd --dry-run # print without writing
662
+ ```
663
+
664
+ Requires `.specify/memory/token-pricing.yml` to exist (same opt-in gate as
665
+ the estimate — see "Token Usage Logging" in `HOW-TO-USE.md`). Writes/creates
666
+ `.specify/features/{feature}/token-usage.md`, appending a row per model used
667
+ and updating its Running Totals table.
668
+
669
+ **This is Claude Code-only.** No other AI tool this framework supports
670
+ (GitHub Copilot, Cursor, Windsurf, copy-paste "any AI") has a local,
671
+ readable equivalent — the transcript path/format is undocumented,
672
+ reverse-engineered from observed file layout, not a published API, and
673
+ could change in a future Claude Code release. Exit codes tell a calling
674
+ prompt exactly what happened, so it can fall back to the character-count
675
+ estimate cleanly instead of surfacing a raw error:
676
+
677
+ | Exit code | Meaning |
678
+ |---|---|
679
+ | `0` | Logged successfully — or nothing new since the last logged row (also `0`, no row added) |
680
+ | `1` | Unexpected error (e.g. no feature name resolvable, or an existing `token-usage.md` doesn't match the expected table shape) |
681
+ | `2` | `token-pricing.yml` doesn't exist — logging is off entirely |
682
+ | `3` | No Claude Code session transcript found for this project — not running under Claude Code, or no session has touched it yet |
683
+
684
+ Each command's usage window is bounded by the previous logged row's
685
+ timestamp (or the whole current session, for the very first command
686
+ logged for a feature) — never re-sums usage already logged. A
687
+ pre-existing `token-usage.md` from before this column existed (7-column
688
+ rows, no `Source` column) is left untouched; new rows are only ever
689
+ appended, never used to rewrite old ones.
690
+
691
+ ---
692
+
650
693
  ### `sdd pr create`
651
694
 
652
695
  Create a git branch and a PR for a task, linked back to its Jira issue — on
@@ -612,6 +612,49 @@ your own `~/.sdd/config.yml`.
612
612
 
613
613
  ---
614
614
 
615
+ ### `sdd token-log`
616
+
617
+ Logs **real** token usage for one command — reads Claude Code's own local
618
+ session transcript (`~/.claude/projects/{project}/{session-id}.jsonl`,
619
+ including any subagent transcripts spawned during the command) for actual
620
+ measured `input_tokens`/`output_tokens`/cache-token counts the Anthropic
621
+ API reported, not an estimate.
622
+
623
+ ```bash
624
+ sdd token-log --command specify-brd # log real usage for this command
625
+ sdd token-log --command specify-brd --feature auth
626
+ sdd token-log --command specify-brd --dry-run # print without writing
627
+ ```
628
+
629
+ Requires `.specify/memory/token-pricing.yml` to exist (same opt-in gate as
630
+ the estimate — see "Token Usage Logging" in `HOW-TO-USE.md`). Writes/creates
631
+ `.specify/features/{feature}/token-usage.md`, appending a row per model used
632
+ and updating its Running Totals table.
633
+
634
+ **This is Claude Code-only.** No other AI tool this framework supports
635
+ (GitHub Copilot, Cursor, Windsurf, copy-paste "any AI") has a local,
636
+ readable equivalent — the transcript path/format is undocumented,
637
+ reverse-engineered from observed file layout, not a published API, and
638
+ could change in a future Claude Code release. Exit codes tell a calling
639
+ prompt exactly what happened, so it can fall back to the character-count
640
+ estimate cleanly instead of surfacing a raw error:
641
+
642
+ | Exit code | Meaning |
643
+ |---|---|
644
+ | `0` | Logged successfully — or nothing new since the last logged row (also `0`, no row added) |
645
+ | `1` | Unexpected error (e.g. no feature name resolvable, or an existing `token-usage.md` doesn't match the expected table shape) |
646
+ | `2` | `token-pricing.yml` doesn't exist — logging is off entirely |
647
+ | `3` | No Claude Code session transcript found for this project — not running under Claude Code, or no session has touched it yet |
648
+
649
+ Each command's usage window is bounded by the previous logged row's
650
+ timestamp (or the whole current session, for the very first command
651
+ logged for a feature) — never re-sums usage already logged. A
652
+ pre-existing `token-usage.md` from before this column existed (7-column
653
+ rows, no `Source` column) is left untouched; new rows are only ever
654
+ appended, never used to rewrite old ones.
655
+
656
+ ---
657
+
615
658
  ### `sdd pr create`
616
659
 
617
660
  Create a git branch and a PR for a task, linked back to its Jira issue — on
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "sddflow"
7
- version = "2.7.60"
7
+ version = "2.7.77"
8
8
  description = "SDD Framework CLI — initialize and upgrade Spec-Driven Development packs"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -0,0 +1 @@
1
+ __version__ = "2.7.77"
@@ -9,6 +9,7 @@ from sdd.commands.review import review_command
9
9
  from sdd.commands.cr import cr_command
10
10
  from sdd.commands.pr import pr_command
11
11
  from sdd.commands.dashboard import dashboard_command
12
+ from sdd.commands.token_log import token_log_command
12
13
 
13
14
 
14
15
  @click.group()
@@ -26,6 +27,7 @@ cli.add_command(review_command, name="review")
26
27
  cli.add_command(cr_command, name="cr")
27
28
  cli.add_command(pr_command, name="pr")
28
29
  cli.add_command(dashboard_command, name="dashboard")
30
+ cli.add_command(token_log_command, name="token-log")
29
31
 
30
32
 
31
33
  if __name__ == "__main__":
@@ -10,13 +10,14 @@ from sdd.utils.confluence_client import ConfluenceClient
10
10
  from sdd.utils.md_to_cf import md_to_storage
11
11
  from sdd.utils.cf_to_md import cf_to_md
12
12
  from sdd.utils.manifest import read_manifest
13
- from sdd.utils.validate import resolve_doc_path, LIVING_SERVICE_DOCS
13
+ from sdd.utils.validate import resolve_doc_path, LIVING_SERVICE_DOCS, PROJECT_SCOPED_DOCS
14
14
 
15
15
  console = Console()
16
16
 
17
17
  _DRAFTS_FILE = Path(".specify") / ".confluence-drafts.json"
18
18
 
19
19
  _CONTEXT_PAGE_TITLE = "{feature} — Context"
20
+ _CONSTITUTION_PAGE_TITLE = "{project} — Constitution"
20
21
 
21
22
 
22
23
  def _load_drafts() -> dict:
@@ -62,11 +63,11 @@ def resolve_feature_parent_id(client: ConfluenceClient, cf_cfg, project_name: st
62
63
 
63
64
  def resolve_doc_parent_id(client: ConfluenceClient, cf_cfg, project_name: str,
64
65
  feature_name: str, doc: str) -> str:
65
- """Like resolve_feature_parent_id(), except living/service-level docs
66
- (LIVING_SERVICE_DOCS) nest directly under the Project page instead of
67
- a Feature page, since they're shared across every feature, not
68
- per-feature."""
69
- if doc in LIVING_SERVICE_DOCS:
66
+ """Like resolve_feature_parent_id(), except living/service-level docs,
67
+ "constitution", and "runbook" (PROJECT_SCOPED_DOCS) nest directly
68
+ under the Project page instead of a Feature page, since they're
69
+ shared across every feature, not per-feature."""
70
+ if doc in PROJECT_SCOPED_DOCS:
70
71
  return _ensure_container_page(client, cf_cfg.space_key, project_name, cf_cfg.parent_page_id)
71
72
  return resolve_feature_parent_id(client, cf_cfg, project_name, feature_name)
72
73
 
@@ -84,17 +85,48 @@ def upload_diagram_attachments(client: ConfluenceClient, page_id: str,
84
85
  try:
85
86
  client.upload_attachment(page_id, filename, content, media_type)
86
87
  except Exception as e:
87
- console.print(f" [yellow]! {filename} — diagram attachment upload failed: {e}[/yellow]")
88
+ console.print(
89
+ f" [yellow]! {filename} — diagram attachment upload failed: "
90
+ f"{e}{_response_detail(e)}[/yellow]"
91
+ )
92
+
93
+
94
+ def _response_detail(e: Exception) -> str:
95
+ """Confluence's own error message (the actual reason for a 4xx) lives
96
+ in the HTTP response body -- requests.HTTPError's default str() only
97
+ includes the status code and URL, which is why a bare '400 Client
98
+ Error: Bad Request for url: ...' told the user nothing about WHY.
99
+ Pulls the real reason out of the JSON error body (Confluence returns
100
+ {"message": "..."} or {"data": {"errors": [...]}} depending on
101
+ version) so a failure is actually diagnosable, not just visible."""
102
+ response = getattr(e, "response", None)
103
+ if response is None:
104
+ return ""
105
+ try:
106
+ body = response.json()
107
+ except ValueError:
108
+ text = (response.text or "").strip()
109
+ return f" -- {text[:300]}" if text else ""
110
+ message = body.get("message")
111
+ if not message:
112
+ errors = body.get("data", {}).get("errors") if isinstance(body.get("data"), dict) else None
113
+ if errors:
114
+ message = "; ".join(
115
+ err.get("message", str(err)) if isinstance(err, dict) else str(err)
116
+ for err in errors
117
+ )
118
+ return f" -- {message}" if message else ""
88
119
 
89
120
 
90
121
  def _resolve_page_title(doc: str, project_name: str, feature: str,
91
122
  page_map: dict) -> str:
92
123
  """Build the Confluence page title for a doc key.
93
124
 
94
- Living/service-level docs (LIVING_SERVICE_DOCS) always resolve to ONE
95
- page for the whole project {feature} is stripped even if present in
96
- the template, since these documents are shared across every feature,
97
- never per-feature.
125
+ Living/service-level docs and "runbook" (PROJECT_SCOPED_DOCS, minus
126
+ "constitution" which is handled separately above) always resolve to
127
+ ONE page for the whole project {feature} is stripped even if
128
+ present in the template, since these documents are shared across
129
+ every feature, never per-feature.
98
130
 
99
131
  Per-feature docs substitute {feature} into the title ONLY if the
100
132
  user's own page_map template contains that placeholder. This is
@@ -108,9 +140,11 @@ def _resolve_page_title(doc: str, project_name: str, feature: str,
108
140
  """
109
141
  if doc == "context":
110
142
  return _CONTEXT_PAGE_TITLE.replace("{project}", project_name).replace("{feature}", feature)
143
+ if doc == "constitution":
144
+ return _CONSTITUTION_PAGE_TITLE.replace("{project}", project_name)
111
145
  template = page_map.get(doc, f"{{project}} — {doc.upper()}")
112
146
  title = template.replace("{project}", project_name)
113
- if doc in LIVING_SERVICE_DOCS:
147
+ if doc in LIVING_SERVICE_DOCS or doc == "runbook":
114
148
  title = title.replace(" — {feature}", "").replace("{feature}", "")
115
149
  return title.strip().rstrip("—").strip()
116
150
  return title.replace("{feature}", feature)
@@ -126,8 +160,11 @@ def confluence_command():
126
160
  @click.option("--feature", default=None, help="Feature name (default: from manifest.yml)")
127
161
  @click.option("--doc", default=None,
128
162
  help="Push a single doc only (e.g. hld, brd, arch, runbook)")
163
+ @click.option("--summary", is_flag=True, default=False,
164
+ help="Push each doc's .summary.md to its own page (title suffixed "
165
+ "' — Summary') instead of the full .md")
129
166
  @click.option("--dry-run", is_flag=True, help="Print page titles without calling the API")
130
- def confluence_push(profile, feature, doc, dry_run):
167
+ def confluence_push(profile, feature, doc, summary, dry_run):
131
168
  """Publish SDD documents to Confluence pages (create or update)."""
132
169
  console.print()
133
170
  console.print("[bold]━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[/bold]")
@@ -167,10 +204,14 @@ def confluence_push(profile, feature, doc, dry_run):
167
204
  except ValueError as e:
168
205
  console.print(f" [red]✗ {e}[/red]")
169
206
  raise SystemExit(1)
207
+ if summary:
208
+ md_path = md_path.parent / f"{md_path.stem}.summary.md"
170
209
  if not md_path.exists():
171
- console.print(f" [dim]·[/dim] {key}.md not found — skipped")
210
+ console.print(f" [dim]·[/dim] {md_path.name} not found — skipped")
172
211
  continue
173
212
  title = _resolve_page_title(key, project_name, feature_name, page_map)
213
+ if summary:
214
+ title = f"{title} — Summary"
174
215
  available.append((key, md_path, title))
175
216
 
176
217
  if not available: