@autocode-cli/autocode 0.1.15 → 0.1.18

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 (212) hide show
  1. package/README.md +38 -38
  2. package/dist/cli/commands/comment.d.ts +1 -1
  3. package/dist/cli/commands/comment.js +11 -11
  4. package/dist/cli/commands/comment.js.map +1 -1
  5. package/dist/cli/commands/init.js +1 -1
  6. package/dist/cli/commands/init.js.map +1 -1
  7. package/dist/cli/commands/list.d.ts +1 -1
  8. package/dist/cli/commands/list.d.ts.map +1 -1
  9. package/dist/cli/commands/list.js +65 -22
  10. package/dist/cli/commands/list.js.map +1 -1
  11. package/dist/cli/commands/move.d.ts +1 -1
  12. package/dist/cli/commands/move.js +12 -12
  13. package/dist/cli/commands/move.js.map +1 -1
  14. package/dist/cli/commands/new.d.ts +1 -1
  15. package/dist/cli/commands/new.d.ts.map +1 -1
  16. package/dist/cli/commands/new.js +26 -13
  17. package/dist/cli/commands/new.js.map +1 -1
  18. package/dist/cli/commands/next.d.ts +1 -1
  19. package/dist/cli/commands/next.js +15 -15
  20. package/dist/cli/commands/next.js.map +1 -1
  21. package/dist/cli/commands/parent.d.ts +9 -0
  22. package/dist/cli/commands/parent.d.ts.map +1 -0
  23. package/dist/cli/commands/parent.js +94 -0
  24. package/dist/cli/commands/parent.js.map +1 -0
  25. package/dist/cli/commands/serve.js +8 -8
  26. package/dist/cli/commands/serve.js.map +1 -1
  27. package/dist/cli/commands/show.d.ts +1 -1
  28. package/dist/cli/commands/show.d.ts.map +1 -1
  29. package/dist/cli/commands/show.js +51 -31
  30. package/dist/cli/commands/show.js.map +1 -1
  31. package/dist/cli/commands/stats.js +2 -2
  32. package/dist/cli/commands/stats.js.map +1 -1
  33. package/dist/cli/commands/sync.js +3 -3
  34. package/dist/cli/commands/sync.js.map +1 -1
  35. package/dist/cli/parser.d.ts.map +1 -1
  36. package/dist/cli/parser.js +5 -3
  37. package/dist/cli/parser.js.map +1 -1
  38. package/dist/core/column.js +2 -2
  39. package/dist/core/column.js.map +1 -1
  40. package/dist/core/hierarchy.d.ts +97 -0
  41. package/dist/core/hierarchy.d.ts.map +1 -0
  42. package/dist/core/hierarchy.js +274 -0
  43. package/dist/core/hierarchy.js.map +1 -0
  44. package/dist/core/issue.d.ts +62 -0
  45. package/dist/core/issue.d.ts.map +1 -0
  46. package/dist/core/issue.js +247 -0
  47. package/dist/core/issue.js.map +1 -0
  48. package/dist/core/sync.d.ts +9 -9
  49. package/dist/core/sync.d.ts.map +1 -1
  50. package/dist/core/sync.js +61 -58
  51. package/dist/core/sync.js.map +1 -1
  52. package/dist/core/workflow.d.ts +22 -20
  53. package/dist/core/workflow.d.ts.map +1 -1
  54. package/dist/core/workflow.js +68 -51
  55. package/dist/core/workflow.js.map +1 -1
  56. package/dist/index.d.ts +1 -1
  57. package/dist/index.js +1 -1
  58. package/dist/server/api-autocomplete.test.d.ts +6 -0
  59. package/dist/server/api-autocomplete.test.d.ts.map +1 -0
  60. package/dist/server/api-autocomplete.test.js +249 -0
  61. package/dist/server/api-autocomplete.test.js.map +1 -0
  62. package/dist/server/api.d.ts.map +1 -1
  63. package/dist/server/api.js +216 -106
  64. package/dist/server/api.js.map +1 -1
  65. package/dist/server/dashboard/pages/column-prompt.d.ts +1 -1
  66. package/dist/server/dashboard/pages/column-prompt.d.ts.map +1 -1
  67. package/dist/server/dashboard/pages/column-prompt.js +11 -11
  68. package/dist/server/dashboard/pages/column-prompt.js.map +1 -1
  69. package/dist/server/dashboard/pages/column-terminal.d.ts +1 -1
  70. package/dist/server/dashboard/pages/column-terminal.d.ts.map +1 -1
  71. package/dist/server/dashboard/pages/column-terminal.js +14 -14
  72. package/dist/server/dashboard/pages/column-terminal.js.map +1 -1
  73. package/dist/server/dashboard/pages/index.d.ts +3 -1
  74. package/dist/server/dashboard/pages/index.d.ts.map +1 -1
  75. package/dist/server/dashboard/pages/index.js +3 -1
  76. package/dist/server/dashboard/pages/index.js.map +1 -1
  77. package/dist/server/dashboard/pages/issue-graph.d.ts +9 -0
  78. package/dist/server/dashboard/pages/issue-graph.d.ts.map +1 -0
  79. package/dist/server/dashboard/pages/issue-graph.js +581 -0
  80. package/dist/server/dashboard/pages/issue-graph.js.map +1 -0
  81. package/dist/server/dashboard/pages/issue-view.d.ts +8 -0
  82. package/dist/server/dashboard/pages/issue-view.d.ts.map +1 -0
  83. package/dist/server/dashboard/pages/{ticket-view.js → issue-view.js} +128 -128
  84. package/dist/server/dashboard/pages/issue-view.js.map +1 -0
  85. package/dist/server/dashboard/pages/main-dashboard.d.ts.map +1 -1
  86. package/dist/server/dashboard/pages/main-dashboard.js +23 -22
  87. package/dist/server/dashboard/pages/main-dashboard.js.map +1 -1
  88. package/dist/server/dashboard/pages/new-issue.d.ts +8 -0
  89. package/dist/server/dashboard/pages/new-issue.d.ts.map +1 -0
  90. package/dist/server/dashboard/pages/new-issue.js +648 -0
  91. package/dist/server/dashboard/pages/new-issue.js.map +1 -0
  92. package/dist/server/dashboard/pages/new-issue.test.d.ts +6 -0
  93. package/dist/server/dashboard/pages/new-issue.test.d.ts.map +1 -0
  94. package/dist/server/dashboard/pages/new-issue.test.js +349 -0
  95. package/dist/server/dashboard/pages/new-issue.test.js.map +1 -0
  96. package/dist/server/dashboard/pages/pipeline-configurator.js +1 -1
  97. package/dist/server/dashboard/pages/shared.d.ts +2 -2
  98. package/dist/server/dashboard/pages/shared.d.ts.map +1 -1
  99. package/dist/server/dashboard/pages/shared.js +5 -5
  100. package/dist/server/dashboard/pages/shared.js.map +1 -1
  101. package/dist/server/dashboard/pages/stats-page.js +11 -11
  102. package/dist/server/dashboard/scripts/index.js +134 -134
  103. package/dist/server/dashboard/styles/base.js +2 -2
  104. package/dist/server/dashboard/styles/board.d.ts +1 -1
  105. package/dist/server/dashboard/styles/board.js +10 -10
  106. package/dist/server/dashboard.d.ts +1 -1
  107. package/dist/server/dashboard.d.ts.map +1 -1
  108. package/dist/server/dashboard.js +1 -1
  109. package/dist/server/dashboard.js.map +1 -1
  110. package/dist/server/index.d.ts.map +1 -1
  111. package/dist/server/index.js +40 -24
  112. package/dist/server/index.js.map +1 -1
  113. package/dist/server/websocket.d.ts +6 -6
  114. package/dist/server/websocket.d.ts.map +1 -1
  115. package/dist/server/websocket.js +10 -10
  116. package/dist/server/websocket.js.map +1 -1
  117. package/dist/services/claude.d.ts +13 -13
  118. package/dist/services/claude.d.ts.map +1 -1
  119. package/dist/services/claude.js +98 -98
  120. package/dist/services/claude.js.map +1 -1
  121. package/dist/services/issue-io.d.ts +81 -0
  122. package/dist/services/issue-io.d.ts.map +1 -0
  123. package/dist/services/{ticket-io.js → issue-io.js} +54 -53
  124. package/dist/services/issue-io.js.map +1 -0
  125. package/dist/services/stats.d.ts +1 -1
  126. package/dist/services/stats.d.ts.map +1 -1
  127. package/dist/types/index.d.ts +6 -4
  128. package/dist/types/index.d.ts.map +1 -1
  129. package/dist/utils/fs.d.ts +2 -2
  130. package/dist/utils/fs.d.ts.map +1 -1
  131. package/dist/utils/fs.js +2 -2
  132. package/dist/utils/fs.js.map +1 -1
  133. package/package.json +3 -3
  134. package/templates/catalog.yaml +2 -2
  135. package/templates/prompts/api-endpoints-test.en.md +2 -2
  136. package/templates/prompts/api-endpoints-test.fr.md +2 -2
  137. package/templates/prompts/backlog.en.md +6 -6
  138. package/templates/prompts/backlog.fr.md +1 -1
  139. package/templates/prompts/changelog.en.md +6 -6
  140. package/templates/prompts/changelog.fr.md +3 -3
  141. package/templates/prompts/dashboard-responsive.en.md +1 -1
  142. package/templates/prompts/deploy-prod.en.md +3 -3
  143. package/templates/prompts/deploy-prod.fr.md +3 -3
  144. package/templates/prompts/deploy-staging.en.md +3 -3
  145. package/templates/prompts/deploy-staging.fr.md +3 -3
  146. package/templates/prompts/design.en.md +5 -5
  147. package/templates/prompts/design.fr.md +3 -3
  148. package/templates/prompts/dev.en.md +4 -4
  149. package/templates/prompts/dev.fr.md +3 -3
  150. package/templates/prompts/done.en.md +5 -5
  151. package/templates/prompts/done.fr.md +2 -2
  152. package/templates/prompts/error-handling-review.en.md +1 -1
  153. package/templates/prompts/error-handling-review.fr.md +1 -1
  154. package/templates/prompts/file-watcher-test.en.md +4 -4
  155. package/templates/prompts/file-watcher-test.fr.md +1 -1
  156. package/templates/prompts/git-commit.en.md +5 -5
  157. package/templates/prompts/git-commit.fr.md +3 -3
  158. package/templates/prompts/git-push.en.md +3 -3
  159. package/templates/prompts/git-push.fr.md +3 -3
  160. package/templates/prompts/git-tag.en.md +3 -3
  161. package/templates/prompts/git-tag.fr.md +3 -3
  162. package/templates/prompts/in-progress.en.md +6 -6
  163. package/templates/prompts/in-progress.fr.md +3 -3
  164. package/templates/prompts/qualification.en.md +8 -8
  165. package/templates/prompts/qualification.fr.md +3 -3
  166. package/templates/prompts/retest-cypress.en.md +3 -3
  167. package/templates/prompts/retest-cypress.fr.md +3 -3
  168. package/templates/prompts/retest-playwright.en.md +4 -4
  169. package/templates/prompts/retest-playwright.fr.md +3 -3
  170. package/templates/prompts/retest.en.md +4 -4
  171. package/templates/prompts/retest.fr.md +3 -3
  172. package/templates/prompts/review-best-practices.en.md +3 -3
  173. package/templates/prompts/review-best-practices.fr.md +3 -3
  174. package/templates/prompts/review-code.en.md +4 -4
  175. package/templates/prompts/review-code.fr.md +3 -3
  176. package/templates/prompts/review-consistency.en.md +3 -3
  177. package/templates/prompts/review-consistency.fr.md +3 -3
  178. package/templates/prompts/review-no-duplication.en.md +3 -3
  179. package/templates/prompts/review-no-duplication.fr.md +3 -3
  180. package/templates/prompts/review-security.en.md +4 -4
  181. package/templates/prompts/review-security.fr.md +3 -3
  182. package/templates/prompts/specification.en.md +5 -5
  183. package/templates/prompts/specification.fr.md +3 -3
  184. package/templates/prompts/splitter.en.md +13 -13
  185. package/templates/prompts/splitter.fr.md +3 -3
  186. package/templates/prompts/template-validation.en.md +1 -1
  187. package/templates/prompts/template-validation.fr.md +1 -1
  188. package/templates/prompts/testing-coverage.en.md +1 -1
  189. package/templates/prompts/testing-coverage.fr.md +1 -1
  190. package/templates/prompts/testing-cypress.en.md +4 -4
  191. package/templates/prompts/testing-cypress.fr.md +3 -3
  192. package/templates/prompts/testing-integration.en.md +4 -4
  193. package/templates/prompts/testing-integration.fr.md +3 -3
  194. package/templates/prompts/testing-playwright.en.md +4 -4
  195. package/templates/prompts/testing-playwright.fr.md +3 -3
  196. package/templates/prompts/testing-unit.en.md +4 -4
  197. package/templates/prompts/testing-unit.fr.md +3 -3
  198. package/templates/prompts/update-docs.en.md +3 -3
  199. package/templates/prompts/update-docs.fr.md +3 -3
  200. package/templates/prompts/validate-staging.en.md +3 -3
  201. package/templates/prompts/validate-staging.fr.md +3 -3
  202. package/templates/prompts/websocket-test.en.md +1 -1
  203. package/dist/core/ticket.d.ts +0 -50
  204. package/dist/core/ticket.d.ts.map +0 -1
  205. package/dist/core/ticket.js +0 -224
  206. package/dist/core/ticket.js.map +0 -1
  207. package/dist/server/dashboard/pages/ticket-view.d.ts +0 -8
  208. package/dist/server/dashboard/pages/ticket-view.d.ts.map +0 -1
  209. package/dist/server/dashboard/pages/ticket-view.js.map +0 -1
  210. package/dist/services/ticket-io.d.ts +0 -80
  211. package/dist/services/ticket-io.d.ts.map +0 -1
  212. package/dist/services/ticket-io.js.map +0 -1
@@ -16,10 +16,10 @@ Rediger les specifications techniques detaillees pour le ticket. Definir clairem
16
16
  - Legerement hors scope (amelioration mineure, cas limite) : `autocode new "<titre>" "<description>" --priority P2 --labels "<labels>" --acceptance "<criteres>" --semver patch --column ready`
17
17
  - Tres hors scope (nouvelle feature, changement majeur) : `autocode new "<titre>" "<description>" --priority P2 --labels "<labels>" --acceptance "<criteres>" --semver patch --column backlog`
18
18
  - Dans le scope : traiter directement dans le ticket actuel
19
- 8. Documenter : `autocode comment <ticket-key> "Specification terminee : <approche technique>"`
20
- 9. Avancer : `autocode next <ticket-key>`
19
+ 8. Documenter : `autocode comment <issue-key> "Specification terminee : <approche technique>"`
20
+ 9. Avancer : `autocode next <issue-key>`
21
21
 
22
- > Ou retour : `autocode move <ticket-key> <target-column-slug>`
22
+ > Ou retour : `autocode move <issue-key> <target-column-slug>`
23
23
 
24
24
  ## Criteres de Validation
25
25
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  ## Role
4
4
 
5
- Break down large requirements into smaller, focused tickets **when needed** to limit responsibility and improve traceability. Create atomic tasks that can be independently implemented and verified.
5
+ Break down large requirements into smaller, focused issues **when needed** to limit responsibility and improve traceability. Create atomic tasks that can be independently implemented and verified.
6
6
 
7
7
  ## When to Split
8
8
 
@@ -16,23 +16,23 @@ If the task is small enough to be completed in one go, proceed directly without
16
16
 
17
17
  1. Analyze the requirement to identify distinct functional components
18
18
  2. Identify natural boundaries between features, layers, or responsibilities
19
- 3. Define clear acceptance criteria for each sub-ticket
20
- 4. Ensure each split ticket is independently testable and deployable
21
- 5. Create sub-tickets: `autocode new "<title>" "<description>" --priority P2 --labels "<labels>" --acceptance "<criteria>" --semver patch --column backlog`
22
- 6. Verify no functionality has been forgotten or duplicated across tickets
23
- 7. Create an integration ticket that references all sub-tickets to validate cohesion
24
- 8. Document: `autocode comment <ticket-key> "[summary]"`
25
- 9. Advance: `autocode next <ticket-key>`
19
+ 3. Define clear acceptance criteria for each sub-issue
20
+ 4. Ensure each split issue is independently testable and deployable
21
+ 5. Create sub-issues: `autocode new "<title>" "<description>" --priority P2 --labels "<labels>" --acceptance "<criteria>" --semver patch --column backlog`
22
+ 6. Verify no functionality has been forgotten or duplicated across issues
23
+ 7. Create an integration issue that references all sub-issues to validate cohesion
24
+ 8. Document: `autocode comment <issue-key> "[summary]"`
25
+ 9. Advance: `autocode next <issue-key>`
26
26
 
27
- > Or return: `autocode move <ticket-key> <target-column-slug>`
27
+ > Or return: `autocode move <issue-key> <target-column-slug>`
28
28
 
29
29
  ## Validation Criteria
30
30
 
31
- - [ ] All sub-tickets are atomic and independently implementable
31
+ - [ ] All sub-issues are atomic and independently implementable
32
32
  - [ ] No functionality from the original requirement has been forgotten
33
- - [ ] An integration ticket exists to verify all parts work together cohesively
34
- - [ ] Each sub-ticket has clear acceptance criteria
33
+ - [ ] An integration issue exists to verify all parts work together cohesively
34
+ - [ ] Each sub-issue has clear acceptance criteria
35
35
 
36
36
  ## Notes
37
37
 
38
- Smaller tickets reduce cognitive load and merge conflicts. Always create an integration ticket to ensure the split parts form a coherent whole.
38
+ Smaller issues reduce cognitive load and merge conflicts. Always create an integration issue to ensure the split parts form a coherent whole.
@@ -21,10 +21,10 @@ Si la tâche est suffisamment petite pour être complétée en une fois, procéd
21
21
  5. Créer les sous-tickets : `autocode new "<title>" "<description>" --priority P2 --labels "<labels>" --acceptance "<criteria>" --semver patch --column backlog`
22
22
  6. Vérifier qu'aucune fonctionnalité n'a été oubliée ou dupliquée entre les tickets
23
23
  7. Créer un ticket d'intégration qui référence tous les sous-tickets pour valider la cohésion
24
- 8. Documenter : `autocode comment <ticket-key> "[résumé]"`
25
- 9. Avancer : `autocode next <ticket-key>`
24
+ 8. Documenter : `autocode comment <issue-key> "[résumé]"`
25
+ 9. Avancer : `autocode next <issue-key>`
26
26
 
27
- > Ou retourner : `autocode move <ticket-key> <target-column-slug>`
27
+ > Ou retourner : `autocode move <issue-key> <target-column-slug>`
28
28
 
29
29
  ## Critères de Validation
30
30
 
@@ -11,7 +11,7 @@ Verify project templates are correct and functional.
11
11
  - Test generation with `autocode init`
12
12
  3. Verify generated structure:
13
13
  - .autocode/
14
- - .autocode/tickets/
14
+ - .autocode/issues/
15
15
  - .autocode/config.yml
16
16
  - pipeline.yml
17
17
  4. Test different configurations
@@ -11,7 +11,7 @@ Vérifier que les templates de projet sont corrects et fonctionnels.
11
11
  - Tester la génération avec `autocode init`
12
12
  3. Vérifier la structure générée:
13
13
  - .autocode/
14
- - .autocode/tickets/
14
+ - .autocode/issues/
15
15
  - .autocode/config.yml
16
16
  - pipeline.yml
17
17
  4. Tester différentes configurations
@@ -8,7 +8,7 @@ Measure and validate code coverage by unit tests.
8
8
  2. Analyze generated coverage report
9
9
  3. Identify files with insufficient coverage (<80%)
10
10
  4. Check coverage of critical modules:
11
- - src/core/ (ticket.ts, column.ts, workflow.ts)
11
+ - src/core/ (issue.ts, column.ts, workflow.ts)
12
12
  - src/server/api.ts
13
13
  - src/services/
14
14
  5. Add tests for uncovered areas if needed
@@ -8,7 +8,7 @@ Mesurer et valider la couverture de code par les tests unitaires.
8
8
  2. Analyser le rapport de couverture généré
9
9
  3. Identifier les fichiers avec couverture insuffisante (<80%)
10
10
  4. Vérifier la couverture des modules critiques:
11
- - src/core/ (ticket.ts, column.ts, workflow.ts)
11
+ - src/core/ (issue.ts, column.ts, workflow.ts)
12
12
  - src/server/api.ts
13
13
  - src/services/
14
14
  5. Ajouter des tests pour les zones non couvertes si nécessaire
@@ -12,11 +12,11 @@ Write AND execute E2E automated tests to prevent regressions.
12
12
  4. Describe tests clearly (describe/it)
13
13
  5. Execute tests: npx cypress run
14
14
  6. If failures: fix tests or code
15
- 7. Do not write tests for code outside the ticket scope
16
- 8. Document: `autocode comment <ticket-key> "Cypress tests OK"`
17
- 9. Advance: `autocode next <ticket-key>`
15
+ 7. Do not write tests for code outside the issue scope
16
+ 8. Document: `autocode comment <issue-key> "Cypress tests OK"`
17
+ 9. Advance: `autocode next <issue-key>`
18
18
 
19
- > Or return: `autocode move <ticket-key> <target-column-slug>`
19
+ > Or return: `autocode move <issue-key> <target-column-slug>`
20
20
 
21
21
  ## Validation Criteria
22
22
 
@@ -13,10 +13,10 @@ Rediger ET executer des tests E2E automatises pour prevenir les regressions.
13
13
  5. Executer les tests : npx cypress run
14
14
  6. Si echecs : corriger les tests ou le code
15
15
  7. Ne pas ecrire de tests pour du code hors scope du ticket
16
- 8. Documenter : `autocode comment <ticket-key> "Tests Cypress OK"`
17
- 9. Avancer : `autocode next <ticket-key>`
16
+ 8. Documenter : `autocode comment <issue-key> "Tests Cypress OK"`
17
+ 9. Avancer : `autocode next <issue-key>`
18
18
 
19
- > Ou retour : `autocode move <ticket-key> <target-column-slug>`
19
+ > Ou retour : `autocode move <issue-key> <target-column-slug>`
20
20
 
21
21
  ## Criteres de Validation
22
22
 
@@ -13,11 +13,11 @@ Run integration tests to verify components work correctly together. Ensure syste
13
13
  5. Test database operations
14
14
  6. Test external service connections
15
15
  7. Fix any failing tests
16
- 8. Do not write tests for code outside the ticket scope
17
- 9. Document: `autocode comment <ticket-key> "Integration tests passed"`
18
- 10. Advance: `autocode next <ticket-key>`
16
+ 8. Do not write tests for code outside the issue scope
17
+ 9. Document: `autocode comment <issue-key> "Integration tests passed"`
18
+ 10. Advance: `autocode next <issue-key>`
19
19
 
20
- > Or return: `autocode move <ticket-key> <target-column-slug>`
20
+ > Or return: `autocode move <issue-key> <target-column-slug>`
21
21
 
22
22
  ## Validation Criteria
23
23
 
@@ -14,10 +14,10 @@ Executer les tests d'integration pour verifier que les composants fonctionnent c
14
14
  6. Tester les connexions aux services externes
15
15
  7. Corriger les tests en echec
16
16
  8. Ne pas ecrire de tests pour du code hors scope du ticket
17
- 9. Documenter : `autocode comment <ticket-key> "Tests d'integration OK"`
18
- 10. Avancer : `autocode next <ticket-key>`
17
+ 9. Documenter : `autocode comment <issue-key> "Tests d'integration OK"`
18
+ 10. Avancer : `autocode next <issue-key>`
19
19
 
20
- > Ou retour : `autocode move <ticket-key> <target-column-slug>`
20
+ > Ou retour : `autocode move <issue-key> <target-column-slug>`
21
21
 
22
22
  ## Criteres de Validation
23
23
 
@@ -12,11 +12,11 @@ Live functional testing with Playwright. Manually verify feature works by naviga
12
12
  4. Test edge cases
13
13
  5. Verify error handling
14
14
  6. Capture screenshots if needed
15
- 7. Do not test functionality outside the ticket scope
16
- 8. Document: `autocode comment <ticket-key> "Playwright tests OK"`
17
- 9. Advance: `autocode next <ticket-key>`
15
+ 7. Do not test functionality outside the issue scope
16
+ 8. Document: `autocode comment <issue-key> "Playwright tests OK"`
17
+ 9. Advance: `autocode next <issue-key>`
18
18
 
19
- > Or return: `autocode move <ticket-key> <target-column-slug>`
19
+ > Or return: `autocode move <issue-key> <target-column-slug>`
20
20
 
21
21
  ## Validation Criteria
22
22
 
@@ -13,10 +13,10 @@ Test fonctionnel live avec Playwright. Verifier manuellement que la feature fonc
13
13
  5. Verifier la gestion d'erreurs
14
14
  6. Capturer des screenshots si necessaire
15
15
  7. Ne pas tester de fonctionnalites hors scope du ticket
16
- 8. Documenter : `autocode comment <ticket-key> "Tests Playwright OK"`
17
- 9. Avancer : `autocode next <ticket-key>`
16
+ 8. Documenter : `autocode comment <issue-key> "Tests Playwright OK"`
17
+ 9. Avancer : `autocode next <issue-key>`
18
18
 
19
- > Ou retour : `autocode move <ticket-key> <target-column-slug>`
19
+ > Ou retour : `autocode move <issue-key> <target-column-slug>`
20
20
 
21
21
  ## Criteres de Validation
22
22
 
@@ -13,11 +13,11 @@ Write and run unit tests for the implemented feature. Ensure code coverage and r
13
13
  5. Run all unit tests: `npm test` or equivalent
14
14
  6. Fix any failing tests
15
15
  7. Verify coverage meets project standards
16
- 8. Do not write tests for code outside the ticket scope
17
- 9. Document: `autocode comment <ticket-key> "Unit tests passed: <coverage>%"`
18
- 10. Advance: `autocode next <ticket-key>`
16
+ 8. Do not write tests for code outside the issue scope
17
+ 9. Document: `autocode comment <issue-key> "Unit tests passed: <coverage>%"`
18
+ 10. Advance: `autocode next <issue-key>`
19
19
 
20
- > Or return: `autocode move <ticket-key> <target-column-slug>`
20
+ > Or return: `autocode move <issue-key> <target-column-slug>`
21
21
 
22
22
  ## Validation Criteria
23
23
 
@@ -14,10 +14,10 @@ Ecrire et executer les tests unitaires pour la fonctionnalite implementee. Assur
14
14
  6. Corriger les tests en echec
15
15
  7. Verifier que la couverture respecte les standards du projet
16
16
  8. Ne pas ecrire de tests pour du code hors scope du ticket
17
- 9. Documenter : `autocode comment <ticket-key> "Tests unitaires OK : <couverture>%"`
18
- 10. Avancer : `autocode next <ticket-key>`
17
+ 9. Documenter : `autocode comment <issue-key> "Tests unitaires OK : <couverture>%"`
18
+ 10. Avancer : `autocode next <issue-key>`
19
19
 
20
- > Ou retour : `autocode move <ticket-key> <target-column-slug>`
20
+ > Ou retour : `autocode move <issue-key> <target-column-slug>`
21
21
 
22
22
  ## Criteres de Validation
23
23
 
@@ -11,10 +11,10 @@ Document changes for future developers and users.
11
11
  3. Document new features
12
12
  4. Update existing guides if impacted
13
13
  5. Verify doc consistency
14
- 6. Document: `autocode comment <ticket-key> "Documentation updated"`
15
- 7. Advance: `autocode next <ticket-key>`
14
+ 6. Document: `autocode comment <issue-key> "Documentation updated"`
15
+ 7. Advance: `autocode next <issue-key>`
16
16
 
17
- > Or return: `autocode move <ticket-key> <target-column-slug>`
17
+ > Or return: `autocode move <issue-key> <target-column-slug>`
18
18
 
19
19
  ## Validation Criteria
20
20
 
@@ -11,10 +11,10 @@ Documenter les changements pour les futurs developpeurs et utilisateurs.
11
11
  3. Documenter les nouvelles features
12
12
  4. Mettre a jour les guides existants si impactes
13
13
  5. Verifier la coherence de la doc
14
- 6. Documenter : `autocode comment <ticket-key> "Documentation mise a jour"`
15
- 7. Avancer : `autocode next <ticket-key>`
14
+ 6. Documenter : `autocode comment <issue-key> "Documentation mise a jour"`
15
+ 7. Avancer : `autocode next <issue-key>`
16
16
 
17
- > Ou retour : `autocode move <ticket-key> <target-column-slug>`
17
+ > Ou retour : `autocode move <issue-key> <target-column-slug>`
18
18
 
19
19
  ## Criteres de Validation
20
20
 
@@ -12,10 +12,10 @@ Final validation: verify everything works in staging AND git repo is clean.
12
12
  4. Verify visually everything is OK
13
13
  5. Capture proof (screenshot)
14
14
  6. Confirm feature works
15
- 7. Document: `autocode comment <ticket-key> "Staging validation OK"`
16
- 8. Advance: `autocode next <ticket-key>`
15
+ 7. Document: `autocode comment <issue-key> "Staging validation OK"`
16
+ 8. Advance: `autocode next <issue-key>`
17
17
 
18
- > Or return: `autocode move <ticket-key> <target-column-slug>`
18
+ > Or return: `autocode move <issue-key> <target-column-slug>`
19
19
 
20
20
  ## Validation Criteria
21
21
 
@@ -12,10 +12,10 @@ Validation finale : verifier que tout fonctionne en staging ET que le repo git e
12
12
  4. Verifier visuellement que tout est OK
13
13
  5. Capturer une preuve (screenshot)
14
14
  6. Confirmer que la feature fonctionne
15
- 7. Documenter : `autocode comment <ticket-key> "Validation staging OK"`
16
- 8. Avancer : `autocode next <ticket-key>`
15
+ 7. Documenter : `autocode comment <issue-key> "Validation staging OK"`
16
+ 8. Avancer : `autocode next <issue-key>`
17
17
 
18
- > Ou retour : `autocode move <ticket-key> <target-column-slug>`
18
+ > Ou retour : `autocode move <issue-key> <target-column-slug>`
19
19
 
20
20
  ## Criteres de Validation
21
21
 
@@ -7,7 +7,7 @@ Verify WebSocket connection works for real-time updates.
7
7
  1. Start server with WebSocket enabled
8
8
  2. Connect to WebSocket: `ws://localhost:3456/ws`
9
9
  3. Verify connection message received
10
- 4. Create/modify a ticket via API
10
+ 4. Create/modify an issue via API
11
11
  5. Verify event received via WebSocket
12
12
  6. Test automatic reconnection
13
13
  7. Check performance with multiple clients
@@ -1,50 +0,0 @@
1
- /**
2
- * Ticket CRUD operations - Multi-file structure
3
- */
4
- import type { Ticket, TicketCreateInput, TicketUpdateInput } from '../types/index.js';
5
- /**
6
- * Find a ticket directory by its key
7
- */
8
- export declare function findTicketDir(rootDir: string, key: string): string | null;
9
- /**
10
- * Find a ticket path by its key (for backwards compatibility)
11
- * @deprecated Use findTicketDir instead
12
- */
13
- export declare function findTicketPath(rootDir: string, key: string): string | null;
14
- /**
15
- * Get a ticket by its key
16
- */
17
- export declare function getTicket(rootDir: string, key: string): Ticket | null;
18
- /**
19
- * Create a new ticket
20
- */
21
- export declare function createTicket(rootDir: string, input: TicketCreateInput): Ticket;
22
- /**
23
- * Update a ticket
24
- */
25
- export declare function updateTicket(rootDir: string, key: string, updates: TicketUpdateInput): Ticket | null;
26
- /**
27
- * Add a comment to a ticket
28
- */
29
- export declare function addComment(rootDir: string, key: string, text: string, column?: string, source?: 'user' | 'claude'): Ticket | null;
30
- /**
31
- * Move a ticket to a new column
32
- */
33
- export declare function moveTicket(rootDir: string, key: string, toColumnSlug: string, force?: boolean): Ticket | null;
34
- /**
35
- * Move a ticket to the next column
36
- */
37
- export declare function nextTicket(rootDir: string, key: string): Ticket | null;
38
- /**
39
- * List all tickets
40
- */
41
- export declare function listTickets(rootDir: string): Ticket[];
42
- /**
43
- * List tickets in a specific column
44
- */
45
- export declare function listTicketsInColumn(rootDir: string, columnSlug: string): Ticket[];
46
- /**
47
- * Find the first actionable ticket (for Claude processing)
48
- */
49
- export declare function findActionableTicket(rootDir: string): Ticket | null;
50
- //# sourceMappingURL=ticket.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ticket.d.ts","sourceRoot":"","sources":["../../src/core/ticket.ts"],"names":[],"mappings":"AAAA;;GAEG;AAuBH,OAAO,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,iBAAiB,EAAY,MAAM,mBAAmB,CAAC;AAEhG;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgBzE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI1E;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKrE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAiC9E;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,MAAM,GAAG,IAAI,CA0BpG;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,GAAG,QAAiB,GAAG,MAAM,GAAG,IAAI,CAWzI;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,EACpB,KAAK,UAAQ,GACZ,MAAM,GAAG,IAAI,CA6Bf;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAWtE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAmBrD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAgBjF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgBnE"}
@@ -1,224 +0,0 @@
1
- /**
2
- * Ticket CRUD operations - Multi-file structure
3
- */
4
- import { join, dirname, basename } from 'node:path';
5
- import { ensureDir, listDirs, pathExists, generateTicketKey, slugify, getTimestamp, moveDir, } from '../utils/fs.js';
6
- import { loadTicket, updateMetadata, updateDescription, addCommentFile, addHistoryEntry, createTicketStructure, } from '../services/ticket-io.js';
7
- import { getColumns, getColumnBySlug } from './column.js';
8
- /**
9
- * Find a ticket directory by its key
10
- */
11
- export function findTicketDir(rootDir, key) {
12
- const columns = getColumns();
13
- for (const column of columns) {
14
- const ticketsDir = join(rootDir, column.slug, 'tickets');
15
- if (!pathExists(ticketsDir))
16
- continue;
17
- const ticketDirs = listDirs(ticketsDir);
18
- for (const ticketDir of ticketDirs) {
19
- if (ticketDir.startsWith(`${key}__`)) {
20
- return join(ticketsDir, ticketDir);
21
- }
22
- }
23
- }
24
- return null;
25
- }
26
- /**
27
- * Find a ticket path by its key (for backwards compatibility)
28
- * @deprecated Use findTicketDir instead
29
- */
30
- export function findTicketPath(rootDir, key) {
31
- const ticketDir = findTicketDir(rootDir, key);
32
- if (!ticketDir)
33
- return null;
34
- return join(ticketDir, 'metadata.json');
35
- }
36
- /**
37
- * Get a ticket by its key
38
- */
39
- export function getTicket(rootDir, key) {
40
- const ticketDir = findTicketDir(rootDir, key);
41
- if (!ticketDir)
42
- return null;
43
- return loadTicket(ticketDir);
44
- }
45
- /**
46
- * Create a new ticket
47
- */
48
- export function createTicket(rootDir, input) {
49
- const key = generateTicketKey(rootDir);
50
- const timestamp = getTimestamp();
51
- const titleSlug = slugify(input.title);
52
- // Default to backlog
53
- const column = getColumnBySlug('00_backlog');
54
- const ticketDir = join(rootDir, column.slug, 'tickets', `${key}__${titleSlug}`);
55
- const metadata = {
56
- key,
57
- title: input.title,
58
- priority: input.priority || 'P2',
59
- labels: input.labels || [],
60
- acceptance_criteria: input.acceptance_criteria || [],
61
- semver: input.semver || 'patch',
62
- history: [
63
- {
64
- at: timestamp,
65
- action: 'created',
66
- from: null,
67
- to: column.slug,
68
- },
69
- ],
70
- created_at: timestamp,
71
- updated_at: timestamp,
72
- };
73
- const description = input.description || '';
74
- createTicketStructure(ticketDir, metadata, description);
75
- return loadTicket(ticketDir);
76
- }
77
- /**
78
- * Update a ticket
79
- */
80
- export function updateTicket(rootDir, key, updates) {
81
- const ticketDir = findTicketDir(rootDir, key);
82
- if (!ticketDir)
83
- return null;
84
- const ticket = loadTicket(ticketDir);
85
- if (!ticket)
86
- return null;
87
- // Build metadata updates
88
- const metadataUpdates = {};
89
- if (updates.title !== undefined)
90
- metadataUpdates.title = updates.title;
91
- if (updates.priority !== undefined)
92
- metadataUpdates.priority = updates.priority;
93
- if (updates.labels !== undefined)
94
- metadataUpdates.labels = updates.labels;
95
- if (updates.acceptance_criteria !== undefined)
96
- metadataUpdates.acceptance_criteria = updates.acceptance_criteria;
97
- if (updates.semver !== undefined)
98
- metadataUpdates.semver = updates.semver;
99
- // Update metadata if any changes
100
- if (Object.keys(metadataUpdates).length > 0) {
101
- updateMetadata(ticketDir, metadataUpdates);
102
- }
103
- // Update description if changed
104
- if (updates.description !== undefined) {
105
- updateDescription(ticketDir, updates.description);
106
- }
107
- return loadTicket(ticketDir);
108
- }
109
- /**
110
- * Add a comment to a ticket
111
- */
112
- export function addComment(rootDir, key, text, column, source = 'user') {
113
- const ticketDir = findTicketDir(rootDir, key);
114
- if (!ticketDir)
115
- return null;
116
- const ticket = loadTicket(ticketDir);
117
- if (!ticket)
118
- return null;
119
- const commentColumn = column || ticket.status || 'N/A';
120
- addCommentFile(ticketDir, text, commentColumn, source);
121
- return loadTicket(ticketDir);
122
- }
123
- /**
124
- * Move a ticket to a new column
125
- */
126
- export function moveTicket(rootDir, key, toColumnSlug, force = false) {
127
- const ticketDir = findTicketDir(rootDir, key);
128
- if (!ticketDir)
129
- return null;
130
- const ticket = loadTicket(ticketDir);
131
- if (!ticket)
132
- return null;
133
- const toColumn = getColumnBySlug(toColumnSlug);
134
- if (!toColumn)
135
- return null;
136
- const fromColumn = getColumnBySlug(ticket.column_slug);
137
- if (!fromColumn)
138
- return null;
139
- // Determine action
140
- const action = force ? 'forced' : 'moved';
141
- // Add history entry
142
- addHistoryEntry(ticketDir, action, fromColumn.slug, toColumn.slug);
143
- // Move directory
144
- const ticketDirName = basename(ticketDir);
145
- const newTicketDir = join(rootDir, toColumn.slug, 'tickets', ticketDirName);
146
- if (ticketDir !== newTicketDir) {
147
- ensureDir(dirname(newTicketDir));
148
- moveDir(ticketDir, newTicketDir);
149
- }
150
- return loadTicket(newTicketDir);
151
- }
152
- /**
153
- * Move a ticket to the next column
154
- */
155
- export function nextTicket(rootDir, key) {
156
- const ticket = getTicket(rootDir, key);
157
- if (!ticket)
158
- return null;
159
- const currentColumn = getColumnBySlug(ticket.column_slug);
160
- if (!currentColumn)
161
- return null;
162
- const nextColumn = getColumns().find(c => c.index === currentColumn.index + 1);
163
- if (!nextColumn)
164
- return null;
165
- return moveTicket(rootDir, key, nextColumn.slug);
166
- }
167
- /**
168
- * List all tickets
169
- */
170
- export function listTickets(rootDir) {
171
- const tickets = [];
172
- const columns = getColumns();
173
- for (const column of columns) {
174
- const ticketsDir = join(rootDir, column.slug, 'tickets');
175
- if (!pathExists(ticketsDir))
176
- continue;
177
- const ticketDirs = listDirs(ticketsDir);
178
- for (const ticketDirName of ticketDirs) {
179
- const ticketDir = join(ticketsDir, ticketDirName);
180
- const ticket = loadTicket(ticketDir);
181
- if (ticket) {
182
- tickets.push(ticket);
183
- }
184
- }
185
- }
186
- return tickets;
187
- }
188
- /**
189
- * List tickets in a specific column
190
- */
191
- export function listTicketsInColumn(rootDir, columnSlug) {
192
- const ticketsDir = join(rootDir, columnSlug, 'tickets');
193
- if (!pathExists(ticketsDir))
194
- return [];
195
- const tickets = [];
196
- const ticketDirs = listDirs(ticketsDir);
197
- for (const ticketDirName of ticketDirs) {
198
- const ticketDir = join(ticketsDir, ticketDirName);
199
- const ticket = loadTicket(ticketDir);
200
- if (ticket) {
201
- tickets.push(ticket);
202
- }
203
- }
204
- return tickets;
205
- }
206
- /**
207
- * Find the first actionable ticket (for Claude processing)
208
- */
209
- export function findActionableTicket(rootDir) {
210
- const columns = getColumns();
211
- // Skip backlog (0) and done (12)
212
- for (const column of columns.slice(1, -1)) {
213
- const tickets = listTicketsInColumn(rootDir, column.slug);
214
- if (tickets.length > 0) {
215
- // Return highest priority ticket
216
- return tickets.sort((a, b) => {
217
- const priorityOrder = { P0: 0, P1: 1, P2: 2, P3: 3 };
218
- return priorityOrder[a.priority] - priorityOrder[b.priority];
219
- })[0];
220
- }
221
- }
222
- return null;
223
- }
224
- //# sourceMappingURL=ticket.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ticket.js","sourceRoot":"","sources":["../../src/core/ticket.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Ticket view page generator
3
- */
4
- /**
5
- * Generate the ticket view page
6
- */
7
- export declare function generateTicketViewPage(ticketKey: string, lang: string): string;
8
- //# sourceMappingURL=ticket-view.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ticket-view.d.ts","sourceRoot":"","sources":["../../../../src/server/dashboard/pages/ticket-view.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CA00C9E"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ticket-view.js","sourceRoot":"","sources":["../../../../src/server/dashboard/pages/ticket-view.ts"],"names":[],"mappings":"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"}