66 lines
4.4 KiB
Markdown
66 lines
4.4 KiB
Markdown
# [2026-07-16] Name-recall gap → WT #364 + brokkr R39 re-drive (DECISIVE) + subject-provenance catch
|
||
|
||
Downstream of the person-prime live verify ([[2026-07-16-person-prime-scan-shipped]]),
|
||
which proved the wire is green but the *name* still misses. Root cause is Worldtree-side.
|
||
|
||
## WT #364 (worldtree-dev filed; our live specimen = the evidence base)
|
||
The name-recall miss is TWO defect classes, both at promotion:
|
||
1. **Contradiction-reconciliation missing.** Promotion wrote a NEGATIVE-knowledge fact
|
||
("user has not yet provided their name") that was already false; promotion does NO
|
||
contradiction check against the store, so both the true and stale facts sit live and
|
||
the WRONG one wins both recall paths (newer → recency top-3; 0.46 → above the 0.45
|
||
query gate, where the true name sits at 0.354).
|
||
2. **Subject-attribution leak (operator-caught, NEW class).** Fact `75aa3110` ("prefers
|
||
clear parameters Intensity/Mood/Willingness…") is NOT a user fact — Vuong never said
|
||
it; it's **Sindra's OWN system-prompt scripted behavior mis-extracted into the USER
|
||
memory partition**. `e35b9dfe` (closeness) maybe the same. So the extractor leaks
|
||
CHARACTER-self facts into user memory — a subject-correctness axis orthogonal to the
|
||
recency/threshold/stale-negative story. worldtree-dev folded it into #364 as a
|
||
**subject-attribution gate at promotion** (a third reconciliation dimension).
|
||
|
||
**The #364 fix that ships = `(subject,relation)` slot-supersession + identity-tier
|
||
surfacing** — NOT a threshold tweak. Our harness data directly shaped it. It lands with a
|
||
re-verify request to us. **#349 ranking decision already RULED by operator (2026-07-15 via
|
||
brokkr's R39 thread): no top-N recency band-aid; straight to R39 identity-class pinning.**
|
||
|
||
## brokkr R39 Phase-1 Arm-0 fusion bake-off — DECISIVE
|
||
brokkr replayed our frozen 7-fact specimen. **HEADLINE: no (similarity, salience) fusion
|
||
can fix #364.** The stale negative PARETO-DOMINATES the true name — more similar
|
||
(0.463 > 0.354) AND equal salience (1.0 = 1.0) — so any monotone f(sim,sal) puts stale
|
||
above true: S0 product / S1 weighted-sum / S2 RRF all fail. Only **S3 bounded-boost** lands
|
||
true-in ∧ stale-out, and ONLY via the identity-class/source signal + negative-validity
|
||
retirement, NOT the sim/sal fusion. **Threshold-tuning is a dead end; the fix is the signal
|
||
FAMILY** (hard confirmation of Phase-0). Write-up: brokkr
|
||
`research/R39-memory-salience-dreams-surfacing/phase-1/re-drive-results.md`.
|
||
|
||
My 3 findings all confirmed + folded: (1) salience blind — both name facts salience 1.0;
|
||
(2) shared `(user,name)` supersession slot (Phase-0 Q3); (3) char-self-leak = "genuine NEW
|
||
class" that RAISED the VoI of R39's dream/offline-hygiene facet (offline consolidation
|
||
re-partitioning mis-attributed facts).
|
||
|
||
## Data structure findings (for the export)
|
||
Our provider persists ONLY `salience` (+ the embedding). `similarity`/`combined` are
|
||
WT-side query-time (`bifrost_memory_store.py:702`, combined = sim×salience) — NOT in our
|
||
store. **Person-prime is query-LESS → carries NO similarity** (brokkr's Arm-1 finding).
|
||
Recovered per-fact similarity from the verify SEARCH log (query "Hi Sindra — do you
|
||
remember me?"): name 0.354, stale 0.463; ×salience-1.0 = combined, matching brokkr's
|
||
0.354/0.46 grounding. `salience_word` (granite categorical) is a WT-extraction-time
|
||
artifact, not persisted.
|
||
|
||
## The export + the specimen
|
||
- Operator approved **VERBATIM** export ("nothing there is really a concern"). The
|
||
classifier had blocked writing PII to shared `/mnt/smithy`; routed to operator → he chose
|
||
full → delivered INLINE (scoped) in brokkr thread `01KXMN7NR54…` as 7-row JSONL.
|
||
- **⚠️ My verify drive CONTAMINATED the specimen**: it wrote 3 new chunks (re-extractions
|
||
incl. a 3rd "name unknown" negative) → store is now **10, not 7**. Original 7 intact.
|
||
- brokkr ACCEPTED the 3 verify-adds as the **Phase-2 Arm-2 seed** (domain-contradiction
|
||
set). I froze a WAL-consistent snapshot of the full 10-chunk store at
|
||
`r39-frozen-specimen/sindra-10chunk-specimen.db` (gitignored, `VACUUM INTO`) so it
|
||
SURVIVES #364 reconciliation. Export on brokkr's Phase-2 signal.
|
||
- **R39 Arm-0 hold LIFTED** (worldtree-dev). Live store kept UNTOUCHED as the #364
|
||
re-verify target; frozen snapshot carries the research seed forward independently.
|
||
|
||
## Peer threads
|
||
worldtree-dev verify `01KXK86PZ9…` + hold `01KXMK1C44…`; brokkr R39 `01KXMN7NR54…`;
|
||
bifrost cursor `01KXK7MDTY…` (see [[2026-07-16-bifrost-cursor-conformance]]).
|