conveyal / r5

Developed to power Conveyal's web-based interface for scenario planning and land-use/transport accessibility analysis, R5 is our routing engine for multimodal (transit/bike/walk/car) networks with a particular focus on public transit
https://conveyal.com/learn
MIT License
272 stars 71 forks source link

Fix freeform guardrails #918

Closed ansoncfit closed 6 months ago

ansoncfit commented 6 months ago

We currently limit the number of destinations and OD pairs in regional analyses with time/path results. This PR fixes a couple issues with the related guardrails:

Small refactor for brevity/legibility: task = job.templateTask

abyrd commented 6 months ago

The underlying problem where tasks continue to be distributed to workers after an error was reported should be solved by #921. With that fixed, mismatches in validation rules between different components (UI, backend, workers) should be much less problematic and just result in a few error messages.

That said, it's also a good idea to make these checks more specific as in this PR.