freenet-git-types 0.1.21

Shared state types and pure validate_state/update_state logic for freenet-git
Documentation

Shared state types and the pure validation/update logic for freenet-git.

Both the repo-contract WASM and the on-host helpers depend on this crate at the same pinned version. The contract WASM compiles a tiny shim that deserializes parameters/state and dispatches into [validate_state] / [update_state] / [merge_state] / [summarize_state] / [get_state_delta]. Keeping all the logic here lets us unit-test it as ordinary Rust without booting a WASM runtime.

Phase 1.0 scope

Phase 1.0 is single-writer: only the repo owner can sign anything. The schema includes the ACL fields ([AclState], [WriterGrant]) so that adding multi-writer support in Phase 1.1 is a contract WASM upgrade and not a fundamentally different schema. For now validate_state requires entry.updater == parameters.owner for every signed entry.