Expand description
Logical registry handler (feature = “server”).
Wires PublishValidator together with a RegistryStore backend
to provide the seven core registry operations enumerated in
RFC-ACDP-0003 §2.1 and RFC-ACDP-0005:
- capabilities — return the
CapabilitiesDocument. - publish — validate, verify signature, assign identifiers, persist.
- retrieve — fetch a stored body + registry_state (visibility-filtered).
- retrieve_body — fetch just the body (visibility-filtered).
- lineage / current — lineage graph queries.
- search — keyword + filter projection (visibility-filtered).
This is the building block an HTTP-binding layer can sit on top of; the integration tests in this crate exercise it directly without mocking.
§Conformant publish
[RegistryServer::publish_verified] runs the full RFC-ACDP-0003 §2.1
algorithm — structural validation, hash recomputation, DID resolution,
signature verification — before persistence. It requires the client
feature for [acdp_did::WebResolver].
RegistryServer::publish_unverified_for_tests performs only steps
1–6 (skipping DID resolution + signature verification) and is
intentionally not RFC-conformant; use only in tests where DID
resolution would require a live network or mock server.
Structs§
- Registry
Server - Logical registry handler over an arbitrary
RegistryStore.