Expand description
Repo contract: mutable repo state for freenet-git.
This file is a thin shim: it deserializes the Parameters / State /
delta payloads, dispatches into the pure-Rust logic in
freenet_git_types, and re-serializes results back into stdlib types.
All security-relevant logic (signature verification, ACL gating,
freshness rules, CRDT merge) lives in freenet-git-types, where it can
be exhaustively unit-tested without booting a WASM runtime.
Phase 1.0 is single-writer. The schema contains the full ACL fields
([AclState], [WriterGrant]) so that Phase 1.1’s multi-writer ACL
becomes a contract WASM upgrade rather than a fundamentally different
schema. validate_state rejects any entry whose updater is not the
repo owner.
Structs§
- Contract
- Marker type implementing
ContractInterface. Re-exported so integration tests can dispatch through the same boundary the host runtime calls into.