You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- D2c: structural discrepancy in vote counts and n_cmts — both must
use raw_rating_mat to match Clojure's zero-out-columns behavior
- D2d: full recompute guarantees monotonicity without persistence,
unlike Clojure which persists because it uses delta processing
- Corrected earlier "not needed" note about raw_rating_mat
- Updated What's Next: D2c → D2d → D4
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: delphi/docs/CLJ-PARITY-FIXES-JOURNAL.md
+72-4Lines changed: 72 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -142,9 +142,41 @@ After rebase onto updated `origin/kmeans_analysis_docs`:
142
142
`generate_cold_start_clojure.py` with the prodclone DB and Clojure math service.
143
143
This is delegated to a separate session.
144
144
145
-
### What was NOT needed
146
-
-`raw_rating_mat` vs `rating_mat` — not needed, the existing vote counting works
147
-
- Greedy fallback / monotonic persistence — not needed for parity (cold-start only)
145
+
### What was NOT needed (revised — see D2c/D2d below)
146
+
-~~`raw_rating_mat` vs `rating_mat` — not needed~~**WRONG**: See D2c below, this IS needed.
147
+
- Greedy fallback / monotonic persistence — not needed for cold-start parity, but monotonicity tests needed for future-proofing (see D2d).
148
+
149
+
### D2c: Vote count source — raw vs filtered matrix (discovered in session 3)
150
+
151
+
Deep investigation of Clojure vs Python revealed a **structural discrepancy** in how
152
+
votes are counted for the in-conv threshold, independent of delta vs full processing:
153
+
154
+
| Aspect | Clojure | Python (current) |
155
+
|--------|---------|-----------------|
156
+
| Vote counts per participant | From `raw-rating-mat` (conversation.clj:217-225) — includes votes on moderated-out comments | From `self.rating_mat` (conversation.py:1226/1244) — excludes moderated-out columns |
157
+
|`n_cmts` (threshold cap) | From `rating-mat` (conversation.clj:214-215) — columns zeroed but still present, so count includes moderated-out | From `self.rating_mat` (conversation.py:1268) — moderated-out columns removed entirely |
0 commit comments