@mthanhlm/autodev 0.2.0 → 0.2.1
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.
package/PUBLISH.md
CHANGED
|
@@ -328,7 +328,8 @@ function buildRoute(cwd) {
|
|
|
328
328
|
if (!projectExists) {
|
|
329
329
|
return {
|
|
330
330
|
kind: 'init_project',
|
|
331
|
-
command: '/autodev
|
|
331
|
+
command: '/autodev',
|
|
332
|
+
manualCommand: '/autodev-new-project',
|
|
332
333
|
reason: existingCodebase ? 'existing_code_detected_without_project_state' : 'project_state_missing',
|
|
333
334
|
projectType
|
|
334
335
|
};
|
|
@@ -337,7 +338,8 @@ function buildRoute(cwd) {
|
|
|
337
338
|
if (projectType === 'brownfield' && !codebaseMapExists) {
|
|
338
339
|
return {
|
|
339
340
|
kind: 'explore_codebase',
|
|
340
|
-
command: '/autodev
|
|
341
|
+
command: '/autodev',
|
|
342
|
+
manualCommand: '/autodev-explore-codebase',
|
|
341
343
|
reason: 'brownfield_project_needs_codebase_map',
|
|
342
344
|
projectType
|
|
343
345
|
};
|
|
@@ -347,6 +349,7 @@ function buildRoute(cwd) {
|
|
|
347
349
|
return {
|
|
348
350
|
kind: 'track_select',
|
|
349
351
|
command: '/autodev',
|
|
352
|
+
manualCommand: null,
|
|
350
353
|
reason: tracks.length > 0 ? 'no_active_track_selected' : 'no_tracks_created',
|
|
351
354
|
projectType
|
|
352
355
|
};
|
|
@@ -357,6 +360,7 @@ function buildRoute(cwd) {
|
|
|
357
360
|
return {
|
|
358
361
|
kind: 'track_setup',
|
|
359
362
|
command: '/autodev',
|
|
363
|
+
manualCommand: null,
|
|
360
364
|
reason: 'active_track_missing_required_artifacts',
|
|
361
365
|
projectType,
|
|
362
366
|
trackSlug: activeTrack
|
|
@@ -368,6 +372,7 @@ function buildRoute(cwd) {
|
|
|
368
372
|
return {
|
|
369
373
|
kind: 'track_setup',
|
|
370
374
|
command: '/autodev',
|
|
375
|
+
manualCommand: null,
|
|
371
376
|
reason: 'active_track_has_no_phases',
|
|
372
377
|
projectType,
|
|
373
378
|
trackSlug: activeTrack
|
|
@@ -378,7 +383,8 @@ function buildRoute(cwd) {
|
|
|
378
383
|
if (nextReview && config.workflow.review_after_execute !== false) {
|
|
379
384
|
return {
|
|
380
385
|
kind: 'review_phase',
|
|
381
|
-
command:
|
|
386
|
+
command: '/autodev',
|
|
387
|
+
manualCommand: `/autodev-review-phase ${nextReview.number}`,
|
|
382
388
|
reason: 'phase_executed_but_not_reviewed',
|
|
383
389
|
projectType,
|
|
384
390
|
trackSlug: activeTrack,
|
|
@@ -390,7 +396,8 @@ function buildRoute(cwd) {
|
|
|
390
396
|
if (nextVerify) {
|
|
391
397
|
return {
|
|
392
398
|
kind: 'verify_phase',
|
|
393
|
-
command:
|
|
399
|
+
command: '/autodev',
|
|
400
|
+
manualCommand: `/autodev-verify-work ${nextVerify.number}`,
|
|
394
401
|
reason: 'phase_reviewed_but_not_verified',
|
|
395
402
|
projectType,
|
|
396
403
|
trackSlug: activeTrack,
|
|
@@ -402,7 +409,8 @@ function buildRoute(cwd) {
|
|
|
402
409
|
if (nextExecute) {
|
|
403
410
|
return {
|
|
404
411
|
kind: 'execute_phase',
|
|
405
|
-
command:
|
|
412
|
+
command: '/autodev',
|
|
413
|
+
manualCommand: `/autodev-execute-phase ${nextExecute.number}`,
|
|
406
414
|
reason: 'phase_planned_but_not_executed',
|
|
407
415
|
projectType,
|
|
408
416
|
trackSlug: activeTrack,
|
|
@@ -414,7 +422,8 @@ function buildRoute(cwd) {
|
|
|
414
422
|
if (nextPlan) {
|
|
415
423
|
return {
|
|
416
424
|
kind: 'plan_phase',
|
|
417
|
-
command:
|
|
425
|
+
command: '/autodev',
|
|
426
|
+
manualCommand: `/autodev-plan-phase ${nextPlan.number}`,
|
|
418
427
|
reason: 'phase_not_planned',
|
|
419
428
|
projectType,
|
|
420
429
|
trackSlug: activeTrack,
|
|
@@ -424,7 +433,8 @@ function buildRoute(cwd) {
|
|
|
424
433
|
|
|
425
434
|
return {
|
|
426
435
|
kind: 'track_complete',
|
|
427
|
-
command: '/autodev
|
|
436
|
+
command: '/autodev',
|
|
437
|
+
manualCommand: '/autodev-cleanup',
|
|
428
438
|
reason: 'active_track_fully_verified',
|
|
429
439
|
projectType,
|
|
430
440
|
trackSlug: activeTrack
|
|
@@ -460,7 +470,8 @@ function buildProgress(cwd) {
|
|
|
460
470
|
verified: phases.filter(phase => phase.uatExists).length
|
|
461
471
|
},
|
|
462
472
|
route,
|
|
463
|
-
nextCommand: route.command
|
|
473
|
+
nextCommand: route.command,
|
|
474
|
+
manualNextCommand: route.manualCommand || null
|
|
464
475
|
};
|
|
465
476
|
}
|
|
466
477
|
|
|
@@ -482,10 +493,11 @@ function renderProgressTable(progress) {
|
|
|
482
493
|
`Reviewed: ${progress.counts.reviewed}`,
|
|
483
494
|
`Verified: ${progress.counts.verified}`,
|
|
484
495
|
`Next: ${progress.route.command}`,
|
|
496
|
+
progress.route.manualCommand ? `Manual Shortcut: ${progress.route.manualCommand}` : null,
|
|
485
497
|
'',
|
|
486
498
|
'| Phase | Type | Name | Plan | Summary | Review | UAT | Status |',
|
|
487
499
|
'| --- | --- | --- | --- | --- | --- | --- | --- |'
|
|
488
|
-
];
|
|
500
|
+
].filter(Boolean);
|
|
489
501
|
|
|
490
502
|
for (const phase of progress.phases) {
|
|
491
503
|
lines.push(
|
|
@@ -27,7 +27,9 @@ node "$HOME/.claude/autodev/bin/autodev-tools.cjs" init autodev
|
|
|
27
27
|
- `review_phase`: perform the review-phase workflow.
|
|
28
28
|
- `verify_phase`: perform the verify-work workflow.
|
|
29
29
|
|
|
30
|
-
4. If the route is `
|
|
30
|
+
4. Do not stop after identifying a brownfield codebase route. If the route is `explore_codebase`, perform the exploration as part of the same `/autodev` run instead of telling the user to switch commands.
|
|
31
|
+
|
|
32
|
+
5. If the route is `track_select` or `track_setup`, handle it directly:
|
|
31
33
|
- If tracks exist, ask whether to continue one of them or create a new track.
|
|
32
34
|
- If no tracks exist, ask only for the current initiative name, desired outcome, and likely phase types.
|
|
33
35
|
- Create or repair:
|
|
@@ -45,18 +47,18 @@ node "$HOME/.claude/autodev/bin/autodev-tools.cjs" init autodev
|
|
|
45
47
|
|
|
46
48
|
- After track setup, continue in the same turn by re-running the route logic mentally and executing the next step.
|
|
47
49
|
|
|
48
|
-
|
|
50
|
+
6. If the route is `track_complete`, ask whether the user wants to:
|
|
49
51
|
- start a new track
|
|
50
52
|
- run cleanup
|
|
51
53
|
- stop here
|
|
52
54
|
|
|
53
|
-
|
|
55
|
+
7. When the user chooses a new track at step 6, create it immediately and continue routing in the same turn.
|
|
54
56
|
|
|
55
|
-
|
|
57
|
+
8. Every time you finish a routed step, keep both project-level and track-level state aligned. Default the state files to `Next Command: /autodev`.
|
|
56
58
|
|
|
57
|
-
|
|
59
|
+
9. End with:
|
|
58
60
|
- what step you completed
|
|
59
61
|
- the current route reason in plain language
|
|
60
62
|
- `/autodev` as the default next command
|
|
61
|
-
- the matching manual shortcut
|
|
63
|
+
- the matching manual shortcut only as an optional escape hatch
|
|
62
64
|
</process>
|
|
@@ -53,5 +53,5 @@ node "$HOME/.claude/autodev/bin/autodev-tools.cjs" init explore-codebase
|
|
|
53
53
|
- the biggest structural insight
|
|
54
54
|
- the biggest risk
|
|
55
55
|
- `/autodev` as the next command
|
|
56
|
-
- `/autodev-plan-phase <n>` as the manual shortcut when obvious
|
|
56
|
+
- `/autodev-plan-phase <n>` only as the optional manual shortcut when obvious
|
|
57
57
|
</process>
|
|
@@ -83,7 +83,7 @@ Each phase must include:
|
|
|
83
83
|
- `Next Command: /autodev`
|
|
84
84
|
- current ISO timestamp
|
|
85
85
|
|
|
86
|
-
13. If the project is brownfield, do not fake a codebase map.
|
|
86
|
+
13. If the project is brownfield, do not fake a codebase map. Continue into codebase exploration inside `/autodev` by default. Mention `/autodev-explore-codebase` only as a manual shortcut. Otherwise, the next step is planning phase 1 through `/autodev`.
|
|
87
87
|
|
|
88
88
|
14. End with a short summary and direct the user to `/autodev`. Mention the manual shortcut only if useful.
|
|
89
89
|
</process>
|
|
@@ -13,5 +13,5 @@ node "$HOME/.claude/autodev/bin/autodev-tools.cjs" progress table
|
|
|
13
13
|
|
|
14
14
|
3. If a project exists, add one short line after the table with:
|
|
15
15
|
- `/autodev` as the default next command
|
|
16
|
-
- the routed manual shortcut from the table when useful
|
|
16
|
+
- the routed manual shortcut from the table only when useful
|
|
17
17
|
</process>
|
package/package.json
CHANGED