Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

core: stdcm: reorganize stop data #10989

Draft
wants to merge 2 commits into
base: dev
Choose a base branch
from
Draft

core: stdcm: reorganize stop data #10989

wants to merge 2 commits into from

Conversation

eckter
Copy link
Contributor

@eckter eckter commented Mar 3, 2025

Fix #8974

  • A new class provides the stop locations to the InfraExplorer. The actual behavior doesn't change much, it's just to split the responsibilities. We'll eventually tweak this class to provide overtake stops. The intent is to eventually provide "optional" stops that generate two explorers (with and without), but that behavior isn't supported yet, to avoid cluttering this PR.
  • InfraExplorer now provides an accessor to list stops locations on the path, though it doesn't keep track of any temporal data. The stop data itself isn't stored in the explorer, it's just an accessor for the underlying IncrementalPath.
  • InfraExplorerWithEnvelope does not store anything itself (besides what's in the underlying InfraExplorer). It matches data from InfraExplorer stop locations and TimeData stop data to build the resulting envelope. No more redundant data there.

With these changes, it should be easier to implement proper overtakes. Safety speeds as well, though we'd need to be careful about lookahead. We need to know about the stop before entering the safety speed area.


EDIT: back to draft, there's some bugs around

So I missed some complexity:

  1. We often refer to graph.steps to figure out if/when we should stop. That needs to go as well.
  2. When the input says to stop at some given operational point, we may encounter several parts of that OP on the path. But we only need to stop once. Which involves keeping track of where we're at in the path.

@github-actions github-actions bot added the area:core Work on Core Service label Mar 3, 2025
@codecov-commenter
Copy link

codecov-commenter commented Mar 3, 2025

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 80.63%. Comparing base (b010995) to head (2063014).
Report is 2 commits behind head on dev.

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@           Coverage Diff           @@
##              dev   #10989   +/-   ##
=======================================
  Coverage   80.63%   80.63%           
=======================================
  Files        1101     1101           
  Lines      112322   112322           
  Branches      749      749           
=======================================
  Hits        90566    90566           
  Misses      21713    21713           
  Partials       43       43           
Flag Coverage Δ
editoast 72.18% <ø> (ø)
front 89.92% <ø> (ø)
gateway 2.18% <ø> (ø)
osrdyne 2.53% <ø> (ø)
railjson_generator 87.58% <ø> (ø)
tests 87.90% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@eckter eckter force-pushed the ech/unify-stops branch from 5bad041 to bd888af Compare March 6, 2025 13:40
@eckter eckter force-pushed the ech/unify-stops branch from bd888af to 2063014 Compare March 6, 2025 13:52
@eckter eckter marked this pull request as ready for review March 6, 2025 14:20
@eckter eckter requested a review from a team as a code owner March 6, 2025 14:20
@eckter eckter requested review from bougue-pe and Erashin March 6, 2025 14:20
@eckter eckter changed the title core: stdcm: unify stop data core: stdcm: reorganize stop data Mar 6, 2025
@eckter eckter marked this pull request as draft March 6, 2025 14:26
@eckter eckter requested review from Erashin and removed request for Erashin March 6, 2025 15:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:core Work on Core Service
Projects
None yet
Development

Successfully merging this pull request may close these issues.

refacto: stdcm: unify stop data
2 participants