sequant 1.12.0 → 1.13.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.
Files changed (53) hide show
  1. package/README.md +10 -8
  2. package/dist/bin/cli.js +19 -9
  3. package/dist/src/commands/doctor.js +42 -20
  4. package/dist/src/commands/init.js +152 -65
  5. package/dist/src/commands/logs.js +7 -6
  6. package/dist/src/commands/run.d.ts +13 -1
  7. package/dist/src/commands/run.js +122 -32
  8. package/dist/src/commands/stats.js +67 -48
  9. package/dist/src/commands/status.js +30 -12
  10. package/dist/src/commands/sync.d.ts +28 -0
  11. package/dist/src/commands/sync.js +102 -0
  12. package/dist/src/index.d.ts +6 -0
  13. package/dist/src/index.js +4 -0
  14. package/dist/src/lib/cli-ui.d.ts +196 -0
  15. package/dist/src/lib/cli-ui.js +544 -0
  16. package/dist/src/lib/content-analyzer.d.ts +89 -0
  17. package/dist/src/lib/content-analyzer.js +437 -0
  18. package/dist/src/lib/phase-signal.d.ts +94 -0
  19. package/dist/src/lib/phase-signal.js +171 -0
  20. package/dist/src/lib/phase-spinner.d.ts +146 -0
  21. package/dist/src/lib/phase-spinner.js +255 -0
  22. package/dist/src/lib/solve-comment-parser.d.ts +84 -0
  23. package/dist/src/lib/solve-comment-parser.js +200 -0
  24. package/dist/src/lib/stack-config.d.ts +51 -0
  25. package/dist/src/lib/stack-config.js +77 -0
  26. package/dist/src/lib/stacks.d.ts +52 -0
  27. package/dist/src/lib/stacks.js +173 -0
  28. package/dist/src/lib/templates.d.ts +2 -0
  29. package/dist/src/lib/templates.js +9 -2
  30. package/dist/src/lib/upstream/assessment.d.ts +70 -0
  31. package/dist/src/lib/upstream/assessment.js +385 -0
  32. package/dist/src/lib/upstream/index.d.ts +11 -0
  33. package/dist/src/lib/upstream/index.js +14 -0
  34. package/dist/src/lib/upstream/issues.d.ts +38 -0
  35. package/dist/src/lib/upstream/issues.js +267 -0
  36. package/dist/src/lib/upstream/relevance.d.ts +50 -0
  37. package/dist/src/lib/upstream/relevance.js +209 -0
  38. package/dist/src/lib/upstream/report.d.ts +29 -0
  39. package/dist/src/lib/upstream/report.js +391 -0
  40. package/dist/src/lib/upstream/types.d.ts +207 -0
  41. package/dist/src/lib/upstream/types.js +5 -0
  42. package/dist/src/lib/workflow/log-writer.d.ts +1 -1
  43. package/dist/src/lib/workflow/metrics-schema.d.ts +3 -3
  44. package/dist/src/lib/workflow/qa-cache.d.ts +199 -0
  45. package/dist/src/lib/workflow/qa-cache.js +440 -0
  46. package/dist/src/lib/workflow/run-log-schema.d.ts +34 -6
  47. package/dist/src/lib/workflow/run-log-schema.js +12 -1
  48. package/dist/src/lib/workflow/state-schema.d.ts +4 -4
  49. package/dist/src/lib/workflow/types.d.ts +4 -0
  50. package/package.json +6 -1
  51. package/templates/skills/qa/scripts/quality-checks.sh +509 -53
  52. package/templates/skills/solve/SKILL.md +375 -83
  53. package/templates/skills/spec/SKILL.md +107 -5
@@ -357,7 +357,82 @@ Ask the user to confirm or adjust:
357
357
 
358
358
  **Do NOT start implementation** - this is planning-only.
359
359
 
360
- ### 4. Recommended Workflow
360
+ ### 4. Content Analysis (AC-1, AC-2, AC-3, AC-4)
361
+
362
+ **Before** determining the recommended workflow, analyze the issue content for phase-relevant signals:
363
+
364
+ #### Step 1: Check for Solve Comment (AC-4)
365
+
366
+ First, check if a `/solve` comment already exists for this issue:
367
+
368
+ ```bash
369
+ # Check issue comments for solve workflow
370
+ gh issue view <issue-number> --json comments --jq '.comments[].body' | grep -l "## Solve Workflow for Issues:"
371
+ ```
372
+
373
+ **If solve comment found:**
374
+ - Extract phases from the solve workflow (e.g., `spec → exec → test → qa`)
375
+ - Use solve recommendations as the primary source (after labels)
376
+ - Skip content analysis for phases (solve already analyzed)
377
+ - Include in output: `"Solve comment found - using /solve workflow recommendations"`
378
+
379
+ #### Step 2: Analyze Title for Keywords (AC-1)
380
+
381
+ If no solve comment, analyze the issue title for phase-relevant keywords:
382
+
383
+ | Pattern | Detection | Suggested Phase |
384
+ |---------|-----------|-----------------|
385
+ | `extract`, `component` | UI work | Add `/test` |
386
+ | `refactor.*ui`, `ui refactor` | UI work | Add `/test` |
387
+ | `frontend`, `dashboard` | UI work | Add `/test` |
388
+ | `auth`, `permission`, `security` | Security-sensitive | Add `/security-review` |
389
+ | `password`, `credential`, `token` | Security-sensitive | Add `/security-review` |
390
+ | `refactor`, `migration`, `restructure` | Complex work | Enable quality loop |
391
+ | `breaking change` | Complex work | Enable quality loop |
392
+
393
+ #### Step 3: Analyze Body for Patterns (AC-2)
394
+
395
+ Analyze the issue body for file references and keywords:
396
+
397
+ | Pattern | Detection | Suggested Phase |
398
+ |---------|-----------|-----------------|
399
+ | References `.tsx` or `.jsx` files | UI work likely | Add `/test` |
400
+ | References `components/` directory | UI work | Add `/test` |
401
+ | References `scripts/` or `bin/` | CLI work | May need `/verify` |
402
+ | References `auth/` directory | Security-sensitive | Add `/security-review` |
403
+ | References `middleware.ts` | May be auth-related | Consider `/security-review` |
404
+ | Contains "breaking change" | Complex work | Enable quality loop |
405
+
406
+ #### Step 4: Merge Signals (AC-3)
407
+
408
+ Content analysis **supplements** label detection - it can only ADD phases, never remove them.
409
+
410
+ **Priority order (highest first):**
411
+ 1. **Labels** (explicit, highest priority)
412
+ 2. **Solve comment** (if exists)
413
+ 3. **Title keywords**
414
+ 4. **Body patterns** (lowest priority)
415
+
416
+ **Output format:**
417
+
418
+ ```markdown
419
+ ## Content Analysis
420
+
421
+ ### Signal Sources
422
+
423
+ | Phase | Source | Confidence | Reason |
424
+ |-------|--------|------------|--------|
425
+ | /test | title | high | "Extract component" detected |
426
+ | /security-review | body | medium | References auth/ directory |
427
+
428
+ ### Merged Recommendations
429
+
430
+ **From labels:** /test (ui label)
431
+ **From content:** /security-review (added)
432
+ **Final phases:** spec → exec → test → security-review → qa
433
+ ```
434
+
435
+ ### 5. Recommended Workflow
361
436
 
362
437
  Analyze the issue and recommend the optimal workflow phases:
363
438
 
@@ -366,6 +441,7 @@ Analyze the issue and recommend the optimal workflow phases:
366
441
 
367
442
  **Phases:** spec → exec → qa
368
443
  **Quality Loop:** disabled
444
+ **Signal Sources:** [labels | solve | content]
369
445
  **Reasoning:** [Brief explanation of why these phases were chosen]
370
446
  ```
371
447
 
@@ -376,7 +452,11 @@ Analyze the issue and recommend the optimal workflow phases:
376
452
  - **Security-sensitive** → Add `security-review` phase
377
453
  - **Documentation only** → Skip `spec`, just `exec → qa`
378
454
 
379
- ### 5. Label Review
455
+ **Content Analysis Integration:**
456
+ - Include content-detected phases in the workflow
457
+ - Note signal source in reasoning (e.g., "Added /test based on title keyword 'extract component'")
458
+
459
+ ### 6. Label Review
380
460
 
381
461
  Analyze current labels vs implementation plan and suggest updates:
382
462
 
@@ -406,7 +486,7 @@ Analyze current labels vs implementation plan and suggest updates:
406
486
  - Check if API contracts are changing
407
487
  - Match against quality loop trigger labels
408
488
 
409
- ### 6. Issue Comment Draft
489
+ ### 7. Issue Comment Draft
410
490
 
411
491
  Generate a Markdown snippet with:
412
492
  - AC checklist with verification criteria
@@ -422,7 +502,7 @@ Label clearly as:
422
502
  --- DRAFT GITHUB ISSUE COMMENT (PLAN) ---
423
503
  ```
424
504
 
425
- ### 7. Update GitHub Issue
505
+ ### 8. Update GitHub Issue
426
506
 
427
507
  Post the draft comment to GitHub:
428
508
  ```bash
@@ -478,7 +558,8 @@ npx tsx scripts/state/update.ts fail <issue-number> spec "Error description"
478
558
  - [ ] **Verification Criteria** - Each AC has Verification Method and Test Scenario
479
559
  - [ ] **Conflict Risk Analysis** - Check for in-flight work, include if conflicts found
480
560
  - [ ] **Implementation Plan** - 3-7 concrete steps with codebase references
481
- - [ ] **Recommended Workflow** - Phases, Quality Loop setting, and Reasoning
561
+ - [ ] **Content Analysis** - Title/body analysis results (or "Solve comment found" if using /solve)
562
+ - [ ] **Recommended Workflow** - Phases, Quality Loop setting, Signal Sources, and Reasoning
482
563
  - [ ] **Label Review** - Current vs recommended labels based on plan analysis
483
564
  - [ ] **Open Questions** - Any ambiguities with recommended defaults
484
565
  - [ ] **Issue Comment Draft** - Formatted for GitHub posting
@@ -531,10 +612,31 @@ You MUST include these sections in order:
531
612
 
532
613
  ---
533
614
 
615
+ ## Content Analysis
616
+
617
+ <!-- If solve comment found: -->
618
+ **Source:** Solve comment found - using /solve workflow recommendations
619
+
620
+ <!-- If no solve comment, show analysis: -->
621
+ ### Signal Sources
622
+
623
+ | Phase | Source | Confidence | Reason |
624
+ |-------|--------|------------|--------|
625
+ | /test | title | high | "[matched keyword]" detected |
626
+ | /security-review | body | medium | References [pattern] |
627
+
628
+ ### Merged Recommendations
629
+
630
+ **From labels:** [label-detected phases]
631
+ **From content:** [content-detected phases]
632
+
633
+ ---
634
+
534
635
  ## Recommended Workflow
535
636
 
536
637
  **Phases:** exec → qa
537
638
  **Quality Loop:** disabled
639
+ **Signal Sources:** [labels | solve | content]
538
640
  **Reasoning:** [Why these phases based on issue analysis]
539
641
 
540
642
  ---