feat: add relay-local reputation provider - #5
Conversation
branarakic-agent
left a comment
There was a problem hiding this comment.
Review pass completed at adbac26. Two blockers remain in the local-provider delta. First, relayProjectsTrustToDkg checks only the generic memory capability; a relay that advertises memory but not dkg-trust@1 will receive unsupported trust projections that are then retained and retried indefinitely. Require both memory and trust support, while keeping the event-only local-provider path. Second, the local provider returns up to 100 claims with the complete raw Nostr event embedded in every sourceDocument, but this response bypasses the bounded-response path used by the DKG adapter. Valid large events can therefore produce multi-megabyte trust responses and defeat the new bounded-query contract. Cap or omit raw source payloads and enforce a response byte ceiling, with tests near the limit. The branch CI is also currently red.
Signed-off-by: branarakic <branimir.rakic@origin-trail.com>
Signed-off-by: branarakic <branimir.rakic@origin-trail.com>
Signed-off-by: branarakic <branimir.rakic@origin-trail.com>
Signed-off-by: branarakic <branimir.rakic@origin-trail.com>
8981a80 to
e7eabeb
Compare
Summary
disabled | local | dkgreputation-provider selection while preserving existing DKG-trust deployments by default30382:<result>selections from the tenant-scoped relay storebuzz-trust-claim@1evidence with original signed events, lifecycle state, pagination, source diagnostics, and honest complete/partial/unavailable semanticsbuzz-reputation@1capability and let the desktop show a standalone community-trust surface without requiring DKG memorySafety and bounds
partialVerification
cargo test -p buzz-relay --lib --locked(937 tests; DB/Redis integration cases remain ignored by their existing gates)cargo clippy -p buzz-relay --lib --locked -- -D warningspnpm --dir desktop testpnpm --dir desktop typecheckcargo fmt --all -- --checkgit diff --checkStack
Stacked on #4 (
feat/reputation-provider-foundation). Only the two M2 commits appear in this PR.