docs(soul): mark §3.6 matching algorithm as implemented + data-gated

Update specification.md §3.6 ONLY with an honest implementation-status note:
the matching algorithm is now implemented and tested in
v2/crates/wifi-densepose-bfld/, weights remain unvalidated design intent, and
named-identity locking is data-gated (cardiac+respiratory alone are not
separable — measured gap ~0.0005). The broader Soul Signature system remains
Pre-Implementation.

Co-Authored-By: claude-flow <ruv@ruv.net>
This commit is contained in:
ruv 2026-06-11 21:16:41 -04:00
parent e2864bbd52
commit b0ee2a4aaf
1 changed files with 17 additions and 0 deletions

View File

@ -411,6 +411,23 @@ include a conformance layer if regulatory certification is sought.
### 3.6 Matching Algorithm
> **Implementation status (§3.6 only):** The matching algorithm described below
> is **implemented and tested** in
> `v2/crates/wifi-densepose-bfld/src/soul_match.rs` (+ `soul_channels.rs`),
> with tests in `v2/crates/wifi-densepose-bfld/tests/soul_match.rs`. The
> implementation is the **first running** version of this formula in the repo:
> it computes calibrated per-channel scores and exposes a real
> `SoulMatchOracle` (`EnrolledMatcher`). **Caveats that remain true:** the
> weights below are unvalidated design intent; named-identity locking is
> **data-gated** — it requires the decisive high-weight channels (a real AETHER
> enrollment embedding + body-resonance) to be fed real measured data, which has
> NOT been done. Measured on synthetic data, the cardiac (0.15) + respiratory
> (0.10) channels **alone** produce a same-vs-cross-person score gap of ~0.0005
> (test `cardiac_alone_cannot_separate_identity_matches_audit`) — i.e. identity
> is NOT separable on those channels, exactly as expected. This status note
> applies to §3.6 ONLY; the broader Soul Signature system remains
> Pre-Implementation.
Given a stored profile `P` and a query embedding `Q` derived from a live sensing
window, the match score is computed as a weighted sum of per-channel cosine
similarities: