summaryrefslogtreecommitdiff
path: root/makima/src/server/state.rs
diff options
context:
space:
mode:
authorsoryu <soryu@soryu.co>2026-01-27 01:25:29 +0000
committersoryu <soryu@soryu.co>2026-01-27 01:25:40 +0000
commitb0d0b4848b2fc8a44c2575e09a08b34aaf6e1484 (patch)
treebd0dedfd8a3623d01f28ff590e97a028bc5456c5 /makima/src/server/state.rs
parentb28345d15730ffbefe81244d06c06fe13c30b0ea (diff)
downloadsoryu-b0d0b4848b2fc8a44c2575e09a08b34aaf6e1484.tar.gz
soryu-b0d0b4848b2fc8a44c2575e09a08b34aaf6e1484.zip
Default to shared worktree and add worktree endpoint
Diffstat (limited to 'makima/src/server/state.rs')
-rw-r--r--makima/src/server/state.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/makima/src/server/state.rs b/makima/src/server/state.rs
index 02a2328..b3cf27d 100644
--- a/makima/src/server/state.rs
+++ b/makima/src/server/state.rs
@@ -256,6 +256,9 @@ pub enum DaemonCommand {
/// Whether the contract is in local-only mode (skips automatic completion actions)
#[serde(rename = "localOnly", default)]
local_only: bool,
+ /// Task ID to share worktree with (supervisor's task ID). If Some, use that task's worktree instead of creating a new one.
+ #[serde(rename = "supervisorWorktreeTaskId", default, skip_serializing_if = "Option::is_none")]
+ supervisor_worktree_task_id: Option<Uuid>,
},
/// Pause a running task
PauseTask {
@@ -451,6 +454,12 @@ pub enum DaemonCommand {
task_id: Uuid,
},
+ /// Get worktree information (files, stats, branch) for a task
+ GetWorktreeInfo {
+ #[serde(rename = "taskId")]
+ task_id: Uuid,
+ },
+
/// Create a git checkpoint (stage changes, commit, record stats)
CreateCheckpoint {
#[serde(rename = "taskId")]