ai-flow-dev 2.8.0 → 2.8.2

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/README.md CHANGED
@@ -10,7 +10,7 @@ AI Flow is an interactive CLI that creates comprehensive professional documentat
10
10
 
11
11
  **Key Features:**
12
12
 
13
- - 🚀 Complete professional documentation (Backend: 17 files, Frontend: 15 files, Mobile: 13 files, Desktop: 16 files, Fullstack: 30+ files)
13
+ - 🚀 Complete professional documentation (Backend: 14 files, Frontend: 15 files, Mobile: 13 files, Desktop: 14 files, Fullstack: 29+ files)
14
14
  - 🧠 **Smart Description Refinement:** Detects ambiguity and iteratively guides you to a professional project definition.
15
15
  - ⚡ **Two modes:** Interactive (90-120 min, full control) or Smart Auto-Suggest (15-25 min, 6 questions)
16
16
  - 🌍 Universal support - 12 languages, 60+ frameworks, 35+ ORMs (98% coverage)
@@ -140,7 +140,7 @@ Or using uv (Python tool manager):
140
140
  uv tool install ai-flow-dev
141
141
  ```
142
142
 
143
- ## **Current version:** 2.7.0
143
+ ## **Current version:** 2.8.2
144
144
 
145
145
  ## 🚀 Quick Start
146
146
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ai-flow-dev",
3
- "version": "2.8.0",
3
+ "version": "2.8.2",
4
4
  "description": "AI-powered development workflow from idea to production. Generate specs, plan features, and build with AI assistance throughout your project lifecycle.",
5
5
  "type": "module",
6
6
  "main": "dist/cli.js",
@@ -566,7 +566,7 @@ setTimeout(callback, RETRY_DELAY_MS);
566
566
  ````markdown
567
567
  ### [Priority] [Category] - [Title]
568
568
 
569
- **File:** [path/to/file.ts](path/to/file.ts#L45)
569
+ **File:** `path/to/file.ts:45`
570
570
  **Category:** Security | Performance | Testing | Architecture | Quality
571
571
  **Impact:** [Description of impact]
572
572
  **Effort:** [Estimation - Quick/Medium/Large]
@@ -598,7 +598,7 @@ setTimeout(callback, RETRY_DELAY_MS);
598
598
  ```markdown
599
599
  ### 🔴 CRITICAL - SQL Injection Vulnerability
600
600
 
601
- **File:** [src/api/users.ts](src/api/users.ts#L45)
601
+ **File:** `src/api/users.ts:45`
602
602
  **Category:** Security
603
603
  **Impact:** High - Database compromise, data theft possible
604
604
  **Effort:** Quick (5 minutes)
@@ -350,7 +350,7 @@ go test -coverprofile=coverage.out ./...
350
350
  ````markdown
351
351
  ### Failed Test 1: User.create should validate email
352
352
 
353
- **File:** [tests/user.test.ts](tests/user.test.ts#L23)
353
+ **File:** `tests/user.test.ts:23`
354
354
  **Error:** AssertionError: Expected email validation to reject invalid format
355
355
 
356
356
  ```typescript
@@ -507,7 +507,7 @@ Hardcoded: `if (count > 100)`
507
507
 
508
508
  ### 1. SQL Injection Vulnerability
509
509
 
510
- **File:** [src/api/UserController.java](src/api/UserController.java#L45)
510
+ **File:** `src/api/UserController.java:45`
511
511
  **Category:** Security
512
512
  **Description:** Raw SQL query with user input
513
513
  **Impact:** High - Database compromise possible
@@ -573,10 +573,6 @@ stmt.executeQuery();
573
573
 
574
574
  ````
575
575
 
576
- **Save report:**
577
- - Location: `.ai-flow/reviews/check-{timestamp}.md`
578
- - Example: `.ai-flow/reviews/check-20260307-103045.md`
579
-
580
576
  ---
581
577
  ### Stage 4: Status Update
582
578
 
@@ -587,7 +583,6 @@ stmt.executeQuery();
587
583
  {
588
584
  "validation": {
589
585
  "lastCheck": "2026-03-07T10:30:45Z",
590
- "reportPath": ".ai-flow/reviews/check-20260307-103045.md",
591
586
  "overallStatus": "FAIL",
592
587
  "scope": {
593
588
  "files": ["src/api/UserController.java", "src/models/User.java"],
@@ -653,9 +648,6 @@ stmt.executeQuery();
653
648
  🟡 Warnings: 8 issues
654
649
  🟢 Suggestions: 15 items
655
650
 
656
- 📄 Full report saved to:
657
- .ai-flow/reviews/check-20260307-103045.md
658
-
659
651
  🚨 Action required: Fix 2 critical issues before proceeding.
660
652
  ```
661
653
 
@@ -587,13 +587,19 @@ function generate_commit_links() {
587
587
  for hash in $commits; do
588
588
  if [ $count -lt 5 ]; then
589
589
  if [ -n "$COMMIT_HASHES_SUMMARY" ]; then
590
- COMMIT_HASHES_SUMMARY="${COMMIT_HASHES_SUMMARY}, "
590
+ COMMIT_HASHES_SUMMARY+=", "
591
591
  fi
592
592
 
593
593
  if [ -n "$COMMIT_URL_PATTERN" ]; then
594
- COMMIT_HASHES_SUMMARY="${COMMIT_HASHES_SUMMARY}[${hash}](${COMMIT_URL_PATTERN}${hash})"
594
+ # Build markdown link in parts to avoid VSCode link detection
595
+ COMMIT_HASHES_SUMMARY+="["
596
+ COMMIT_HASHES_SUMMARY+="$hash"
597
+ COMMIT_HASHES_SUMMARY+="]("
598
+ COMMIT_HASHES_SUMMARY+="$COMMIT_URL_PATTERN"
599
+ COMMIT_HASHES_SUMMARY+="$hash"
600
+ COMMIT_HASHES_SUMMARY+=")"
595
601
  else
596
- COMMIT_HASHES_SUMMARY="${COMMIT_HASHES_SUMMARY}\`${hash}\`"
602
+ COMMIT_HASHES_SUMMARY+='`'"${hash}"'`'
597
603
  fi
598
604
  fi
599
605
  count=$((count + 1))
@@ -702,7 +708,7 @@ Read the structured summary from `/tmp/ai-context-summary.md` (400-600 words) an
702
708
 
703
709
  **AI Prompt:**
704
710
 
705
- ```markdown
711
+ ```````markdown
706
712
  Genera dos descripciones profesionales (PR y Jira) basándote en este resumen estructurado:
707
713
 
708
714
  <context-summary>
@@ -756,55 +762,50 @@ Commit Hashes Summary: $COMMIT_HASHES_SUMMARY
756
762
  - Si breaking changes, resáltalos con ⚠️ en sección Métricas
757
763
  - Si deployment notes, sé específico con cada requirement
758
764
 
759
- **Output en formato (CRÍTICO - respetar delimitadores):**
765
+ **Output Format:**
760
766
 
761
- \`\`\`markdown
767
+ IMPORTANTE: Responde directamente con este formato EXACTO usando 5 BACKTICKS (máxima robustez):
762
768
 
763
- <!-- PR_DESCRIPTION_START -->
769
+ ---
764
770
 
765
- [contenido completo de PR description aquí]
771
+ ## 📋 PULL REQUEST DESCRIPTION
766
772
 
767
- <!-- PR_DESCRIPTION_END -->
773
+ \`\`\`\`\`markdown
774
+ [Aquí va el contenido completo de la PR description, empezando con ## Refactor: ...]
775
+ \`\`\`\`\`
768
776
 
769
- <!-- JIRA_DESCRIPTION_START -->
777
+ ---
770
778
 
771
- [contenido completo de Jira description aquí]
779
+ ## 🎫 JIRA DESCRIPTION
772
780
 
773
- <!-- JIRA_DESCRIPTION_END -->
781
+ \`\`\`\`\`markdown
782
+ [Aquí va el contenido completo de la Jira description, empezando con ## Refactor: ...]
783
+ \`\`\`\`\`
774
784
 
775
- \`\`\`
785
+ ---
776
786
 
777
- Analiza el contexto y genera las descripciones óptimas ahora.
778
- ```
787
+ **Listo para copiar y pegar** 📋 Solo copia el contenido dentro de los bloques de código markdown.
779
788
 
780
- **After AI generates the descriptions, extract and save them:**
789
+ **CRÍTICO PARA EVITAR CONFLICTOS:**
781
790
 
782
- ```bash
783
- # Extract PR description
784
- sed -n '/<!-- PR_DESCRIPTION_START -->/,/<!-- PR_DESCRIPTION_END -->/p' /tmp/ai-output.md | \
785
- sed '1d;$d' > /tmp/pr-description.md
791
+ 1. Los encabezados "## 📋 PULL REQUEST DESCRIPTION" y "## 🎫 JIRA DESCRIPTION" deben estar FUERA de los bloques de código
792
+ 2. USA EXACTAMENTE 5 BACKTICKS (\`\`\`\`\`) para abrir/cerrar cada bloque
793
+ 3. ¿Por qué 5? Cubre hasta 4 backticks internos (bloques anidados) sin conflictos
794
+ 4. Código normal usa 3 (```), nested usa 4 (````), entonces 5 (``````) es prácticamente imposible de conflictuar
795
+ 5. Más de 5 es innecesario (over-engineering)
786
796
 
787
- # Extract Jira description
788
- sed -n '/<!-- JIRA_DESCRIPTION_START -->/,/<!-- JIRA_DESCRIPTION_END -->/p' /tmp/ai-output.md | \
789
- sed '1d;$d' > /tmp/jira-description.md
797
+ Analiza el contexto y genera las descripciones óptimas ahora.
798
+ ```````
790
799
 
791
- # Display descriptions
792
- echo ""
793
- echo "---"
794
- echo "📋 DESCRIPCIÓN PARA PULL REQUEST (GitHub/GitLab/Bitbucket)"
795
- echo "---"
796
- echo ""
797
- cat /tmp/pr-description.md
798
- echo ""
799
- echo ""
800
- echo "---"
801
- echo "🎫 DESCRIPCIÓN PARA JIRA/CLICKUP/LINEAR (Markdown)"
802
- echo "---"
803
- echo ""
804
- cat /tmp/jira-description.md
805
- echo ""
800
+ **After AI generates the descriptions:**
801
+
802
+ ```bash
803
+ # La IA responde directamente en el chat con las descripciones
804
+ # en formato markdown listo para copiar y pegar.
805
+ # No requiere post-procesamiento ni archivos temporales.
806
806
  echo ""
807
- echo "💡 Copia las descripciones de arriba para tus tickets"
807
+ echo "💡 Las descripciones han sido generadas arriba en el chat."
808
+ echo "📋 Copia directamente el contenido de los bloques markdown."
808
809
  echo ""
809
810
  ```
810
811
 
@@ -566,7 +566,7 @@ setTimeout(callback, RETRY_DELAY_MS);
566
566
  ````markdown
567
567
  ### [Priority] [Category] - [Title]
568
568
 
569
- **File:** [path/to/file.ts](path/to/file.ts#L45)
569
+ **File:** `path/to/file.ts:45`
570
570
  **Category:** Security | Performance | Testing | Architecture | Quality
571
571
  **Impact:** [Description of impact]
572
572
  **Effort:** [Estimation - Quick/Medium/Large]
@@ -598,7 +598,7 @@ setTimeout(callback, RETRY_DELAY_MS);
598
598
  ```markdown
599
599
  ### 🔴 CRITICAL - SQL Injection Vulnerability
600
600
 
601
- **File:** [src/api/users.ts](src/api/users.ts#L45)
601
+ **File:** `src/api/users.ts:45`
602
602
  **Category:** Security
603
603
  **Impact:** High - Database compromise, data theft possible
604
604
  **Effort:** Quick (5 minutes)
@@ -350,7 +350,7 @@ go test -coverprofile=coverage.out ./...
350
350
  ````markdown
351
351
  ### Failed Test 1: User.create should validate email
352
352
 
353
- **File:** [tests/user.test.ts](tests/user.test.ts#L23)
353
+ **File:** `tests/user.test.ts:23`
354
354
  **Error:** AssertionError: Expected email validation to reject invalid format
355
355
 
356
356
  ```typescript
@@ -507,7 +507,7 @@ Hardcoded: `if (count > 100)`
507
507
 
508
508
  ### 1. SQL Injection Vulnerability
509
509
 
510
- **File:** [src/api/UserController.java](src/api/UserController.java#L45)
510
+ **File:** `src/api/UserController.java:45`
511
511
  **Category:** Security
512
512
  **Description:** Raw SQL query with user input
513
513
  **Impact:** High - Database compromise possible
@@ -573,10 +573,6 @@ stmt.executeQuery();
573
573
 
574
574
  ````
575
575
 
576
- **Save report:**
577
- - Location: `.ai-flow/reviews/check-{timestamp}.md`
578
- - Example: `.ai-flow/reviews/check-20260307-103045.md`
579
-
580
576
  ---
581
577
  ### Stage 4: Status Update
582
578
 
@@ -587,7 +583,6 @@ stmt.executeQuery();
587
583
  {
588
584
  "validation": {
589
585
  "lastCheck": "2026-03-07T10:30:45Z",
590
- "reportPath": ".ai-flow/reviews/check-20260307-103045.md",
591
586
  "overallStatus": "FAIL",
592
587
  "scope": {
593
588
  "files": ["src/api/UserController.java", "src/models/User.java"],
@@ -653,9 +648,6 @@ stmt.executeQuery();
653
648
  🟡 Warnings: 8 issues
654
649
  🟢 Suggestions: 15 items
655
650
 
656
- 📄 Full report saved to:
657
- .ai-flow/reviews/check-20260307-103045.md
658
-
659
651
  🚨 Action required: Fix 2 critical issues before proceeding.
660
652
  ```
661
653