Overview
The signed delivery layer between WaveForm and autonomous robots in the field.
A nav-pack is the machine-readable contract a robot needs to operate at a site. The registry signs, versions, and serves these packs to fleets of robots — with cryptographic verification, per-customer ACL, autonomy-tier gating, and an append-only audit log.
Robots don’t talk to the rest of the platform directly. They talk to the registry. The registry is small, fast, and the only component on the serving path that needs autonomy-grade SLAs.
What problem it solves
If you ship a fleet of autonomous robots into the world, you face five problems on day one:
- Authenticity. How does a robot know the map it’s driving on is the one you signed off on?
- Versioning. When the site changes, how does the robot know to swap to the new pack — and how does it atomically transition without driving off the road?
- Distribution. How do thousands of robots fetch large pack bytes without melting your origin server?
- Authorization. Which robots are allowed to operate at which site, at which autonomy tier?
- Observability. When something goes wrong with a single robot, how do you know which pack version it had?
The nav-pack registry is WaveForm’s answer to all five. Read on for the shape.
The shape of a request
At its narrowest, the contract for a robot looks like this:
GET /v1/areas/<area_id>/nav-pack
Authorization: Bearer <robot-device-token>Returns the latest active, signed manifest for that area scoped to the robot’s profile + customer. The robot uses byte_uri on each layer to pull bytes directly from KMS-encrypted S3 (presigned URLs, ~1 h TTL).
The pieces
Concepts
Areas, packs, versions, layers, signatures, grants.
Autonomy gate
The §5 server-side check that gates every read.
Publishing
Build a manifest, sign with KMS, ship a version.
Signatures + verify
Ed25519 / ECDSA / RSA-PSS, sync + periodic re-check.
Webhooks
HMAC-signed delivery on every status transition.
Grants + ACL
Customer-scoped visibility + cross-org sharing.
Production status
The nav-pack registry is live in prod at api.waveform.vision/v1/.... The infrastructure (S3 bucket, KMS keys, SQS queues, all four worker Lambdas) is provisioned via the same CloudFormation stack that runs the rest of WaveForm. See API reference for the full surface and SDKs for typed client libraries.