Skip to content

Prepare v0.3.0 release - #7

Merged
Dylan-Gallagher merged 1 commit into
mainfrom
release/v0.3.0
Aug 17, 2026
Merged

Dylan-Gallagher merged 1 commit into
mainfrom
release/v0.3.0

Conversation

@Dylan-Gallagher

Copy link
Copy Markdown
Owner

arm-lab v0.3.0 — continuous-position/velocity/acceleration corner stops

This release closes the principal trajectory-smoothness limitation documented
in v0.2.0. Every nonzero RRT shortcut edge now receives an independent
rest-to-rest seven-phase S-curve, with an exact full stop at each shortcut
corner.

Measured evidence

  • Fixed Demo 2 trajectory: 1,919 samples over 3.836 s at 2 ms.
  • Measured joint peaks: 0.550 rad/s, 1.799 rad/s², and 7.996 rad/s³ against
    declared limits of 0.550, 1.800, and 8.000.
  • Fixed multi-query planning: 30/30 direct-free and 15/15 obstructed trials.
  • Fixed tracking: velocity feedforward 14/18 numeric and 13/18 after the
    zero-sampled-penetration gate; position PD 0/18.
  • Randomized evaluation: 138/300 canonical plans; velocity feedforward 104/138
    numeric and 90/138 after the sampled-penetration gate; position PD 0/138.
  • All four fixed and 37/276 randomized penetration cases remain published.

The pre-result protocol, complete result summary, raw CSVs, and reproduction
commands are included in the tagged tree.

API and behavior changes

This is a deliberate pre-1.0 breaking release:

  • Trajectory gains the public qddd sampled-jerk field. Code that constructs
    the struct directly must populate it.
  • time_parameterize now stops at every nonzero input waypoint. Planner callers
    should pass geometric shortcut waypoints, not collision-check densification
    samples, unless a stop at every sample is intended.
  • SCurve1d::at(duration) now reports the terminal rest state with zero jerk.

Claim boundary

Position, velocity, and acceleration are continuous across the complete
trajectory. Jerk is bounded almost everywhere but can jump between finite
one-sided values at phase and waypoint boundaries; this is not geometric corner
blending or time-optimal path parameterization. Collision evidence remains
discrete/sampled simulation evidence. The release does not claim continuous
swept-volume safety, positive robot clearance, hardware performance, or
sim-to-real transfer.

Development and validation used OpenAI Codex assistance. The implementation,
measurements, artifacts, and limitations were checked against the frozen
pre-result protocol before publication.

Signed-off-by: Dylan Gallagher <76841713+Dylan-Gallagher@users.noreply.github.com>
@Dylan-Gallagher
Dylan-Gallagher merged commit 392e798 into main Aug 17, 2026
1 check passed
@Dylan-Gallagher
Dylan-Gallagher deleted the release/v0.3.0 branch August 17, 2026 17:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant