mirror of
https://github.com/PR0M3TH3AN/TORCH.git
synced 2026-10-27 07:51:52 +00:00
124 lines
6.1 KiB
JSON
124 lines
6.1 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"type": "object",
|
|
"required": ["schema", "generatedAt", "repository", "review", "specifications", "domains", "collisions", "checks", "resources", "schedules", "architecture", "organization_assessment"],
|
|
"properties": {
|
|
"schema": { "const": "torch.dev/domain-proposal/v1alpha1" },
|
|
"generatedAt": { "type": "string", "minLength": 1 },
|
|
"repository": {
|
|
"type": "object",
|
|
"required": ["root", "initialCommit", "head", "workingTreeFingerprint"],
|
|
"properties": {
|
|
"root": { "type": "string" },
|
|
"initialCommit": { "type": "string" },
|
|
"head": { "type": "string" },
|
|
"workingTreeFingerprint": { "type": "string", "pattern": "^[a-f0-9]{64}$" }
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"review": {
|
|
"type": "object",
|
|
"required": ["status", "reviewedAt", "reviewedBy", "notes"],
|
|
"properties": {
|
|
"status": { "const": "pending" },
|
|
"reviewedAt": { "type": "null" },
|
|
"reviewedBy": { "type": "null" },
|
|
"notes": { "type": "array", "items": { "type": "string" } }
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"specifications": { "type": "array", "items": { "type": "object" } },
|
|
"domains": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["id", "title", "kind", "scope", "not_scope", "owned_paths", "shared_paths", "neighbours", "required_checks", "resources", "runtime", "evidence"],
|
|
"properties": {
|
|
"id": { "type": "string", "pattern": "^[a-z0-9][a-z0-9-]*$" },
|
|
"title": { "type": "string", "minLength": 1 },
|
|
"kind": { "type": "string", "minLength": 1 },
|
|
"scope": { "type": "array", "minItems": 1, "items": { "type": "string" } },
|
|
"not_scope": { "type": "array", "items": { "type": "string" } },
|
|
"owned_paths": { "type": "array", "items": { "type": "string" } },
|
|
"shared_paths": { "type": "array", "items": { "type": "string" } },
|
|
"neighbours": { "type": "array", "items": { "type": "string" } },
|
|
"required_checks": { "type": "array", "items": { "type": "string" } },
|
|
"resources": { "type": "array", "items": { "type": "string" } },
|
|
"runtime": { "type": "string", "minLength": 1 },
|
|
"evidence": { "type": "array", "minItems": 1, "items": { "type": "string" } },
|
|
"design_status": { "type": "string" }
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"collisions": { "type": "array", "items": { "type": "object" } },
|
|
"checks": { "type": "array", "items": { "type": "object" } },
|
|
"resources": { "type": "array", "items": { "type": "object" } },
|
|
"schedules": { "type": "array", "items": { "type": "object" } },
|
|
"runtime_wake_budget": {
|
|
"type": "object",
|
|
"required": ["max_invocations_per_day"],
|
|
"properties": {
|
|
"max_invocations_per_day": { "type": "integer", "minimum": 1, "maximum": 24 }
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"organization_assessment": {
|
|
"type": "object",
|
|
"required": ["shape", "rationale", "evidence", "authority_boundaries", "proposed_coordination_roles", "direct_peer_communication"],
|
|
"properties": {
|
|
"shape": { "enum": ["flat", "coordination_roles"] },
|
|
"rationale": { "type": "string", "minLength": 1 },
|
|
"evidence": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } },
|
|
"authority_boundaries": {
|
|
"type": "object",
|
|
"required": ["implementation_ownership", "coordination_responsibility", "fleet_operations_authority", "project_priority_authority", "independent_review_authority", "owner_only_decisions"],
|
|
"properties": {
|
|
"implementation_ownership": { "type": "string", "minLength": 1 },
|
|
"coordination_responsibility": { "type": "string", "minLength": 1 },
|
|
"fleet_operations_authority": { "type": "string", "minLength": 1 },
|
|
"project_priority_authority": { "type": "string", "minLength": 1 },
|
|
"independent_review_authority": { "type": "string", "minLength": 1 },
|
|
"owner_only_decisions": { "type": "array", "minItems": 1, "items": { "type": "string", "minLength": 1 } }
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"proposed_coordination_roles": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["id", "title", "coordinates_domains", "integrated_outcome", "decision_scope", "owner_escalations", "evidence", "owns_implementation_paths", "has_owner_approval_authority"],
|
|
"properties": {
|
|
"id": { "type": "string", "pattern": "^[a-z0-9][a-z0-9-]*$" },
|
|
"title": { "type": "string", "minLength": 1 },
|
|
"coordinates_domains": { "type": "array", "minItems": 2, "uniqueItems": true, "items": { "type": "string" } },
|
|
"integrated_outcome": { "type": "string", "minLength": 1 },
|
|
"decision_scope": { "type": "array", "minItems": 1, "items": { "type": "string", "minLength": 1 } },
|
|
"owner_escalations": { "type": "array", "minItems": 1, "items": { "type": "string", "minLength": 1 } },
|
|
"evidence": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } },
|
|
"owns_implementation_paths": { "const": false },
|
|
"has_owner_approval_authority": { "const": false }
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"direct_peer_communication": { "const": "preserved" }
|
|
},
|
|
"allOf": [
|
|
{
|
|
"if": { "properties": { "shape": { "const": "flat" } } },
|
|
"then": { "properties": { "proposed_coordination_roles": { "maxItems": 0 } } }
|
|
},
|
|
{
|
|
"if": { "properties": { "shape": { "const": "coordination_roles" } } },
|
|
"then": { "properties": { "proposed_coordination_roles": { "minItems": 1 } } }
|
|
}
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"architecture": { "type": "object" }
|
|
},
|
|
"additionalProperties": false
|
|
}
|