Generate post-expedition problems report#279
Merged
Conversation
erikvansebille
requested changes
Feb 6, 2026
Member
erikvansebille
left a comment
There was a problem hiding this comment.
Code changes look good to me; but could you also add some unit-tests so that we don’t unintentionally break this functionality later?
f691a61 to
4ffa080
Compare
for more information, see https://pre-commit.ci
Collaborator
Author
I've added more testing now 👍 |
erikvansebille
approved these changes
Feb 6, 2026
j-atkins
added a commit
that referenced
this pull request
Feb 13, 2026
* psuedo code * remove notes * fill some problems * nicks changes * still pseudo-code * prepare for problem handling logic * work in progress... * moving logic to _run * separate problem classes and separation logic * re-structure * progressing changes across simuate_schedule and _run * checkpoint and reverification logic * tidy up some logging etc * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * propagating general pre-departure problem * propagate general problem during expedition * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix waypoint index selection for problem waypoint vs waypoint where scheduling will fail * work towards propagating instrument problems * fix contingency time checker, finish propagating instrument problem * refactor * propagating multiple problems per expedition, bugs still to fix * propagate multiple problems across a single expedition * start moving towards per waypoint contingency checker * progress towards individual waypoint contingency checking * revert to simpler next waypoint contingency checks * waypoint congtingency checking and clearer output logging * account for instrument deployment timings * tidy up TODOs and delete checkpoint file at end of successful expedition * working towards problem selection logic * define problem selection logic and build system for caching selected problems for re-use with the same expedition * parse prob_level argument through `run` CLI command * update class structure * add info to repo README and tidy up * re-organise utils.py, improve instrument config register and downstream stationkeeping time calculations * improve problems dir structures and giving unique identifiers, plus improve checkpoint error messaging * updating tests and better unexpected error handling * better handling of old problems/checkpoint files if simulation fails for unexpected errors * update test with new log output * tidy up * handle single waypoint expeditions and tidy up * remove duplication * re-structure dir * scenario class tests * tests for problems simulator class * add test for calc_wp_stationkeeping_time * add test for _calc_sail_time * tests for checkpoint class * move back test zarr files * reinstate original structure * refactor, move methods to static * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Enhance problems terminal output styling (#276) * display problems output in tabular format * tidy up and fix simulation exiting procedure * post review edits * Update quickstart and assignment docs (#280) * update quickstart * update sail the ship * Generate post-expedition problems report (#279) * add post expedition report generator * update tests and add new for post expedition report * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * hash based on instrument deployments only * only one problem per waypoint (plus test) * add todo for future * tidy up * remove patching * remove unnecessary assertions * restructure scenario class definition and deployment * remove "around" ambiguity * fix expedition strategy and re-arrange output dir structure * shorten variable naming * tidy up comment * update test to updated problem class organisation * change from "prob-level" to "difficulty level", set default to "easy" * more error handling * fix test (0/1 -> "easy"/"medium") * update docs after change difficulty level default to "easy" * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * schedule.verify() now also takes instrument deployment times into account * update invalid schedule messaging * avoid duplicating drifter stationkeeping time * update tests * update plan UI test, more control over waypoints to test * more detail to messaging * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * update datetimes in static/expedition.yaml (#285) --------- Co-authored-by: Emma Daniels <e.e.daniels1@uu.nl> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds a step to generate a human-readable record of all problems which occurred across the expedition (including their full message), which could be useful to refer back to when students are making their presentations.
Also tidies up some of the
problems_encountereddirectory strucutre.