Skip to content

Add downloadable tiny ceremony initializer (rehearsal-tiny-v1) - #10

Merged
mellowcroc merged 3 commits into
mainfrom
feature/downloadable-rehearsal-init
Aug 20, 2026
Merged

Add downloadable tiny ceremony initializer (rehearsal-tiny-v1)#10
mellowcroc merged 3 commits into
mainfrom
feature/downloadable-rehearsal-init

Conversation

@mellowcroc

Copy link
Copy Markdown
Collaborator

Merges the tiny-rehearsal feature into main:

  • rehearsal-tiny-v1 circuit (internal/circuit/rehearsal): a 5-constraint circuit with exactly one Groth16 commitment (matching destination-v2's BSB22 encoding) so the full ceremony machinery — including finalize, audit, and release — can be exercised in seconds instead of days. Rejected by CeremonyDefinition.validate in production mode; the production decision's exact-k21-rehearsal gate still requires domain 2^21.
  • mpc-ceremony rehearsal init: one-shot generator for the same-host three-participant rehearsal fixture (identities, canonical config, signed tiny ceremony).
  • CompileForKeyVersion / circuit-from-definition: init/finalize/audit compile the circuit the signed ceremony definition names — a closed set (ownership-destination-v2, rehearsal-tiny-v1), never an extensible lookup.
  • Docs: finalize help updated to reflect circuit-from-definition (docs(mpc-ceremony): finalize help reflects circuit-from-definition #9).

Validated end to end on 2026-08-20: two full three-machine rehearsals (AWS S3 and Cloudflare R2) driven by the relay add-ceremony-tools-installer flow, all 42 steps passing.

Branch is synced with main (the MPC doc removals are preserved). Excludes test/production-path-10min-beacon-lead (#5).

mellowcroc and others added 3 commits August 20, 2026 07:47
finalize prepare's help said it 'compiles this repository's destination-v2
R1CS', but executeFinalize/executeAudit resolve the circuit from the signed
ceremony definition via compileCircuitForCeremony -> CompileForKeyVersion.
A rehearsal-tiny-v1 ceremony is therefore finalized/audited against the
rehearsal circuit, not destination-v2. The stale wording implies the tiny
rehearsal cannot be finalized, which is incorrect.
@mellowcroc
mellowcroc merged commit d08166c into main Aug 20, 2026
9 checks passed
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