fraim-framework 2.0.67 β 2.0.69
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/bin/fraim.js +1 -1
- package/dist/src/cli/commands/doctor.js +1 -1
- package/dist/src/cli/commands/init-project.js +6 -12
- package/dist/src/cli/commands/list.js +1 -1
- package/dist/src/cli/commands/setup.js +15 -29
- package/dist/src/cli/commands/sync.js +36 -143
- package/dist/src/cli/fraim.js +0 -4
- package/dist/src/cli/setup/first-run.js +4 -4
- package/dist/src/cli/setup/ide-detector.js +15 -5
- package/dist/src/fraim/template-processor.js +7 -35
- package/dist/src/local-mcp-server/stdio-server.js +170 -181
- package/dist/src/utils/git-utils.js +2 -2
- package/dist/src/utils/object-utils.js +11 -0
- package/dist/src/utils/provider-utils.js +14 -0
- package/dist/src/utils/request-utils.js +23 -0
- package/dist/src/utils/workflow-parser.js +7 -7
- package/package.json +7 -5
- package/dist/registry/ai-manager-rules/customer-development-phases/phase1-customer-profiling.md +0 -101
- package/dist/registry/ai-manager-rules/customer-development-phases/phase2-platform-discovery.md +0 -235
- package/dist/registry/ai-manager-rules/customer-development-phases/phase3-prospect-qualification.md +0 -243
- package/dist/registry/ai-manager-rules/customer-development-phases/phase4-inventory-compilation.md +0 -206
- package/dist/registry/ai-manager-rules/design-phases/design-completeness-review.md +0 -73
- package/dist/registry/ai-manager-rules/design-phases/design-design.md +0 -145
- package/dist/registry/ai-manager-rules/design-phases/design.md +0 -108
- package/dist/registry/ai-manager-rules/design-phases/finalize.md +0 -60
- package/dist/registry/ai-manager-rules/design-phases/validate.md +0 -125
- package/dist/registry/ai-manager-rules/design.json +0 -97
- package/dist/registry/ai-manager-rules/implement-phases/code.md +0 -323
- package/dist/registry/ai-manager-rules/implement-phases/completeness-review.md +0 -94
- package/dist/registry/ai-manager-rules/implement-phases/finalize.md +0 -177
- package/dist/registry/ai-manager-rules/implement-phases/implement-code.md +0 -283
- package/dist/registry/ai-manager-rules/implement-phases/implement-completeness-review.md +0 -120
- package/dist/registry/ai-manager-rules/implement-phases/implement-regression.md +0 -173
- package/dist/registry/ai-manager-rules/implement-phases/implement-repro.md +0 -104
- package/dist/registry/ai-manager-rules/implement-phases/implement-scoping.md +0 -100
- package/dist/registry/ai-manager-rules/implement-phases/implement-smoke.md +0 -237
- package/dist/registry/ai-manager-rules/implement-phases/implement-spike.md +0 -121
- package/dist/registry/ai-manager-rules/implement-phases/implement-validate.md +0 -375
- package/dist/registry/ai-manager-rules/implement-phases/quality-review.md +0 -304
- package/dist/registry/ai-manager-rules/implement-phases/regression.md +0 -159
- package/dist/registry/ai-manager-rules/implement-phases/repro.md +0 -101
- package/dist/registry/ai-manager-rules/implement-phases/scoping.md +0 -93
- package/dist/registry/ai-manager-rules/implement-phases/smoke.md +0 -225
- package/dist/registry/ai-manager-rules/implement-phases/spike.md +0 -118
- package/dist/registry/ai-manager-rules/implement-phases/validate.md +0 -347
- package/dist/registry/ai-manager-rules/implement.json +0 -153
- package/dist/registry/ai-manager-rules/retrospective.md +0 -116
- package/dist/registry/ai-manager-rules/shared-phases/address-pr-feedback.md +0 -188
- package/dist/registry/ai-manager-rules/shared-phases/finalize.md +0 -169
- package/dist/registry/ai-manager-rules/shared-phases/submit-pr.md +0 -202
- package/dist/registry/ai-manager-rules/shared-phases/wait-for-pr-review.md +0 -170
- package/dist/registry/ai-manager-rules/spec-phases/finalize.md +0 -60
- package/dist/registry/ai-manager-rules/spec-phases/spec-competitor-analysis.md +0 -105
- package/dist/registry/ai-manager-rules/spec-phases/spec-completeness-review.md +0 -66
- package/dist/registry/ai-manager-rules/spec-phases/spec-spec.md +0 -139
- package/dist/registry/ai-manager-rules/spec-phases/spec.md +0 -102
- package/dist/registry/ai-manager-rules/spec-phases/validate.md +0 -118
- package/dist/registry/ai-manager-rules/spec.json +0 -112
- package/dist/registry/ai-manager-rules/test.json +0 -98
- package/dist/registry/ai-manager-rules/user-survey-phases/phase1-survey-scoping.md +0 -60
- package/dist/registry/ai-manager-rules/user-survey-phases/phase2-survey-build-linkedin.md +0 -23
- package/dist/registry/ai-manager-rules/user-survey-phases/phase3-survey-build-reddit.md +0 -22
- package/dist/registry/ai-manager-rules/user-survey-phases/phase4-survey-build-x.md +0 -21
- package/dist/registry/ai-manager-rules/user-survey-phases/phase5-survey-build-facebook.md +0 -19
- package/dist/registry/ai-manager-rules/user-survey-phases/phase6-survey-build-custom.md +0 -15
- package/dist/registry/ai-manager-rules/user-survey-phases/phase7-survey-dispatch.md +0 -45
- package/dist/registry/delivery/address-feedback.md +0 -83
- package/dist/registry/delivery/retrospective.md +0 -78
- package/dist/registry/delivery/submit.md +0 -79
- package/dist/registry/providers/ado.json +0 -19
- package/dist/registry/providers/delivery-conversation.json +0 -9
- package/dist/registry/providers/delivery-pr.json +0 -9
- package/dist/registry/providers/github.json +0 -19
- package/dist/registry/rules/agent-success-criteria.md +0 -101
- package/dist/registry/rules/agent-testing-guidelines.md +0 -502
- package/dist/registry/rules/architecture.md +0 -126
- package/dist/registry/rules/communication.md +0 -122
- package/dist/registry/rules/continuous-learning.md +0 -55
- package/dist/registry/rules/debugging-multitenancy-issues.md +0 -85
- package/dist/registry/rules/ephemeral-execution.md +0 -54
- package/dist/registry/rules/git-safe-commands.md +0 -34
- package/dist/registry/rules/hitl-ppe-record-analysis.md +0 -302
- package/dist/registry/rules/integrity-and-test-ethics.md +0 -275
- package/dist/registry/rules/local-development.md +0 -275
- package/dist/registry/rules/mandatory-pre-completion-reflection.md +0 -193
- package/dist/registry/rules/merge-requirements.md +0 -238
- package/dist/registry/rules/simplicity.md +0 -118
- package/dist/registry/rules/software-development-lifecycle.md +0 -105
- package/dist/registry/rules/spike-first-development.md +0 -205
- package/dist/registry/rules/successful-debugging-patterns.md +0 -488
- package/dist/registry/scripts/build-scripts-generator.js +0 -205
- package/dist/registry/scripts/cleanup-branch.js +0 -287
- package/dist/registry/scripts/evaluate-code-quality.js +0 -66
- package/dist/registry/scripts/exec-with-timeout.js +0 -142
- package/dist/registry/scripts/fraim-config.js +0 -61
- package/dist/registry/scripts/generate-engagement-emails.js +0 -705
- package/dist/registry/scripts/generic-issues-api.js +0 -100
- package/dist/registry/scripts/newsletter-helpers.js +0 -671
- package/dist/registry/scripts/openapi-generator.js +0 -664
- package/dist/registry/scripts/performance/profile-server.js +0 -390
- package/dist/registry/scripts/profile-server.js +0 -389
- package/dist/registry/scripts/run-thank-you-workflow.js +0 -92
- package/dist/registry/scripts/send-newsletter-simple.js +0 -85
- package/dist/registry/scripts/send-thank-you-emails.js +0 -54
- package/dist/registry/scripts/validate-openapi-limits.js +0 -311
- package/dist/registry/scripts/validate-test-coverage.js +0 -262
- package/dist/registry/scripts/verify-test-coverage.js +0 -66
- package/dist/registry/stubs/workflows/azure/cost-optimization.md +0 -11
- package/dist/registry/stubs/workflows/bootstrap/create-architecture.md +0 -11
- package/dist/registry/stubs/workflows/bootstrap/detect-broken-windows.md +0 -11
- package/dist/registry/stubs/workflows/bootstrap/evaluate-code-quality.md +0 -11
- package/dist/registry/stubs/workflows/bootstrap/verify-test-coverage.md +0 -11
- package/dist/registry/stubs/workflows/brainstorming/blue-sky-brainstorming.md +0 -11
- package/dist/registry/stubs/workflows/brainstorming/codebase-brainstorming.md +0 -11
- package/dist/registry/stubs/workflows/business-development/create-business-plan.md +0 -11
- package/dist/registry/stubs/workflows/business-development/ideate-business-opportunity.md +0 -11
- package/dist/registry/stubs/workflows/business-development/price-product.md +0 -18
- package/dist/registry/stubs/workflows/compliance/detect-compliance-requirements.md +0 -11
- package/dist/registry/stubs/workflows/compliance/generate-audit-evidence.md +0 -11
- package/dist/registry/stubs/workflows/compliance/soc2-evidence-generator.md +0 -11
- package/dist/registry/stubs/workflows/customer-development/insight-analysis.md +0 -11
- package/dist/registry/stubs/workflows/customer-development/insight-triage.md +0 -11
- package/dist/registry/stubs/workflows/customer-development/interview-preparation.md +0 -11
- package/dist/registry/stubs/workflows/customer-development/linkedin-outreach.md +0 -11
- package/dist/registry/stubs/workflows/customer-development/strategic-brainstorming.md +0 -11
- package/dist/registry/stubs/workflows/customer-development/thank-customers.md +0 -11
- package/dist/registry/stubs/workflows/customer-development/user-survey-dispatch.md +0 -11
- package/dist/registry/stubs/workflows/customer-development/users-to-target.md +0 -11
- package/dist/registry/stubs/workflows/customer-development/weekly-newsletter.md +0 -11
- package/dist/registry/stubs/workflows/deploy/cloud-deployment.md +0 -11
- package/dist/registry/stubs/workflows/improve-fraim/contribute.md +0 -11
- package/dist/registry/stubs/workflows/improve-fraim/file-issue.md +0 -11
- package/dist/registry/stubs/workflows/learning/build-skillset.md +0 -11
- package/dist/registry/stubs/workflows/learning/synthesize-learnings.md +0 -11
- package/dist/registry/stubs/workflows/legal/contract-review-analysis.md +0 -11
- package/dist/registry/stubs/workflows/legal/nda.md +0 -11
- package/dist/registry/stubs/workflows/legal/patent-filing.md +0 -11
- package/dist/registry/stubs/workflows/legal/saas-contract-development.md +0 -11
- package/dist/registry/stubs/workflows/legal/trademark-filing.md +0 -11
- package/dist/registry/stubs/workflows/marketing/content-creation.md +0 -11
- package/dist/registry/stubs/workflows/marketing/convert-to-pdf.md +0 -11
- package/dist/registry/stubs/workflows/marketing/create-modern-website.md +0 -11
- package/dist/registry/stubs/workflows/marketing/domain-registration.md +0 -11
- package/dist/registry/stubs/workflows/marketing/evangelize.md +0 -11
- package/dist/registry/stubs/workflows/marketing/hbr-article.md +0 -11
- package/dist/registry/stubs/workflows/marketing/launch-checklist.md +0 -11
- package/dist/registry/stubs/workflows/marketing/marketing-strategy.md +0 -11
- package/dist/registry/stubs/workflows/marketing/storytelling.md +0 -11
- package/dist/registry/stubs/workflows/performance/analyze-performance.md +0 -11
- package/dist/registry/stubs/workflows/product-building/design.md +0 -11
- package/dist/registry/stubs/workflows/product-building/implement.md +0 -11
- package/dist/registry/stubs/workflows/product-building/iterate-on-pr-comments.md +0 -11
- package/dist/registry/stubs/workflows/product-building/prep-issue.md +0 -11
- package/dist/registry/stubs/workflows/product-building/prototype.md +0 -11
- package/dist/registry/stubs/workflows/product-building/resolve.md +0 -11
- package/dist/registry/stubs/workflows/product-building/retrospect.md +0 -11
- package/dist/registry/stubs/workflows/product-building/spec.md +0 -11
- package/dist/registry/stubs/workflows/product-building/test.md +0 -11
- package/dist/registry/stubs/workflows/productivity-report/productivity-report.md +0 -11
- package/dist/registry/stubs/workflows/quality-assurance/browser-validation.md +0 -11
- package/dist/registry/stubs/workflows/quality-assurance/iterative-improvement-cycle.md +0 -11
- package/dist/registry/stubs/workflows/replicate/replicate-discovery.md +0 -11
- package/dist/registry/stubs/workflows/replicate/replicate-to-issues.md +0 -11
- package/dist/registry/stubs/workflows/reviewer/review-implementation-vs-design-spec.md +0 -11
- package/dist/registry/stubs/workflows/reviewer/review-implementation-vs-feature-spec.md +0 -11
- package/dist/registry/stubs/workflows/startup-credits/aws-activate-application.md +0 -11
- package/dist/registry/stubs/workflows/startup-credits/google-cloud-application.md +0 -11
- package/dist/registry/stubs/workflows/startup-credits/microsoft-azure-application.md +0 -11
- package/dist/registry/templates/bootstrap/ARCHITECTURE-TEMPLATE.md +0 -53
- package/dist/registry/templates/bootstrap/CODE-QUALITY-REPORT-TEMPLATE.md +0 -37
- package/dist/registry/templates/bootstrap/TEST-COVERAGE-REPORT-TEMPLATE.md +0 -35
- package/dist/registry/templates/business-development/IDEATION-REPORT-TEMPLATE.md +0 -29
- package/dist/registry/templates/business-development/PRICING-STRATEGY-TEMPLATE.md +0 -126
- package/dist/registry/templates/customer-development/customer-interview-template.md +0 -99
- package/dist/registry/templates/customer-development/customer-persona-template.md +0 -69
- package/dist/registry/templates/customer-development/follow-up-email-templates.md +0 -132
- package/dist/registry/templates/customer-development/insight-analysis-template.md +0 -74
- package/dist/registry/templates/customer-development/prospect-inventory-template.csv +0 -3
- package/dist/registry/templates/customer-development/search-strategy-template.md +0 -123
- package/dist/registry/templates/customer-development/strategic-recommendations-template.md +0 -53
- package/dist/registry/templates/customer-development/thank-you-email-template.html +0 -124
- package/dist/registry/templates/customer-development/thank-you-note-template.md +0 -16
- package/dist/registry/templates/customer-development/triage-log-template.md +0 -278
- package/dist/registry/templates/customer-development/weekly-newsletter-template.html +0 -204
- package/dist/registry/templates/evidence/Design-Evidence.md +0 -30
- package/dist/registry/templates/evidence/Implementation-BugEvidence.md +0 -122
- package/dist/registry/templates/evidence/Implementation-FeatureEvidence.md +0 -160
- package/dist/registry/templates/evidence/Spec-Evidence.md +0 -19
- package/dist/registry/templates/help/HelpNeeded.md +0 -14
- package/dist/registry/templates/legal/NDA-TEMPLATE.md +0 -170
- package/dist/registry/templates/legal/PATENT-TEMPLATE.md +0 -372
- package/dist/registry/templates/legal/TRADEMARK-TEMPLATE.md +0 -339
- package/dist/registry/templates/legal/contract-review-checklist.md +0 -193
- package/dist/registry/templates/legal/review-report-template.md +0 -198
- package/dist/registry/templates/legal/saas-terms-template.md +0 -174
- package/dist/registry/templates/legal/sow-template.md +0 -117
- package/dist/registry/templates/legal/template-variables.md +0 -131
- package/dist/registry/templates/marketing/DOMAIN-REGISTRATION-TEMPLATE.md +0 -194
- package/dist/registry/templates/marketing/EVANGELIZE-TEMPLATE.md +0 -102
- package/dist/registry/templates/marketing/HBR-ARTICLE-TEMPLATE.md +0 -66
- package/dist/registry/templates/marketing/STORYTELLING-TEMPLATE.md +0 -130
- package/dist/registry/templates/marketing/WEBSITE-TEMPLATE.md +0 -262
- package/dist/registry/templates/marketing/github-pages-workflow.yml +0 -64
- package/dist/registry/templates/replicate/implementation-checklist.md +0 -39
- package/dist/registry/templates/replicate/use-cases-template.md +0 -88
- package/dist/registry/templates/retrospective/RETROSPECTIVE-TEMPLATE.md +0 -55
- package/dist/registry/templates/specs/BUGSPEC-TEMPLATE.md +0 -37
- package/dist/registry/templates/specs/FEATURESPEC-TEMPLATE.md +0 -66
- package/dist/registry/templates/specs/TECHSPEC-TEMPLATE.md +0 -39
- package/dist/registry/workflows/azure/cost-optimization.md +0 -772
- package/dist/registry/workflows/bootstrap/create-architecture.md +0 -37
- package/dist/registry/workflows/bootstrap/detect-broken-windows.md +0 -300
- package/dist/registry/workflows/bootstrap/evaluate-code-quality.md +0 -35
- package/dist/registry/workflows/bootstrap/verify-test-coverage.md +0 -36
- package/dist/registry/workflows/brainstorming/blue-sky-brainstorming.md +0 -211
- package/dist/registry/workflows/brainstorming/codebase-brainstorming.md +0 -159
- package/dist/registry/workflows/business-development/create-business-plan.md +0 -737
- package/dist/registry/workflows/business-development/ideate-business-opportunity.md +0 -55
- package/dist/registry/workflows/business-development/price-product.md +0 -325
- package/dist/registry/workflows/compliance/detect-compliance-requirements.md +0 -80
- package/dist/registry/workflows/compliance/generate-audit-evidence.md +0 -80
- package/dist/registry/workflows/compliance/soc2-evidence-generator.md +0 -332
- package/dist/registry/workflows/customer-development/insight-analysis.md +0 -156
- package/dist/registry/workflows/customer-development/insight-triage.md +0 -933
- package/dist/registry/workflows/customer-development/interview-preparation.md +0 -452
- package/dist/registry/workflows/customer-development/linkedin-outreach.md +0 -599
- package/dist/registry/workflows/customer-development/strategic-brainstorming.md +0 -146
- package/dist/registry/workflows/customer-development/thank-customers.md +0 -203
- package/dist/registry/workflows/customer-development/user-survey-dispatch.md +0 -312
- package/dist/registry/workflows/customer-development/users-to-target.md +0 -427
- package/dist/registry/workflows/customer-development/weekly-newsletter.md +0 -366
- package/dist/registry/workflows/deploy/cloud-deployment.md +0 -310
- package/dist/registry/workflows/improve-fraim/contribute.md +0 -32
- package/dist/registry/workflows/improve-fraim/file-issue.md +0 -32
- package/dist/registry/workflows/learning/build-skillset.md +0 -212
- package/dist/registry/workflows/learning/synthesize-learnings.md +0 -369
- package/dist/registry/workflows/legal/contract-review-analysis.md +0 -382
- package/dist/registry/workflows/legal/nda.md +0 -69
- package/dist/registry/workflows/legal/patent-filing.md +0 -76
- package/dist/registry/workflows/legal/saas-contract-development.md +0 -204
- package/dist/registry/workflows/legal/trademark-filing.md +0 -77
- package/dist/registry/workflows/marketing/content-creation.md +0 -40
- package/dist/registry/workflows/marketing/convert-to-pdf.md +0 -265
- package/dist/registry/workflows/marketing/create-modern-website.md +0 -456
- package/dist/registry/workflows/marketing/domain-registration.md +0 -323
- package/dist/registry/workflows/marketing/evangelize.md +0 -426
- package/dist/registry/workflows/marketing/hbr-article.md +0 -73
- package/dist/registry/workflows/marketing/launch-checklist.md +0 -37
- package/dist/registry/workflows/marketing/marketing-strategy.md +0 -45
- package/dist/registry/workflows/marketing/storytelling.md +0 -65
- package/dist/registry/workflows/performance/analyze-performance.md +0 -65
- package/dist/registry/workflows/product-building/design.md +0 -263
- package/dist/registry/workflows/product-building/implement.md +0 -771
- package/dist/registry/workflows/product-building/iterate-on-pr-comments.md +0 -70
- package/dist/registry/workflows/product-building/prep-issue.md +0 -41
- package/dist/registry/workflows/product-building/prototype.md +0 -60
- package/dist/registry/workflows/product-building/resolve.md +0 -175
- package/dist/registry/workflows/product-building/retrospect.md +0 -86
- package/dist/registry/workflows/product-building/spec.md +0 -303
- package/dist/registry/workflows/product-building/test.md +0 -125
- package/dist/registry/workflows/productivity-report/productivity-report.md +0 -263
- package/dist/registry/workflows/quality-assurance/browser-validation.md +0 -221
- package/dist/registry/workflows/quality-assurance/iterative-improvement-cycle.md +0 -562
- package/dist/registry/workflows/replicate/replicate-discovery.md +0 -336
- package/dist/registry/workflows/replicate/replicate-to-issues.md +0 -319
- package/dist/registry/workflows/reviewer/review-implementation-vs-design-spec.md +0 -694
- package/dist/registry/workflows/reviewer/review-implementation-vs-feature-spec.md +0 -734
- package/dist/registry/workflows/startup-credits/aws-activate-application.md +0 -535
- package/dist/registry/workflows/startup-credits/google-cloud-application.md +0 -647
- package/dist/registry/workflows/startup-credits/microsoft-azure-application.md +0 -538
- package/dist/src/cli/commands/init.js +0 -148
- package/dist/src/cli/commands/mcp.js +0 -65
- package/dist/src/cli/commands/wizard.js +0 -35
- package/dist/src/fraim/issue-tracking/ado-provider.js +0 -304
- package/dist/src/fraim/issue-tracking/factory.js +0 -63
- package/dist/src/fraim/issue-tracking/github-provider.js +0 -200
- package/dist/src/fraim/issue-tracking/types.js +0 -7
- package/dist/src/fraim/issue-tracking-config.js +0 -83
- package/dist/src/fraim/retrospective-learner.js +0 -301
- package/dist/src/fraim/setup-wizard.js +0 -99
|
@@ -1,771 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
{
|
|
3
|
-
"name": "implement",
|
|
4
|
-
"initialPhase": "implement-scoping",
|
|
5
|
-
"phases": {
|
|
6
|
-
"implement-scoping": {
|
|
7
|
-
"onSuccess": {
|
|
8
|
-
"bug": "implement-repro",
|
|
9
|
-
"feature": "implement-spike",
|
|
10
|
-
"default": "implement-spike"
|
|
11
|
-
},
|
|
12
|
-
"onFailure": "implement-scoping"
|
|
13
|
-
},
|
|
14
|
-
"implement-repro": {
|
|
15
|
-
"onSuccess": "implement-code",
|
|
16
|
-
"onFailure": "implement-scoping"
|
|
17
|
-
},
|
|
18
|
-
"implement-spike": {
|
|
19
|
-
"onSuccess": "implement-code",
|
|
20
|
-
"onFailure": "implement-scoping"
|
|
21
|
-
},
|
|
22
|
-
"implement-code": {
|
|
23
|
-
"onSuccess": "implement-validate",
|
|
24
|
-
"onFailure": "implement-scoping"
|
|
25
|
-
},
|
|
26
|
-
"implement-validate": {
|
|
27
|
-
"onSuccess": "implement-smoke",
|
|
28
|
-
"onFailure": "implement-code"
|
|
29
|
-
},
|
|
30
|
-
"implement-smoke": {
|
|
31
|
-
"onSuccess": "implement-regression",
|
|
32
|
-
"onFailure": "implement-code"
|
|
33
|
-
},
|
|
34
|
-
"implement-regression": {
|
|
35
|
-
"onSuccess": "implement-completeness-review",
|
|
36
|
-
"onFailure": "implement-code"
|
|
37
|
-
},
|
|
38
|
-
"implement-completeness-review": {
|
|
39
|
-
"onSuccess": "submit",
|
|
40
|
-
"onFailure": "implement-validate"
|
|
41
|
-
},
|
|
42
|
-
"submit": {
|
|
43
|
-
"onSuccess": "address-feedback",
|
|
44
|
-
"onFailure": "submit"
|
|
45
|
-
},
|
|
46
|
-
"address-feedback": {
|
|
47
|
-
"onSuccess": "retrospective",
|
|
48
|
-
"onFailure": "implement-validate"
|
|
49
|
-
},
|
|
50
|
-
"retrospective": {
|
|
51
|
-
"onSuccess": null,
|
|
52
|
-
"onFailure": null
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
---
|
|
57
|
-
# FRAIM Workflow: implement
|
|
58
|
-
|
|
59
|
-
## Workflow Activation
|
|
60
|
-
When you are assigned an issue to implement, START here:
|
|
61
|
-
|
|
62
|
-
```javascript
|
|
63
|
-
seekMentoring({
|
|
64
|
-
workflowType: "implement",
|
|
65
|
-
issueNumber: "{issue_number}",
|
|
66
|
-
currentPhase: "implement-scoping",
|
|
67
|
-
status: "starting"
|
|
68
|
-
})
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
## Intent
|
|
72
|
-
To implement bug fixes and features using a phase-based approach guided by the AI Mentor, ensuring high-quality, tested code that meets requirements.
|
|
73
|
-
|
|
74
|
-
## Overview
|
|
75
|
-
This workflow guides you through the complete software development lifecycle within FRAIM, from initial scoping to final completeness review.
|
|
76
|
-
|
|
77
|
-
### Prerequisites
|
|
78
|
-
- Active feature branch
|
|
79
|
-
- Clear understanding of the issue/task
|
|
80
|
-
|
|
81
|
-
---
|
|
82
|
-
|
|
83
|
-
## Phase: implement-scoping
|
|
84
|
-
|
|
85
|
-
### INTENT
|
|
86
|
-
To understand the issue requirements, identify all relevant documents, and determine if it's a bug fix or a new feature.
|
|
87
|
-
|
|
88
|
-
### OUTCOME
|
|
89
|
-
- Clear understanding of the problem or feature
|
|
90
|
-
- Identified all relevant files and documents (RFCs, design specs, etc.)
|
|
91
|
-
- Confirmed issue type (bug vs feature)
|
|
92
|
-
- Initial plan for implementation
|
|
93
|
-
- Ready to proceed to repro (bugs) or spike (features)
|
|
94
|
-
|
|
95
|
-
### PRINCIPLES
|
|
96
|
-
- **Thorough Understanding**: Read everything first. Don't guess.
|
|
97
|
-
- **Identify Dependencies**: Know what files you need to touch.
|
|
98
|
-
- **Ask Early**: If requirements are vague, escalate to the user immediately.
|
|
99
|
-
|
|
100
|
-
### RULES FOR THIS PHASE
|
|
101
|
-
|
|
102
|
-
#### Success Criteria
|
|
103
|
-
Read `rules/agent-success-criteria.md` via `get_fraim_file` for criteria. Focus on **Integrity** and **Correctness**.
|
|
104
|
-
|
|
105
|
-
#### Simplicity Principles
|
|
106
|
-
Read `rules/simplicity.md` via `get_fraim_file`. Apply "Understand First" and "Ask for Clarification" rules.
|
|
107
|
-
|
|
108
|
-
#### Architecture Compliance
|
|
109
|
-
Read the architecture document at {{config.customizations.architectureDoc | "Search for architecture documents in docs/architecture/ or broader if not found there"}} to understand standards.
|
|
110
|
-
|
|
111
|
-
### WORKFLOW
|
|
112
|
-
|
|
113
|
-
#### Step 1: Review Issue
|
|
114
|
-
Read the full issue description using {{get_issue}}. Note all requirements and constraints.
|
|
115
|
-
|
|
116
|
-
#### Step 2: Identify Documents
|
|
117
|
-
Identify any linked RFCs, design documents, or technical specifications. Read them thoroughly using `mcp.fraim.get_fraim_file` or `view_file`.
|
|
118
|
-
|
|
119
|
-
#### Step 3: Determine Issue Type
|
|
120
|
-
- **Bug**: Broken existing functionality. Requires a reproduction test.
|
|
121
|
-
- **Feature**: New functionality. May require a spike/POC.
|
|
122
|
-
|
|
123
|
-
#### Step 4: Create Implementation Checklist from Design
|
|
124
|
-
|
|
125
|
-
**CRITICAL**: If there's a design document (RFC, TECHSPEC, FEATURESPEC), create a comprehensive checklist of ALL components to implement.
|
|
126
|
-
|
|
127
|
-
**Process**:
|
|
128
|
-
1. **Read the FULL design document** - Don't skip sections
|
|
129
|
-
2. **Extract all "Changes" sections** - List every file to create/modify
|
|
130
|
-
3. **Extract all new features** - List every endpoint, API, function
|
|
131
|
-
4. **Extract all configuration changes** - List every config field
|
|
132
|
-
5. **Extract all test requirements** - List every test suite needed
|
|
133
|
-
|
|
134
|
-
**Checklist Format**:
|
|
135
|
-
```markdown
|
|
136
|
-
## Implementation Checklist (from Design)
|
|
137
|
-
|
|
138
|
-
**Design Document**: [path to RFC/spec]
|
|
139
|
-
|
|
140
|
-
### Part 1: [Component Name]
|
|
141
|
-
- [ ] File: path/to/file.ts - [what needs to be done]
|
|
142
|
-
- [ ] File: path/to/test.ts - [test description]
|
|
143
|
-
- [ ] Config: .fraim/config.json - [new fields]
|
|
144
|
-
|
|
145
|
-
### Part 2: [Component Name]
|
|
146
|
-
- [ ] File: path/to/file.ts - [what needs to be done]
|
|
147
|
-
- [ ] Endpoint: POST /api/endpoint - [description]
|
|
148
|
-
|
|
149
|
-
### Part 3: [Component Name]
|
|
150
|
-
...
|
|
151
|
-
|
|
152
|
-
**Total Items**: X
|
|
153
|
-
**Estimated Complexity**: [Small <5 items | Medium 5-15 items | Large >15 items]
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
**If checklist has >15 items**:
|
|
157
|
-
- Discuss with user about phasing the work
|
|
158
|
-
- Consider breaking into multiple issues
|
|
159
|
-
- Document which parts are in scope for this issue
|
|
160
|
-
|
|
161
|
-
**Save this checklist** - You'll reference it throughout implementation and review phases.
|
|
162
|
-
|
|
163
|
-
#### Step 5: List Uncertainties
|
|
164
|
-
If any requirement is unclear, list them as findings and ask the user for clarification.
|
|
165
|
-
|
|
166
|
-
### VALIDATION
|
|
167
|
-
- β
Issue type determined (bug vs feature)
|
|
168
|
-
- β
All requirements understood
|
|
169
|
-
- β
All relevant documents identified
|
|
170
|
-
- β
**Implementation checklist created** (if design doc exists)
|
|
171
|
-
- β
No blocking uncertainties remain
|
|
172
|
-
|
|
173
|
-
### Report Back:
|
|
174
|
-
When you complete this phase, call:
|
|
175
|
-
|
|
176
|
-
```javascript
|
|
177
|
-
seekMentoring({
|
|
178
|
-
workflowType: "implement",
|
|
179
|
-
issueNumber: "{issue_number}",
|
|
180
|
-
currentPhase: "implement-scoping",
|
|
181
|
-
status: "complete",
|
|
182
|
-
findings: {
|
|
183
|
-
issueType: "bug", // or "feature"
|
|
184
|
-
requirements: "Summary of what needs to be done",
|
|
185
|
-
implementationChecklist: "Markdown checklist of all components to implement (if design doc exists)",
|
|
186
|
-
uncertainties: ["List any remaining questions for the user"]
|
|
187
|
-
}
|
|
188
|
-
})
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
---
|
|
192
|
-
|
|
193
|
-
## Phase: implement-repro
|
|
194
|
-
|
|
195
|
-
### INTENT
|
|
196
|
-
To create a failing test that reproduces the reported bug, confirming the root cause before fixing it.
|
|
197
|
-
|
|
198
|
-
### OUTCOME
|
|
199
|
-
A test case that consistently fails due to the bug described in the issue.
|
|
200
|
-
|
|
201
|
-
### WORKFLOW
|
|
202
|
-
|
|
203
|
-
#### Step 1: Understand Failure
|
|
204
|
-
Review the bug description and any reproduction steps provided.
|
|
205
|
-
|
|
206
|
-
#### Step 2: Write Failing Test
|
|
207
|
-
Write a minimal test case that triggers the bug. Name it: `test: reproduces bug #{issue_number} - {description}`.
|
|
208
|
-
|
|
209
|
-
#### Step 3: Verify Failure
|
|
210
|
-
Run the test and verify it fails as expected. Document the error message.
|
|
211
|
-
|
|
212
|
-
### Report Back:
|
|
213
|
-
When you complete this phase, call:
|
|
214
|
-
|
|
215
|
-
```javascript
|
|
216
|
-
seekMentoring({
|
|
217
|
-
workflowType: "implement",
|
|
218
|
-
issueNumber: "{issue_number}",
|
|
219
|
-
currentPhase: "implement-repro",
|
|
220
|
-
status: "complete",
|
|
221
|
-
evidence: {
|
|
222
|
-
testPath: "path/to/repro/test.test.ts",
|
|
223
|
-
errorMessage: "Exact error message from the failure",
|
|
224
|
-
reproSteps: "Steps to reproduce"
|
|
225
|
-
}
|
|
226
|
-
})
|
|
227
|
-
```
|
|
228
|
-
|
|
229
|
-
---
|
|
230
|
-
|
|
231
|
-
## Phase: implement-spike
|
|
232
|
-
|
|
233
|
-
### INTENT
|
|
234
|
-
To build a proof-of-concept that validates the technical approach, tests uncertain or risky aspects, and confirms the design is viable before full implementation.
|
|
235
|
-
|
|
236
|
-
### OUTCOME
|
|
237
|
-
A working POC that:
|
|
238
|
-
- Validates key technical assumptions
|
|
239
|
-
- Tests risky or uncertain aspects
|
|
240
|
-
- Gets user approval
|
|
241
|
-
- Informs any necessary design updates
|
|
242
|
-
|
|
243
|
-
### PRINCIPLES
|
|
244
|
-
- **Spike-First Development**: Follow the spike-first rule for unfamiliar technology
|
|
245
|
-
- **Risk Reduction**: Focus on highest-risk or most uncertain aspects
|
|
246
|
-
- **Quick Validation**: Build minimal POC, not production code
|
|
247
|
-
- **User Approval**: Get explicit approval before proceeding
|
|
248
|
-
- **Design Updates**: Update design doc with findings
|
|
249
|
-
|
|
250
|
-
### WORKFLOW
|
|
251
|
-
|
|
252
|
-
#### Step 1: Review Design Document
|
|
253
|
-
- Read the technical design/RFC thoroughly
|
|
254
|
-
- Identify technical assumptions
|
|
255
|
-
- Note any unfamiliar technologies or patterns
|
|
256
|
-
- List risky or uncertain aspects
|
|
257
|
-
|
|
258
|
-
#### Step 2: Identify Spike Scope
|
|
259
|
-
**Focus on:**
|
|
260
|
-
- Unfamiliar technology or libraries
|
|
261
|
-
- Integration points with external systems
|
|
262
|
-
- Performance-critical components
|
|
263
|
-
- Complex algorithms or logic
|
|
264
|
-
- Uncertain technical feasibility
|
|
265
|
-
|
|
266
|
-
#### Step 3: Build Proof-of-Concept
|
|
267
|
-
- Create minimal code to test assumptions
|
|
268
|
-
- Focus on proving/disproving technical approach
|
|
269
|
-
- Don't worry about production quality
|
|
270
|
-
- Document what you're testing
|
|
271
|
-
|
|
272
|
-
#### Step 4: Test Key Assumptions
|
|
273
|
-
- Run the POC
|
|
274
|
-
- Verify it works as expected
|
|
275
|
-
- Test edge cases if relevant
|
|
276
|
-
- Document findings
|
|
277
|
-
|
|
278
|
-
#### Step 5: Get User Approval
|
|
279
|
-
- Present POC to user
|
|
280
|
-
- Explain what was validated
|
|
281
|
-
- Share any findings or concerns
|
|
282
|
-
- **Wait for explicit approval** before proceeding
|
|
283
|
-
|
|
284
|
-
#### Step 6: Update Design Document
|
|
285
|
-
If POC revealed:
|
|
286
|
-
- Better approaches
|
|
287
|
-
- Technical constraints
|
|
288
|
-
- Performance considerations
|
|
289
|
-
- Integration challenges
|
|
290
|
-
|
|
291
|
-
**Update the design document** with findings
|
|
292
|
-
|
|
293
|
-
### Report Back:
|
|
294
|
-
When you complete this phase, call:
|
|
295
|
-
|
|
296
|
-
```javascript
|
|
297
|
-
seekMentoring({
|
|
298
|
-
workflowType: "implement",
|
|
299
|
-
issueNumber: "{issue_number}",
|
|
300
|
-
currentPhase: "implement-spike",
|
|
301
|
-
status: "complete",
|
|
302
|
-
evidence: {
|
|
303
|
-
spikePath: "path/to/spike",
|
|
304
|
-
validatedAssumptions: ["Assumption 1", "Assumption 2"],
|
|
305
|
-
userApprovalReceived: true
|
|
306
|
-
}
|
|
307
|
-
})
|
|
308
|
-
```
|
|
309
|
-
|
|
310
|
-
---
|
|
311
|
-
|
|
312
|
-
## Phase: implement-code
|
|
313
|
-
|
|
314
|
-
### INTENT
|
|
315
|
-
To write the minimal, testable code needed to fix the bug or implement the feature, following approved designs and established patterns.
|
|
316
|
-
|
|
317
|
-
### OUTCOME
|
|
318
|
-
Working implementation that:
|
|
319
|
-
- Fixes the bug or implements the feature
|
|
320
|
-
- Follows approved design/RFC
|
|
321
|
-
- Includes comprehensive tests
|
|
322
|
-
- Maintains code quality
|
|
323
|
-
- Is ready for validation
|
|
324
|
-
|
|
325
|
-
### π― SUCCESS MINDSET
|
|
326
|
-
|
|
327
|
-
**Your Goal**: Working application that users can actually use, not just passing tests.
|
|
328
|
-
|
|
329
|
-
**Critical Success Factors**:
|
|
330
|
-
- π **Manual validation is MANDATORY** - You WILL test in browser/API/CLI manually
|
|
331
|
-
- β οΈ **Every error must be investigated** - No assumptions, no "that's probably fine"
|
|
332
|
-
- π« **No placeholder code** - Implement complete solutions, no task placeholders or "for now" comments
|
|
333
|
-
- π **100% test success required** - 91% is failure, 99% is failure, only 100% is success
|
|
334
|
-
- ποΈ **Prototype-first** - Build simplest end-to-end solution, then engineer it properly
|
|
335
|
-
|
|
336
|
-
### RULES FOR THIS PHASE
|
|
337
|
-
|
|
338
|
-
#### Success Criteria
|
|
339
|
-
Read `rules/agent-success-criteria.md` via `get_fraim_file`. Focus on:
|
|
340
|
-
- **Integrity** (never claim tests pass if you didn't run them)
|
|
341
|
-
- **Correctness** (follow architecture, tests must pass, no `any` types)
|
|
342
|
-
- **Completeness** (implement everything in the issue description)
|
|
343
|
-
|
|
344
|
-
#### Simplicity Principles
|
|
345
|
-
Read `rules/simplicity.md`. Critical:
|
|
346
|
-
- **Prototype-First Development**: Build simplest solution that works end-to-end, validate manually, then engineer correctly
|
|
347
|
-
- **Manual Validation Required**: Test with browser/curl before creating automated tests
|
|
348
|
-
- **NEVER use placeholder comments** like "For now", "task placeholders", "fix-me notes"
|
|
349
|
-
|
|
350
|
-
#### Architecture Compliance
|
|
351
|
-
Read the architecture document at {{config.customizations.architectureDoc | "Search for architecture documents in docs/architecture/ or broader if not found there"}} to understand standards.
|
|
352
|
-
|
|
353
|
-
### π WORKFLOW
|
|
354
|
-
|
|
355
|
-
{{include:orchestration/parallelization-guidance.md}}
|
|
356
|
-
|
|
357
|
-
#### Step 0: Create Standing Work List
|
|
358
|
-
|
|
359
|
-
**CRITICAL**: Before starting implementation, create a standing work list that you'll maintain throughout the phase.
|
|
360
|
-
|
|
361
|
-
**If you have an implementation checklist from scoping**:
|
|
362
|
-
- Copy it here as your work list
|
|
363
|
-
- This is your source of truth for what needs to be done
|
|
364
|
-
|
|
365
|
-
**If no checklist exists**:
|
|
366
|
-
- Create one now from the design/spec/issue
|
|
367
|
-
- List every file to create/modify
|
|
368
|
-
- List every test to write
|
|
369
|
-
- List every config change
|
|
370
|
-
|
|
371
|
-
**Work List Format**:
|
|
372
|
-
```markdown
|
|
373
|
-
## Standing Work List - Issue #{issue_number}
|
|
374
|
-
|
|
375
|
-
**Last Updated**: [timestamp]
|
|
376
|
-
|
|
377
|
-
### To Do
|
|
378
|
-
- [ ] File: path/to/file.ts - [description]
|
|
379
|
-
- [ ] Test: path/to/test.ts - [description]
|
|
380
|
-
- [ ] Config: .fraim/config.json - [fields]
|
|
381
|
-
|
|
382
|
-
### In Progress
|
|
383
|
-
- [ ] File: path/to/current.ts - [what you're working on now]
|
|
384
|
-
|
|
385
|
-
### Done
|
|
386
|
-
- [x] File: path/to/completed.ts - [completed work]
|
|
387
|
-
|
|
388
|
-
**Progress**: X/Y items complete (Z%)
|
|
389
|
-
```
|
|
390
|
-
|
|
391
|
-
**Maintain this list**:
|
|
392
|
-
- Update it as you work
|
|
393
|
-
- Move items from To Do β In Progress β Done
|
|
394
|
-
- Don't rathole on one item - work breadth-first when possible
|
|
395
|
-
- Reference it before calling seekMentoring
|
|
396
|
-
|
|
397
|
-
#### Step 1: Prototype-First Development
|
|
398
|
-
|
|
399
|
-
**Build Simplest End-to-End Solution**:
|
|
400
|
-
- Focus on getting something working, not perfect
|
|
401
|
-
- Don't worry about code quality initially
|
|
402
|
-
- Prove the approach works before optimizing
|
|
403
|
-
- Get basic functionality working first
|
|
404
|
-
|
|
405
|
-
**Manual Validation (CRITICAL)**:
|
|
406
|
-
- Test every step manually using browser/curl/CLI
|
|
407
|
-
- Verify each acceptance criteria works
|
|
408
|
-
- Take screenshots/capture output as evidence
|
|
409
|
-
- Fix any issues found immediately
|
|
410
|
-
|
|
411
|
-
#### Step 2: Review Design/Spec
|
|
412
|
-
|
|
413
|
-
**For Bugs:**
|
|
414
|
-
- Review bug description and repro test
|
|
415
|
-
- Understand root cause
|
|
416
|
-
- Plan minimal fix
|
|
417
|
-
|
|
418
|
-
**For Features:**
|
|
419
|
-
- Review approved RFC/design document
|
|
420
|
-
- Review spike/POC findings (if applicable)
|
|
421
|
-
- Understand all acceptance criteria
|
|
422
|
-
- Plan implementation approach
|
|
423
|
-
|
|
424
|
-
#### Step 3: Check for Design and PR Feedback
|
|
425
|
-
|
|
426
|
-
**CRITICAL**: Before implementing, check for feedback:
|
|
427
|
-
- **Design Review Feedback**: `docs/evidence/{issue_number}-design-reviewer-feedback.md`
|
|
428
|
-
- **Feature Review Feedback**: `docs/evidence/{issue_number}-feature-reviewer-feedback.md`
|
|
429
|
-
- **PR Review Feedback**: `docs/evidence/{issue_number}-implement-feedback.md`
|
|
430
|
-
|
|
431
|
-
**If any feedback exists:**
|
|
432
|
-
- **MUST address all UNADDRESSED items** before proceeding
|
|
433
|
-
- Update feedback files after addressing each item
|
|
434
|
-
- Change status from UNADDRESSED to ADDRESSED with resolution details
|
|
435
|
-
|
|
436
|
-
#### Step 4: Implement Changes
|
|
437
|
-
|
|
438
|
-
**For Bugs:**
|
|
439
|
-
- Make minimal changes to fix the issue
|
|
440
|
-
- Focus on root cause, not symptoms
|
|
441
|
-
- Avoid unrelated changes
|
|
442
|
-
- Keep diff small and focused
|
|
443
|
-
|
|
444
|
-
**For Features:**
|
|
445
|
-
- Implement all aspects from design/spec
|
|
446
|
-
- Follow existing patterns and architecture
|
|
447
|
-
- Create necessary files/modules
|
|
448
|
-
- Implement all API contracts
|
|
449
|
-
- No placeholder code for core functionality
|
|
450
|
-
|
|
451
|
-
**π Orchestration Guidance (Optional)**
|
|
452
|
-
|
|
453
|
-
If you have sub-agent or parallel execution capabilities, consider delegating independent components:
|
|
454
|
-
|
|
455
|
-
**When to parallelize:**
|
|
456
|
-
- Multiple independent components (API, UI, DB layers)
|
|
457
|
-
- Separate modules with no shared state
|
|
458
|
-
- Different technology stacks (frontend/backend)
|
|
459
|
-
|
|
460
|
-
**Orchestration principles:**
|
|
461
|
-
- Independence enables parallelization - if components don't depend on each other, they can be built in parallel
|
|
462
|
-
- Dependencies require sequencing - if Component B needs Component A's interface, build A first
|
|
463
|
-
- Maintain accountability - you (the host agent) remain responsible for integration and completeness
|
|
464
|
-
- Document your approach - include orchestration decisions in your evidence
|
|
465
|
-
|
|
466
|
-
**Example orchestration:**
|
|
467
|
-
```
|
|
468
|
-
Issue has 3 independent parts:
|
|
469
|
-
- Part 1: REST API endpoints (no UI dependencies)
|
|
470
|
-
- Part 2: React UI components (uses API contracts from design)
|
|
471
|
-
- Part 3: Database migrations (independent schema changes)
|
|
472
|
-
|
|
473
|
-
Orchestration decision: Parallelize Parts 1, 2, 3 since they're independent
|
|
474
|
-
Host agent: Integrate results, verify contracts match, run integration tests
|
|
475
|
-
```
|
|
476
|
-
|
|
477
|
-
**If you don't have these capabilities:** Simply implement sequentially as you normally would. This guidance is optional and capability-agnostic.
|
|
478
|
-
|
|
479
|
-
#### Step 5: Fix All Errors (MANDATORY)
|
|
480
|
-
|
|
481
|
-
**Error Investigation Requirements**:
|
|
482
|
-
- **Every error in logs must be investigated**
|
|
483
|
-
- **No error is "expected" until proven**
|
|
484
|
-
- **Fix root causes, not symptoms**
|
|
485
|
-
|
|
486
|
-
#### Step 6: Write Comprehensive Tests
|
|
487
|
-
|
|
488
|
-
**MANDATORY**: Every issue requires tests - no exceptions.
|
|
489
|
-
|
|
490
|
-
**For Bugs:**
|
|
491
|
-
- Verify repro test from implement-repro phase now passes
|
|
492
|
-
- Add additional edge case tests if needed
|
|
493
|
-
|
|
494
|
-
**For Features:**
|
|
495
|
-
- Write tests for all acceptance criteria
|
|
496
|
-
- Test main user scenarios
|
|
497
|
-
- Test edge cases
|
|
498
|
-
- Test error conditions
|
|
499
|
-
|
|
500
|
-
**Test Requirements:**
|
|
501
|
-
- Use shared-server-utils.ts for server tests
|
|
502
|
-
- Unique API keys per test
|
|
503
|
-
- Proper cleanup in finally blocks
|
|
504
|
-
- No individual server instances
|
|
505
|
-
- Tests must validate real functionality, not mocks
|
|
506
|
-
- No tests that default to passing
|
|
507
|
-
|
|
508
|
-
**π Orchestration Guidance (Optional)**
|
|
509
|
-
|
|
510
|
-
If you have sub-agent or parallel execution capabilities, consider delegating different test types:
|
|
511
|
-
|
|
512
|
-
**When to parallelize:**
|
|
513
|
-
- Unit tests (fast, isolated)
|
|
514
|
-
- Integration tests (moderate speed, some dependencies)
|
|
515
|
-
- E2E tests (slow, full system)
|
|
516
|
-
- Performance tests (resource-intensive)
|
|
517
|
-
|
|
518
|
-
**Orchestration principles:**
|
|
519
|
-
- Different test types can run in parallel - they validate different aspects
|
|
520
|
-
- Test creation can be parallelized - writing tests doesn't require running them first
|
|
521
|
-
- Test execution may have dependencies - E2E tests need working implementation
|
|
522
|
-
- Maintain accountability - you verify all tests pass and meet coverage requirements
|
|
523
|
-
|
|
524
|
-
**Example orchestration:**
|
|
525
|
-
```
|
|
526
|
-
Issue requires:
|
|
527
|
-
- 5 unit tests (fast, isolated)
|
|
528
|
-
- 3 integration tests (API + DB)
|
|
529
|
-
- 1 E2E test (full workflow)
|
|
530
|
-
|
|
531
|
-
Orchestration decision: Parallelize test creation
|
|
532
|
-
- Sub-agent A: Write unit tests
|
|
533
|
-
- Sub-agent B: Write integration tests
|
|
534
|
-
- Sub-agent C: Write E2E test
|
|
535
|
-
Host agent: Review all tests, run test suite, verify 100% pass rate
|
|
536
|
-
```
|
|
537
|
-
|
|
538
|
-
**If you don't have these capabilities:** Write tests sequentially as you normally would. This guidance is optional and capability-agnostic.
|
|
539
|
-
|
|
540
|
-
#### Step 7: Basic Compilation Check
|
|
541
|
-
|
|
542
|
-
**Verify code compiles:**
|
|
543
|
-
- Run build command: {{config.customizations.validation.buildCommand | "npm run build"}}
|
|
544
|
-
|
|
545
|
-
### Report Back:
|
|
546
|
-
When you complete this phase, call:
|
|
547
|
-
|
|
548
|
-
```javascript
|
|
549
|
-
seekMentoring({
|
|
550
|
-
workflowType: "implement",
|
|
551
|
-
issueNumber: "{issue_number}",
|
|
552
|
-
currentPhase: "implement-code",
|
|
553
|
-
status: "complete",
|
|
554
|
-
evidence: {
|
|
555
|
-
filesChanged: ["src/file1.ts", "src/file2.ts"],
|
|
556
|
-
testResults: "Pass/Fail summary",
|
|
557
|
-
manualValidationDone: true,
|
|
558
|
-
workListProgress: "X/Y items complete (Z%)",
|
|
559
|
-
remainingWork: ["List any deferred items with reasons"]
|
|
560
|
-
}
|
|
561
|
-
})
|
|
562
|
-
```
|
|
563
|
-
|
|
564
|
-
---
|
|
565
|
-
|
|
566
|
-
## Phase: implement-validate
|
|
567
|
-
|
|
568
|
-
### INTENT
|
|
569
|
-
To verify that the implementation works correctly by testing it in appropriate ways: browser testing for UI changes, API testing for backend changes, and command-line testing for CLI changes.
|
|
570
|
-
|
|
571
|
-
### OUTCOME
|
|
572
|
-
Confirmation that:
|
|
573
|
-
- Implementation works as expected
|
|
574
|
-
- All acceptance criteria are met
|
|
575
|
-
- Edge cases are handled
|
|
576
|
-
- No obvious bugs or issues
|
|
577
|
-
|
|
578
|
-
### π― VALIDATION MINDSET
|
|
579
|
-
This is THE critical phase where you prove your implementation actually works. No shortcuts, no assumptions.
|
|
580
|
-
|
|
581
|
-
### π MANDATORY VALIDATION STEPS
|
|
582
|
-
|
|
583
|
-
{{include:orchestration/parallelization-guidance.md}}
|
|
584
|
-
|
|
585
|
-
#### Step 1: Build and Compilation Check β
|
|
586
|
-
- Check TypeScript compilation: `npx tsc --noEmit --skipLibCheck`
|
|
587
|
-
- Run full build: `npm run build`
|
|
588
|
-
- Check for any 'as any' type bypassing: `grep -r "as any" src/`
|
|
589
|
-
|
|
590
|
-
#### Step 2: Test Suite Validation π
|
|
591
|
-
|
|
592
|
-
{{include:testing/test-execution-with-timeout.md}}
|
|
593
|
-
|
|
594
|
-
**CRITICAL**: You must run the COMPLETE test suite, including all existing tests, smoke tests, and any tests you created. Do not run only the tests you wrote.
|
|
595
|
-
- Run test suite: `npx tsx ~/.fraim/scripts/exec-with-timeout.ts --timeout 120 -- {{config.customizations.validation.testSuiteCommand | "npm test"}}`
|
|
596
|
-
|
|
597
|
-
#### Step 3: Manual Functionality Testing π§ͺ
|
|
598
|
-
- **UI**: Start server (`npm run dev`) and test in browser.
|
|
599
|
-
- **API**: Test endpoints with `curl`.
|
|
600
|
-
- **CLI**: Execute commands directly.
|
|
601
|
-
- **Document**: Steps performed, clicked/typed, results, and errors.
|
|
602
|
-
|
|
603
|
-
#### Step 4: Git and Code Quality Check π
|
|
604
|
-
- `git status` check.
|
|
605
|
-
- Remove debug code (`console.log`).
|
|
606
|
-
- Check for task placeholder comments.
|
|
607
|
-
|
|
608
|
-
#### Step 5: Bug/Feature Specific Validation
|
|
609
|
-
### Report Back:
|
|
610
|
-
When you complete this phase, call:
|
|
611
|
-
|
|
612
|
-
```javascript
|
|
613
|
-
seekMentoring({
|
|
614
|
-
workflowType: "implement",
|
|
615
|
-
issueNumber: "{issue_number}",
|
|
616
|
-
currentPhase: "implement-validate",
|
|
617
|
-
status: "complete",
|
|
618
|
-
evidence: {
|
|
619
|
-
manualTestScenarios: ["Scenario 1", "Scenario 2"],
|
|
620
|
-
testOutput: "Summary of manual validation",
|
|
621
|
-
buildSuccess: true
|
|
622
|
-
}
|
|
623
|
-
})
|
|
624
|
-
```
|
|
625
|
-
|
|
626
|
-
---
|
|
627
|
-
|
|
628
|
-
## Phase: implement-smoke
|
|
629
|
-
|
|
630
|
-
### INTENT
|
|
631
|
-
To run technical health checks ensuring the system is stable: build passes, all tests pass, git status is clean, and core functionality hasn't been broken.
|
|
632
|
-
|
|
633
|
-
{{include:orchestration/parallelization-guidance.md}}
|
|
634
|
-
|
|
635
|
-
### π MANDATORY TECHNICAL CHECKS
|
|
636
|
-
- **Build Check**: {{config.customizations.validation.buildCommand | "npm run build"}}
|
|
637
|
-
- **Smoke Test**: {{config.customizations.validation.smokeTestCommand | "Run core functionality tests to ensure system stability"}}
|
|
638
|
-
### Report Back:
|
|
639
|
-
When you complete this phase, call:
|
|
640
|
-
|
|
641
|
-
```javascript
|
|
642
|
-
seekMentoring({
|
|
643
|
-
workflowType: "implement",
|
|
644
|
-
issueNumber: "{issue_number}",
|
|
645
|
-
currentPhase: "implement-smoke",
|
|
646
|
-
status: "complete",
|
|
647
|
-
evidence: {
|
|
648
|
-
fullTestSuitePass: true,
|
|
649
|
-
gitStatusClean: true,
|
|
650
|
-
buildSuccess: true
|
|
651
|
-
}
|
|
652
|
-
})
|
|
653
|
-
```
|
|
654
|
-
|
|
655
|
-
---
|
|
656
|
-
|
|
657
|
-
## Phase: implement-regression
|
|
658
|
-
|
|
659
|
-
### INTENT
|
|
660
|
-
For bugs: Verify the repro test now passes. For features: Write comprehensive regression tests to prevent future breakage.
|
|
661
|
-
|
|
662
|
-
### WORKFLOW
|
|
663
|
-
|
|
664
|
-
#### For Bug Fixes:
|
|
665
|
-
- Run Repro Test: `npx tsx ~/.fraim/scripts/exec-with-timeout.ts --timeout 120 -- npm test -- path/to/repro/test.test.ts`
|
|
666
|
-
- Verify Test Passes.
|
|
667
|
-
|
|
668
|
-
#### For Features:
|
|
669
|
-
- Identify Coverage: UI, edge cases, errors, integration.
|
|
670
|
-
### Report Back:
|
|
671
|
-
When you complete this phase, call:
|
|
672
|
-
|
|
673
|
-
```javascript
|
|
674
|
-
seekMentoring({
|
|
675
|
-
workflowType: "implement",
|
|
676
|
-
issueNumber: "{issue_number}",
|
|
677
|
-
currentPhase: "implement-regression",
|
|
678
|
-
status: "complete",
|
|
679
|
-
evidence: {
|
|
680
|
-
reproTestPass: true,
|
|
681
|
-
regressionCoverage: "Summary of coverage"
|
|
682
|
-
}
|
|
683
|
-
})
|
|
684
|
-
```
|
|
685
|
-
|
|
686
|
-
---
|
|
687
|
-
|
|
688
|
-
## Phase: implement-completeness-review
|
|
689
|
-
|
|
690
|
-
### INTENT
|
|
691
|
-
To verify that all design aspects have been implemented and that the work fully addresses the requirements.
|
|
692
|
-
|
|
693
|
-
### WORKFLOW
|
|
694
|
-
|
|
695
|
-
#### Step 1: RFC/Design Completeness Check
|
|
696
|
-
|
|
697
|
-
**CRITICAL**: Before checking technical correctness, verify scope completeness against the design document.
|
|
698
|
-
|
|
699
|
-
**If there's a design document (RFC, TECHSPEC, FEATURESPEC)**:
|
|
700
|
-
|
|
701
|
-
1. **Load your implementation checklist** from scoping phase (or create one now if missing)
|
|
702
|
-
|
|
703
|
-
2. **For each checklist item, verify**:
|
|
704
|
-
- β
**Implemented**: Point to code/tests that implement it
|
|
705
|
-
- βΈοΈ **Deferred**: Document reason and create follow-up issue
|
|
706
|
-
- β **Missing**: This is a BLOCKER - must implement or defer with follow-up
|
|
707
|
-
|
|
708
|
-
3. **Calculate completeness**:
|
|
709
|
-
```
|
|
710
|
-
Implemented: X/Y items (Z%)
|
|
711
|
-
Deferred: A items (with follow-up issues #123, #456)
|
|
712
|
-
Missing: B items (BLOCKER if >0 without follow-up issues)
|
|
713
|
-
```
|
|
714
|
-
|
|
715
|
-
4. **Document in evidence**:
|
|
716
|
-
- List all checklist items with status
|
|
717
|
-
- Link to follow-up issues for deferred items
|
|
718
|
-
- Explain any scope changes from original design
|
|
719
|
-
|
|
720
|
-
**If completeness <100% and no deferrals documented**:
|
|
721
|
-
- STOP and complete missing items, OR
|
|
722
|
-
- Create follow-up issues for deferred work, OR
|
|
723
|
-
- Get explicit user approval to defer
|
|
724
|
-
|
|
725
|
-
**If no design document exists**:
|
|
726
|
-
- Skip this step and proceed to Step 2
|
|
727
|
-
|
|
728
|
-
#### Step 2: Check PR Feedback
|
|
729
|
-
Check `docs/evidence/{issue_number}-implement-feedback.md`. Resolve all UNADDRESSED items.
|
|
730
|
-
|
|
731
|
-
#### Step 3: Design Review Workflow
|
|
732
|
-
Follow `workflows/reviewer/review-implementation-vs-design-spec.md`.
|
|
733
|
-
|
|
734
|
-
#### Step 4: Execute Review Workflow
|
|
735
|
-
Use all checklists; execute validation steps; create feedback docs using templates.
|
|
736
|
-
|
|
737
|
-
### Report Back:
|
|
738
|
-
```javascript
|
|
739
|
-
seekMentoring({
|
|
740
|
-
workflowType: "implement",
|
|
741
|
-
issueNumber: "{issue_number}",
|
|
742
|
-
currentPhase: "implement-completeness-review",
|
|
743
|
-
status: "complete",
|
|
744
|
-
findings: {
|
|
745
|
-
issueType: "bug",
|
|
746
|
-
rfcCompleteness: "X/Y items (Z%)",
|
|
747
|
-
deferredItems: ["List with follow-up issue numbers"],
|
|
748
|
-
scopeChanges: ["List any changes from original design"]
|
|
749
|
-
},
|
|
750
|
-
evidence: {
|
|
751
|
-
reviewDecision: "APPROVE",
|
|
752
|
-
workflowChecklistsComplete: "YES",
|
|
753
|
-
designAspectsVerified: "YES",
|
|
754
|
-
architectureCompliant: "YES",
|
|
755
|
-
rfcCompletenessVerified: "YES",
|
|
756
|
-
summary: "Completed systemic design review. All aspects verified."
|
|
757
|
-
}
|
|
758
|
-
})
|
|
759
|
-
```
|
|
760
|
-
|
|
761
|
-
## Phase: submit
|
|
762
|
-
|
|
763
|
-
{{include:delivery/submit.md}}
|
|
764
|
-
|
|
765
|
-
## Phase: address-feedback
|
|
766
|
-
|
|
767
|
-
{{include:delivery/address-feedback.md}}
|
|
768
|
-
|
|
769
|
-
## Phase: retrospective
|
|
770
|
-
|
|
771
|
-
{{include:delivery/retrospective.md}}
|