chore: save current workspace progress

This commit is contained in:
梁薄云
2026-08-09 22:13:18 +08:00
parent 650c2ab0e3
commit 2f4fd15e52
449 changed files with 76593 additions and 971 deletions
@@ -319,7 +319,7 @@ internal static class TrajectoryObservationMovementTestRunner
sessionId, bootstrap, controller, settings, obstacleSnapshotVersion);
var dynamicSnapshotBuilder = new TrajectoryObservationDynamicSnapshotBuilder();
long visualizationSequence = 0L;
bool gearSwitchWaitingPrinted = false;
int lastLoggedWaitingSegmentIndex = -1;
while (true)
{
@@ -335,18 +335,17 @@ internal static class TrajectoryObservationMovementTestRunner
TrajectoryObservationCharts charts = observation.PublishedTrajectory == null
? null
: TrajectoryObservationCharts.Build(observation.PublishedTrajectory, segment,
settings.MapPaddingMeters);
TrajectoryObservationRuntimeState runtimeState = TrajectoryObservationRuntimeState.Create(
now, observation.PublishedTrajectory);
effectiveConfiguration.Frenet.MaximumProjectionDistanceMeters);
TrajectoryObservationRuntimeState runtimeState = TrajectoryObservationRuntimeState.Create(controller.SegmentState);
DrawIfCurrent(sessionId, bootstrap, observation, charts, runtimeState, diagnostic);
webPublisher?.TryPublish(now, () => dynamicSnapshotBuilder.Build(
Interlocked.Increment(ref visualizationSequence), tick, controller.ActiveSegment,
controller.PreviousTrajectoryForVisualization, bootstrap.Vehicle,
controller.CreateEffectiveConfigurationSnapshot()));
if (runtimeState.WaitingAtGearSwitch && !gearSwitchWaitingPrinted)
if (runtimeState.WaitingAtGearSwitch && segment.SegmentIndex != lastLoggedWaitingSegmentIndex)
{
LogIfCurrent(sessionId, runtimeState.WorldNotice);
gearSwitchWaitingPrinted = true;
lastLoggedWaitingSegmentIndex = segment.SegmentIndex;
}
if (tick.PlanningStarted)
@@ -360,6 +359,11 @@ internal static class TrajectoryObservationMovementTestRunner
TrajectoryObservationDiagnostics.CreateCurveReport(charts, observation.PublishedTrajectory).Text);
}
}
if (tick.SegmentState.Phase == TrajectoryObservationSegmentPhase.Completed)
{
LogIfCurrent(sessionId, "all direction segments completed; observation session ended.");
break;
}
}
}