mirror of
https://github.com/boshu2/agentops.git
synced 2026-09-14 15:08:13 +08:00
f4f3dd63d9
schemas/ pool exhausted (33/33). Mixed declaration carrier: - 22 schemas: top-level "practices": [slug, ...] sibling to "description". Loose JSON Schema (no additionalProperties: false at root) accepts unknown keywords; meta-schema treats this as inert metadata. - 11 schemas with additionalProperties: false: "$comment": "practices: [slug, slug]" — $comment is a reserved meta-keyword and the citation validator regex matches the practices: substring inside it. After pass 10: 160 with practices / 594 missing. Remaining: evals/ (61), cli/ (533). schemas/, hooks/, and skills/ all fully declared. Added scripts/insert-schema-practices.py (one-off): deterministic insertion, validates JSON parses before writing.
44 lines
1.3 KiB
JSON
44 lines
1.3 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://agentops.dev/schemas/phase.v1.schema.json",
|
|
"title": "Phase State Machine",
|
|
"description": "Defines legal state transitions for beads",
|
|
"practices": ["continuous-delivery", "agile-manifesto"],
|
|
"type": "object",
|
|
"required": ["allowed_transitions", "schema_version"],
|
|
"properties": {
|
|
"allowed_transitions": {
|
|
"type": "object",
|
|
"properties": {
|
|
"unclaimed": {
|
|
"type": "array",
|
|
"items": {"type": "string", "enum": ["claimed"]},
|
|
"description": "unclaimed can only transition to claimed"
|
|
},
|
|
"claimed": {
|
|
"type": "array",
|
|
"items": {"type": "string", "enum": ["done", "failed"]},
|
|
"description": "claimed can transition to done or failed"
|
|
},
|
|
"done": {
|
|
"type": "array",
|
|
"maxItems": 0,
|
|
"description": "done is terminal"
|
|
},
|
|
"failed": {
|
|
"type": "array",
|
|
"items": {"type": "string", "enum": ["unclaimed"]},
|
|
"description": "failed can be retried (back to unclaimed)"
|
|
}
|
|
},
|
|
"required": ["unclaimed", "claimed", "done", "failed"],
|
|
"additionalProperties": false
|
|
},
|
|
"schema_version": {
|
|
"type": "integer",
|
|
"const": 1
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|