Skip to content

fix(abi): correct EchidnaABI.Foreign module-decl + imports; delete orphan duplicate#153

Closed
hyperpolymath wants to merge 1 commit into
mainfrom
fix/echidnaabi-foreign-import-typo
Closed

fix(abi): correct EchidnaABI.Foreign module-decl + imports; delete orphan duplicate#153
hyperpolymath wants to merge 1 commit into
mainfrom
fix/echidnaabi-foreign-import-typo

Conversation

@hyperpolymath
Copy link
Copy Markdown
Owner

Summary

  • EchidnaABI.Foreign was self-declared as module Echidna.ABI.Foreign (with the dot) and imported the non-existent Echidna.ABI.Types / Echidna.ABI.Layout. The canonical namespace across the rest of src/abi/ is EchidnaABI.*.
  • This break unilaterally fails idris2 --build echidnaabi.ipkg and has kept the Idris2 ABI Type-Check CI workflow red on main since at least 2026-04-26 (5+ consecutive runs).
  • Also deletes src/abi/Foreign.idr — an exact-content orphan duplicate that no module path could ever reach (not registered in the ipkg manifest, and module-decl didn't match its location either).

Unblocks #151 (TacticRecord), which is sitting on this pre-existing failure.

Test plan

  • Idris2 ABI Type-Check workflow turns green on this PR (first green since Apr).
  • idris2 --build echidnaabi.ipkg succeeds locally on the prover-toolchain install.
  • No other EchidnaABI/*.idr module references Echidna.ABI.* (scanned: only Foreign.idr was affected).

🤖 Generated with Claude Code

…phan duplicate

The `EchidnaABI.Foreign` module declared itself as `module Echidna.ABI.Foreign`
(with the dot) and imported `Echidna.ABI.Types` / `Echidna.ABI.Layout` — non-
existent modules. The canonical namespace is `EchidnaABI.*` across the rest
of `src/abi/`. This break unilaterally fails `idris2 --build echidnaabi.ipkg`
and has kept the `Idris2 ABI Type-Check` CI workflow red on `main` since at
least 2026-04-26 (5+ consecutive runs).

Fix:
- `src/abi/EchidnaABI/Foreign.idr` — module decl + 2 imports corrected
  (`Echidna.ABI.X` → `EchidnaABI.X`)
- `src/abi/Foreign.idr` — orphan duplicate deleted. It carried the same
  typo'd content but was registered in the ipkg under no module name,
  so no build path could ever reach it. Deletion removes the
  which-file-is-canonical confusion.

Unblocks PR #151 (TacticRecord) which was sitting blocked on this
pre-existing failure.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@hyperpolymath hyperpolymath enabled auto-merge (squash) May 30, 2026 20:37
@hyperpolymath
Copy link
Copy Markdown
Owner Author

Closing — the Explore meander surfaced a broader picture in src/abi/ (root-level duplicate copies of Layout.idr and Types.idr against the EchidnaABI/ canonical paths, plus 5 root-level orphan namespace files like BojForeign.idr / OverlayForeign.idr declared under non-matching module paths). Single typo-fix is the wrong shape for this — the namespace state needs owner direction on which copy is canonical and what the dual-tree layout is for. Standing down until clearer guidance.

auto-merge was automatically disabled May 30, 2026 20:58

Pull request was closed

@hyperpolymath hyperpolymath deleted the fix/echidnaabi-foreign-import-typo branch May 30, 2026 20:59
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.

1 participant