d7a74578dc
- Reorganize flat files into core/ templates/ examples/ scripts/ with VERSION - Deduplicate: single-source state machine, three-round policy, acceptance signals - Abstract orchestration in closed-loop.md with manual mode; move Orca commands to orca-adapter.md - Add tasks.schema.json + validate_tasks.py (jsonschema or builtin rules, no hard deps) - Add filled examples, concurrency write rule, kitVersion tracking; unify to Chinese Co-authored-by: Cursor <cursoragent@cursor.com>
128 lines
4.1 KiB
JSON
128 lines
4.1 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"$id": "https://git.yumee.top/laily/skills/kits/agent-collaboration-kit/tasks.schema.json",
|
|
"title": "Agent Collaboration Kit task board",
|
|
"description": "tasks.yaml 的权威结构。跨语言可用;参考校验实现见 scripts/validate_tasks.py。",
|
|
"type": "object",
|
|
"required": ["version", "project", "tasks"],
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"version": { "type": "integer", "minimum": 1 },
|
|
"updatedAt": { "type": "string" },
|
|
"source": { "type": "string" },
|
|
"kitVersion": {
|
|
"type": "string",
|
|
"description": "接入时所基于的 agent-collaboration-kit 版本,便于日后 diff 升级"
|
|
},
|
|
"project": {
|
|
"type": "object",
|
|
"required": ["name"],
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"repoPath": { "type": "string" },
|
|
"baseUrl": { "type": "string" },
|
|
"devWorktree": { "type": "string" }
|
|
}
|
|
},
|
|
"summary": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"verified": { "type": "array", "items": { "type": "string" } },
|
|
"open": { "type": "array", "items": { "type": "string" } },
|
|
"failedRetest": { "type": "array", "items": { "type": "string" } },
|
|
"leftovers": { "type": "array", "items": { "type": "string" } }
|
|
}
|
|
},
|
|
"statusReference": { "type": "object" },
|
|
"tasks": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/definitions/task" }
|
|
}
|
|
},
|
|
"definitions": {
|
|
"status": {
|
|
"type": "string",
|
|
"enum": [
|
|
"open",
|
|
"dispatched",
|
|
"fixed_by_dev",
|
|
"retesting",
|
|
"failed_retest",
|
|
"verified",
|
|
"blocked",
|
|
"leftover"
|
|
]
|
|
},
|
|
"round": {
|
|
"type": "object",
|
|
"required": ["round", "result"],
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"round": { "type": "integer", "minimum": 1 },
|
|
"result": { "type": "string", "enum": ["passed", "failed"] },
|
|
"evidence": { "type": "string" }
|
|
}
|
|
},
|
|
"task": {
|
|
"type": "object",
|
|
"required": ["id", "title", "status"],
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"id": { "type": "string", "minLength": 1 },
|
|
"type": { "type": "string" },
|
|
"title": { "type": "string", "minLength": 1 },
|
|
"priority": { "type": "string" },
|
|
"status": { "$ref": "#/definitions/status" },
|
|
"assignee": { "type": "string" },
|
|
"component": { "type": "string" },
|
|
"specRefs": { "type": "array", "items": { "type": "string" } },
|
|
"testRefs": { "type": "array", "items": { "type": "string" } },
|
|
"description": { "type": "string" },
|
|
"stepsToReproduce": { "type": "array", "items": { "type": "string" } },
|
|
"expected": { "type": "string" },
|
|
"actual": { "type": "string" },
|
|
"evidence": { "type": "object" },
|
|
"verification": { "type": "object" },
|
|
"dispatch": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"taskId": { "type": ["string", "null"] },
|
|
"dispatchId": { "type": ["string", "null"] },
|
|
"worker": { "type": ["string", "null"] },
|
|
"rounds": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/definitions/round" }
|
|
}
|
|
}
|
|
},
|
|
"resolution": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"fixedBy": { "type": ["string", "null"] },
|
|
"verifiedAt": { "type": ["string", "null"] },
|
|
"leftoverReason": { "type": ["string", "null"] },
|
|
"evidence": { "type": "object" }
|
|
}
|
|
}
|
|
},
|
|
"allOf": [
|
|
{
|
|
"if": { "properties": { "status": { "const": "leftover" } } },
|
|
"then": {
|
|
"properties": {
|
|
"resolution": {
|
|
"required": ["leftoverReason"]
|
|
}
|
|
},
|
|
"required": ["resolution"]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|