-
Notifications
You must be signed in to change notification settings - Fork 175
refactor(agent): change PM Agent output from businessRequirement/functionalRequirements to goal/testcases #3665
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
…tionalRequirements to goal/testcases - Update analyzedRequirements schema to use goal and testcases structure - Add testCaseSchema with title, type, sql, and testResults fields - Remove separate testcases field from workflow annotation - Update PM Agent to create test case structures without SQL - Update QA Agent to fill in SQL for existing test cases - Update all utilities (transformStateToArtifact, convertAnalyzedRequirementsToPrompt) - Update UI formatting in formatArguments.ts - Update all test files and fixtures to use new structure - Update Storybook stories with new field names Co-Authored-By: hirotaka.miyagi@route06.co.jp <h.miyagi.cnw@gmail.com>
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
|
The latest updates on your projects. Learn more about Vercel for GitHub.
2 Skipped Deployments
|
Important Review skippedBot user detected. To trigger a single review, invoke the You can disable this status message by setting the Comment |
Updates to Preview Branch (devin/1759475466-refactor-pm-agent-output-structure) ↗︎
Tasks are run on every commit but only new migration files are pushed.
View logs for this Workflow Run ↗︎. |
…exing The filtering logic was incorrectly trying to match test case titles against requirementIds. Updated to use 1-indexed position-based filtering across all test cases as expected by the tests. Also refactored to reduce function complexity from 16 to 15 by extracting buildPositionMap helper function, and fixed TypeScript error with non-null assertion. Co-Authored-By: hirotaka.miyagi@route06.co.jp <h.miyagi.cnw@gmail.com>
Issue
This refactoring addresses a structural change request to modernize the PM Agent's output format and improve the integration between PM and QA agents.
Why is this change needed?
The previous architecture had PM Agent generating
businessRequirement
andfunctionalRequirements
, with QA Agent maintaining separatetestcases
arrays. This created complexity in state management and data synchronization. The new structure has PM Agent creating test case structures (without SQL) that QA Agent then fills in, providing a cleaner data flow.Summary of Changes
Core Schema Changes:
analyzedRequirementsSchema
frombusinessRequirement
/functionalRequirements
togoal
/testcases
testCaseSchema
withtitle
,type
,sql
, andtestResults
fieldstestcases
field from workflow annotationAgent Updates:
getUnprocessedRequirements.ts
Supporting Changes:
transformStateToArtifact.ts
with simplified logicKey Areas for Review
analyzedRequirements.testcases
structuretransformStateToArtifact.ts
logic was completely rewritten and simplified - ensure it produces correct output for all scenariosgetUnprocessedRequirements.ts
which was significantly simplifiedTesting Status
Link to Devin run: https://app.devin.ai/sessions/bbcc9bc20c404244b5dc51b92e0cb8fd
Requested by: @MH4GF