Skip to content

Track: unsound tracked token manipulation #574

Description

@rikosellic

This list tracks some tracked token manipulations, which can be unsound (keep updating). @SNoAnd @hiroki-chen @Marsman1996, I do not perceive any immediate threat to the soundness proof of executable codes, but these should be solved to make the verification solid.

  • tracked_mint_frame_obligation duplicates a tracked token (which obviously violates the tracked mode semantics) to track leaked frames. This should be solved by authoritative resource algebra.
  • tracked_from_unused_owner creates an M::owner out of thin air in UniqueFrame::from_unused. I think there is an overlap between the M:OwnerOf trait bound and the M:Repr<MetaSlotStorage>, because both of them represent the permission to access the metadata. We should find a unified way to represent it to make migration easier when trait objects are better supported in Verus.

Metadata

Metadata

Assignees

No one assigned

    Labels

    model designModel or specification of system designverification bugUnsoundness, verification panics, or unsupported features

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions