Skip to content

fix(lean): refuse proposals outside prepared key interval - #1591

Open
groverInnovate wants to merge 1 commit into
ReamLabs:masterfrom
groverInnovate:codex/proposal-preparation-guard
Open

groverInnovate wants to merge 1 commit into
ReamLabs:masterfrom
groverInnovate:codex/proposal-preparation-guard

Conversation

@groverInnovate

@groverInnovate groverInnovate commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

What was wrong?

An active proposal slot outside the key’s prepared window reaches leanSig’s assertion, panicking an RPC worker or the production block-building task. The registered signer sequences in Hive #1619 exposed this missing integration check.

How was it fixed?

Check the prepared interval before signing and return slot_outside_prepared_interval. Existing RPC handling turns this into a structured refusal, and production block building follows its normal error path. Two regressions cover refusal with verified recovery and production-task containment, using existing public key fixtures.

This contains the failure; it does not implement preparation advancement or change attestation signing.

Validation: 6 validator tests and 2 RPC tests pass; workspace formatting, Cargo sorting, and both CI Clippy configurations pass. Both registered Docker Hive sequences pass with the fixed binary in the standard Ream runtime: 5 signatures independently verified and 20 negative controls rejected.

@groverInnovate

Copy link
Copy Markdown
Contributor Author

@KolbyML can you review this PR and check whether this guard and error behaviour look appropriate?

This branch has not been deployed

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant