hashgraph / hashgraph/solo-weaver
Reconsider the "Tier 1 RFH" plugin preset naming/tiering — RFH is a Tier 2 concept as of BN 0.37.1
- Dominant language
- Go
- Stars
- 3
- Forks
- 0
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 46
Description
## Context
On PR #872, @jsync-swirlds flagged that the "Tier 1 RFH" concept is mostly gone as of block-node 0.37.1:
> Just FYI, with `0.37.1` the concept of "tier 1 RFH" is mostly removed.
> - RFH are generally expected to operate only in Tier 2, which is why the publisher plugin is removed.
> - RFH are generally _not_ capable of serving blocks (cloud plugins don't provide read efficiently), which is why the subscribe plugin is removed.
The v0.37.1 RFH profile solo-provisioner now ships correctly drops the publisher/subscriber plugins (matching upstream). But the **name and tiering** — preset `PresetTier1RFH = "tier1-rfh"`, label "Tier 1 — Remote Full History" (`internal/blocknode/blocknode_plugins.go`) — reflect the pre-0.37.1 model and are drifting from the product taxonomy. This is a product decision, so filing for confirmation.
## Options (pending product input)
- Leave ID + label as-is (defer).
- Relabel the TUI display text only — cheap.
- Rename/re-tier the preset **ID** `tier1-rfh` — larger: the ID is persisted in `state.yaml` (`BlockNodeState.PluginPreset`), is a `--plugin-preset` flag value, and appears in `docs/quickstart.md` and tests plus the upgrade re-resolution path, so it needs back-compat/migration, not just a string edit.
- Drop/replace the preset concept.
## Advance notice (same PR, from @jsync-swirlds)
The `verification` plugin is slated to be **replaced in BN 0.39**. Whoever adds a future `0.39` entry to `blockNodePluginHistory` should account for that.
## Ask
@Nana-EC — could you confirm the intended direction for the RFH preset naming/tiering in 0.37.1+? Happy to implement whichever way.
## Acceptance
- [ ] Direction confirmed by @Nana-EC.
- [ ] Preset label and/or ID updated accordingly (with back-compat/migration if the ID changes).
- [ ] `docs/quickstart.md` and tests updated to match.
Contributor guide
Research direction
First obtain product confirmation on the RFH preset direction. Then inspect internal/blocknode/blocknode_plugins.go, the state.yaml PluginPreset path, docs/quickstart.md, related tests, and the upgrade re-resolution path. Done means the approved label or ID change is implemented, any required back-compat or migration is covered, and documentation and tests match.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- devops, tooling
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100