Commit Graph

2 Commits

Author SHA1 Message Date
ruv 810ee656de fix(bfld): gate PrivacyAttestationProof::compute behind std
CI `cargo test --no-default-features (baseline regression)` failed with
`error: associated function compute is never used` under -D warnings.
compute() is only reachable via PrivacyModeRegistry (#[cfg(feature =
"std")]); without std there is no caller. Gate the impl to match its only
callers. Verified clean under --no-default-features, default, and
--features mqtt with RUSTFLAGS=-D warnings.

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-05-31 10:45:38 -04:00
ruv 7d88eb84c7 feat(bfld): ADR-141 privacy control plane — modes, actions, attestation (#845)
- privacy_mode.rs: PrivacyMode (RawResearch/PrivateHome/EnterpriseAnonymous/
  CareWithConsent/StrictNoIdentity) layered over the existing 4-class
  PrivacyClass; each mode pins target_class + enforced PrivacyAction bitset +
  soul_signature_enabled
- PrivacyAction enum (Allow/SuppressIdentity/ReduceResolution/DropRaw/AggregateOnly)
- PrivacyModeRegistry (std-gated, heap audit log per ESP32 no_std convention):
  active-mode source of truth, is_action_enforced(), set_mode() appends
  hash-chained PrivacyAttestationProof (BLAKE3, ADR-010), verify_chain()
- no_std-safe: PrivacyMode/Action/AttestationProof are heap-free; registry
  std-gated. Builds --no-default-features AND --features std.
- 6 tests incl. tamper-detection; workspace 0 errors

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-05-28 23:23:01 -04:00