File size: 1,807 Bytes
f2cf4fa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "spine:execution_request",
  "title": "ExecutionRequest",
  "type": "object",
  "required": [
    "schema_name",
    "schema_version",
    "execution_id",
    "decision_id",
    "run_id",
    "target_runtime",
    "target_agent",
    "input_artifacts",
    "execution_mode",
    "workspace_ref",
    "timeout_policy",
    "approval_requirements",
    "created_at",
    "source_system"
  ],
  "properties": {
    "schema_name": { "const": "ExecutionRequest" },
    "schema_version": { "type": "string", "const": "1.0.0" },
    "execution_id": { "type": "string", "pattern": "^execution_[a-z0-9_\\-]+$" },
    "decision_id": { "type": "string", "pattern": "^decision_[a-z0-9_\\-]+$" },
    "run_id": { "type": "string", "pattern": "^run_[a-z0-9_\\-]+$" },
    "target_runtime": { "type": "string", "minLength": 1 },
    "target_agent": { "type": "string", "minLength": 1 },
    "input_artifacts": {
      "type": "array",
      "items": { "type": "string", "pattern": "^artifact_[a-z0-9_\\-]+$" }
    },
    "execution_mode": { "type": "string", "enum": ["interactive", "batch", "background"] },
    "workspace_ref": { "type": "string", "minLength": 1 },
    "timeout_policy": {
      "type": "object",
      "required": ["timeout_seconds", "on_timeout"],
      "properties": {
        "timeout_seconds": { "type": "integer", "minimum": 1 },
        "on_timeout": { "type": "string", "enum": ["fail", "ask_operator", "retry"] }
      },
      "additionalProperties": false
    },
    "approval_requirements": {
      "type": "array",
      "items": { "type": "string" }
    },
    "created_at": { "type": "string", "format": "date-time" },
    "source_system": { "type": "string", "minLength": 1 }
  },
  "additionalProperties": false
}