Skip to content

refactor: split manifest schema into a seismic-network-manifest crate#200

Merged
samlaf merged 1 commit into
seismicfrom
network-manifest-crate
Jul 7, 2026
Merged

refactor: split manifest schema into a seismic-network-manifest crate#200
samlaf merged 1 commit into
seismicfrom
network-manifest-crate

Conversation

@samlaf

@samlaf samlaf commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

NetworkManifestV1 / NetworkId / ManifestError move out of seismic-attestation into a dependency-light crate (serde + sha2, no attested-tls) so every manifest consumer parses with the same code. tdx-init previously hand-mirrored the schema — two strict parsers kept in lockstep by a shared fixture, a standing split-brain risk for a security identifier — because depending on seismic-attestation would have dragged the attestation stack into the boot binary. It now validates via the shared crate, and the mirror and its lockstep tests are deleted. The same crate is what deploy-side tooling can reuse later to retire the Python mirror.

seismic-attestation re-exports the types, so node-side callers (enclave-server, the transcript bindings) are unchanged. The golden fixture moves with the schema; the deploy repo's drift guard and Python mirror get repointed at the new path separately, once this is pushed.

Also removes a stale phase label from enclave-server's bootstrap module doc.

NetworkManifestV1 / NetworkId / ManifestError move out of
seismic-attestation into a dependency-light crate (serde + sha2, no
attested-tls) so every manifest consumer parses with the same code.
tdx-init previously hand-mirrored the schema — two strict parsers kept
in lockstep by a shared fixture, a standing split-brain risk for a
security identifier — because depending on seismic-attestation would
have dragged the attestation stack into the boot binary. It now
validates via the shared crate, and the mirror and its lockstep tests
are deleted. The same crate is what deploy-side tooling can reuse later
to retire the Python mirror.

seismic-attestation re-exports the types, so node-side callers
(enclave-server, the transcript bindings) are unchanged. The golden
fixture moves with the schema; the deploy repo's drift guard and Python
mirror get repointed at the new path separately, once this is pushed.

Also removes a stale phase label from enclave-server's bootstrap module
doc.
@samlaf samlaf requested a review from cdrappi as a code owner July 7, 2026 09:24
@samlaf samlaf merged commit c933bd1 into seismic Jul 7, 2026
5 of 6 checks passed
@samlaf samlaf deleted the network-manifest-crate branch July 7, 2026 09:29
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