Skip to content

activator removal phase 7.2: remove device/link/multicastgroup activate/reject/closeaccount instructions [DO NOT MERGE — gated on min_compatible_version >= 0.14.1] #3623

@elitegreg

Description

@elitegreg

⚠️ DO NOT MERGE until the onchain min_compatible_version has been bumped to ≥ 0.14.1. ⚠️

Part of the activator removal effort — see tracker #3607.

Phase / PR: Phase 7, PR 7.2

Gate: onchain ProgramConfig.min_compatible_version ≥ 0.14.1.

Goal

Same treatment as PR 7.1 for the contributor-side instructions: remove the activator-only instructions; dispatch entries stay and return DoubleZeroError::InstructionDeprecated.

Files

  • processors/device/{activate,reject,closeaccount}.rs — delete; dispatch returns InstructionDeprecated.
  • processors/link/{activate,reject,closeaccount}.rs — delete; dispatch returns InstructionDeprecated.
  • processors/multicastgroup/{activate,reject,closeaccount}.rs — delete; dispatch returns InstructionDeprecated.
  • processors/device/interface/{activate,reject,remove,unlink}.rs — same. All four are activator-driven (the activator imports DeviceInterfaceUnlinkArgs). Their argument structs go with them.
  • processors/resource/closeaccount.rs — review whether this is still needed or activator-only; if activator-only, same treatment.
  • Corresponding smartcontract/sdk/rs/src/commands/.../*.rs — delete.
  • Tests — rewrite to assert InstructionDeprecated, or delete if redundant.

Explicitly preserved (verified non-activator-driven by codebase audit)

  • link/accept, link/suspend, device/resume, device/update, multicastgroup/reactivate, multicastgroup/suspend — all operator/admin-driven, not activator-driven.

Acceptance

  • cargo test -p doublezero-serviceability passes.
  • Sending any of the removed instructions returns InstructionDeprecated.

Risk

Same as 7.1. Coordinate with contributors before bumping the gate.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions