Skip to content

Design: trust-gating/anti-poisoning scoring rules for federated signal-bundle import #6477

Description

@JSONbored

Problem

#1970 (opt-in federated fleet intelligence) needs self-hosted instances to import an anonymized signal/signature bundle from a peer or a chosen collector and fold it into local calibration + a "your gate precision vs peer median" benchmark. #1970's own Requirements already settle the shape (opt-in only, HMAC-anonymized, never sends code/diffs/logins), but the one piece deliberately left open is: what stops a malicious or compromised peer from poisoning another operator's calibration by submitting a fabricated bundle? That's the actual trust-gating design this issue exists to resolve — everything else in #1970 can and should proceed in parallel without presupposing the answer (see the sibling export/collector-client/docs issues, none of which are blocked by this one).

Area

src/selfhost/orb-collector.ts, src/orb/analytics.ts (existing local calibration this bundle draws from), the future import/validation path this design will be implemented against (a sibling contributor-open issue, filed once this design lands).

Proposal (open questions this design pass needs to answer — not yet decided)

  • Signature scheme: HMAC keyed on what — a per-instance long-lived key established at opt-in time, a rotating key, or something else? How does a receiving instance obtain/trust a sender's public verification material without a central authority (matches ORB_AIR_GAP's existing no-central-service posture)?
  • Poisoning resistance: what makes a single bad actor's bundle unable to meaningfully skew another operator's local calibration or the peer-median benchmark — outlier rejection, a reputation/trust score per peer built up over time, a cap on how much any single peer's data can move the aggregate, or some combination? State the actual rule, not "detect anomalies."
  • Peer/collector trust model: when an operator points at a self-run collector vs. a peer-to-peer bundle exchange, does the trust-gating rule differ between the two modes?
  • Abuse recovery: if an operator later discovers they imported a poisoned bundle, is there a way to identify and discount it retroactively, or is prevention-only sufficient for v1?

Deliverables

  • A written design spec: the signature/key-trust scheme, the concrete poisoning-resistance rule (with justification), and whether peer vs. collector modes differ.
  • Explicit sign-off before the import+validation implementation issue (sibling to this one, blocked by it) is unblocked for a contributor.

Resources

Boundaries

Metadata

Metadata

Assignees

Labels

maintainer-onlyOwner-only work — yields no Gittensor points.

Projects

Status
Done

Relationships

None yet

Development

No branches or pull requests

Issue actions