Map the work before agents move.
Compile feature dependencies into legal execution waves. Cycles and unknown references block the run; security flags remain release gates.
Compile feature dependencies into legal execution waves. Cycles and unknown references block the run; security flags remain release gates.
How does the Agent Delivery Compiler turn declared feature dependencies into parallel execution waves and identify the critical path?
This compiler transforms piped feature definitions into a directed acyclic graph (DAG) using the client-side Graphlib library. It first verifies that all referenced dependencies exist and checks for cycles via depth-first graph analysis. Executable 'waves' are constructed iteratively by pulling all tasks whose incoming dependencies have been completely resolved in preceding waves. Concurrently, it walks the topological ordering to evaluate cumulative effort, identifying the longest dependency sequence (the critical path) that governs total estimated delivery duration.
Effort numbers represent qualitative point estimates rather than validated calendar durations. The compiler's wave generation assumes infinite agent concurrency without staffing bottlenecks, resource leveling, or runtime failure retries, and setting a security gate merely tags the node without enforcing automated policy tests.
With the default sample loaded in the editor (Settings [2 pts], Indexing [5 pts, security gate], File Browser [3 pts], Search [4 pts]), click 'Compile map'. The compiler detects 4 tasks across 4 dependencies, generating 4 sequential waves: Wave 1 (Settings, finish 2), Wave 2 (Indexing, finish 7), Wave 3 (File Browser, finish 10), and Wave 4 (Search, finish 14). The longest cumulative sequence resolves to 'Settings -> Indexing -> File Browser -> Search', displaying a 14-point critical path alongside 2 flagged security gates.
The compiler uses Graphlib's directed graph structure to assign tasks to nodes and prerequisites to directed edges. Before scheduling, it runs alg.isAcyclic and alg.findCycles; any circular reference halts execution immediately because cyclic graphs cannot produce a valid topological ordering. Graphlib API Reference
Execution waves group tasks whose predecessors have all been satisfied, enabling concurrent multi-agent dispatch at each level. To evaluate total duration, the critical path method traces the sequence of dependent activities having the longest cumulative duration through the network, determining the earliest completion boundary regardless of concurrent branch speeds. Critical Path Method
Documentation of Graphlib's Graph data structure, alg.isAcyclic, alg.findCycles, and alg.topsort used in the compiler's client script.
Conceptual background on modeling dependent project activities as an acyclic network to determine the longest path and minimum duration.
Settings comes first, then Indexing, then File Browser, then Search. Search also directly depends on Indexing, but still waits for File Browser. These four features therefore form four ordered waves with one task each. Bars count four features and four waves. This is local graph planning, not four active workers or actual execution. Settings effort is two, Indexing five, File Browser three and Search four. The full route sums fourteen points. The route bypassing File Browser would sum eleven, but the dependency on File Browser keeps Search at fourteen. Bars use thirty two pixels per estimated point. These are user effort estimates, not calendar commitments. The compiler follows topological predecessors to select the longest route. Two tasks are marked security yes: Indexing and Search. They are listed and styled as gates, but no vulnerability evaluation or release approval occurs. Unknown dependencies and cycles block compilation. Export serializes the graph, waves and effort route. The local vendor directory is empty and Graphlib is unavailable, so compile is disabled in this snapshot. We can only derive the bundled example from the source and preserve its disabled local state. No code, staffing, repository changes or deployments are produced.