Switch to computed scores across the autopilot#4391
Open
edjroz wants to merge 3 commits into
Open
Conversation
- Use Score::Protocol instead of Score::Solver for autopilot-computed scores - Remove dead `score` field from driver's /solve response DTO and Solved struct - Mark Score::Solver and Score::ProtocolWithSolverRisk as deprecated - Add tests for Score::Protocol serialization round-trip
|
All contributors have signed the CLA ✍️ ✅ |
Contributor
There was a problem hiding this comment.
Code Review
This pull request deprecates the Solver and ProtocolWithSolverRisk score variants in favor of Protocol within the competition model. It removes the score field from the Solved domain object and the Solution DTO, while updating the autopilot to utilize protocol-calculated scores. Additionally, unit tests were expanded to include serialization round-trip and legacy deserialization checks. No critical issues found.
Author
|
I have read the CLA Document and I hereby sign the CLA |
Author
|
recheck |
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.
Description
Now that the combinatorial auction cutover (#3387) is complete, this PR fully transitions the autopilot from solver-reported scores to protocol-computed scores. The autopilot was still using
Score::Solverwhen storing competition results, even though the actual scoring is done by the protocol. This aligns the stored score variant with reality and removes dead code from the driver.Changes
Score::Solver→Score::Protocolin the autopilot run loop when recording solver settlements (crates/autopilot/src/run_loop.rs)scorefield from the driver'sSolvedstruct (crates/driver/src/domain/competition/mod.rs)scorefrom the driver's/solveresponse DTO (crates/driver/src/infra/api/routes/solve/dto/solve_response.rs)Score::SolverandScore::ProtocolWithSolverRiskas deprecated in the enum, keeping them for backward-compatible deserialization (crates/model/src/solver_competition.rs)score_protocol_round_tripandscore_solver_legacy_deserializetestsHow to test
Related Issues
Should close #3415