Skip to content

python-math #28: docs(delphi): R1-parity goal docs, journal (2026-07-18 → 07-24 s5), quirks + divergence ledger - #2626

Draft
jucor wants to merge 1 commit into
spr/edge/6b40e1bffrom
spr/edge/90ba0c34
Draft

python-math #28: docs(delphi): R1-parity goal docs, journal (2026-07-18 → 07-24 s5), quirks + divergence ledger#2626
jucor wants to merge 1 commit into
spr/edge/6b40e1bffrom
spr/edge/90ba0c34

Conversation

@jucor

@jucor jucor commented Jul 18, 2026

Copy link
Copy Markdown
Collaborator

What

Documentation for the R1-parity goal (the standing goal that the Python math engine reproduces the legacy Clojure engine's results under replay), covering the overnight session of 2026-07-18:

  • SEQUENTIAL_BITS_PORT_SPEC.md: verified inventory of all 11 cross-tick stateful Clojure behaviors, plus the port design that became PRs A/B/D'/C/E.
  • MATH_POLLER_DESIGN.md: recon-verified inventory of the Clojure container's responsibilities, the phase-1 architecture for the Python math poller (the service that polls Postgres for new votes and runs math updates), and the cutover plan (shadow -> flip -> decommission).
  • Journal: full overnight session entry, including the in-conversation 67-vs-68/69 RETRACTION, the generator input-fidelity fix, the H-A/H-B experiment results (self-jitter floors, and the first cross-language gap measurement), the sequential-bits PRs A/B/D'/C/E, poller phase 1, and the golden-kit evaluation.
  • PLAN: D1/D3/Replay status rows updated; a stale ns-PASS "pending" entry corrected (it was resolved 2026-06-11).

Extended across the R1-goal sessions of 2026-07-22 (sessions 1-4) and 2026-07-24 (session 5)

  • GOAL_R1_PARITY.md + GOAL_STATE.md: the standing autonomous goal (DONE criteria, method, session protocol) plus its live checkpoint.
  • CLOJURE_QUIRKS.md: the replicated-quirk ledger Q1-Q18. Session 5 adds quirk Q17 (k-means cluster-step distance ties resolve by Clojure's map iteration order) as PORTED, and quirk Q18 (uniqify merge-center exact-equality is value-dependent floating-point ulp luck) as CARVED out of certification, with real-vectorz evidence.
  • divergences.json: the divergence-fingerprint ledger with per-divergence diagnoses. Session-5 end state: 70 resolved + 11 carved-out (Q18), ZERO open.
  • Journal sessions 4-5: the moderation/restart ports, the restart-seam from_dict restore root-cause + fix, the Q17/Q18 fork resolution, the pc-meta-02 battery-entry swap, and the certification battery at 20/20 MATCH on two consecutive passes — goal condition (1) met.

Co-Authored-By: Claude Fable 5 noreply@anthropic.com

commit-id:90ba0c34


Stack:


⚠️ Part of a stack created by spr. Do not merge manually using the UI - doing so may have unexpected results.

@jucor
jucor marked this pull request as draft July 18, 2026 02:43
@jucor
jucor force-pushed the spr/edge/90ba0c34 branch from 23ba11b to 54d0a05 Compare July 18, 2026 13:28
@jucor
jucor force-pushed the spr/edge/18c7048f branch from 73b4cb9 to 4a152dd Compare July 18, 2026 13:28
@jucor
jucor force-pushed the spr/edge/90ba0c34 branch 2 times, most recently from be621f6 to 3615b9c Compare July 18, 2026 13:35
@jucor
jucor force-pushed the spr/edge/18c7048f branch from 4576fbb to 2ee5b01 Compare July 18, 2026 13:35
@jucor
jucor requested a review from Copilot July 21, 2026 08:38
@jucor
jucor force-pushed the spr/edge/90ba0c34 branch from 3615b9c to a0e883b Compare July 21, 2026 08:39

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds/updates Delphi documentation capturing the 2026-07-17→18 overnight parity/poller work: a sequential warm-start behavior inventory/spec, a math-poller replacement design, and corresponding journal + plan status corrections.

Changes:

  • Add SEQUENTIAL_BITS_PORT_SPEC.md documenting Clojure cross-tick stateful behaviors and the Python clojure-legacy port plan.
  • Add MATH_POLLER_DESIGN.md describing the Python poller service intended to replace the Clojure math container/poller (phase 1 + cutover plan).
  • Update the parity journal and discrepancy-fixes plan to reflect updated statuses and findings from the session.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.

File Description
delphi/docs/SEQUENTIAL_BITS_PORT_SPEC.md New spec/inventory of Clojure warm-start state and port design for Python clojure-legacy mode.
delphi/docs/MATH_POLLER_DESIGN.md New design doc for the Python math poller replacement and migration/cutover plan.
delphi/docs/PLAN_DISCREPANCY_FIXES.md Updates discrepancy-plan rows (notably D1/D3/Replay) and corrects a previously stale item.
delphi/docs/CLJ-PARITY-FIXES-JOURNAL.md Adds the overnight session entry documenting outcomes, retractions, and shipped work.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread delphi/docs/CLJ-PARITY-FIXES-JOURNAL.md Outdated
Comment thread delphi/docs/CLJ-PARITY-FIXES-JOURNAL.md Outdated
@jucor
jucor force-pushed the spr/edge/90ba0c34 branch 2 times, most recently from c237ef1 to 3c4d7ca Compare July 21, 2026 11:11
@jucor
jucor force-pushed the spr/edge/18c7048f branch from 2ee5b01 to 6a9b51f Compare July 21, 2026 11:11
@github-actions

Copy link
Copy Markdown

Delphi Coverage Report

File Stmts Miss Cover
init.py 2 0 100%
benchmarks/bench_pca.py 128 107 16%
benchmarks/bench_repness.py 81 65 20%
benchmarks/bench_update_votes.py 38 28 26%
benchmarks/benchmark_utils.py 34 24 29%
components/init.py 1 0 100%
components/config.py 165 133 19%
conversation/init.py 2 0 100%
conversation/conversation.py 1304 261 80%
conversation/manager.py 131 42 68%
database/init.py 1 0 100%
database/dynamodb.py 395 189 52%
database/postgres.py 310 166 46%
pca_kmeans_rep/init.py 5 0 100%
pca_kmeans_rep/clusters.py 257 21 92%
pca_kmeans_rep/corr.py 98 17 83%
pca_kmeans_rep/group_k_smoother.py 28 0 100%
pca_kmeans_rep/legacy_kmeans.py 154 5 97%
pca_kmeans_rep/pca.py 133 18 86%
pca_kmeans_rep/repness.py 224 6 97%
poller/init.py 4 0 100%
poller/math_writer.py 41 1 98%
poller/service.py 235 62 74%
poller/worker_pool.py 75 0 100%
regression/init.py 4 0 100%
regression/clojure_comparer.py 188 20 89%
regression/comparer.py 887 649 27%
regression/datasets.py 135 27 80%
regression/recorder.py 36 27 25%
regression/utils.py 130 85 35%
replay/init.py 2 0 100%
replay/certify.py 452 121 73%
replay/crosslang.py 128 3 98%
replay/driver.py 53 2 96%
replay/prodclone.py 184 16 91%
replay/real_data.py 21 2 90%
replay/schedule.py 125 6 95%
replay/stepcompare.py 77 1 99%
replay/store.py 120 11 91%
replay/types.py 65 8 88%
run_math_pipeline.py 261 114 56%
umap_narrative/500_generate_embedding_umap_cluster.py 210 109 48%
umap_narrative/501_calculate_comment_extremity.py 112 53 53%
umap_narrative/502_calculate_priorities.py 135 135 0%
umap_narrative/700_datamapplot_for_layer.py 502 502 0%
umap_narrative/701_static_datamapplot_for_layer.py 310 310 0%
umap_narrative/702_consensus_divisive_datamapplot.py 432 432 0%
umap_narrative/801_narrative_report_batch.py 785 785 0%
umap_narrative/802_process_batch_results.py 268 268 0%
umap_narrative/803_check_batch_status.py 183 183 0%
umap_narrative/llm_factory_constructor/init.py 2 2 0%
umap_narrative/llm_factory_constructor/model_provider.py 192 192 0%
umap_narrative/polismath_commentgraph/init.py 1 0 100%
umap_narrative/polismath_commentgraph/cli.py 270 270 0%
umap_narrative/polismath_commentgraph/core/init.py 3 3 0%
umap_narrative/polismath_commentgraph/core/clustering.py 108 108 0%
umap_narrative/polismath_commentgraph/core/embedding.py 104 104 0%
umap_narrative/polismath_commentgraph/lambda_handler.py 219 219 0%
umap_narrative/polismath_commentgraph/schemas/init.py 2 0 100%
umap_narrative/polismath_commentgraph/schemas/dynamo_models.py 160 9 94%
umap_narrative/polismath_commentgraph/tests/conftest.py 17 17 0%
umap_narrative/polismath_commentgraph/tests/test_clustering.py 74 74 0%
umap_narrative/polismath_commentgraph/tests/test_embedding.py 55 55 0%
umap_narrative/polismath_commentgraph/tests/test_storage.py 87 87 0%
umap_narrative/polismath_commentgraph/utils/init.py 3 0 100%
umap_narrative/polismath_commentgraph/utils/converter.py 283 237 16%
umap_narrative/polismath_commentgraph/utils/group_data.py 354 336 5%
umap_narrative/polismath_commentgraph/utils/storage.py 584 518 11%
umap_narrative/reset_conversation.py 159 50 69%
umap_narrative/run_pipeline.py 453 312 31%
utils/clj_hash.py 44 0 100%
utils/engine_mode.py 9 0 100%
utils/env_flags.py 13 0 100%
utils/general.py 62 41 34%
utils/serialization.py 9 5 44%
Total 12918 7653 41%

This was referenced Jul 25, 2026
…18 → 07-24 s5), quirks + divergence ledger

## What

Documentation for the R1-parity goal (the standing goal that the Python math engine reproduces the legacy Clojure engine's results under replay), covering the overnight session of 2026-07-18:

- `SEQUENTIAL_BITS_PORT_SPEC.md`: verified inventory of all 11 cross-tick stateful Clojure behaviors, plus the port design that became PRs A/B/D'/C/E.
- `MATH_POLLER_DESIGN.md`: recon-verified inventory of the Clojure container's responsibilities, the phase-1 architecture for the Python math poller (the service that polls Postgres for new votes and runs math updates), and the cutover plan (shadow -> flip -> decommission).
- Journal: full overnight session entry, including the in-conversation 67-vs-68/69 RETRACTION, the generator input-fidelity fix, the H-A/H-B experiment results (self-jitter floors, and the first cross-language gap measurement), the sequential-bits PRs A/B/D'/C/E, poller phase 1, and the golden-kit evaluation.
- PLAN: D1/D3/Replay status rows updated; a stale ns-PASS "pending" entry corrected (it was resolved 2026-06-11).

## Extended across the R1-goal sessions of 2026-07-22 (sessions 1-4) and 2026-07-24 (session 5)

- `GOAL_R1_PARITY.md` + `GOAL_STATE.md`: the standing autonomous goal (DONE criteria, method, session protocol) plus its live checkpoint.
- `CLOJURE_QUIRKS.md`: the replicated-quirk ledger Q1-Q18. Session 5 adds quirk Q17 (k-means cluster-step distance ties resolve by Clojure's map iteration order) as PORTED, and quirk Q18 (uniqify merge-center exact-equality is value-dependent floating-point ulp luck) as CARVED out of certification, with real-vectorz evidence.
- `divergences.json`: the divergence-fingerprint ledger with per-divergence diagnoses. Session-5 end state: 70 resolved + 11 carved-out (Q18), ZERO open.
- Journal sessions 4-5: the moderation/restart ports, the restart-seam `from_dict` restore root-cause + fix, the Q17/Q18 fork resolution, the `pc-meta-02` battery-entry swap, and the certification battery at 20/20 MATCH on two consecutive passes — goal condition (1) met.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

commit-id:90ba0c34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants