Skip to content

skill: cross-module types priced, and the price was zero - #3352

Merged
gHashTag merged 1 commit into
masterfrom
cross-module-priced-and-declined
Sep 6, 2026
Merged

skill: cross-module types priced, and the price was zero#3352
gHashTag merged 1 commit into
masterfrom
cross-module-priced-and-declined

Conversation

@gHashTag

@gHashTag gHashTag commented Sep 6, 2026

Copy link
Copy Markdown
Owner

Closes #3351

The Rust emitter drops every use line, so a type declared in a sibling spec is undefined in the generated file. Twelve specs fail that way, six of them on Trit. It is worth nothing, and three measurements say so in increasing order of finality.

1. Of the twelve, eleven carry between 9 and 84 other errors. Only ternary/bigint.t27 fails on missing types alone.

2. Of 55 types imported by name across 46 specs: 18 declared exactly once, 8 declared in 2–4 places, 29 declared nowhere at all. Trit has four declarations, and a module index does not save it — two files declare module tritype and both declare Trit. They agree by luck.

3, the one that settles it. Pasting the real definition into the single unblocked spec's generated Rust by hand:

bigint.t27 without the definition   5 errors
bigint.t27 with it pasted in        4 errors   (3 mismatched types remain)

A resolver — new file I/O, a module index, recursion guards, ~100 lines — moves the corpus by zero.

The method is the lesson: satisfy the dependency by hand before building the machinery that would satisfy it. One command priced a hundred-line feature at nothing.

Includes a correction to my own earlier note, which said Trit is declared in exactly one spec — that came from grepping type Trit only; with the full matcher it is four.

@github-actions

github-actions Bot commented Sep 6, 2026

Copy link
Copy Markdown
Contributor

📓 NotebookLM Notebook linked to this PR

This notebook contains session context, decisions, and artifacts for this work.

@github-actions

github-actions Bot commented Sep 6, 2026

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-09-06 04:32:48 UTC

Summary

Status Count
Total Open PRs 16
PRs with Failing Checks 10
PRs with All Checks Green 6
READY 5
FAILING 10
PENDING 0

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=824bbbc7859f != manifest seal=87e5cbd3ad94.
    The committed NMSE numbers were certified against an older compiler.rs.
    Run scripts/reseal-check.sh locally for the two-step reseal command (advisory; not a merge gate).

@gHashTag
gHashTag enabled auto-merge (squash) September 6, 2026 04:32
@gHashTag
gHashTag merged commit fb8f3cb into master Sep 6, 2026
27 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.

Cross-module type resolution: priced at zero, and the corpus is the blocker

1 participant