flowchart TD subgraph Legend [Legend: arrow A --> B means B builds on A] direction LR L1["Ready to start"]:::ready L2["Blocked until parents land"]:::blocked L3["Needs hardware"]:::hw end URDF["urdf-gazebo-sim"] CM["clean-and-map"] NL["nav-localize"] DC["dock-cycle"] RS["recovery-safety"] FC["floor-care"] CJ["cleaning-jobs"] LR["live-robot-bringup"] DB["dust-bin"] VF["vacuum-fan"] URDF --> CM URDF --> RS CM --> NL CM --> FC NL --> DC CM --> CJ NL --> CJ DC --> CJ CM --> LR NL --> LR DC --> LR RS --> LR FC --> LR CJ --> LR classDef ready fill:#d4edda,stroke:#28a745,color:#155724; classDef blocked fill:#fff3cd,stroke:#ffc107,color:#856404; classDef hw fill:#cfe2ff,stroke:#0d6efd,color:#084298; class URDF,DB,VF ready; class CM,NL,DC,RS,FC,CJ blocked; class LR hw;