Skip to content

tests + example: pin flat builtin contract#201

Merged
danieljohnmorris merged 1 commit into
mainfrom
fix/flat-builtin
May 12, 2026
Merged

tests + example: pin flat builtin contract#201
danieljohnmorris merged 1 commit into
mainfrom
fix/flat-builtin

Conversation

@danieljohnmorris
Copy link
Copy Markdown
Collaborator

flat existed but its depth semantics were only implicit. Pinning the contract before HOF work drifts it.

Implementation:

  • no opcode change, behaviour-only test pinning
  • flat is one-level only (concat list of lists into a list), not recursive
  • recursive flatten composes flat with itself or uses flatmap

Tests: cross-engine regression tests + examples/flat.ilo with -- run: directives.

flat existed but its depth semantics were only implicit. Adding a
named regression suite and an example pins the contract: flat is
one-level only (concat list of lists into a list), not recursive.
Code that wants recursive flatten composes flat with itself or
uses flatmap.

No opcode change - just locking the existing behaviour in tests
before further HOF work can drift it.
@codecov
Copy link
Copy Markdown

codecov Bot commented May 12, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ All tests successful. No failed tests found.

📢 Thoughts on this report? Let us know!

@danieljohnmorris danieljohnmorris merged commit 8a409b9 into main May 12, 2026
5 checks passed
@danieljohnmorris danieljohnmorris deleted the fix/flat-builtin branch May 12, 2026 08:54
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