mirror of
https://github.com/johndoe6345789/AutoMetabuilder.git
synced 2026-04-24 22:04:58 +00:00
Add testing_triangle and repo_scan_context workflow packages:
- Introduce `testing_triangle.json` for executing lint, unit, and UI tests with conditional gating. - Include `repo_scan_context.json` for reducing repository files into context before AI requests. - Update localization files with new package labels and descriptions.
This commit is contained in:
@@ -385,5 +385,9 @@
|
||||
"meta.workflow_packages.single_pass.label": "Single Pass",
|
||||
"meta.workflow_packages.single_pass.description": "Run one AI request and tool execution sequence without looping.",
|
||||
"meta.workflow_packages.plan_execute_summarize.label": "Plan, Execute, Summarize",
|
||||
"meta.workflow_packages.plan_execute_summarize.description": "Plan with the model, run tools, then ask for a final recap."
|
||||
"meta.workflow_packages.plan_execute_summarize.description": "Plan with the model, run tools, then ask for a final recap.",
|
||||
"meta.workflow_packages.testing_triangle.label": "Testing Triangle",
|
||||
"meta.workflow_packages.testing_triangle.description": "Run lint, unit, then UI tests with conditional gating.",
|
||||
"meta.workflow_packages.repo_scan_context.label": "Repo Scan Context",
|
||||
"meta.workflow_packages.repo_scan_context.description": "Map-reduce repo files into context before the AI request."
|
||||
}
|
||||
|
||||
@@ -381,5 +381,9 @@
|
||||
"meta.workflow_packages.single_pass.label": "Una sola pasada",
|
||||
"meta.workflow_packages.single_pass.description": "Ejecuta una solicitud de IA y la secuencia de herramientas una vez, sin bucle.",
|
||||
"meta.workflow_packages.plan_execute_summarize.label": "Planear, ejecutar, resumir",
|
||||
"meta.workflow_packages.plan_execute_summarize.description": "Planifica con el modelo, ejecuta herramientas y luego pide un resumen final."
|
||||
"meta.workflow_packages.plan_execute_summarize.description": "Planifica con el modelo, ejecuta herramientas y luego pide un resumen final.",
|
||||
"meta.workflow_packages.testing_triangle.label": "Triángulo de pruebas",
|
||||
"meta.workflow_packages.testing_triangle.description": "Ejecuta lint, pruebas unitarias y UI con control condicional.",
|
||||
"meta.workflow_packages.repo_scan_context.label": "Contexto del escaneo del repositorio",
|
||||
"meta.workflow_packages.repo_scan_context.description": "Reduce el repositorio a contexto antes de la solicitud de IA."
|
||||
}
|
||||
|
||||
@@ -381,5 +381,9 @@
|
||||
"meta.workflow_packages.single_pass.label": "Passe unique",
|
||||
"meta.workflow_packages.single_pass.description": "Exécute une requête IA et une séquence d'outils une seule fois, sans boucle.",
|
||||
"meta.workflow_packages.plan_execute_summarize.label": "Planifier, exécuter, résumer",
|
||||
"meta.workflow_packages.plan_execute_summarize.description": "Planifiez avec le modèle, exécutez les outils, puis demandez un récapitulatif final."
|
||||
"meta.workflow_packages.plan_execute_summarize.description": "Planifiez avec le modèle, exécutez les outils, puis demandez un récapitulatif final.",
|
||||
"meta.workflow_packages.testing_triangle.label": "Triangle de tests",
|
||||
"meta.workflow_packages.testing_triangle.description": "Exécute lint, tests unitaires puis UI avec contrôle conditionnel.",
|
||||
"meta.workflow_packages.repo_scan_context.label": "Contexte d'exploration du dépôt",
|
||||
"meta.workflow_packages.repo_scan_context.description": "Réduit les fichiers du dépôt en contexte avant la requête IA."
|
||||
}
|
||||
|
||||
@@ -381,5 +381,9 @@
|
||||
"meta.workflow_packages.single_pass.label": "Enkele run",
|
||||
"meta.workflow_packages.single_pass.description": "Voer een AI-aanvraag en toolreeks een keer uit, zonder lus.",
|
||||
"meta.workflow_packages.plan_execute_summarize.label": "Plan, voer uit, vat samen",
|
||||
"meta.workflow_packages.plan_execute_summarize.description": "Plan met het model, voer tools uit en vraag daarna om een eindoverzicht."
|
||||
"meta.workflow_packages.plan_execute_summarize.description": "Plan met het model, voer tools uit en vraag daarna om een eindoverzicht.",
|
||||
"meta.workflow_packages.testing_triangle.label": "Testdriehoek",
|
||||
"meta.workflow_packages.testing_triangle.description": "Voer lint, unit- en UI-tests uit met voorwaardelijke gating.",
|
||||
"meta.workflow_packages.repo_scan_context.label": "Repo-scancontext",
|
||||
"meta.workflow_packages.repo_scan_context.description": "Reduceer repo-bestanden naar context vóór de AI-aanvraag."
|
||||
}
|
||||
|
||||
@@ -381,5 +381,9 @@
|
||||
"meta.workflow_packages.single_pass.label": "Single Pass",
|
||||
"meta.workflow_packages.single_pass.description": "Run one AI request and tool run, no loop.",
|
||||
"meta.workflow_packages.plan_execute_summarize.label": "Plan, Plunder, Summarize",
|
||||
"meta.workflow_packages.plan_execute_summarize.description": "Plan with the model, run tools, then ask for a final recap."
|
||||
"meta.workflow_packages.plan_execute_summarize.description": "Plan with the model, run tools, then ask for a final recap.",
|
||||
"meta.workflow_packages.testing_triangle.label": "Testin' Triangle",
|
||||
"meta.workflow_packages.testing_triangle.description": "Run lint, unit, then UI tests with conditional gating.",
|
||||
"meta.workflow_packages.repo_scan_context.label": "Repo Scan Context",
|
||||
"meta.workflow_packages.repo_scan_context.description": "Map-reduce repo files into context before the AI request."
|
||||
}
|
||||
|
||||
67
src/autometabuilder/workflow_packages/repo_scan_context.json
Normal file
67
src/autometabuilder/workflow_packages/repo_scan_context.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": "repo_scan_context",
|
||||
"label": "meta.workflow_packages.repo_scan_context.label",
|
||||
"description": "meta.workflow_packages.repo_scan_context.description",
|
||||
"tags": ["map", "reduce", "context"],
|
||||
"workflow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "list_files",
|
||||
"type": "tools.list_files",
|
||||
"inputs": {"path": "."},
|
||||
"outputs": {"files": "repo_files"}
|
||||
},
|
||||
{
|
||||
"id": "filter_python",
|
||||
"type": "utils.filter_list",
|
||||
"inputs": {"items": "$repo_files", "mode": "regex", "pattern": "\\.py$"},
|
||||
"outputs": {"items": "python_files"}
|
||||
},
|
||||
{
|
||||
"id": "reduce_python",
|
||||
"type": "utils.reduce_list",
|
||||
"inputs": {"items": "$python_files", "separator": "\\n"},
|
||||
"outputs": {"result": "python_summary"}
|
||||
},
|
||||
{
|
||||
"id": "seed_messages",
|
||||
"type": "core.seed_messages",
|
||||
"outputs": {"messages": "messages"}
|
||||
},
|
||||
{
|
||||
"id": "append_repo_summary",
|
||||
"type": "core.append_context_message",
|
||||
"inputs": {"messages": "$messages", "context": "$python_summary"},
|
||||
"outputs": {"messages": "messages"}
|
||||
},
|
||||
{
|
||||
"id": "append_user_instruction",
|
||||
"type": "core.append_user_instruction",
|
||||
"inputs": {"messages": "$messages"},
|
||||
"outputs": {"messages": "messages"}
|
||||
},
|
||||
{
|
||||
"id": "ai_request",
|
||||
"type": "core.ai_request",
|
||||
"inputs": {"messages": "$messages"},
|
||||
"outputs": {
|
||||
"response": "llm_response",
|
||||
"has_tool_calls": "has_tool_calls",
|
||||
"tool_calls_count": "tool_calls_count"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "run_tool_calls",
|
||||
"type": "core.run_tool_calls",
|
||||
"inputs": {"response": "$llm_response"},
|
||||
"outputs": {"tool_results": "tool_results", "no_tool_calls": "no_tool_calls"}
|
||||
},
|
||||
{
|
||||
"id": "append_tool_results",
|
||||
"type": "core.append_tool_results",
|
||||
"inputs": {"messages": "$messages", "tool_results": "$tool_results"},
|
||||
"outputs": {"messages": "messages"}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
88
src/autometabuilder/workflow_packages/testing_triangle.json
Normal file
88
src/autometabuilder/workflow_packages/testing_triangle.json
Normal file
@@ -0,0 +1,88 @@
|
||||
{
|
||||
"id": "testing_triangle",
|
||||
"label": "meta.workflow_packages.testing_triangle.label",
|
||||
"description": "meta.workflow_packages.testing_triangle.description",
|
||||
"tags": ["testing", "lint", "e2e"],
|
||||
"workflow": {
|
||||
"nodes": [
|
||||
{
|
||||
"id": "lint",
|
||||
"type": "tools.run_lint",
|
||||
"inputs": {
|
||||
"path": "src"
|
||||
},
|
||||
"outputs": {
|
||||
"results": "lint_results"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "lint_failed",
|
||||
"type": "utils.branch_condition",
|
||||
"inputs": {
|
||||
"value": "$lint_results",
|
||||
"mode": "regex",
|
||||
"compare": "(FAILED|ERROR)"
|
||||
},
|
||||
"outputs": {
|
||||
"result": "lint_failed"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "lint_ok",
|
||||
"type": "utils.not",
|
||||
"inputs": {
|
||||
"value": "$lint_failed"
|
||||
},
|
||||
"outputs": {
|
||||
"result": "lint_ok"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "unit_tests",
|
||||
"type": "tools.run_tests",
|
||||
"when": "$lint_ok",
|
||||
"inputs": {
|
||||
"path": "tests"
|
||||
},
|
||||
"outputs": {
|
||||
"results": "unit_results"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "unit_failed",
|
||||
"type": "utils.branch_condition",
|
||||
"when": "$lint_ok",
|
||||
"inputs": {
|
||||
"value": "$unit_results",
|
||||
"mode": "regex",
|
||||
"compare": "(FAILED|ERROR)"
|
||||
},
|
||||
"outputs": {
|
||||
"result": "unit_failed"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "unit_ok",
|
||||
"type": "utils.not",
|
||||
"when": "$lint_ok",
|
||||
"inputs": {
|
||||
"value": "$unit_failed"
|
||||
},
|
||||
"outputs": {
|
||||
"result": "unit_ok"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "ui_tests",
|
||||
"type": "tools.run_tests",
|
||||
"when": "$unit_ok",
|
||||
"inputs": {
|
||||
"path": "tests/ui"
|
||||
},
|
||||
"outputs": {
|
||||
"results": "ui_results"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user