Part of #54.
Questionnaire
Combines automated detection with decision gathering in a single stage.
|
|
| Consumes |
Source repo |
| Produces |
.konveyor/questionnaire.json, .konveyor/results.json entry |
| Image |
TBD (may reuse agent-plan if graphify lands here) |
Two phases
- Detect — analyze the project and produce a tech summary (languages, frameworks, build tools, app servers), architecture summary (layers, complexity), and dependency capture
- Gather — collect migration decisions: target framework, scope constraints, priorities
Graphify placement (here vs plan stage) is TBD.
Interactive vs non-interactive
- Interactive: agent presents detection results, asks the human for decisions
- Non-interactive: LLM picks the best answers based on detection results and records its reasoning in
questionnaire.json. Eval stage later scores whether those choices led to a good migration.
Expected artifact
.konveyor/questionnaire.json:
{
"detection": {
"languages": ["java"],
"frameworks": ["javaee-7", "weblogic"],
"buildTool": "maven",
"appServer": "weblogic-12c",
"sourceFiles": 142,
"archSummary": "3-tier: entities → services → REST controllers",
"dependencies": ["javax.ejb", "javax.persistence", "javax.jms"]
},
"decisions": {
"targetFramework": "quarkus-3",
"scope": "full",
"priorities": ["correctness", "minimal-diff"],
"constraints": ["preserve-test-structure", "java-17-minimum"]
},
"mode": "non-interactive",
"reasoning": "Selected quarkus-3 based on detected JPA + JAX-RS usage and Maven build"
}
Tasks
Part of #54.
Questionnaire
Combines automated detection with decision gathering in a single stage.
.konveyor/questionnaire.json,.konveyor/results.jsonentryagent-planif graphify lands here)Two phases
Graphify placement (here vs plan stage) is TBD.
Interactive vs non-interactive
questionnaire.json. Eval stage later scores whether those choices led to a good migration.Expected artifact
.konveyor/questionnaire.json:{ "detection": { "languages": ["java"], "frameworks": ["javaee-7", "weblogic"], "buildTool": "maven", "appServer": "weblogic-12c", "sourceFiles": 142, "archSummary": "3-tier: entities → services → REST controllers", "dependencies": ["javax.ejb", "javax.persistence", "javax.jms"] }, "decisions": { "targetFramework": "quarkus-3", "scope": "full", "priorities": ["correctness", "minimal-diff"], "constraints": ["preserve-test-structure", "java-17-minimum"] }, "mode": "non-interactive", "reasoning": "Selected quarkus-3 based on detected JPA + JAX-RS usage and Maven build" }Tasks
questionnaire.jsonschemaskills/questionnaire/SKILL.md