Skip to content

Commit d5bf48b

Browse files
andrewjongclaude
andcommitted
stacks(full_mighty): pin asm_mighty v0.1.3 (bridge TRACK-mode fix, arrival yaw, grid-seam + altitude launch args)
v0.1.1 hangs on AirStack 0.20.x: takeoff_landing_task leaves the trajectory controller in ROBOT_POSE, where trajectory_override is merged but never flown, so MIGHTY commits one trajectory and idles in GOAL_SEEN ("never replans"). asm_mighty v0.1.2 sets TRACK before forwarding overrides, bounds/preempts NavigateTask goals, drops stale global_plan routes and turns to the goal yaw on arrival; v0.1.3 adds launch args for the mapper->planner grid seam and the altitude band (defaults unchanged). README + launch comment: the bridge publishes trajectory_override (not trajectory_segment_to_add, stale since asm_mighty v0.1.1); the repo is public now. Registry follow-up: airstack-modules-index modules/mighty.yaml registered_ref v0.1.1 -> v0.1.3 (docs/modules/mighty.md and tests/meta fixtures are mirrored from it, not edited here). VERSION 0.21.0-dev.8 -> 0.21.0-dev.9. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
1 parent 3cddcb2 commit d5bf48b

4 files changed

Lines changed: 37 additions & 18 deletions

File tree

‎.env‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ PROJECT_NAME="airstack"
1212
# If you've run ./airstack.sh setup, then this will auto-generate from the git commit hash every time a change is made
1313
# to a Dockerfile or docker-compose.yaml file. Otherwise this can also be set explicitly to make a release version.
1414
# auto-generated from git commit hash
15-
VERSION="0.21.0-dev.8"
15+
VERSION="0.21.0-dev.9"
1616
# Image-tag discriminator ONLY (appears in the image tag suffix, e.g. ..._robot-x86-64_dev).
1717
# No Dockerfile consumes it: "prebuilt" does NOT bake the built ros_ws into the image today —
1818
# a real prebuilt (workspace-baked) stage is future work. Keep "dev" (mounted code, built live).

‎stacks/full_mighty/README.md‎

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
external **asm_mighty** module (MIT ACL, RA-L 2026), together with its
66
acl-mapping voxel world model (fed by the filtered Ouster cloud) and a
77
`mighty_bridge` adapter that serves the same `tasks/navigate` NavigateTask
8-
action and publishes `trajectory_controller/trajectory_segment_to_add`
9-
segments — so the rest of the stack (trajectory controller, PID, safety
8+
action and publishes receding-horizon `trajectory_controller/trajectory_override`
9+
trajectories — so the rest of the stack (trajectory controller, PID, safety
1010
monitor, takeoff/landing, GCS) is unchanged from `full_default`.
1111

1212
This stack is the module-swap demonstration for the modular architecture:
@@ -27,13 +27,27 @@ Notes:
2727
`airstack module lock --build` before `airstack up`.
2828
- Planner/world-model tuning lives in the module
2929
(`mighty_bridge/config/*_airstack.yaml`).
30-
- The [asm_mighty repo](https://github.com/castacks/asm_mighty) is **private
31-
until the AirStack agent study concludes** (then public) — until the flip,
32-
`airstack module sync` needs castacks-member credentials. Registry entry:
30+
- The [asm_mighty repo](https://github.com/castacks/asm_mighty) is public.
31+
Registry entry:
3332
[modules/mighty.yaml](https://github.com/castacks/airstack-modules-index/blob/main/modules/mighty.yaml);
3433
catalog page: [mighty](../../docs/modules/mighty.md).
35-
- Validation at the pinned version (Isaac Sim, judged on ground truth):
36-
44/44 vendored gtests, empty-world NavigateTask route (goal error 0.14 m),
37-
7/7 pillar-field traversals, and 5/5 judged obstacle-route flights with
38-
min clearances 1.59–1.65 m against a 1.0 m gate — the motivating DROAN
39-
comparison (figures + numbers) is in the module README.
34+
- **Pin v0.1.3 or newer on AirStack 0.20.x.** `takeoff_landing_task` leaves
35+
the trajectory controller in ROBOT_POSE, where `trajectory_override` is
36+
merged but never flown; the v0.1.1 bridge assumed no mode management, so
37+
MIGHTY committed one trajectory and idled in GOAL_SEEN ("never replans").
38+
v0.1.2 sets TRACK before forwarding overrides, bounds and preempts
39+
NavigateTask goals, drops stale `global_plan` routes, and turns the vehicle
40+
to the goal pose's yaw on arrival (MIGHTY drops the goal orientation;
41+
`arrival_yaw` param). v0.1.3 adds launch args for the mapper->planner grid
42+
seam (`mighty_*_grid_topic`, to interpose a constraint node) and the
43+
altitude band (`mighty_z_min`, `mighty_mapper_z_ground`,
44+
`mighty_mapper_z_min_unknown`, for missions below the takeoff point);
45+
defaults unchanged. Changelog in the module README.
46+
- Validation: the judged campaign ran at v0.1.0 (code-identical to v0.1.1;
47+
Isaac Sim, judged on ground truth): 44/44 vendored gtests, empty-world
48+
NavigateTask route (goal error 0.14 m), 7/7 pillar-field traversals, and
49+
5/5 judged obstacle-route flights with min clearances 1.59–1.65 m against a
50+
1.0 m gate — the motivating DROAN comparison (figures + numbers) is in the
51+
module README. The v0.1.2 bridge fixes were verified in closed-loop Isaac
52+
flights (NavigateTask goal reached within 0.1 m; arrival yaw within 10°);
53+
the judged campaign has not been re-run at v0.1.3.

‎stacks/full_mighty/launch/stack.launch.xml‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,9 @@
7575

7676
<!-- MIGHTY local planner (asm_mighty module, CPU): filtered Ouster cloud in
7777
to its acl-mapping voxel world model, odometry in from
78-
odometry_conversion; trajectory_segment_to_add out to the trajectory
79-
controller; navigate action at tasks/navigate. Replaces droan_gl
78+
odometry_conversion; trajectory_override out to the trajectory
79+
controller (the bridge sets TRACK mode itself); navigate action at
80+
tasks/navigate. Replaces droan_gl
8081
(module-swap: this include is the only local-layer difference vs
8182
full_default). -->
8283
<include file="$(find-pkg-share mighty_bridge)/launch/mighty_module.launch.xml" />

‎stacks/full_mighty/modules.repos‎

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,18 @@
1010
#
1111
# full_mighty pulls the asm_mighty module (MIGHTY local planner + acl-mapping
1212
# world model + NavigateTask bridge); everything else is trunk-resident.
13-
# asm_mighty lives at castacks/asm_mighty (PRIVATE until the AirStack agent
14-
# study concludes, then public — until the flip, syncing this stack needs
15-
# castacks-member credentials). v0.1.1 is code-identical to the validated
16-
# v0.1.0 (README-only delta).
13+
# asm_mighty lives at castacks/asm_mighty (public). v0.1.0 is the judged-eval
14+
# validated release (v0.1.1 = README-only delta). v0.1.2 fixes the bridge for
15+
# AirStack 0.20.x: takeoff leaves the trajectory controller in ROBOT_POSE, where
16+
# trajectory_override is merged but never flown, so on v0.1.1 MIGHTY commits one
17+
# trajectory and idles ("never replans"); the bridge now sets TRACK, bounds and
18+
# preempts NavigateTask goals, and turns to the goal yaw on arrival (MIGHTY drops
19+
# the goal orientation). v0.1.3 adds launch args for the mapper->planner grid
20+
# seam and the altitude band (defaults unchanged).
1721
airstack_compat: ">=0.20.0-alpha.16 <0.21.0"
1822
repositories:
1923
asm_mighty:
2024
type: git
2125
url: git@github.com:castacks/asm_mighty.git
22-
version: v0.1.1
26+
version: v0.1.3
2327
x-local-modules: []

0 commit comments

Comments
 (0)