-
Notifications
You must be signed in to change notification settings - Fork 7
Closed
Milestone
Description
NOTE: The details are outdated, please check rfcs/rfc2-network-provisioning.md
Context / Why
We need to expand the standard status field of the Link account to explicitly track its provisioning and activation lifecycle. This makes contributor and foundation actions clearer and ensures a consistent onboarding and activation workflow, including an explicit Outage state for contributor-driven maintenance.
What to do
- Add new lifecycle states to the existing
statusfield. - Define the following transitions:
Diagram
Provisioning ──(contributor)──> ReadyForService ──(foundation)──> Activated ──(contributor)──> Outage
Outage ──(contributor)──> Activated
Outage ──(contributor)──> Provisioning
### Access Control Rules
- **Contributor** can:
- Provisioning → ReadyForService
- Activated → Outage
- Outage → Activated
- Outage → Provisioning
- **Foundation** can:
- ReadyForService → Activated
### CLI Updates
- Allow setting the link’s lifecycle status via CLI.
- Display the current status (including new lifecycle states) in `dz link list` and detail views.
### How (High-Level)
- Extend the existing `status` enum to include provisioning lifecycle states.
- Enforce valid state transitions directly in on-chain logic.
- Add validation ensuring only authorized actors can perform each transition.
- Update CLI commands to set and display the updated status.
### Notes
- Ensure backward compatibility: default existing links to `Activated`.
- Add regression tests for allowed and invalid transitions.Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels