You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/api.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,6 +13,10 @@ Schedune provides a clear, RESTful interface for scheduling, validating, executi
13
13
### Orchestration
14
14
*`POST /api/v1alpha1/schedule/explain`: Given a `WorkloadIntent`, evaluates all nodes and returns `RankedNodes` and `RejectedNodes` with explicit `HardRejectionCodes`.
15
15
*`POST /api/v1alpha1/schedule/select`: Simulates placement and returns the optimal node ID for the given intent.
16
+
*`POST /api/v1alpha1/plan/launch`: Bridges scheduling and execution. Returns a hydrated `LaunchSpec` and explains rejections. In `dry_run` mode, validates selected node readiness and returns a pending `PreparationResult` indicating that node-agent scoped preparation is required. The node agent can then be invoked locally via `schedune-agent prepare --spec <path>`.
17
+
18
+
### Node Agent
19
+
*`schedune-agent prepare --spec <path>`: Local CLI command to prepare the selected runtime backend for a workload. To be called by the node agent after receiving a `PrepareOnNode` action from `/plan/launch`. Reads a `LaunchSpec` JSON from file or stdin (`-`) and outputs a `LaunchPreparationResult` JSON.
16
20
17
21
### Execution
18
22
*`POST /api/v1alpha1/launch/validate`: Given a `LaunchSpec`, assesses if the specific host has the prerequisites to run the chosen backend without launching the process.
Copy file name to clipboardExpand all lines: docs/quickstart.md
+14-5Lines changed: 14 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -86,15 +86,24 @@ make example-schedule
86
86
```
87
87
*(This evaluates an x86 VM intent and explains the eligibility outcome.)*
88
88
89
-
#### 6. Validate Launch
89
+
#### 6. Plan Launch
90
+
91
+
Combine your workload intent and a launch template to find an eligible node, validate the launch on it, and dry-run prepare the environment—all without executing anything:
92
+
93
+
```bash
94
+
make example-launch-plan
95
+
```
96
+
*(This bridges scheduling and execution into a single, safe, read-only explainable response. If `next_actions` includes `PrepareOnNode`, you can invoke the local node agent using `schedune-agent prepare --spec <path>` to locally provision the environment without executing the VM.)*
97
+
98
+
#### 7. Validate Launch
90
99
91
100
Validate a launch payload to ensure the backend is available and capabilities match, without starting the VM:
92
101
93
102
```bash
94
103
make example-launch-validate
95
104
```
96
105
97
-
#### 7. Execute Launch
106
+
#### 8. Execute Launch
98
107
99
108
If your host has the required binary (`cloud-hypervisor`), execute the launch:
100
109
@@ -103,7 +112,7 @@ make example-launch-execute
103
112
```
104
113
*Note the returned `execution_id`.*
105
114
106
-
#### 8. Inspect Lifecycle
115
+
#### 9. Inspect Lifecycle
107
116
108
117
Use the `execution_id` to inspect the VM's state, readiness, trace, and events:
109
118
@@ -124,15 +133,15 @@ make example-readiness EXECUTION_ID=<EXECUTION_ID>
0 commit comments