Skip to content

Allow schema preflight after atomic bootstrap identity creation #1693

Closed

Description

@hmzakhalid

Audit reference: Follow-up

What can go wrong

A brand-new node creates its Ethereum and libp2p identities before schema preflight. The preflight mistook those two bootstrap keys for legacy protocol state and stopped every fresh node with a missing-schema error.

When it happens

This happens on the first startup after atomic autowallet initialization, before actors or history replay begin.

What changed

Preflight now treats either an empty store or exactly one complete identity pair as fresh and stamps the current schema. Partial identities, extra keys, snapshots, or event-log records still fail closed, and the same rule is used by the storage validator.

Why the change works

Bootstrap identity is recognized narrowly without weakening upgrade safety: anything beyond the exact known pair still requires an existing schema marker.

Checks

Focused in-memory, Sled, validator, and actor-level startup tests pass.

Activity

  1. hmzakhalid commented on Jul 13, 2026

    @hmzakhalid
    CollaboratorAuthor

    Fixed in 64d44b1b60

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions