Skip to content

Permissionless DELETE on expiry #90

@arrivets

Description

@arrivets

Refer to https://github.com/Arkiv-Network/arkiv-architecture/blob/main/arkiv/tokenomics/arkiv-fee-spec.md

Spec §2: DELETE_ENTITY must be callable by any account once expiresAt has
passed. Today's EntityRegistry / precompile presumably restricts DELETE to the
owner.

Changes:

  • contracts/src/EntityRegistry.sol and crates/arkiv-node/src/precompile.rs:
    widen the authorization check on DELETE_ENTITY to:
    caller == owner || block.timestamp >= expiresAt
  • Tests: owner-deletes-before-expiry (allowed), stranger-deletes-before-expiry
    (rejected), stranger-deletes-after-expiry (allowed), owner-deletes-after-expiry
    (allowed).

Note: this is a behavior change to the registry independent of fees — could
land before #86/#87. Concentrated-expiry safety argument in §2 relies on this.

Metadata

Metadata

Assignees

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