summaryrefslogtreecommitdiff
path: root/makima/src/server/handlers/mesh_daemon.rs
diff options
context:
space:
mode:
authorsoryu <soryu@soryu.co>2026-01-26 21:24:04 +0000
committersoryu <soryu@soryu.co>2026-01-26 21:24:04 +0000
commitbc1ce8013bc36a1585be05b928f2386ab56529c2 (patch)
tree8a6f2f5641103a029138047d675d0008986d60b7 /makima/src/server/handlers/mesh_daemon.rs
parent04e1e8f0dd85d19917ac5ba0b73cba65ebac8976 (diff)
downloadsoryu-bc1ce8013bc36a1585be05b928f2386ab56529c2.tar.gz
soryu-bc1ce8013bc36a1585be05b928f2386ab56529c2.zip
Make merges synchronous
Diffstat (limited to 'makima/src/server/handlers/mesh_daemon.rs')
-rw-r--r--makima/src/server/handlers/mesh_daemon.rs13
1 files changed, 11 insertions, 2 deletions
diff --git a/makima/src/server/handlers/mesh_daemon.rs b/makima/src/server/handlers/mesh_daemon.rs
index 270118f..0ba37d2 100644
--- a/makima/src/server/handlers/mesh_daemon.rs
+++ b/makima/src/server/handlers/mesh_daemon.rs
@@ -1665,8 +1665,8 @@ async fn handle_daemon_connection(socket: WebSocket, state: SharedState, auth_re
task_id,
success,
message,
- commit_sha: _,
- conflicts: _,
+ commit_sha,
+ conflicts,
}) => {
tracing::info!(
task_id = %task_id,
@@ -1674,6 +1674,15 @@ async fn handle_daemon_connection(socket: WebSocket, state: SharedState, auth_re
"Merge to target result received"
);
+ // Broadcast the merge result for waiting handlers
+ state.broadcast_merge_result(crate::server::state::MergeResultNotification {
+ task_id,
+ success,
+ message: message.clone(),
+ commit_sha: commit_sha.clone(),
+ conflicts: conflicts.clone(),
+ });
+
// On successful merge, notify supervisor to check if all merges complete
if success {
if let Some(pool) = state.db_pool.as_ref() {