Skip to content

ci(dupe): bless the two deliberate put copies in the NMSE run harness #10025

Closed

Description

@gHashTag

Problem

#10021 merged specs/benchmarks/gf16_bfloat16_nmse_run.t27. Its put_lit and put_range have the same bodies as put_msg and put_range in specs/policy/own_language.t27. tools/duplicate_bodies_baseline.txt was not moved in that commit, so the Duplicate Body Ratchet has been red on master since cc80a30. It was green at efe3c94.

Proposal

Bless the two copies as deliberate. Move the ledger with python3 tools/dupe_scan.py --bless, which adds put_lit 2 and put_range 2. There are two reasons not to reuse the existing functions:

  • The harness is lowered by t27c gen-c into one C file and run by the one-line driver.
  • The committed manifest records x_extension.harness_sha256 = sha256 of the spec. Any edit to the spec would leave that manifest pointing at a file that no longer exists in the tree.

Boundary

  • tools/duplicate_bodies_baseline.txt

User Scenarios

  • Given master at cc80a30 plus this change, when python3 tools/dupe_scan.py runs, then it exits 0.
  • Given the NMSE manifest in bench/results/, when its x_extension.harness_sha256 is compared with sha256sum specs/benchmarks/gf16_bfloat16_nmse_run.t27, then they still match.

Requirements

  • FR-001: The ledger MUST be written by tools/dupe_scan.py --bless, not by hand.
  • FR-002: No spec file MAY change.

Success Criteria

  • python3 tools/dupe_scan.py exits 0, and --self-test exits 0, on master plus this change: 2 of 2 commands.
  • The diff is exactly 2 added lines in 1 file.
  • The Duplicate Body Ratchet check passes on the PR: 1 of 1 job.

Activity

  1. added a commit that references this issue on Oct 17, 2026
    a19701a
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions