Files

69 lines
2.3 KiB
JSON

{
"fixtures": [
{
"name": "dangling_action_reference",
"description": "Plan references an action that does not exist in the registry",
"input": {
"plan_id": "plan-001",
"action_ref": "local/nonexistent-action",
"project_refs": ["local/my-project"]
},
"expected_error": "action not found: local/nonexistent-action"
},
{
"name": "unresolvable_project_path",
"description": "Plan references a project with a path that cannot be resolved",
"input": {
"plan_id": "plan-002",
"action_ref": "local/build-app",
"project_refs": ["local/../../escape-project"]
},
"expected_error": "unresolvable project path: local/../../escape-project"
},
{
"name": "missing_actor_for_phase",
"description": "Action config missing the required actor for the current phase",
"input": {
"action_name": "local/incomplete-action",
"phase": "execution",
"actor_config": {
"strategy_actor": "openai/gpt-4"
}
},
"expected_error": "missing actor for phase 'execution': execution_actor not configured"
},
{
"name": "dangling_parent_plan_id",
"description": "Plan references a parent plan that does not exist",
"input": {
"plan_id": "plan-child-001",
"parent_plan_id": "plan-parent-missing",
"action_ref": "local/build-app"
},
"expected_error": "parent plan not found: plan-parent-missing"
},
{
"name": "resource_type_not_registered",
"description": "Resource references a type that is not in the resource type registry",
"input": {
"resource_name": "my-custom-resource",
"resource_type": "custom/unregistered-type",
"project_ref": "local/my-project"
},
"expected_error": "resource type not registered: custom/unregistered-type"
},
{
"name": "circular_resource_dependency",
"description": "Resource DAG contains a circular dependency chain",
"input": {
"resources": [
{"name": "res-a", "depends_on": ["res-b"]},
{"name": "res-b", "depends_on": ["res-c"]},
{"name": "res-c", "depends_on": ["res-a"]}
]
},
"expected_error": "circular dependency detected: res-a -> res-b -> res-c -> res-a"
}
]
}