Skip to content

Current boundary

Transcript core first

  1. Use sealed-lattice as the only public package name.
  2. Use the public transcript core verifier and election foundation helpers.
  3. Develop inside the private workspace packages.
  4. Verify the Rust/WASM transcript core path before later protocol layers land.
Published package One public name sealed-lattice
Runtime surface Transcript core plus election foundation Safe deterministic helpers only
Internal packages Five private shells types, protocol, crypto, wasm, and testkit
Native transcript core path Rust crate plus WASM loader Transcript core command path

sealed-lattice

Transcript core plus election foundation. The package boundary, verification path, and Rust/WASM transcript core path are stable while the wider voting API remains future implementation.

What ships today

The repo is a private workspace with one published package, five private internal packages, and one Rust crate that proves the WASM path.

Public boundary

sealed-lattice remains the only public npm name, and its current runtime facade exposes the transcript core fixture verifier plus threshold, lifecycle, poll specification, capability, board, finality, roster-manifest, cast/close, first-valid, and recovery helpers.

That keeps packaging, docs, release flow, and smoke checks stable without freezing ballots, proofs, semantic target acceptance, or decryption APIs.

Internal workspace

The private workspace packages are split by responsibility: shared types, protocol, crypto, wasm, and testkit.

The Rust transcript core and the internal WASM loader prove the browser and Node build path before later arithmetic lands.

Read the current contract

Start with the current public boundary, then move into the workspace and development guides.

Follow the current boundary

The supported path is short and explicit while the real protocol work is still ahead.

  1. Install the public package name. Use sealed-lattice as the only supported public import path.
  2. Use the safe public helpers. The package exposes safe fixture verification and election foundation helpers while wider voting APIs remain future implementation.
  3. Develop inside the workspace packages. Use the private packages for shared types, protocol, crypto, wasm, and testkit work.
  4. Keep the Rust/WASM path verified. The transcript core kernel must continue to build natively and load in Node and browsers.

Boundary summary

The workspace boundary is stable without pretending that the wider protocol-facing API already exists.

Guaranteed now

  • Private workspace packages with explicit ownership boundaries.
  • Package-boundary checks against deep imports and illegal internal dependencies.
  • Node, browser, docs, vector, pack smoke, and release verification.
  • Rust transcript core build plus internal WASM loading path.
  • Election foundation threshold, lifecycle, poll specification, capability, board/finality, signed fixture, first-valid, and recovery vectors.

Not published yet

  • Ballot or tally APIs.
  • Crypto provider wrappers or proof APIs.
  • Local replay record, target-accepted-record, or decryption-share shell helpers.
  • Semantic local replay, target acceptance, or decryption APIs.
  • Any public subpaths beyond the root package name.