Skip to content

Generate IMO ProblemsIT and ProceduresIT mapping diffs from current CIEL state #2671

Description

@filiperochalopes

User story

As a CIEL curator, I want to compare the curated IMO ProblemsIT and ProceduresIT mapping files originally received from IMO against the current CIEL mappings so we can identify corrections made after import and send those differences back to IMO.

Use case

IMO previously provided curated mapping files that were applied to CIEL. Some mappings were later found to be incorrect and were manually corrected. Using ciel-scripts, generate a diff between the original IMO files and the current CIEL mappings to identify what changed.

Requirements

  • Add ciel-scripts support to generate diffs for:
    • IMO ProblemsIT
    • IMO ProceduresIT
  • Use the original curated IMO mapping files as the baseline.
  • Compare them against the current CIEL mapping state.
  • Detect at least:
    • mapping target/code changes
    • map type changes
    • mappings removed or retired
    • mappings added after the original IMO import
  • Preserve the original IMO mapping identifier (map_id) whenever available.
  • Generate curator-friendly output suitable for review and return to IMO.
  • Generate a machine-readable diff that can be reused by other CIEL tooling.
  • Keep ProblemsIT and ProceduresIT results distinguishable.
  • Do not modify CIEL or OCL data as part of the diff process.
  • Make the output usable as an input/reference for the CIEL Lab mapping whitelist/lock mechanism.

Acceptance criteria

  • Given the original IMO ProblemsIT file, the script produces a diff against current CIEL mappings.
  • Given the original IMO ProceduresIT file, the script produces a diff against current CIEL mappings.
  • Corrections made in CIEL after the original IMO import are clearly identifiable.
  • The output can be reviewed and sent back to IMO as a correction list.
  • The diff retains map_id where available so records can be traced back to the original IMO content.
  • The generated output can be reused to help build a CIEL whitelist of trusted mappings.

More details

Context

IMO provided a significant number of curated ProblemsIT and ProceduresIT mappings that were initially applied to CIEL with limited validation.

Subsequent manual review identified mappings that required correction. Without a formal diff, those corrections remain only in CIEL and may be reintroduced if a future IMO batch contains the same original mapping.

The objective is to create a repeatable reconciliation process that allows CIEL to:

  • report likely mapping issues back to IMO
  • preserve a record of post-import corrections
  • build a whitelist of trusted CIEL mappings
  • protect those reviewed mappings through the CIEL Lab resource-lock mechanism if needed

This task is read-only and should focus on producing the comparison artifacts rather than automatically changing mappings.

Metadata

Metadata

Labels

signal/low-riskSafe to execute with minimal downsidesignal/small-scopeLimited to a small part of the codebasestage/triagedAI triage complete — scored and classifiedtype/featureNew or improved functionality

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions