Skip to content

Persist and expose TSS bootstrap data locally #2297

@rockysingh

Description

@rockysingh

Parent Epic

#2290

Story

As a block node operator,
I want the plugin to persist retrieved TSS data locally and provide it to the ServerStatusServicePlugin,
So that the data is durable across restarts and exposed to peer block nodes via serverStatusDetail.

Acceptance Criteria

  • Persist TSS roster, verification key, ledger ID, and enablement block number to local storage
  • Provide TSS data to ServerStatusServicePlugin (via shared facility or messaging) so it can expose the fields in serverStatusDetail
  • Expose TSS data via shared context so VerificationServicePlugin can consume it in a future release (74)
  • TSS data is stored and exposed — not used for block verification yet (RSA remains active)
  • Guard against applying stale data (validate enablement block is ahead of local head)
  • Log successful bootstrap with details (enablement block, roster node count, key fingerprint)
  • Unit tests for persistence, retrieval, and status plugin integration

Technical Notes

  • Data flow: TSSBootstrapPlugin → persists locally → tells ServerStatusServicePlugin → exposed in serverStatusDetail
  • This enables TSS data propagation: once a BN has bootstrapped, other BNs can bootstrap from it
  • Consider using BlockMessagingFacility or a shared facility for the bootstrap → status data flow
  • Data is persisted for future use by release 74 (TSS verification activation)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Block NodeIssues/PR related to the Block Node.New FeatureA new feature, service, or documentation. Major changes that are not backwards compatible.

    Projects

    Status

    Todo

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions