Skip to content

repair: add solfuzz schema - #136

Open
peterschrammel wants to merge 2 commits into
firedancer-io:mainfrom
diffblue:ps/repair-harness
Open

peterschrammel wants to merge 2 commits into
firedancer-io:mainfrom
diffblue:ps/repair-harness

Conversation

@peterschrammel

@peterschrammel peterschrammel commented Sep 21, 2026 •

Copy link
Copy Markdown

For the solfuzz repair harness (comes in two versions fuzzing different aspects):

  • Add RepairContextV1/RepairEffectsV1/RepairFixtureV1 (topology + gaps) at v19.0.0.
  • Add RepairContextV2/RepairEffectsV2/RepairFixtureV2 (ground-truth chain + ordered event trace) at v20.0.0

Copilot AI balanced review requested due to automatic review settings September 21, 2026 16:19

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

Removing Cargo link metadata breaks downstream schema-directory discovery.

Get a fresh assessment by requesting another Copilot review.

Review effort: Balanced
Findings: 1 Medium severity

Open (1)
What changed in this PR

Adds two repair-harness schema generations and releases them as version 18.0.0.

Changes:

  • Adds topology-based V1 and event-trace V2 repair schemas.
  • Adds nanopb allocation options and generated Rust bindings.
  • Updates the crate version to 18.0.0.
File Description
src/​generated/​org.solana.sealevel.v1.rs Adds generated Rust repair types.
proto/​repair.proto Defines both repair schema versions.
proto/​repair.options Configures nanopb pointer-backed fields.
Cargo.toml Updates package metadata and version.
Cargo.lock Records version 18.0.0.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread Cargo.toml
@peterschrammel
peterschrammel force-pushed the ps/repair-harness branch 2 times, most recently from f4e1618 to 3c02773 Compare September 24, 2026 13:46
Add RepairContextV1, RepairEffectsV1, and RepairFixtureV1 (plus the
nested RepairSlotDescV1, RepairGapV1, RepairPeerV1, and
RepairShredIdV1 messages) for the sol_compat_repair_v1 differential
target. The schema describes a repair-stack scenario declaratively: a
slot topology, a set of shred/FEC-set/slot gaps to repair, and run
configuration (peers, publish slot, insertion order, turbine/elapsed-
time overrides).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟢 Approval recommended

The schemas and generated output are consistent, with only minor documentation references requiring correction.

Review effort: Balanced
Findings: 1 Low severity

Open (1)
Resolved since last review (1)

Comment thread proto/repair.proto

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

The V2 peer contract contradicts itself regarding whether implicit peer 1 is valid.

Review effort: Balanced
Findings: 1 Medium severity

Open (1)
Resolved since last review (1)

Comment thread proto/repair.proto Outdated
Add RepairContextV2, RepairEffectsV2, and RepairFixtureV2 (plus the
nested RepairChainSlot, RepairShredSource, RepairShredKind,
DeliverShred, ServeRequests, Confirm, SetRoot, PeerFault,
AdvanceTime, RepairEvent, RepairSlotState, RepairSnapshot,
RepairRequestKind, and RepairRequest messages) for the
sol_compat_repair_v2 differential target. The schema describes a
repair-stack scenario as a ground-truth chain plus an ordered event
trace (deliver/serve/confirm/set_root/fault/time) that the target's
driver applies in order, reporting the sequence of resulting states.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟢 Approval recommended

The schemas, nanopb configuration, generated bindings, and version metadata are consistent.

Review effort: Balanced
Findings: None

Resolved since last review (1)

@mjain-jump mjain-jump left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this needs a closer look by someone who is more familiar with the repair code.

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.

3 participants