Update federation implementation notes

This commit is contained in:
Carl Niklas Rydberg 2026-01-18 11:44:30 +01:00
parent ed64c6ed89
commit 94c6c4be26

View file

@ -174,7 +174,7 @@ amduat_asl_store_error_t amduat_fed_resolve(
Notes:
- Transport fetch is not part of resolve; it only consumes ingested records.
- The daemon can choose to fetch missing bytes when resolve reports a remote
location but local bytes are absent.
reference but local bytes are absent.
- If per-record filtering is enabled, it is applied during ingest or view build
and any denials are recorded in view metadata (e.g., a table of
amduat_fed_policy_deny_t).
@ -200,6 +200,14 @@ Federation view storage MAY be:
If remote bytes are fetched, they MUST be written to a cache store that is
logically separate from the authoritative local store (policy-controlled).
## Federation API overview
Core federation primitives are exposed via:
- include/amduat/fed/registry.h
- include/amduat/fed/ingest.h
- include/amduat/fed/replay.h
- include/amduat/fed/view.h
## Policy gating
- Admission gating is per-domain.
@ -220,6 +228,12 @@ Notes:
the denial in view metadata. Resolve MAY return POLICY_DENIED only when such a
denial is recorded for the queried key; otherwise it MUST return NOT_FOUND.
## Remote fetch guidance
Core resolve returns only artifact references. The middle layer is responsible
for fetching remote bytes by reference over its transport and caching them
separately from the authoritative local store.
## Tests (minimal)
1) Replay ordering determinism across two domains with interleaved logseq.