Skip to content

docs: scrub activator references (phase 6.1)#3734

Merged
elitegreg merged 1 commit into
mainfrom
gm/issue3621
May 20, 2026
Merged

docs: scrub activator references (phase 6.1)#3734
elitegreg merged 1 commit into
mainfrom
gm/issue3621

Conversation

@elitegreg

Copy link
Copy Markdown
Contributor

Summary

Phase 6.1 of the activator removal effort (tracker #3607, issue #3621). Pure docs/comments scrub — no behavior change.

  • CLAUDE.md / DEVELOPMENT.md / smartcontract/README.md — drop the activator from architecture descriptions and the contributor-automation diagram. Rewrite Device/Link/User lifecycle prose and mermaid state diagrams to reflect onchain allocation ([*] → Activated, no Pending/Rejected/Updating/Deleting).
  • // activator-only comments on *Deprecated enum variants rewritten to // deprecated across the Rust program, Go SDK, and Python SDK state files. Numeric discriminants and field names unchanged.
  • Stale comments and one user-visible string rewritten in crates/sentinel/, controlplane/doublezero-admin/, client/doublezero/, smartcontract/cli/src/tenant/delete.rs (+ SDK variant), processors/user/activate.rs, processors/multicastgroup/subscribe.rs, and e2e/docker/ledger/fork-accounts/src/main.rs.
  • Dead config/scripts: remove the /activator/ CODEOWNERS line (crate deleted in Phase 3), the activator-tag handling in scripts/env.sh, and the Activator component name in .claude/commands/changelog.md.

Scope — what is intentionally NOT changed

Code identifiers that still exist as public API surface are preserved and will be cleaned up in a later code-rename PR (likely riding alongside the Phase 7 instruction removal):

  • activator_authority_pk GlobalState field (and SDK mirrors)
  • Activator variant in PermissionName / ACTIVATOR constant in permission_flags
  • --activator-authority CLI flag
  • Test-helper function names (gs_with_activator, test_legacy_activator_*)
  • The is_activator local binding and // Authorization: allow activator_authority_pk OR foundation_allowlist comments in authorize.rs / processors — these describe the still-present legacy authorization path

The issue's strict acceptance grep (grep -ri activator . | grep -v -E '(CHANGELOG|rfcs|target|node_modules)' returns nothing) is therefore not satisfied by this PR — see the residual matches in code identifiers above. PERMISSION.md likewise keeps its "Legacy path" table referencing the ACTIVATOR flag and activator_authority_pk field as factually-accurate code documentation.

Testing Verification

  • make rust-fmt, make rust-lint, make go-lint clean.
  • cargo test on doublezero-serviceability (257 passed), doublezero-sentinel (61 passed), doublezero (127 passed), doublezero_sdk (171 passed), doublezero-admin (8 passed).
  • go test ./smartcontract/sdk/go/... ./sdk/... all packages pass.
  • Python SDK pytest: 121 passed.

Part of #3607.
Closes #3621.

@elitegreg elitegreg marked this pull request as ready for review May 20, 2026 15:58
@elitegreg elitegreg enabled auto-merge (squash) May 20, 2026 15:58
@elitegreg elitegreg requested a review from vihu May 20, 2026 16:16
Phase 6 of the activator removal effort. Rewrite or remove in-repo docs
and inline comments that still refer to the activator as a running
component. Code identifiers that reference removed-but-still-in-program
fields (activator_authority_pk, ACTIVATOR permission flag,
--activator-authority CLI flag) are intentionally preserved and will be
cleaned up in a later code-rename PR.

- CLAUDE.md: drop the `activator/` architecture row; rewrite the onchain
  state lifecycle line to "Created in Activated; admin/operator
  instructions drive subsequent transitions".
- DEVELOPMENT.md: drop "activator" from the e2e stack and local devnet
  component lists.
- smartcontract/README.md: remove the Activator section and its node in
  the contributor-automation flowchart; renumber the remaining
  components. Simplify the Device, Link, and User mermaid state diagrams
  to reflect onchain allocation (no Pending/Rejected/Updating/Deleting),
  and rewrite the lifecycle prose to match.
- smartcontract/sdk/rs/README.md: drop "by activator" from a BGP
  community description.
- Rewrite `// activator-only` annotations on `*Deprecated` enum variants
  to `// deprecated` across Rust state (serviceability program), Go SDK
  state, and Python SDK state. Numeric discriminants unchanged.
- Rewrite stale activator-attributed comments and one user-visible
  string in the sentinel crate, controlplane/doublezero-admin,
  client/doublezero, tenant delete CLI/SDK paths, processors/user
  activate, multicastgroup subscribe, and e2e fork-accounts.
- Remove the dead `/activator/ @elitegreg` entry from CODEOWNERS (the
  crate was deleted in Phase 3) and the dead activator-tag handling in
  scripts/env.sh and .claude/commands/changelog.md.

Part of #3607.
Closes #3621.
@elitegreg elitegreg merged commit 4e995e6 into main May 20, 2026
33 checks passed
@elitegreg elitegreg deleted the gm/issue3621 branch May 20, 2026 20:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

activator removal phase 6.1: docs and comment scrub

2 participants