agentmux_srv\drone/
mod.rs

1// Copyright 2026, AgentMux Corp.
2// SPDX-License-Identifier: Apache-2.0
3
4//! Drone pane backend — issue #753 Phase 1.
5//!
6//! Native DAG-of-blocks drone engine modeled after
7//! [Sim](https://github.com/simstudioai/sim). Frontend lives in
8//! `frontend/app/view/drone/`. The canvas uses `@dschz/solid-flow`
9//! (xyflow core, SolidJS port).
10//!
11//! Phase 1 ships 5 block types: Agent, Condition, API, Response,
12//! Variables. The Function block (`quickjs-rs` sandbox) is Phase 2.
13//!
14//! Architecture:
15//!   * `types.rs`        — DroneDefinition, DroneRun, FlowNode, FlowEdge.
16//!   * `storage.rs`      — wstore CRUD over db_drone_definitions
17//!                         + db_drone_runs.
18//!   * `executor/`       — DAG topological sort + per-layer concurrent runner.
19//!   * `executor/blocks` — one file per block type.
20//!   * `data_flow.rs`    — `{{var}}` interpolation (Mustache-style; see RFC §2 Q5).
21
22pub mod data_flow;
23pub mod executor;
24pub mod storage;
25pub mod types;
26
27pub use types::{
28    BlockKind, BlockState, FlowEdge, FlowNode, RunStatus, DroneDefinition, DroneRun,
29};