Offline Habitat route authoring
This tool uses Ubuntu's packaged Recast/Detour library to extract a complete route from a supplied Habitat navmesh. It runs on Worker only. It outputs task waypoints, never runtime collision knowledge for the AI composition.
Build the Dockerfile into ndc-ai-polygon-route-author:habitat-v1 using the
isolated anonymous Docker configuration described in the Worker runbook. Mount
only the source asset directory read-only, disable container networking, and run:
habitat-route /data/scene.navmesh startX startY startZ goalX goalY goalZ
Coordinates remain Habitat Y-up in the output. Mission Core conversion is
(x,y,z) -> (x,-z,y). The source navmesh's agent radius and step capability may
be incompatible with the 1 x 1 m rover. Extracted points require full-footprint
support/collision checks and a real closed-loop run before acceptance. Partial
paths, incompatible binary layouts, and disconnected endpoints are rejected.
Sources: Habitat-Sim src/esp/nav/PathFinder.cpp and PathFinder.h define the
version 1/2 binary container; Recast Navigation's Detour performs the actual
path search. The loader supports 32-bit Detour references and the v2 56-byte
settings layout. The image build and source/output hashes belong in the
private qualification receipt. No asset is modified by route extraction.