Skip to content

Restructuration - #42

Merged
rosasbehoundja merged 2 commits into
mainfrom
restructuration
Aug 20, 2026
Merged

Restructuration#42
rosasbehoundja merged 2 commits into
mainfrom
restructuration

Conversation

@rosasbehoundja

Copy link
Copy Markdown
Member

No description provided.

rosasbehoundja and others added 2 commits August 19, 2026 18:58
- Changed instance and solution naming conventions in documentation to reflect the new limit of 100 instances instead of 150.
- Updated example solutions and descriptions to align with the new product loading and transition cost rules.
- Adjusted tests to ensure compatibility with the updated instance and solution formats.
- Modified scoring and submission logic to accommodate the reduced number of instances.
- Enhanced clarity in documentation regarding vehicle schedules and summary metrics.
Merge pull request #40 from IFRI-AI-Classes/restructuration
Copilot AI lite review requested due to automatic review settings August 20, 2026 22:38
@rosasbehoundja
rosasbehoundja merged commit 1d28aaf into main Aug 20, 2026
3 checks passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the project to a restructured benchmark/scoring setup: the official benchmark set is reduced to 100 paired instances, and scoring/validation logic is adjusted to charge a (diagonal) preparation cost for same-product depot loadings.

Changes:

  • Introduces OFFICIAL_INSTANCE_COUNT = 100 and propagates it through scoring, scoreboard, Notion status logic, and UI/README copy.
  • Updates feasibility/scoring semantics so every depot loading incurs a cost (including same-product loads via the cost-matrix diagonal), without counting same-product loads as “changes”.
  • Refreshes/realigns tests, fixtures, and benchmark data files to the new 100-instance dataset and solution format expectations.

Reviewed changes

Copilot reviewed 299 out of 540 changed files in this pull request and generated no comments.

Show a summary per file
File Description
backend/paths.py Adds a single source of truth for official instance count (100).
backend/core/scoring/score_evaluation.py Uses OFFICIAL_INSTANCE_COUNT for completeness checks and scoring summaries.
backend/core/model/feasibility.py Charges diagonal cost for same-product depot loadings while keeping change-count semantics.
backend/core/experiments/reevaluate_changeover_costs.py Re-evaluates cumulative costs using depot-loading positions from route lines.
backend/database/notion.py Uses OFFICIAL_INSTANCE_COUNT to classify Draft vs Complete submissions.
backend/app/routes/scoring.py Returns total_valid_instances using the official instance count constant.
backend/app/routes/scoreboard.py Normalizes leaderboard instance validation counts using the official instance count constant.
backend/app/schemas.py Makes max_coord an integer grid size aligned with generator validation expectations.
backend/core/generation/config.py Aligns config typing with generator validation (integer grid_size / min_point_distance).
backend/core/cli/init.py Adds CLI package marker (enables imports/packaging).
tests/test_feasibility.py Adds coverage for diagonal cost charging without counting a change.
tests/test_integration.py Adds integration coverage for solution re-evaluation cost semantics; updates instance-count expectation to 100.
tests/test_instance_generator.py Fixes expectation: generator diagonal costs are low-but-nonzero.
tests/test_instance_verificator.py Updates paired-instance dataset expectations to 100.
tests/test_api.py Updates mocked “Feasible solutions” to 100.
tests/test_scoring_route.py Updates scoring route output expectation to /100.
tests/test_notion.py Updates feasible-solution count to 100 and removes trailing blank line.
tests/conftest.py Updates embedded instance/solution fixtures to match integer instance format and product-line length rule.
tests/fixtures/sample_instance.dat Updates fixture to integer-formatted values (still parseable as numbers).
tests/fixtures/sample_solution.dat Fixes fixture product-line length (final return-garage product implicit).
README.md Updates documentation from 150 to 100 official paired instances.
pages/submission.html Updates accepted-name example and text to reflect 100-instance benchmark.
index.html Updates UI copy from 150 to 100 instances.
data/instances/with_changeover_costs/* Replaces/reshapes the official benchmark dataset to the new 100-instance set.
data/instances/without_changeover_costs/* Replaces/reshapes the zero-cost twin dataset to the new 100-instance set.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants