Mission Layer
Unified entry for behavior trees, state monitoring, goal dispatch, and mission-execution modules.
Layer Role
The mission layer answers two questions:
- what the robot should do now
- who dispatches, monitors, and advances that task
It does not own low-level trajectory generation, and it is not a hardware-facing layer.
Recommended Directory Layout
mission/
├── navigation/
└── manipulation/
Recommended organization:
mission/
├── navigation/
│ ├── venom_waypoint/
│ ├── venom_nav_bt/
│ ├── venom_global_monitor/
│ └── venom_mission_manager/
└── manipulation/
├── venom_grasp_mission/
└── venom_pick_place_manager/
Boundary Against Planning
planning/answers how to generate paths, trajectories, and control outputsmission/answers when to dispatch goals, switch tasks, and react to state transitions
Examples:
venom_eagle_plannerandvenom_teb_controllerbelong underplanning/navigation/venom_waypoint,venom_nav_bt, andvenom_global_monitorbelong undermission/navigation/venom_moveit_graspbelongs underplanning/manipulation/venom_grasp_missionbelongs undermission/manipulation/
Recommended Package Names
- navigation task entry:
venom_waypoint - navigation behavior tree:
venom_nav_bt - global state monitor:
venom_global_monitor - mission manager:
venom_mission_manager - grasp-task flow:
venom_grasp_mission
Current Status
The main workspace now contains a committed mission/ directory with placeholder navigation/ and manipulation/ subfolders.
Future behavior-tree, waypoint, listener, and task-dispatch packages should be placed here instead of continuing to grow inside venom_bringup.