@autocode-cli/autocode 0.1.31 → 0.1.33

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 (58) hide show
  1. package/README.md +33 -3
  2. package/dist/cli/commands/health.d.ts +9 -0
  3. package/dist/cli/commands/health.d.ts.map +1 -0
  4. package/dist/cli/commands/health.js +101 -0
  5. package/dist/cli/commands/health.js.map +1 -0
  6. package/dist/cli/commands/init.js +1 -1
  7. package/dist/cli/commands/move.d.ts.map +1 -1
  8. package/dist/cli/commands/move.js +14 -7
  9. package/dist/cli/commands/move.js.map +1 -1
  10. package/dist/cli/parser.d.ts.map +1 -1
  11. package/dist/cli/parser.js +2 -0
  12. package/dist/cli/parser.js.map +1 -1
  13. package/dist/core/hierarchy.d.ts +24 -0
  14. package/dist/core/hierarchy.d.ts.map +1 -1
  15. package/dist/core/hierarchy.js +76 -0
  16. package/dist/core/hierarchy.js.map +1 -1
  17. package/dist/core/issue.d.ts.map +1 -1
  18. package/dist/core/issue.js +11 -3
  19. package/dist/core/issue.js.map +1 -1
  20. package/dist/core/loop-detector.d.ts +45 -0
  21. package/dist/core/loop-detector.d.ts.map +1 -0
  22. package/dist/core/loop-detector.js +81 -0
  23. package/dist/core/loop-detector.js.map +1 -0
  24. package/dist/core/validation.d.ts +26 -0
  25. package/dist/core/validation.d.ts.map +1 -0
  26. package/dist/core/validation.js +67 -0
  27. package/dist/core/validation.js.map +1 -0
  28. package/dist/core/workflow.d.ts.map +1 -1
  29. package/dist/core/workflow.js +34 -1
  30. package/dist/core/workflow.js.map +1 -1
  31. package/dist/server/api.d.ts.map +1 -1
  32. package/dist/server/api.js +23 -2
  33. package/dist/server/api.js.map +1 -1
  34. package/dist/server/dashboard/pages/changelog.js +2 -2
  35. package/dist/server/dashboard/pages/changelog.js.map +1 -1
  36. package/dist/server/dashboard/pages/main-dashboard.js +1 -1
  37. package/dist/server/dashboard/pages/main-dashboard.js.map +1 -1
  38. package/dist/server/dashboard/pages/new-issue.d.ts.map +1 -1
  39. package/dist/server/dashboard/pages/new-issue.js +347 -3
  40. package/dist/server/dashboard/pages/new-issue.js.map +1 -1
  41. package/dist/server/dashboard/pages/new-issue.test.js +475 -0
  42. package/dist/server/dashboard/pages/new-issue.test.js.map +1 -1
  43. package/dist/server/watcher.d.ts +1 -1
  44. package/dist/server/watcher.js +1 -1
  45. package/dist/services/issue-io.d.ts +1 -1
  46. package/dist/services/issue-io.js +1 -1
  47. package/dist/services/monitoring.d.ts +47 -0
  48. package/dist/services/monitoring.d.ts.map +1 -0
  49. package/dist/services/monitoring.js +136 -0
  50. package/dist/services/monitoring.js.map +1 -0
  51. package/dist/types/index.d.ts +1 -0
  52. package/dist/types/index.d.ts.map +1 -1
  53. package/dist/types/index.js.map +1 -1
  54. package/dist/utils/config.js +2 -2
  55. package/dist/utils/config.js.map +1 -1
  56. package/package.json +2 -1
  57. package/templates/prompts/in-progress.en.md +25 -9
  58. package/templates/prompts/in-progress.fr.md +25 -9
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Workflow Monitoring Service
3
+ * Detects stuck issues, loops, and other problems
4
+ */
5
+ /**
6
+ * Reason why an issue is stuck
7
+ */
8
+ export type StuckReason = 'no_criteria' | 'loop_detected' | 'stale' | 'hierarchy_conflict';
9
+ /**
10
+ * A stuck issue with details
11
+ */
12
+ export interface StuckIssue {
13
+ key: string;
14
+ reason: StuckReason;
15
+ column: string;
16
+ details: string;
17
+ severity: 'warning' | 'error';
18
+ }
19
+ /**
20
+ * Monitoring report summary
21
+ */
22
+ export interface MonitoringReport {
23
+ generatedAt: string;
24
+ stuckIssues: StuckIssue[];
25
+ healthy: boolean;
26
+ summary: {
27
+ totalIssues: number;
28
+ issuesWithoutCriteria: number;
29
+ loopingIssues: number;
30
+ hierarchyConflicts: number;
31
+ staleIssues: number;
32
+ };
33
+ recommendations: string[];
34
+ }
35
+ /**
36
+ * Generate a monitoring report for the workflow
37
+ */
38
+ export declare function generateMonitoringReport(rootDir: string): MonitoringReport;
39
+ /**
40
+ * Get a quick health status (for dashboard)
41
+ */
42
+ export declare function getHealthStatus(rootDir: string): {
43
+ healthy: boolean;
44
+ issueCount: number;
45
+ message: string;
46
+ };
47
+ //# sourceMappingURL=monitoring.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitoring.d.ts","sourceRoot":"","sources":["../../src/services/monitoring.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,eAAe,GAAG,OAAO,GAAG,oBAAoB,CAAC;AAE3F;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,SAAS,GAAG,OAAO,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,aAAa,EAAE,MAAM,CAAC;QACtB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAOD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CA4G1E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG;IAChD,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB,CA2BA"}
@@ -0,0 +1,136 @@
1
+ /**
2
+ * Workflow Monitoring Service
3
+ * Detects stuck issues, loops, and other problems
4
+ */
5
+ import { listIssues } from '../core/issue.js';
6
+ import { isIssueInProgress, isIssueDone, findHierarchyInconsistencies } from '../core/hierarchy.js';
7
+ import { detectLoop, LOOP_WARNING_THRESHOLD } from '../core/loop-detector.js';
8
+ /**
9
+ * Stale threshold in hours
10
+ */
11
+ const STALE_THRESHOLD_HOURS = 48;
12
+ /**
13
+ * Generate a monitoring report for the workflow
14
+ */
15
+ export function generateMonitoringReport(rootDir) {
16
+ const issues = listIssues(rootDir);
17
+ const stuckIssues = [];
18
+ const recommendations = [];
19
+ let issuesWithoutCriteria = 0;
20
+ let loopingIssues = 0;
21
+ let staleIssues = 0;
22
+ for (const issue of issues) {
23
+ // Skip done issues
24
+ if (isIssueDone(issue))
25
+ continue;
26
+ // Check: no acceptance criteria in work columns
27
+ if (isIssueInProgress(issue)) {
28
+ const hasCriteria = issue.acceptance_criteria && issue.acceptance_criteria.length > 0;
29
+ if (!hasCriteria) {
30
+ issuesWithoutCriteria++;
31
+ stuckIssues.push({
32
+ key: issue.key,
33
+ reason: 'no_criteria',
34
+ column: issue.column_slug,
35
+ details: 'No acceptance criteria defined',
36
+ severity: 'error',
37
+ });
38
+ }
39
+ }
40
+ // Check: loop detection
41
+ const loopAnalysis = detectLoop(issue.history);
42
+ if (loopAnalysis.loopCount >= LOOP_WARNING_THRESHOLD) {
43
+ loopingIssues++;
44
+ const loopPath = loopAnalysis.loopPath
45
+ ? `${loopAnalysis.loopPath[0]} <-> ${loopAnalysis.loopPath[1]}`
46
+ : 'unknown';
47
+ stuckIssues.push({
48
+ key: issue.key,
49
+ reason: 'loop_detected',
50
+ column: issue.column_slug,
51
+ details: `${loopAnalysis.loopCount} loop(s) between ${loopPath}`,
52
+ severity: loopAnalysis.shouldHalt ? 'error' : 'warning',
53
+ });
54
+ }
55
+ // Check: stale issues (no activity for 48h+)
56
+ if (isIssueInProgress(issue)) {
57
+ const lastActivity = new Date(issue.updated_at);
58
+ const hoursStale = (Date.now() - lastActivity.getTime()) / (1000 * 60 * 60);
59
+ if (hoursStale > STALE_THRESHOLD_HOURS) {
60
+ staleIssues++;
61
+ stuckIssues.push({
62
+ key: issue.key,
63
+ reason: 'stale',
64
+ column: issue.column_slug,
65
+ details: `No activity for ${Math.round(hoursStale)} hours`,
66
+ severity: 'warning',
67
+ });
68
+ }
69
+ }
70
+ }
71
+ // Check hierarchy inconsistencies
72
+ const hierarchyIssues = findHierarchyInconsistencies(rootDir);
73
+ for (const inconsistency of hierarchyIssues) {
74
+ stuckIssues.push({
75
+ key: inconsistency.parentKey,
76
+ reason: 'hierarchy_conflict',
77
+ column: 'N/A',
78
+ details: `${inconsistency.problem}: ${inconsistency.childKeys.join(', ')}`,
79
+ severity: 'error',
80
+ });
81
+ }
82
+ // Generate recommendations
83
+ if (issuesWithoutCriteria > 0) {
84
+ recommendations.push(`Add acceptance criteria to ${issuesWithoutCriteria} issue(s) to prevent infinite loops`);
85
+ }
86
+ if (loopingIssues > 0) {
87
+ recommendations.push(`Review ${loopingIssues} looping issue(s) - they may need clearer acceptance criteria or manual intervention`);
88
+ }
89
+ if (staleIssues > 0) {
90
+ recommendations.push(`${staleIssues} issue(s) have been inactive for ${STALE_THRESHOLD_HOURS}+ hours - consider updating or archiving`);
91
+ }
92
+ if (hierarchyIssues.length > 0) {
93
+ recommendations.push(`Fix ${hierarchyIssues.length} hierarchy inconsistency(ies) - parents marked done with incomplete children`);
94
+ }
95
+ return {
96
+ generatedAt: new Date().toISOString(),
97
+ stuckIssues,
98
+ healthy: stuckIssues.length === 0,
99
+ summary: {
100
+ totalIssues: issues.length,
101
+ issuesWithoutCriteria,
102
+ loopingIssues,
103
+ hierarchyConflicts: hierarchyIssues.length,
104
+ staleIssues,
105
+ },
106
+ recommendations,
107
+ };
108
+ }
109
+ /**
110
+ * Get a quick health status (for dashboard)
111
+ */
112
+ export function getHealthStatus(rootDir) {
113
+ const report = generateMonitoringReport(rootDir);
114
+ if (report.healthy) {
115
+ return {
116
+ healthy: true,
117
+ issueCount: 0,
118
+ message: 'All issues healthy',
119
+ };
120
+ }
121
+ const errorCount = report.stuckIssues.filter(s => s.severity === 'error').length;
122
+ const warningCount = report.stuckIssues.filter(s => s.severity === 'warning').length;
123
+ let message = '';
124
+ if (errorCount > 0) {
125
+ message = `${errorCount} issue(s) need attention`;
126
+ }
127
+ if (warningCount > 0) {
128
+ message += message ? `, ${warningCount} warning(s)` : `${warningCount} warning(s)`;
129
+ }
130
+ return {
131
+ healthy: false,
132
+ issueCount: report.stuckIssues.length,
133
+ message,
134
+ };
135
+ }
136
+ //# sourceMappingURL=monitoring.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitoring.js","sourceRoot":"","sources":["../../src/services/monitoring.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,7 @@ export interface IssueCreateInput {
56
56
  acceptance_criteria?: string[];
57
57
  semver?: SemverType;
58
58
  parent_key?: string;
59
+ column_slug?: string;
59
60
  }
60
61
  export interface IssueUpdateInput {
61
62
  title?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAkGH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAA+B,CAAC,YAAY,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAmGH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAA+B,CAAC,YAAY,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC"}
@@ -35,7 +35,7 @@ export function getTemplatesDir() {
35
35
  * Default configuration
36
36
  */
37
37
  export const defaultConfig = {
38
- root: 'autodoc',
38
+ root: 'autocode',
39
39
  lang: 'fr',
40
40
  port: 3333,
41
41
  claudeEnabled: true,
@@ -45,7 +45,7 @@ export const defaultConfig = {
45
45
  * Create a config object from environment and defaults
46
46
  */
47
47
  export function createConfig(overrides = {}) {
48
- // Use current working directory for autodoc folder (not package root)
48
+ // Use current working directory for autocode folder (not package root)
49
49
  const cwd = process.cwd();
50
50
  return {
51
51
  root: resolve(cwd, overrides.root || process.env.AUTOCODE_ROOT || defaultConfig.root),
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@autocode-cli/autocode",
3
- "version": "0.1.31",
3
+ "version": "0.1.33",
4
4
  "description": "Filesystem-based issues system with web dashboard",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -53,6 +53,7 @@
53
53
  "devDependencies": {
54
54
  "@playwright/test": "^1.57.0",
55
55
  "@types/node": "^22.10.2",
56
+ "cypress": "^15.8.1",
56
57
  "tsx": "^4.19.2",
57
58
  "typescript": "^5.7.2",
58
59
  "vitest": "^2.1.8"
@@ -9,21 +9,37 @@ Active development. Issue is being worked on, code is being written.
9
9
  1. Analyze issue and acceptance criteria
10
10
  2. Explore codebase to understand existing context
11
11
  3. Plan modifications (files to create/modify)
12
- 4. Implement the solution
13
- 5. Test locally that it works
14
- 6. If out of scope work detected:
15
- - Slightly out of scope (minor improvement, edge case): `autocode new "<title>" "<description>" --priority P2 --labels "<labels>" --acceptance "<criteria>" --semver patch --column ready`
16
- - Significantly out of scope (new feature, major change): `autocode new "<title>" "<description>" --priority P2 --labels "<labels>" --acceptance "<criteria>" --semver patch --column backlog`
17
- - In scope: handle directly in current issue
18
- 7. Document: `autocode comment <issue-key> "Work completed"`
19
- 8. Advance: `autocode next <issue-key>`
12
+ 4. **MANDATORY VERIFICATION**: For EACH acceptance criterion:
13
+ - Check if criterion is already satisfied in existing code
14
+ - If NO: implement the missing functionality
15
+ - If YES: move to next criterion
16
+ 5. Test locally that ALL criteria pass
17
+ 6. Commit + push work done
18
+ 7. If out of scope work detected: `autocode new "<title>" "<description>" --priority P2 --labels "<labels>" --acceptance "<criteria>" --semver patch --column backlog`
19
+ 8. Document: `autocode comment <issue-key> "Work completed: [list of changes]"`
20
+ 9. **ONLY IF ALL CRITERIA ARE SATISFIED**: `autocode next <issue-key>`
20
21
 
21
22
  > Or return: `autocode move <issue-key> <target-column-slug>`
22
23
 
24
+ ## IMPORTANT
25
+
26
+ ⚠️ **NEVER call `autocode next` if acceptance criteria are not ALL satisfied!**
27
+
28
+ If criteria cannot be satisfied:
29
+ - Document why with `autocode comment`
30
+ - DO NOT advance the issue
31
+ - Wait for human decision
32
+
33
+ If code exists but does not match criteria:
34
+ - MODIFY the code to match the criteria
35
+ - Do not assume "code exists so it's fine"
36
+
23
37
  ## Validation Criteria
24
38
 
25
- - [ ] Feature/fix is implemented
39
+ - [ ] ALL acceptance criteria are verified ONE BY ONE
40
+ - [ ] Code implements ALL functionalities required by criteria
26
41
  - [ ] Local tests pass
42
+ - [ ] Code is committed and pushed
27
43
  - [ ] A comment summarizes work done
28
44
 
29
45
  ## Notes
@@ -9,21 +9,37 @@ Developpement actif. Le ticket est en cours de travail, le code est en cours d'e
9
9
  1. Analyser le ticket et les criteres d'acceptation
10
10
  2. Explorer le codebase pour comprendre le contexte existant
11
11
  3. Planifier les modifications (fichiers a creer/modifier)
12
- 4. Implementer la solution
13
- 5. Tester localement que ca fonctionne
14
- 6. Si travail hors scope detecte :
15
- - Legerement hors scope (amelioration mineure, cas limite) : `autocode new "<titre>" "<description>" --priority P2 --labels "<labels>" --acceptance "<criteres>" --semver patch --column ready`
16
- - Tres hors scope (nouvelle feature, changement majeur) : `autocode new "<titre>" "<description>" --priority P2 --labels "<labels>" --acceptance "<criteres>" --semver patch --column backlog`
17
- - Dans le scope : traiter directement dans le ticket actuel
18
- 7. Documenter : `autocode comment <issue-key> "Travail effectue"`
19
- 8. Avancer : `autocode next <issue-key>`
12
+ 4. **VERIFICATION OBLIGATOIRE** : Pour CHAQUE critere d'acceptation :
13
+ - Verifier si le critere est deja satisfait dans le code existant
14
+ - Si NON : implementer la fonctionnalite manquante
15
+ - Si OUI : passer au critere suivant
16
+ 5. Tester localement que TOUS les criteres passent
17
+ 6. Commit + push du travail effectue
18
+ 7. Si travail hors scope detecte : `autocode new "<titre>" "<description>" --priority P2 --labels "<labels>" --acceptance "<critères>" --semver patch --column backlog`
19
+ 8. Documenter : `autocode comment <issue-key> "Travail effectue : [liste des modifications]"`
20
+ 9. **SEULEMENT SI TOUS LES CRITERES SONT SATISFAITS** : `autocode next <issue-key>`
20
21
 
21
22
  > Ou retour : `autocode move <issue-key> <target-column-slug>`
22
23
 
24
+ ## IMPORTANT
25
+
26
+ ⚠️ **NE JAMAIS appeler `autocode next` si les criteres d'acceptation ne sont pas TOUS satisfaits !**
27
+
28
+ Si des criteres ne peuvent pas etre satisfaits :
29
+ - Documenter pourquoi avec `autocode comment`
30
+ - NE PAS avancer le ticket
31
+ - Attendre une decision humaine
32
+
33
+ Si le code existe deja mais ne correspond pas aux criteres :
34
+ - MODIFIER le code pour qu'il corresponde aux criteres
35
+ - Ne pas supposer que "le code existe donc c'est bon"
36
+
23
37
  ## Criteres de Validation
24
38
 
25
- - [ ] Feature/fix implementee
39
+ - [ ] TOUS les criteres d'acceptation du ticket sont verifies UN PAR UN
40
+ - [ ] Le code implemente TOUTES les fonctionnalites requises par les criteres
26
41
  - [ ] Tests locaux passent
42
+ - [ ] Code commite et pousse
27
43
  - [ ] Un commentaire resume le travail effectue
28
44
 
29
45
  ## Notes