Skip to content

fix(specs): integrate type renames without losing executable tests - #5869

Merged
dmitrii-f-t27 merged 2 commits into
gHashTag:masterfrom
dmitrii-f-t27:codex/type-renames-restore-tests
Oct 4, 2026
Merged

dmitrii-f-t27 merged 2 commits into
gHashTag:masterfrom
dmitrii-f-t27:codex/type-renames-restore-tests

Conversation

@dmitrii-f-t27

@dmitrii-f-t27 dmitrii-f-t27 commented Oct 4, 2026 •

Copy link
Copy Markdown
Collaborator

Closes #5810. Integrates the type renames from PR #5812 while preserving its original upstream commit and the executable counter tests accepted in #5851.

PR #5812 conflicts with current master in slow-blink zero-initialization and tuple bindings. The resolution keeps current master byte for byte except the five type names across four files. Function/test names, fields and runtime behavior are unchanged. One existing NOW receipt is corrected; no compiler, generated file, ledger, classification or seal is edited.

The source branch retains Dmitrii Vasilev's original0b4d69383 commit unchanged and adds one resolution merge authored by dmitrii-f-t27. Use a normal merge to preserve both commits/authors; the existing PR is retired only after this integration is accepted. This is a continuation of the same type-conflict repair, not an independent duplicate implementation.

Verification: current-master types ratchet81/77 fails; repaired77/77 CLEAN, classified77OK and same-file redef0. All four source pairs reverse exactly to current master. All16generator output pairs are byte-identical after reversing only type names and their backend uppercase/lowercase identifiers. Existing generated-Zig tests32/32 and9comptime invariants pass before and after; all four files have no discard/type errors/warnings. No duplicate group grows. Fresh cargo build -p tri succeeds with18existing warnings.

Generation equivalence does not establish C/Rust/RTL execution. Cache put/deinit and runner add/deinit remain stubs, and cache Verilog still says UNSUPPORTED_ICARUS. The fast corpus run completed:96primary failures versus95ledger, only existing packets.parse unexpected; no new primary failures, discards or ledger growth. Long phases were skipped; no full-repository green verdict is claimed. The independent packets parser/seal/ring issues are not hidden or blessed away.

{
  "version": 1,
  "head_sha": "8bd31e74deb61425185334da9ffcf420c4b2ad5f",
  "summary": "Integrate existing corpus type renames while retaining executable slow-blink tests and genuine upstream authorship.",
  "changes": [
    "Resolve the slow-blink conflict with current initialization, const bindings, eight tests and four invariants intact.",
    "Retain five original type renames in four ports and preserve original upstream commit0b4d69383 plus one owner-authored merge resolution.",
    "Update one NOW receipt; do not edit compiler, generated files, ledgers, classification or seals."
  ],
  "tests": [
    {
      "command": "cargo build --release -p tri",
      "status": "passed",
      "result": "Fresh release build;18existing warnings.",
      "evidence": "type-renames-tri-build.log"
    },
    {
      "command": "tri types ratchet; tri types classified; tri types redef",
      "status": "passed",
      "result": "Master81/77 fails, repaired77/77 CLEAN; classified77OK; redef0.",
      "evidence": "type-renames-type-gates.json and original master log."
    },
    {
      "command": "Reverse approved source type names; t27c gen/gen-rust/gen-c/gen-verilog on all four master and repaired sources",
      "status": "passed",
      "result": "Four exact source reversals;16generated pairs differ only by type identifiers and their upper/lowercase backend spelling.",
      "evidence": "type-renames-verification.json and local proof outputs."
    },
    {
      "command": "t27c parse-complete/typecheck/test-report all four sources, before and after",
      "status": "passed",
      "result": "Zero discarded tokens and type errors/warnings;32existing Zig tests and9comptime invariants pass before and after.",
      "evidence": "type-renames-proof per-file logs."
    },
    {
      "command": "python3 tools/dupe_scan.py; python3 tools/check_now_entry_shape.py; git diff --check",
      "status": "passed",
      "result": "590of4752bodies/169groups, none grows; one well-formed NOW entry, clean diff.",
      "evidence": "type-renames-dupes.log and source diff."
    },
    {
      "command": "t27c suite --repo-root . --fast --ratchet --corpus-only",
      "status": "failed",
      "result": "96primary failures vs95ledger, only existing packets.parse unexpected; no new discard/unexpectedpass/ledgergrowth/gatedrift. Long phases skipped.",
      "evidence": "type-renames-suite-fast.json/log at exact source8bd31e74d."
    }
  ],
  "limitations": [
    "Fast corpus completed with the independent packets.parse failure; long phases skipped, no all-green full repository claim.",
    "Generated C/Rust/RTL equivalence is a names-only output comparison, not execution.",
    "Cache put/deinit and runner add/deinit remain original stubs; cache Verilog fields remain UNSUPPORTED_ICARUS.",
    "No board, synthesis, RF, timing or model inference verification."
  ],
  "tags": [
    "Engineering",
    "Verification"
  ],
  "blog": {
    "title": "Type names must stay distinct without losing executable tests",
    "summary": "Integrate the existing corpus rename with current counter tests, preserving both authors and measuring unchanged generated behavior.",
    "outline": [
      "An older rename collided with the counter test repair at initialization and tuple bindings.",
      "Preserve current executable tests and reverse only approved type identifiers.",
      "Measure77conflicted names and16names-only generated output pairs; report the remaining stubs separately."
    ]
  }
}

gHashTag and others added 2 commits October 4, 2026 02:52
… ratchet)

`tri types ratchet` was red on master at 17f0986: ledger 77, observed
81, four NEW conflicts from the 2026-10-03 trinity port batch.

Rename the newer definition inside its own file, as gHashTag#5504 did, instead
of blessing the ledger:

  CounterState  d_f19_test.t27 (gHashTag#5797)      -> F19CounterState
  CounterState  d_slow_blink.t27 (gHashTag#5798)    -> SlowBlinkCounterState
  LRUCache      gen_cache.t27 (gHashTag#5794)       -> GenLRUCache
  TestCase      gen_test_runner.t27 (gHashTag#5792) -> GenTestCase
  TestRunner    gen_test_runner.t27 (gHashTag#5792) -> GenTestRunner

All four backends emit byte-identical output for each file once the new
name is mapped back. Ledger, classification and TYPE_CONFLICTS.md are
unchanged (none of the names was in them); ratchet CLEAN at 77,
classified OK. No seal existed for any of the four specs.

Closes gHashTag#5810

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ests

Merge current master into the original type-conflict repair, retaining the
explicit zero initialization and all eight executable slow-blink tests.
The four files differ from current master only in five type identifiers;
all16backend pairs are otherwise byte-identical. The32existing Zig tests
and9comptime invariants pass before and after. Type ratchet is77/77 CLEAN.

The original0b4d69383 upstream commit and its genuine author remain in
history. No compiler, generated file, classification or ledger changed.
Update its single NOW receipt with current proof and implementation limits.

Closes gHashTag#5810
@dmitrii-f-t27
dmitrii-f-t27 merged commit a9e6c76 into gHashTag:master Oct 4, 2026
30 of 33 checks passed
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.

types ratchet red on master: four ported types collide with corpus types (CounterState, LRUCache, TestCase, TestRunner)

2 participants