Conversation
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Reopens prior refactoring work (superseding #2) related to repository restructuring and moving benchmark datasets to Git LFS, but the visible diffs show benchmark instance text files being truncated to empty files.
Changes:
- Removes the header/metadata contents from many
INSTANCE_*.txtbenchmark files (resulting in empty files in the diff). - (Per PR description) intends to track NYC-DARP and Riley benchmark datasets in Git LFS and reconcile branch history.
Reviewed changes
Copilot reviewed 89 out of 2386 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20160316_11-240m/INSTANCE_20160316_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20160225_11-240m/INSTANCE_20160225_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20160222_11-240m/INSTANCE_20160222_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20160129_11-240m/INSTANCE_20160129_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20160109_11-240m/INSTANCE_20160109_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20151230_11-240m/INSTANCE_20151230_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20151211_11-240m/INSTANCE_20151211_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20151130_11-240m/INSTANCE_20151130_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20151110_11-240m/INSTANCE_20151110_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20151025_11-240m/INSTANCE_20151025_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20151008_11-240m/INSTANCE_20151008_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20150926_11-240m/INSTANCE_20150926_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20150917_11-240m/INSTANCE_20150917_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20150828_11-240m/INSTANCE_20150828_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20150804_11-240m/INSTANCE_20150804_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20150715_11-240m/INSTANCE_20150715_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20150706_11-240m/INSTANCE_20150706_11-240m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20160628_07-120m/INSTANCE_20160628_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20160613_07-120m/INSTANCE_20160613_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20160521_07-120m/INSTANCE_20160521_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20160512_07-120m/INSTANCE_20160512_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20160427_07-120m/INSTANCE_20160427_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20160401_07-120m/INSTANCE_20160401_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20160329_07-120m/INSTANCE_20160329_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20160316_07-120m/INSTANCE_20160316_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20160225_07-120m/INSTANCE_20160225_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20160222_07-120m/INSTANCE_20160222_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20160129_07-120m/INSTANCE_20160129_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20160109_07-120m/INSTANCE_20160109_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20151230_07-120m/INSTANCE_20151230_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20151211_07-120m/INSTANCE_20151211_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20151130_07-120m/INSTANCE_20151130_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20151110_07-120m/INSTANCE_20151110_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20151025_07-120m/INSTANCE_20151025_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20151008_07-120m/INSTANCE_20151008_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20150926_07-120m/INSTANCE_20150926_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20150917_07-120m/INSTANCE_20150917_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20150828_07-120m/INSTANCE_20150828_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20150804_07-120m/INSTANCE_20150804_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20150715_07-120m/INSTANCE_20150715_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-7/20150706_07-120m/INSTANCE_20150706_07-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20160628_11-120m/INSTANCE_20160628_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20160613_11-120m/INSTANCE_20160613_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20160521_11-120m/INSTANCE_20160521_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20160512_11-120m/INSTANCE_20160512_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20160427_11-120m/INSTANCE_20160427_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20160401_11-120m/INSTANCE_20160401_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20160329_11-120m/INSTANCE_20160329_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20160316_11-120m/INSTANCE_20160316_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20160225_11-120m/INSTANCE_20160225_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20160222_11-120m/INSTANCE_20160222_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20160129_11-120m/INSTANCE_20160129_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20160109_11-120m/INSTANCE_20160109_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20151230_11-120m/INSTANCE_20151230_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20151211_11-120m/INSTANCE_20151211_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20151130_11-120m/INSTANCE_20151130_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20151110_11-120m/INSTANCE_20151110_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20151025_11-120m/INSTANCE_20151025_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20151008_11-120m/INSTANCE_20151008_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20150926_11-120m/INSTANCE_20150926_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20150917_11-120m/INSTANCE_20150917_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20150828_11-120m/INSTANCE_20150828_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20150804_11-120m/INSTANCE_20150804_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20150715_11-120m/INSTANCE_20150715_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_2h-11/20150706_11-120m/INSTANCE_20150706_11-120m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20160628_07-959m/INSTANCE_20160628_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20160613_07-959m/INSTANCE_20160613_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20160521_07-959m/INSTANCE_20160521_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20160512_07-959m/INSTANCE_20160512_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20160427_07-959m/INSTANCE_20160427_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20160401_07-959m/INSTANCE_20160401_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20160329_07-959m/INSTANCE_20160329_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20160316_07-959m/INSTANCE_20160316_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20160225_07-959m/INSTANCE_20160225_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20160222_07-959m/INSTANCE_20160222_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20160129_07-959m/INSTANCE_20160129_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20160109_07-959m/INSTANCE_20160109_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20151230_07-959m/INSTANCE_20151230_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20151211_07-959m/INSTANCE_20151211_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20151130_07-959m/INSTANCE_20151130_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20151110_07-959m/INSTANCE_20151110_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20151025_07-959m/INSTANCE_20151025_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20151008_07-959m/INSTANCE_20151008_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20150926_07-959m/INSTANCE_20150926_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20150917_07-959m/INSTANCE_20150917_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20150828_07-959m/INSTANCE_20150828_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20150804_07-959m/INSTANCE_20150804_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20150715_07-959m/INSTANCE_20150715_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
| DARP_IPS/NYC-DARP-Benchmark/Instances_16h-7/20150706_07-959m/INSTANCE_20150706_07-959m.txt | Removes all file contents (instance header); file appears empty after change |
Comments suppressed due to low confidence (2)
DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20160316_11-240m/INSTANCE_20160316_11-240m.txt:1
- This change removes all contents from the instance file (leaving it empty in the resulting diff). If the intent is to migrate these large benchmark files to Git LFS, the committed Git object should typically become a Git LFS pointer file (not empty). Please re-check the LFS migration steps: ensure the correct paths are tracked via
.gitattributes, re-add the files so Git writes LFS pointers, and confirm viagit lfs ls-filesthat these instances are stored in LFS. If the intent is to remove these from the repo, delete the files rather than leaving empty placeholders.
DARP_IPS/NYC-DARP-Benchmark/Instances_4h-11/20160316_11-240m/INSTANCE_20160316_11-240m.txt:1 - The PR description says Git LFS tracking is being applied to
data/NYC-DARP-Benchmark/**anddata/Riley_Benchmark/**, but the changed files shown here are underDARP_IPS/NYC-DARP-Benchmark/**. Please align either the directory layout (move/rename into the describeddata/...location) or update the PR description and LFS tracking patterns so they match the actual paths being modified.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
The previous refactor renamed DARP_IPS/ -> cpp/ and DARP_Python/ -> python/, moved benchmarks to a Git LFS-tracked data/ folder, relocated computational_scripts/ to the repo root, and added an MIT LICENSE. - Update all READMEs to the new folder names, links, and Git LFS instructions - Replace "no license" notes with the MIT license statement - Fix now-broken relative paths in experiment configs (data_dir -> ../data/...) and scripts (EXE -> ../cpp/bin/realtime_DARP) - Correct paths in the reproducibility guide (../cpp/bin, ../data, ../Outputs) - Rename solver/pipeline README headings to match the new folders - Consolidate scattered .idea ignore rules into **/.idea/ and ignore Outputs/ Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Add a top-level CMakeLists.txt that forwards to cpp/ so IDEs (CLion) and root-level `cmake -S . -B build` invocations pick up the solver build - Make SOLVER a cache variable so -DSOLVER=CPLEX/GUROBI is actually honored (previously a plain set() silently overrode the command-line value) - Update cpp build docs to use -DSOLVER=... and note building from the root; remove the redundant clone step - Document installing Eigen3/Boost and CMake's Eigen search order - Consolidate .idea ignore rules and ignore root cmake-build-*/ and Outputs/ Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Running the solver with no command-line arguments now solves a tiny, self-contained instance under data/ToyExample (B-CG / RT_CG workflow), making it easy to smoke-test a build without the full benchmarks. - data/ToyExample: 4x3 grid of 12 stops, 4 zones, 3 vehicles, 8 requests, in the same text format as the real benchmarks, plus gen_toy.py and a README - ConfigParser: load the toy defaults when launched with no args; locate data/ToyExample relative to the working directory (root, cpp/, or build/bin) - ReadWrite::readZones: fix an EOF over-read that inserted a zone with an out-of-range center and segfaulted in sortZones; use the file >> ... idiom - Ignore data/ToyExample/runs output; document the no-arg run in the READMEs Verified: builds clean and serves all 8 requests (0 rejected) from the repo root, cpp/, and cpp/bin/. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…num names Improve the command-line interface and decouple the fleet definition from the vehicle file name: - --num-vehicles, --vehicle-capacity, --vehicle-folder and --initial-state are now optional with sensible defaults (folder "vehicles", initial state 0) - When --num-vehicles is omitted, read the fleet straight from <vehicle-folder>/vehicles.txt: the row count is the fleet size and the columns hold the capacities, so neither is inferred from the file name. With --num-vehicles N the benchmark file vehicles_<N>_4.txt is still selected. - --vehicle-capacity overrides the per-vehicle capacity only when provided - --main-algo and --sol-mode accept an enum name (RT_CG, DYNAMIC, ...) in addition to the integer code, kept backward compatible - Rename the toy vehicle file to vehicles.txt; document the new defaults and the meaning of --initial-state (fresh / warm / resume) in --help and READMEs Add ReadWrite::countVehicles and InputPaths::setVehicleFiles to support the above. Verified: no-arg toy and explicit runs serve all 8 requests. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
printConfig() runs right after argument parsing, before main resolves the vehicle file, so vehicleFileName_ was still empty (and printed blank) whenever --num-vehicles was omitted. Display "vehicles (fleet read from file)" in that case instead of an empty value. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Introduce a small dependency-free test harness wired into CTest:
- unit_tests: C++ unit/regression tests linking only the solver-free utilities
and data libraries (no Gurobi/CPLEX license needed):
* ConfigParser: enum-name and numeric --main-algo/--sol-mode parsing,
optional-argument defaults, and validation
* ReadWrite::countVehicles row counting, and a regression test for the
readZones end-of-file over-read that used to crash sortZones
- toy_regression: end-to-end Python check that the bundled toy example still
serves all 8 requests with 3 vehicles and none rejected; registered only when
a solver backend is enabled
Wire BUILD_TESTING into cpp/CMakeLists.txt, enable_testing() at the root, and
document the suite in the C++ README. Run with: ctest --test-dir build.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Build and test the project without any commercial solver, on Linux, macOS, and Windows: - Add SOLVER=NONE so CMake builds the solver-free utilities/data libraries and the unit tests with no Gurobi/CPLEX find logic and no license - Replace the POSIX mkdir/stat/S_ISDIR calls in ConfigParser and InputPaths with a portable std::filesystem helper (PlatformCompat.h) so the libraries compile on Windows too; behavior is preserved - Add .github/workflows/build-and-test.yml: matrix over ubuntu/macos/windows, installs Eigen + header-only Boost, configures with -DSOLVER=NONE, builds the unit_tests target and runs ctest - Document the no-solver build and CI in the C++ README Verified locally: the normal Gurobi build with the full ctest suite still passes, and a fresh SOLVER=NONE build runs the unit tests green. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The vcpkg toolchain path was passed to CMake literally because the unquoted $env:VCPKG_INSTALLATION_ROOT was not expanded by the shell, so configure failed with "Could not find toolchain file". Force shell: pwsh and double-quote the -DCMAKE_TOOLCHAIN_FILE argument so the environment variable is interpolated. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The MainAlgorithm enum was reduced to 5 values but mainAlgorithmNames was still declared std::array<const char*, 7> with only 5 initializers, leaving two null entries. parseEnumArg scanned all entries for an unknown value and called strlen on a null pointer, crashing the unit tests. Correct the array size to 5, and harden parseEnumArg to skip null entries so a future size/initializer mismatch cannot crash. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.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.
Reopens the refactoring work from #2, which GitHub auto-closed when the `cleaning` branch history was rewritten to move the NYC-DARP and Riley benchmark files into Git LFS.
The history of `main` and `cleaning` has been reconciled (they now share a common ancestor again), so this PR carries the same changes:
Supersedes #2.
🤖 Generated with Claude Code
TODO: