fraim-framework 2.0.35 → 2.0.36

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 (51) hide show
  1. package/bin/fraim.js +52 -5
  2. package/dist/registry/scripts/cleanup-branch.js +62 -33
  3. package/dist/registry/scripts/generate-engagement-emails.js +119 -44
  4. package/dist/registry/scripts/newsletter-helpers.js +208 -268
  5. package/dist/registry/scripts/profile-server.js +387 -0
  6. package/dist/tests/test-chalk-regression.js +18 -2
  7. package/dist/tests/test-client-scripts-validation.js +133 -0
  8. package/dist/tests/test-prep-issue.js +1 -34
  9. package/dist/tests/test-script-location-independence.js +76 -28
  10. package/package.json +2 -2
  11. package/registry/agent-guardrails.md +62 -62
  12. package/registry/rules/communication.md +121 -121
  13. package/registry/rules/continuous-learning.md +54 -54
  14. package/registry/rules/hitl-ppe-record-analysis.md +302 -302
  15. package/registry/rules/software-development-lifecycle.md +104 -104
  16. package/registry/scripts/cleanup-branch.ts +341 -0
  17. package/registry/scripts/code-quality-check.sh +559 -559
  18. package/registry/scripts/detect-tautological-tests.sh +38 -38
  19. package/registry/scripts/generate-engagement-emails.ts +830 -0
  20. package/registry/scripts/markdown-to-pdf.js +7 -3
  21. package/registry/scripts/newsletter-helpers.ts +777 -0
  22. package/registry/scripts/prep-issue.sh +30 -61
  23. package/registry/scripts/profile-server.ts +424 -0
  24. package/registry/scripts/run-thank-you-workflow.ts +122 -0
  25. package/registry/scripts/send-newsletter-simple.ts +102 -0
  26. package/registry/scripts/send-thank-you-emails.ts +57 -0
  27. package/registry/scripts/validate-openapi-limits.ts +366 -366
  28. package/registry/scripts/validate-test-coverage.ts +280 -280
  29. package/registry/scripts/verify-pr-comments.sh +70 -70
  30. package/registry/templates/bootstrap/ARCHITECTURE-TEMPLATE.md +53 -53
  31. package/registry/templates/evidence/Implementation-BugEvidence.md +85 -85
  32. package/registry/templates/evidence/Implementation-FeatureEvidence.md +120 -120
  33. package/registry/workflows/customer-development/insight-analysis.md +156 -156
  34. package/registry/workflows/customer-development/interview-preparation.md +421 -421
  35. package/registry/workflows/customer-development/strategic-brainstorming.md +146 -146
  36. package/registry/workflows/quality-assurance/iterative-improvement-cycle.md +562 -562
  37. package/registry/workflows/reviewer/review-implementation-vs-feature-spec.md +669 -669
  38. package/dist/registry/scripts/build-scripts-generator.js +0 -205
  39. package/dist/registry/scripts/fraim-config.js +0 -61
  40. package/dist/registry/scripts/generic-issues-api.js +0 -100
  41. package/dist/registry/scripts/openapi-generator.js +0 -664
  42. package/dist/registry/scripts/performance/profile-server.js +0 -390
  43. package/dist/test-utils.js +0 -96
  44. package/dist/tests/esm-compat.js +0 -11
  45. package/dist/tests/test-chalk-esm-issue.js +0 -159
  46. package/dist/tests/test-chalk-real-world.js +0 -265
  47. package/dist/tests/test-chalk-resolution-issue.js +0 -304
  48. package/dist/tests/test-fraim-install-chalk-issue.js +0 -254
  49. package/dist/tests/test-npm-resolution-diagnostic.js +0 -140
  50. package/registry/templates/marketing/STORYTELLING-TEMPLATE.md +0 -130
  51. package/registry/workflows/marketing/storytelling.md +0 -65
@@ -1,70 +1,70 @@
1
- #!/bin/bash
2
- # verify-pr-comments.sh
3
- # Ensures agents properly retrieve and address PR comments
4
-
5
- set -e
6
-
7
- PR_NUMBER=$1
8
-
9
- # Load repository config from config.json
10
- CONFIG_FILE=".fraim/config.json"
11
- if [ ! -f "$CONFIG_FILE" ]; then
12
- echo "Error: Config file not found at $CONFIG_FILE" >&2
13
- exit 1
14
- fi
15
-
16
- if ! command -v node &> /dev/null; then
17
- echo "Error: node is required but not installed." >&2
18
- exit 1
19
- fi
20
-
21
- # Extract values using node reading from stdin
22
- NODE_SCRIPT="
23
- const fs = require('fs');
24
- try {
25
- const input = fs.readFileSync(0, 'utf-8');
26
- const config = JSON.parse(input);
27
- const repo = config.git;
28
- if (!repo || !repo.repoOwner || !repo.repoName) {
29
- process.exit(1);
30
- }
31
- console.log(\`\${repo.repoOwner}:\${repo.repoName}\`);
32
- } catch (e) {
33
- process.exit(1);
34
- }
35
- "
36
-
37
- REPO_INFO=$(cat "$CONFIG_FILE" | node -e "$NODE_SCRIPT")
38
- if [ $? -ne 0 ]; then
39
- echo "Error: Failed to parse repository config from $CONFIG_FILE" >&2
40
- echo "Required: git.repoOwner, git.repoName" >&2
41
- exit 1
42
- fi
43
-
44
- IFS=':' read -r REPO_OWNER REPO_NAME <<< "$REPO_INFO"
45
-
46
- if [ -z "$PR_NUMBER" ]; then
47
- echo "❌ ERROR: PR number required"
48
- echo "Usage: $0 <PR_NUMBER>"
49
- exit 1
50
- fi
51
-
52
- echo "🔍 Verifying PR comment processing for #$PR_NUMBER ($REPO_OWNER/$REPO_NAME)"
53
-
54
- # Get all comments
55
- gh api "repos/$REPO_OWNER/$REPO_NAME/pulls/$PR_NUMBER/comments?per_page=100" \
56
- --jq '.[] | "[\(.id)] \(.path // "pr"):\(.line // "general") - \(.body)"' \
57
- > pr-comments-verification.txt
58
-
59
- COMMENT_COUNT=$(wc -l < pr-comments-verification.txt)
60
- echo "📋 Found $COMMENT_COUNT comments"
61
- echo "📄 Comments saved to pr-comments-verification.txt"
62
-
63
- if [ "$COMMENT_COUNT" -eq 0 ]; then
64
- echo "✅ No comments found - agent can proceed"
65
- exit 0
66
- fi
67
-
68
- echo ""
69
- echo "⚠️ Agent MUST address each comment before claiming completion"
70
- echo "📝 Agent must provide evidence table showing resolution of all $COMMENT_COUNT comments"
1
+ #!/bin/bash
2
+ # verify-pr-comments.sh
3
+ # Ensures agents properly retrieve and address PR comments
4
+
5
+ set -e
6
+
7
+ PR_NUMBER=$1
8
+
9
+ # Load repository config from config.json
10
+ CONFIG_FILE=".fraim/config.json"
11
+ if [ ! -f "$CONFIG_FILE" ]; then
12
+ echo "Error: Config file not found at $CONFIG_FILE" >&2
13
+ exit 1
14
+ fi
15
+
16
+ if ! command -v node &> /dev/null; then
17
+ echo "Error: node is required but not installed." >&2
18
+ exit 1
19
+ fi
20
+
21
+ # Extract values using node reading from stdin
22
+ NODE_SCRIPT="
23
+ const fs = require('fs');
24
+ try {
25
+ const input = fs.readFileSync(0, 'utf-8');
26
+ const config = JSON.parse(input);
27
+ const repo = config.git;
28
+ if (!repo || !repo.repoOwner || !repo.repoName) {
29
+ process.exit(1);
30
+ }
31
+ console.log(\`\${repo.repoOwner}:\${repo.repoName}\`);
32
+ } catch (e) {
33
+ process.exit(1);
34
+ }
35
+ "
36
+
37
+ REPO_INFO=$(cat "$CONFIG_FILE" | node -e "$NODE_SCRIPT")
38
+ if [ $? -ne 0 ]; then
39
+ echo "Error: Failed to parse repository config from $CONFIG_FILE" >&2
40
+ echo "Required: git.repoOwner, git.repoName" >&2
41
+ exit 1
42
+ fi
43
+
44
+ IFS=':' read -r REPO_OWNER REPO_NAME <<< "$REPO_INFO"
45
+
46
+ if [ -z "$PR_NUMBER" ]; then
47
+ echo "❌ ERROR: PR number required"
48
+ echo "Usage: $0 <PR_NUMBER>"
49
+ exit 1
50
+ fi
51
+
52
+ echo "🔍 Verifying PR comment processing for #$PR_NUMBER ($REPO_OWNER/$REPO_NAME)"
53
+
54
+ # Get all comments
55
+ gh api "repos/$REPO_OWNER/$REPO_NAME/pulls/$PR_NUMBER/comments?per_page=100" \
56
+ --jq '.[] | "[\(.id)] \(.path // "pr"):\(.line // "general") - \(.body)"' \
57
+ > pr-comments-verification.txt
58
+
59
+ COMMENT_COUNT=$(wc -l < pr-comments-verification.txt)
60
+ echo "📋 Found $COMMENT_COUNT comments"
61
+ echo "📄 Comments saved to pr-comments-verification.txt"
62
+
63
+ if [ "$COMMENT_COUNT" -eq 0 ]; then
64
+ echo "✅ No comments found - agent can proceed"
65
+ exit 0
66
+ fi
67
+
68
+ echo ""
69
+ echo "⚠️ Agent MUST address each comment before claiming completion"
70
+ echo "📝 Agent must provide evidence table showing resolution of all $COMMENT_COUNT comments"
@@ -1,53 +1,53 @@
1
- # Architecture Documentation: <project-name>
2
-
3
- ## 1. Overview
4
- <Briefly describe the purpose and goals of the project.>
5
-
6
- ## 2. Tech Stack Choices
7
-
8
- | Category | Choice | Rationale |
9
- | :--- | :--- | :--- |
10
- | **Language** | <e.g. TypeScript> | <e.g. Type safety and developer productivity> |
11
- | **Runtime** | <e.g. Node.js> | <e.g. Ubiquity and ecosystem> |
12
- | **Frameworks** | <e.g. Express, Fastify, React> | <e.g. Robustness and community support> |
13
- | **Database** | <e.g. MongoDB, PostgreSQL> | <e.g. Data structure requirements> |
14
- | **Testing** | <e.g. Vitest, Playwright> | <e.g. Modern toolchain and speed> |
15
-
16
- ## 3. Architectural Layers
17
-
18
- Describe the layers of the system and their responsibilities.
19
-
20
- ### 3.1. [Layer Name, e.g., API/Interface Layer]
21
- - **Responsibility**: <e.g., Handling HTTP requests, validation, and CLI entry points.>
22
- - **Key Modules**: <e.g., `src/server.ts`, `src/cli/`>
23
-
24
- ### 3.2. [Layer Name, e.g., Application/Business Logic Layer]
25
- - **Responsibility**: <e.g., Core business rules and orchestrating domain services.>
26
- - **Key Modules**: <e.g., `src/services/`, `src/orchestrator/`>
27
-
28
- ### 3.3. [Layer Name, e.g., Data/Infrastructure Layer]
29
- - **Responsibility**: <e.g., Persistence, external API integrations, and low-level utilities.>
30
- - **Key Modules**: <e.g., `src/db/`, `src/clients/`>
31
-
32
- ## 4. Key Components & Modules
33
-
34
- <mermaid>
35
- graph TD
36
- A[Component A] --> B[Component B]
37
- B --> C[External API]
38
- B --> D[Database]
39
- </mermaid>
40
-
41
- ### 4.1 [Component Name]
42
- <Description of the component's role and internal structure.>
43
-
44
- ## 5. Data Flow
45
- <Describe how information moves through the system from an input (e.g., user request) to output/persistence.>
46
-
47
- ## 6. Design Patterns & Principles
48
- - **Pattern 1**: <e.g., Dependency Injection for testability.>
49
- - **Pattern 2**: <e.g., Event-driven architecture for async processing.>
50
-
51
- ## 7. Configuration & Environment
52
- - **FRAIM Config**: Located at `config.json`.
53
- - **Environment Variables**: <List critical variables here.>
1
+ # Architecture Documentation: <project-name>
2
+
3
+ ## 1. Overview
4
+ <Briefly describe the purpose and goals of the project.>
5
+
6
+ ## 2. Tech Stack Choices
7
+
8
+ | Category | Choice | Rationale |
9
+ | :--- | :--- | :--- |
10
+ | **Language** | <e.g. TypeScript> | <e.g. Type safety and developer productivity> |
11
+ | **Runtime** | <e.g. Node.js> | <e.g. Ubiquity and ecosystem> |
12
+ | **Frameworks** | <e.g. Express, Fastify, React> | <e.g. Robustness and community support> |
13
+ | **Database** | <e.g. MongoDB, PostgreSQL> | <e.g. Data structure requirements> |
14
+ | **Testing** | <e.g. Vitest, Playwright> | <e.g. Modern toolchain and speed> |
15
+
16
+ ## 3. Architectural Layers
17
+
18
+ Describe the layers of the system and their responsibilities.
19
+
20
+ ### 3.1. [Layer Name, e.g., API/Interface Layer]
21
+ - **Responsibility**: <e.g., Handling HTTP requests, validation, and CLI entry points.>
22
+ - **Key Modules**: <e.g., `src/server.ts`, `src/cli/`>
23
+
24
+ ### 3.2. [Layer Name, e.g., Application/Business Logic Layer]
25
+ - **Responsibility**: <e.g., Core business rules and orchestrating domain services.>
26
+ - **Key Modules**: <e.g., `src/services/`, `src/orchestrator/`>
27
+
28
+ ### 3.3. [Layer Name, e.g., Data/Infrastructure Layer]
29
+ - **Responsibility**: <e.g., Persistence, external API integrations, and low-level utilities.>
30
+ - **Key Modules**: <e.g., `src/db/`, `src/clients/`>
31
+
32
+ ## 4. Key Components & Modules
33
+
34
+ <mermaid>
35
+ graph TD
36
+ A[Component A] --> B[Component B]
37
+ B --> C[External API]
38
+ B --> D[Database]
39
+ </mermaid>
40
+
41
+ ### 4.1 [Component Name]
42
+ <Description of the component's role and internal structure.>
43
+
44
+ ## 5. Data Flow
45
+ <Describe how information moves through the system from an input (e.g., user request) to output/persistence.>
46
+
47
+ ## 6. Design Patterns & Principles
48
+ - **Pattern 1**: <e.g., Dependency Injection for testability.>
49
+ - **Pattern 2**: <e.g., Event-driven architecture for async processing.>
50
+
51
+ ## 7. Configuration & Environment
52
+ - **FRAIM Config**: Located at `config.json`.
53
+ - **Environment Variables**: <List critical variables here.>
@@ -1,86 +1,86 @@
1
- # Bug: <Title>
2
- Issue: #<issue>
3
- Bug Spec: <Link to Bug Spec>
4
- PR: <Link to PR>
5
-
6
- ## Completeness Evidence
7
- - Issue tagged with label `phase:impl`: Yes/No
8
- - Issue tagged with label `status:needs-review`: Yes/No
9
- - All files committed/synced to branch: Yes/No
10
- - Table with following columns
11
- - PR Comment
12
- - How Addressed
13
-
14
- ## Implementation Quality Checkpoints
15
- - [ ] Code complexity reviewed (no overengineering)
16
- - [ ] No resource waste (excessive retries, delays, workarounds)
17
- - [ ] Solution based on proven approach from design phase
18
- - [ ] All new files/functions are actually used
19
-
20
- ## Validation Evidence
21
- - Complete valiation performed as suggested in bug spec: Yes/No
22
- - **MANDATORY**: Evidence must reflect actual validation status, not assumptions
23
- - **MANDATORY**: Cannot mark automated validations as "pending" without attempting them first
24
- - Table with following columns
25
- - Validation Step (manual vs automated)
26
- - Validation Result (pass vs fail)
27
- - Evidence (actual command/output or explanation why not applicable)
28
- - Failure Analysis (if fail)
29
-
30
- ## New Files/Functions Created
31
- - Table with the following columns
32
- - File/Function Name
33
- - Purpose
34
- - Who is using/importing/calling it
35
- - Is it actually used? (Yes/No - if No, explain why it exists)
36
-
37
- ## New Tests Added
38
- - Required if existing test cases did not repro the bug, Optional if bug fix made previously failing test cases pass
39
- - **MANDATORY**: For each new test case added, you MUST:
40
- - Show actual test execution command run
41
- - Show actual test output (exit code and results)
42
- - Document whether it passed/failed
43
- - Cannot claim tests "need fixes" without attempting execution first
44
-
45
- ## Test Execution Log
46
- **MANDATORY**: Include actual test execution results below:
47
-
48
- ```bash
49
- # Example: Running test file
50
- $ npm run test -- test-XXX-fix.ts
51
- # [Include actual output here]
52
- # Exit code: 0 (success) or non-zero (failure)
53
- ```
54
-
55
- **For each test file**:
56
- - Command executed: `[command]`
57
- - Exit code: `[0 or non-zero]`
58
- - Passed tests: `[count]`
59
- - Failed tests: `[count]`
60
- - Output excerpt: `[relevant lines]`
61
-
62
- ## Existing Test Suites Run
63
- - Table with following columns
64
- - Test Suite
65
- - Was it Run (if not, why not - it's ok to not run a suite if there is no impact of your work to it as covered in agent-testing-guidelines.md)
66
- - Failing Tests
67
- - Failure Analysis (if any tests fail)
68
-
69
- ## Pre-Completion Reflection
70
-
71
- [Include reflection analysis here following `get_fraim_file({ path: "rules/mandatory-pre-completion-reflection.md" })`]
72
-
73
- ✅ Reflection Phase 1 (Claim Verification) completed: YES/NO
74
- ✅ Reflection Phase 2 (Risk Analysis) completed: YES/NO
75
- ✅ Reflection Phase 3 (Validation Plan Check) completed: YES/NO
76
- ✅ Reflection Phase 4 (Self-Audit) completed: YES/NO
77
- ✅ All blockers from reflection addressed: YES/NO
78
- ✅ Confidence level: X% (must be ≥ 90% to proceed)
79
-
80
- **Reflection Summary:**
81
- [Brief summary of key findings from reflection]
82
-
83
- ## Continous Learning
84
- - Table with following columns
85
- - Learning
1
+ # Bug: <Title>
2
+ Issue: #<issue>
3
+ Bug Spec: <Link to Bug Spec>
4
+ PR: <Link to PR>
5
+
6
+ ## Completeness Evidence
7
+ - Issue tagged with label `phase:impl`: Yes/No
8
+ - Issue tagged with label `status:needs-review`: Yes/No
9
+ - All files committed/synced to branch: Yes/No
10
+ - Table with following columns
11
+ - PR Comment
12
+ - How Addressed
13
+
14
+ ## Implementation Quality Checkpoints
15
+ - [ ] Code complexity reviewed (no overengineering)
16
+ - [ ] No resource waste (excessive retries, delays, workarounds)
17
+ - [ ] Solution based on proven approach from design phase
18
+ - [ ] All new files/functions are actually used
19
+
20
+ ## Validation Evidence
21
+ - Complete valiation performed as suggested in bug spec: Yes/No
22
+ - **MANDATORY**: Evidence must reflect actual validation status, not assumptions
23
+ - **MANDATORY**: Cannot mark automated validations as "pending" without attempting them first
24
+ - Table with following columns
25
+ - Validation Step (manual vs automated)
26
+ - Validation Result (pass vs fail)
27
+ - Evidence (actual command/output or explanation why not applicable)
28
+ - Failure Analysis (if fail)
29
+
30
+ ## New Files/Functions Created
31
+ - Table with the following columns
32
+ - File/Function Name
33
+ - Purpose
34
+ - Who is using/importing/calling it
35
+ - Is it actually used? (Yes/No - if No, explain why it exists)
36
+
37
+ ## New Tests Added
38
+ - Required if existing test cases did not repro the bug, Optional if bug fix made previously failing test cases pass
39
+ - **MANDATORY**: For each new test case added, you MUST:
40
+ - Show actual test execution command run
41
+ - Show actual test output (exit code and results)
42
+ - Document whether it passed/failed
43
+ - Cannot claim tests "need fixes" without attempting execution first
44
+
45
+ ## Test Execution Log
46
+ **MANDATORY**: Include actual test execution results below:
47
+
48
+ ```bash
49
+ # Example: Running test file
50
+ $ npm run test -- test-XXX-fix.ts
51
+ # [Include actual output here]
52
+ # Exit code: 0 (success) or non-zero (failure)
53
+ ```
54
+
55
+ **For each test file**:
56
+ - Command executed: `[command]`
57
+ - Exit code: `[0 or non-zero]`
58
+ - Passed tests: `[count]`
59
+ - Failed tests: `[count]`
60
+ - Output excerpt: `[relevant lines]`
61
+
62
+ ## Existing Test Suites Run
63
+ - Table with following columns
64
+ - Test Suite
65
+ - Was it Run (if not, why not - it's ok to not run a suite if there is no impact of your work to it as covered in agent-testing-guidelines.md)
66
+ - Failing Tests
67
+ - Failure Analysis (if any tests fail)
68
+
69
+ ## Pre-Completion Reflection
70
+
71
+ [Include reflection analysis here following `get_fraim_file({ path: "rules/mandatory-pre-completion-reflection.md" })`]
72
+
73
+ ✅ Reflection Phase 1 (Claim Verification) completed: YES/NO
74
+ ✅ Reflection Phase 2 (Risk Analysis) completed: YES/NO
75
+ ✅ Reflection Phase 3 (Validation Plan Check) completed: YES/NO
76
+ ✅ Reflection Phase 4 (Self-Audit) completed: YES/NO
77
+ ✅ All blockers from reflection addressed: YES/NO
78
+ ✅ Confidence level: X% (must be ≥ 90% to proceed)
79
+
80
+ **Reflection Summary:**
81
+ [Brief summary of key findings from reflection]
82
+
83
+ ## Continous Learning
84
+ - Table with following columns
85
+ - Learning
86
86
  - Agent Rule Updates (what agent rule file was updated to ensure the learning is durable)
@@ -1,121 +1,121 @@
1
- # Feature: <Title>
2
- Issue: #<issue>
3
- Tech Spec: <Link to tech spec>
4
- PR: <Link to PR>
5
-
6
- ## Completeness Evidence
7
- - All phases of tech spec complete: Yes/No
8
- - Issue tagged with label `phase:impl`: Yes/No
9
- - Issue tagged with label `status:needs-review`: Yes/No
10
- - All files committed/synced to branch: Yes/No
11
- - Table with following columns
12
- - PR Comment
13
- - How Addressed
14
-
15
- ## Implementation Quality Checkpoints
16
- - [ ] Code complexity reviewed (no overengineering)
17
- - [ ] No resource waste (excessive retries, delays, workarounds)
18
- - [ ] Solution based on proven prototype from design phase
19
- - [ ] All new files/functions are actually used
20
-
21
- ## Validation Evidence
22
- - Complete validation performed as suggested in tech spec: Yes/No
23
- - **IMPORTANT**: Post full test output (not just "tests passing ✅")
24
- - Table with following columns
25
- - Validation Step (manual vs automated)
26
- - Validation Result (pass vs fail)
27
- - Failure Analysis (if fail)
28
-
29
- ### Example: Full Test Output
30
- ```
31
- 🚀 Starting Calendar-Goal Analysis API Tests
32
-
33
- Running 3 tests
34
- ✔ Edge case - no goals defined (67.8ms)
35
- ✔ Multi-tenancy data isolation (205.9ms)
36
- ✔ Full analysis flow (passed)
37
-
38
- ❌ Total Failed Tests: 0
39
- ```
40
-
41
- ### Example: Database Objects (if applicable)
42
- ```javascript
43
- {
44
- _id: ObjectId("68e81da2a87a1a0f91589023"),
45
- executive_id: "demo-exec-001",
46
- title: "Increase Enterprise Sales by 30%",
47
- timeframe: "QUARTERLY",
48
- priority: 9,
49
- status: "IN_PROGRESS"
50
- }
51
- ```
52
-
53
- ### Example: API Request/Response (if applicable)
54
- **Request:**
55
- ```http
56
- GET /executive-goals/calendar-analysis?timeframe=backward&period=7
57
- Headers:
58
- x-executive-id: demo-exec-001
59
- ```
60
-
61
- **Response (200 OK):**
62
- ```json
63
- {
64
- "success": true,
65
- "analysis": {
66
- "executive_id": "demo-exec-001",
67
- "total_calendar_hours": 7.5,
68
- "goal_breakdown": [
69
- {
70
- "goal_id": "68e81da2a87a1a0f91589025",
71
- "goal_title": "Launch AI Product Line",
72
- "total_hours": 2.5,
73
- "percentage": 33.3,
74
- "meeting_ids": ["event-002", "event-007"]
75
- }
76
- ]
77
- }
78
- }
79
- ```
80
-
81
- ## New Files/Functions Created
82
- - Table with the following columns
83
- - File/Function Name
84
- - Purpose
85
- - Who is using/importing/calling it
86
- - Is it actually used? (Yes/No - if No, explain why it exists)
87
-
88
- ## New Tests Added
89
- - Added all tests suggested in tech spec: Yes/No
90
- - Table with the following columns
91
- - Test Case Name
92
- - What is test case validating
93
- - Test Result (pass vs fail)
94
- - Failure Analysis (if fail)
95
-
96
- ## Existing Test Suites Run
97
- - Table with following columns
98
- - Test Suite
99
- - Was it Run (if not, why not - it's ok to not run a suite if there is no impact of your work to it as covered in agent-testing-guidelines.md)
100
- - Failing Tests
101
- - Failure Analysis (if any tests fail)
102
-
103
-
104
- ## Pre-Completion Reflection
105
-
106
- [Include reflection analysis here following `get_fraim_file({ path: "rules/mandatory-pre-completion-reflection.md" })`]
107
-
108
- ✅ Reflection Phase 1 (Claim Verification) completed: YES/NO
109
- ✅ Reflection Phase 2 (Risk Analysis) completed: YES/NO
110
- ✅ Reflection Phase 3 (Validation Plan Check) completed: YES/NO
111
- ✅ Reflection Phase 4 (Self-Audit) completed: YES/NO
112
- ✅ All blockers from reflection addressed: YES/NO
113
- ✅ Confidence level: X% (must be ≥ 90% to proceed)
114
-
115
- **Reflection Summary:**
116
- [Brief summary of key findings from reflection]
117
-
118
- ## Continous Learning
119
- - Table with following columns
120
- - Learning
1
+ # Feature: <Title>
2
+ Issue: #<issue>
3
+ Tech Spec: <Link to tech spec>
4
+ PR: <Link to PR>
5
+
6
+ ## Completeness Evidence
7
+ - All phases of tech spec complete: Yes/No
8
+ - Issue tagged with label `phase:impl`: Yes/No
9
+ - Issue tagged with label `status:needs-review`: Yes/No
10
+ - All files committed/synced to branch: Yes/No
11
+ - Table with following columns
12
+ - PR Comment
13
+ - How Addressed
14
+
15
+ ## Implementation Quality Checkpoints
16
+ - [ ] Code complexity reviewed (no overengineering)
17
+ - [ ] No resource waste (excessive retries, delays, workarounds)
18
+ - [ ] Solution based on proven prototype from design phase
19
+ - [ ] All new files/functions are actually used
20
+
21
+ ## Validation Evidence
22
+ - Complete validation performed as suggested in tech spec: Yes/No
23
+ - **IMPORTANT**: Post full test output (not just "tests passing ✅")
24
+ - Table with following columns
25
+ - Validation Step (manual vs automated)
26
+ - Validation Result (pass vs fail)
27
+ - Failure Analysis (if fail)
28
+
29
+ ### Example: Full Test Output
30
+ ```
31
+ 🚀 Starting Calendar-Goal Analysis API Tests
32
+
33
+ Running 3 tests
34
+ ✔ Edge case - no goals defined (67.8ms)
35
+ ✔ Multi-tenancy data isolation (205.9ms)
36
+ ✔ Full analysis flow (passed)
37
+
38
+ ❌ Total Failed Tests: 0
39
+ ```
40
+
41
+ ### Example: Database Objects (if applicable)
42
+ ```javascript
43
+ {
44
+ _id: ObjectId("68e81da2a87a1a0f91589023"),
45
+ executive_id: "demo-exec-001",
46
+ title: "Increase Enterprise Sales by 30%",
47
+ timeframe: "QUARTERLY",
48
+ priority: 9,
49
+ status: "IN_PROGRESS"
50
+ }
51
+ ```
52
+
53
+ ### Example: API Request/Response (if applicable)
54
+ **Request:**
55
+ ```http
56
+ GET /executive-goals/calendar-analysis?timeframe=backward&period=7
57
+ Headers:
58
+ x-executive-id: demo-exec-001
59
+ ```
60
+
61
+ **Response (200 OK):**
62
+ ```json
63
+ {
64
+ "success": true,
65
+ "analysis": {
66
+ "executive_id": "demo-exec-001",
67
+ "total_calendar_hours": 7.5,
68
+ "goal_breakdown": [
69
+ {
70
+ "goal_id": "68e81da2a87a1a0f91589025",
71
+ "goal_title": "Launch AI Product Line",
72
+ "total_hours": 2.5,
73
+ "percentage": 33.3,
74
+ "meeting_ids": ["event-002", "event-007"]
75
+ }
76
+ ]
77
+ }
78
+ }
79
+ ```
80
+
81
+ ## New Files/Functions Created
82
+ - Table with the following columns
83
+ - File/Function Name
84
+ - Purpose
85
+ - Who is using/importing/calling it
86
+ - Is it actually used? (Yes/No - if No, explain why it exists)
87
+
88
+ ## New Tests Added
89
+ - Added all tests suggested in tech spec: Yes/No
90
+ - Table with the following columns
91
+ - Test Case Name
92
+ - What is test case validating
93
+ - Test Result (pass vs fail)
94
+ - Failure Analysis (if fail)
95
+
96
+ ## Existing Test Suites Run
97
+ - Table with following columns
98
+ - Test Suite
99
+ - Was it Run (if not, why not - it's ok to not run a suite if there is no impact of your work to it as covered in agent-testing-guidelines.md)
100
+ - Failing Tests
101
+ - Failure Analysis (if any tests fail)
102
+
103
+
104
+ ## Pre-Completion Reflection
105
+
106
+ [Include reflection analysis here following `get_fraim_file({ path: "rules/mandatory-pre-completion-reflection.md" })`]
107
+
108
+ ✅ Reflection Phase 1 (Claim Verification) completed: YES/NO
109
+ ✅ Reflection Phase 2 (Risk Analysis) completed: YES/NO
110
+ ✅ Reflection Phase 3 (Validation Plan Check) completed: YES/NO
111
+ ✅ Reflection Phase 4 (Self-Audit) completed: YES/NO
112
+ ✅ All blockers from reflection addressed: YES/NO
113
+ ✅ Confidence level: X% (must be ≥ 90% to proceed)
114
+
115
+ **Reflection Summary:**
116
+ [Brief summary of key findings from reflection]
117
+
118
+ ## Continous Learning
119
+ - Table with following columns
120
+ - Learning
121
121
  - Agent Rule Updates (what agent rule file was updated to ensure the learning is durable)