Skip to content

recursion v2: minimize copied OpenVM system interfaces #1366

Description

@kunxian-xia

Parent: #1266

Audit ceno_recursion_v2/src/system and minimize copied OpenVM recursion system interfaces.

Goal

Keep Ceno recursion v2 aligned with OpenVM develop-v2.1.0-rv64 by re-exporting upstream traits/structs whenever their signatures and semantics work unchanged, and keeping local definitions only where Ceno needs different associated types, local buses, or private upstream data.

Expected changes

  • Re-export upstream system traits/structs where possible instead of copying them locally.
  • Keep local adapters only for Ceno-specific ownership, such as RecursionVk, RecursionProof, local BusInventory, and adapted preflight records.
  • Clearly document any remaining local fork/adaptation so future OpenVM upgrades can distinguish intentional divergence from drift.
  • Avoid silent duplicate traits with the same name/meaning as upstream traits.

Acceptance criteria

  • ceno_recursion_v2/src/system has the smallest practical local adapter surface.
  • Traits whose signatures match upstream are imported/re-exported from recursion_circuit::system.
  • Local definitions that remain have explicit comments explaining why upstream cannot be used directly.
  • Existing recursion v2 tests still compile and pass after the cleanup.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions