Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .env
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ PROJECT_NAME="airstack"
# If you've run ./airstack.sh setup, then this will auto-generate from the git commit hash every time a change is made
# to a Dockerfile or docker-compose.yaml file. Otherwise this can also be set explicitly to make a release version.
# auto-generated from git commit hash
VERSION="0.21.0-dev.11"
VERSION="0.21.0-dev.12"
# Image-tag discriminator ONLY (appears in the image tag suffix, e.g. ..._robot-x86-64_dev).
# No Dockerfile consumes it: "prebuilt" does NOT bake the built ros_ws into the image today —
# a real prebuilt (workspace-baked) stage is future work. Keep "dev" (mounted code, built live).
Expand Down
2 changes: 1 addition & 1 deletion docs/modules/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The stacks below are the ones REGISTERED in the index; the site nav's

| Stack | Description | Declared compat | Wiring | Registry entry |
|-------|-------------|-----------------|--------|----------------|
| [full_default](../../stacks/full_default/README.md) | The full-autonomy topology as a self-contained stack folder, with the MIGHTY map-based local planner (asm_mighty module: planner + acl-mapping voxel world model + NavigateTask bridge) — the baseline most users start from, the default when no stack is selected, and the stack other stacks are copied from | `>=0.21.0-dev.10 <0.22.0` | *not committed yet* | [full_default.yaml](https://github.com/castacks/airstack-modules-index/blob/main/stacks/full_default.yaml) |
| [full_default](../../stacks/full_default/README.md) | The full-autonomy topology as a self-contained stack folder, with the MIGHTY map-based local planner (asm_mighty module: planner + acl-mapping voxel world model + NavigateTask bridge) — the baseline most users start from, the default when no stack is selected, and the stack other stacks are copied from | `>=0.21.0-dev.10 <0.22.0` | [wiring.md](../../stacks/full_default/wiring.md) | [full_default.yaml](https://github.com/castacks/airstack-modules-index/blob/main/stacks/full_default.yaml) |
| [full_droan](../../stacks/full_droan/README.md) | Full autonomy with the GPU DROAN reactive local planner (droan_gl, asm_droan module) in place of the default MIGHTY planner — the 0.20.x full_default topology kept as a named stack for depth-camera-only vehicles and legacy comparisons | `>=0.21.0-dev.10 <0.22.0` | [wiring.md](../../stacks/full_droan/wiring.md) | [full_droan.yaml](https://github.com/castacks/airstack-modules-index/blob/main/stacks/full_droan.yaml) |
| [full_droan_cpu](../../stacks/full_droan_cpu/README.md) | Full autonomy with the CPU DROAN local planner (droan_local_planner + live disparity_expansion world model, asm_droan module) in place of the default MIGHTY planner | `>=0.21.0-dev.10 <0.22.0` | [wiring.md](../../stacks/full_droan_cpu/wiring.md) | [full_droan_cpu.yaml](https://github.com/castacks/airstack-modules-index/blob/main/stacks/full_droan_cpu.yaml) |
| [full_macvo](../../stacks/full_macvo/README.md) | Full autonomy with MAC-VO learned stereo visual odometry as the disparity source for the DROAN local planner (droan_gl, asm_droan module, consumes /$ROBOT_NAME/perception/macvo/disparity) | `>=0.21.0-dev.10 <0.22.0` | [wiring.md](../../stacks/full_macvo/wiring.md) | [full_macvo.yaml](https://github.com/castacks/airstack-modules-index/blob/main/stacks/full_macvo.yaml) |
Expand Down
11 changes: 11 additions & 0 deletions docs/release_notes/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,17 @@ its own notes. -->

## 0.21.0 (Unreleased)

- **Wiring baselines for the MIGHTY stacks.** `stacks/full_default/wiring.md`
and `stacks/lite_default/wiring.md` are committed from validated Isaac Sim
snapshot runs on the 0.21.0-dev.11 robot image (MIGHTY nodes
`mighty/{global_mapper_ros,mighty_node,mighty_bridge,mighty_init_pose_tf}`
in place of `droan/disparity_expander_node`; the two stacks differ only by
the global layer). That image carries MAVROS 2.15.1, which names its plugin
sub-nodes `interface/mavros/mavros/<plugin>` (2.14.0: `interface/mavros/<plugin>`),
so goldens captured on older images (`full_droan`, `full_droan_cpu`,
`full_macvo`) will report drift on freshly built images until they are
regenerated.

- Module catalog synced from the registry (`sync-modules-index`): `full_mighty`, `mighty`.

- **MIGHTY is the default local planner; DROAN moved to the `asm_droan`
Expand Down
24 changes: 11 additions & 13 deletions stacks/full_default/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,9 @@ the asm_mighty README.
## Baseline

This stack is the default: with no stack selected, `robot.launch.xml`
launches it. Its `wiring.md` is the observed-graph baseline other full stacks
are compared against; it is generated by the wiring snapshot test, never
hand-edited:
launches it. Its committed [wiring.md](wiring.md) is the observed-graph
baseline other full stacks are compared against; it is generated by the
wiring snapshot test, never hand-edited:

```bash
airstack test -m wiring --stack full_default --sim isaacsim --num-robots 1
Expand All @@ -73,20 +73,18 @@ The shared per-robot preamble (ROBOT_NAME namespace, `use_sim_time`,
## Known limits

- The interface layer is a wrapped include (`interface.launch.py`) — its
MAVROS wiring is not visible in `stack.launch.xml`; read the wiring
snapshot for the observed graph.
MAVROS wiring is not visible in `stack.launch.xml`; read `wiring.md` for
the observed graph.
- MIGHTY needs a 3D lidar cloud (`sensors/ouster/point_cloud` by default);
depth-camera-only vehicles use `full_droan` / `full_droan_cpu`.
- `docker-compose.yaml` is a stub: the pinned module has no dependency layer,
so trunk compose profiles provide all services.

## wiring.md

This stack's observed wiring diagram lives at `wiring.md` once a validated
wiring-snapshot run commits it; CI then drift-checks the running graph
against it. Until then the snapshot test passes with a bootstrap instruction
naming the observed file to validate and copy in (mechanism:
[Stacks → wiring.md](../../docs/development/stacks.md#wiringmd-generation-and-drift-checking)).
Generate or regenerate via `airstack test -m wiring --stack full_default`.
The previous default topology's baseline is
[`full_droan/wiring.md`](../full_droan/wiring.md).
This stack's observed wiring diagram is committed at [wiring.md](wiring.md);
CI drift-checks the running graph against it. Regenerate via
`airstack test -m wiring --stack full_default`. The previous default
topology's baseline is [`full_droan/wiring.md`](../full_droan/wiring.md) —
the two differ only in the local-planner nodes (`mighty/*` vs
`droan/disparity_expander_node`).
Loading
Loading