mirror of
https://github.com/MCCTeam/Minecraft-Console-Client
synced 2026-08-15 13:04:36 +00:00
When a Descend segment is followed by another Descend (or Traverse/ Diagonal) with a different heading, PathSegmentBuilder.Classify correctly assigned ExitTransition=LandingRecovery, but BuildHints fell into the `if (turning)` branch first and returned hints with RequireStableFooting=true. That gate forces GroundedSegmentController to wait for IsSettledOnTargetBlock (footprint inside, won't leave next tick, horizontal speed^2 <= 0.0016), so a multi-block diagonal Descend that landed inside the target block while still carrying ~0.02 m/tick of residual jump momentum oscillated in place for ~60 ticks (3 seconds) until the speed decayed. Move the LandingRecovery branch ahead of the turning branch so the Descend-carry handoff uses RequireStableFooting=false and the ShouldComplete shortcut (LandingRecovery + footprint inside target on the ground) fires the moment the bot reaches the landing column. Adds two regression tests covering the Descend->turning-Descend handoff and a sanity guard that ordinary Traverse->turning-Traverse still uses the turning branch. Also lifts DiagnosticsTailSize from 64 to 200 and emits an automatic "slow segment" tick dump from PathSegmentManager whenever a segment takes >=25 ticks, which is what surfaced this stall. Made-with: Cursor |
||
|---|---|---|
| .. | ||
| Core | ||
| Execution | ||
| Goals | ||
| Moves | ||