Skip to content

Reconcile retained data-quality evidence with current gap counts - #976

Draft
seathatflowsinourveins wants to merge 3 commits into
mainfrom
foundation/ns-movers-data-quality-gaps-20261010
Draft

seathatflowsinourveins wants to merge 3 commits into
mainfrom
foundation/ns-movers-data-quality-gaps-20261010

Conversation

@seathatflowsinourveins

@seathatflowsinourveins seathatflowsinourveins commented Oct 10, 2026 •

Copy link
Copy Markdown
Collaborator

Scope

The component matrix still counted six executable data-quality/orchestration gaps from its September historical crosswalk, although later native and local receipts supplied their executable evidence. This PR joins an explicit, hash-bound layer supplement and regenerates the matrix: executable gaps 6→0, open gaps 9→4. Five absence claims settle; Temporal's measured portion is credited while Modal remains open for user login. The historical judgments, all 31 other matrix rows, winners, pins and platform statuses stay intact.

  • Base commit: 0947b01289dcaa9157aa38392a94cf00f592b86d.
  • Current source head: 886fb41de1d8c01bfeb01b4057042aaaeed5c8d0; three forward commits on that base, including the dependent host-export and source-citation refreshes.
  • Lane: lane:shared; the trading acknowledgement is required before the CC's landing.
  • Owned paths: scripts/component_matrix.py, tests/test_component_matrix.py, the us-equities landscape row and its new gap supplement, generated matrix and host-export JSON/Markdown, the dated decision, reconciliation receipt and their explicit manifests/evidence.json registrations. The dependent architecture has four corrected line citations; the two handbook exports and their existing publication receipt bind the changed source hashes. Fifteen paths in one PR for this layer cluster.

The generator validates the historical crosswalk hash, exact source-gap text and layer scope, and every cited evidence hash before applying an explicit resolution. Missing or changed inputs refuse generation. Partial evidence stays open with its residual category. This supplies current counting without changing the historical reviewer/model decisions or introducing an orchestration engine.

Historical gap Credited retained evidence Remaining boundary
1, paired Dagu/model graph Actual completed native Astra/Claude graph and complete hash-matched reports Historical run; history replay supplies corroboration, not fresh inference or allowance acceptance
2, conflicting dashboard-mode records Already reviewed native mode observation and its corrected controls Historical record reconciliation only; current host configuration is unobserved
3, untested Dagu 2.17 Both retained version arms' failure/abort/cancel/restart-history measurements Disposable local homes; no held-stack pin cutover or newer-release qualification
5, DuckDB gate input Ten Pandas/native DuckDB fixture arms, CSV-equivalent named checks and actual gate exits Synthetic snapshots do not qualify production provider data
6, Temporal/Modal execution Temporal happy/retry/failure/workflow-cancel/worker-kill recovery/history/spans Modal remains open needs_user_login; Temporal production/server-kill scope remains unqualified
7, orchestrator comparison Both engines' retained bounded workload, failure/cancel/recovery/telemetry results Single-host timings are observations, not guarantees; manual Dagu retry describes the fixture without automatic retry policy

The four remaining open entries cover off-host/VM/trading-host qualification, production-data acceptance, Modal login and separate adjudication bookkeeping. The overall matrix executable count changes 238→232. No new service, model, authentication, broker or market-data execution was needed to reconcile these existing records.

SOTA sources

Evidence-class table

Claim Evidence class Command / receipt
Historical graph/version/runtime outcomes Original native_proven or local_integration scope of each retained receipt evidence/artifacts/gap-wave2-20260923/us-equities__data-quality-orchestration/ and adoption/paired/receipt.json
Integrity and semantic scope reconciliation source_review evidence/artifacts/data-quality-gap-reconciliation-20261010/receipt.json; 68 raw-artifact entries and 79 evidence references rehashed without mismatch
Stale-count fix and refusal controls synthetic Touched component-matrix module: 67 tests, zero skipped; one observed failing-before regression; dependent host-export module: 36 tests passed
Repository integrity and scope local_integration FULL validator: 70 components, 11,417 hashed files, 4 profiles, 239 receipts, exit0
Derived source/citation bindings local_integration Unchanged architecture and handbook modules: 92 tests, zero skipped; native builder write/check; failed checks and previous output hashes retained in the existing handbook receipt

Local commands run

nice -n 10 ionice -c 2 -n 7 python3 -m unittest tests.test_component_matrix.GapCountTests.test_later_retained_receipt_replaces_stale_gap_count
Before fix: exit1, one test failed (1 != 0).

nice -n 10 ionice -c 2 -n 7 python3 -m unittest tests.test_component_matrix
After fix: exit0, 67 tests, zero skipped.

nice -n 10 ionice -c 2 -n 7 python3 scripts/component_matrix.py --write
exit0, 32 rows, zero flip-rule violations.

nice -n 10 ionice -c 2 -n 7 python3 scripts/component_matrix.py --check
exit0, 32 rows checked.

nice -n 10 ionice -c 2 -n 7 python3 scripts/new_host_grand_list.py --write
exit0, 32 layers and 66 winners; refreshes the matrix's dependent export.

nice -n 10 ionice -c 2 -n 7 python3 -m unittest tests.test_new_host_grand_list
exit0, 36 tests.

nice -n 10 ionice -c 2 -n 7 python3 scripts/new_host_grand_list.py --check
exit0, 32 layers and 66 winners. The existing check failed on the stale export before regeneration.

python3 scripts/evidence_manifest.py --check
exit0, 11,417 files.

nice -n 10 ionice -c 3 python3 scripts/build_new_wsl_handbook.py --write
exit0; regenerate the two outputs through the unchanged supported builder.

nice -n 10 ionice -c 3 python3 scripts/build_new_wsl_handbook.py --check
exit0. Before correction, this check exited 1 on the stale source binding.

nice -n 10 ionice -c 3 python3 -m unittest tests.test_architecture_pin_source tests.test_new_wsl_handbook
exit0, 92 tests, zero skipped. The unchanged citation test failed on four shifted locators before correction.

nice -n 10 ionice -c 3 python3 scripts/validate.py
FULL exit0: 70 components, 11,417 hashed files, 4 profiles, 239 receipts.

git diff --check
exit0.

nice -n 10 ionice -c 3 gitleaks git --no-banner --redact --log-opts=0947b01289dcaa9157aa38392a94cf00f592b86d..HEAD
Gitleaks8.30.1 exit0, three PR commits scanned, zero findings.

Local testing follows the current touched-module plus FULL-validator policy. Hosted CI owns full test discovery. The new reconciliation receipt retains the earlier full-validator pass before its own registration; the final registered-tree pass is recorded above.

Decision record

docs/decisions/2026-10-10-data-quality-gap-reconciliation.md and catalogs/landscape/gap-burndown-data-quality-orchestration-20261010.json bind each credited scope and explain the residuals. A changed/missing source or evidence binding refuses generation; a later qualified host, production-data or Modal execution can replace the remaining residual through its own evidence.

Host evidence

No host receipt or declared platform status is changed. The retained historical source records remain at their original evidence classes and dates. Hosted CI, the designated read and separate trading acknowledgement remain due at the current head before the CC's landing.

Checklist

  • Changed files contain no credential values or expanded personal home paths.
  • No workflow/action pin or permission changes.
  • No paid hosting, subscription or new billing surface.
  • Peer-owned paths, untracked files and worktrees preserved.
  • Matrix regenerated through its native script; FULL validator and touched module pass.
  • Other-lane trading acknowledgement before merge.

Join an explicit layer gap-resolution supplement to the historical
crosswalk after checking source text/scope and every retained evidence
hash. Preserve historical judgments and all unrelated matrix rows.
Five later-evidenced absence claims settle; the measured Temporal scope
removes executable work while Modal remains open pending login.

Regenerate the matrix with six executable entries becoming zero and
nine open entries becoming four. Add a failing-before stale-count
regression plus changed/missing evidence, wrong scope and partial-gap
controls. Retain the reconciliation receipt and pinned vendor citations.

The Dagu/Pandera/DuckDB/Temporal runs are historical native/local
evidence, not new host/runtime or production-data acceptance. No
winner/pin/platform-status changes. Touched module: 67 tests, zero skips.
FULL validate: 70 components, 11417 hashed files, 4 profiles, 239 receipts,
exit0. Sources and boundaries are in the dated decision record.
@seathatflowsinourveins seathatflowsinourveins added the lane:shared Touches files owned by both lanes; needs both lanes' acknowledgement label Oct 10, 2026
ns-movers and others added 2 commits October 10, 2026 13:14
Regenerate new-host-grand-list JSON and Markdown through
scripts/new_host_grand_list.py --write, then keep their registered
manifest hashes current. This dependent export carries the reconciled
six-to-zero executable and nine-to-four open gap counts.

CI's existing --check reproduced stale outputs on the previous head;
after generation --check passes and its 36-test module passes. No
source, winner, pin, host status or gap-evidence decision changes.
The current matrix and retained reconciliation remain unchanged.
Correct the four architecture citations shifted by the landscape resolution
reference and regenerate the handbook through its unchanged native builder.
Retain the failed checks, earlier output hashes and regeneration observations;
refresh the four affected evidence registrations.

Supported source: native-agent-stack main 0947b01,
scripts/build_new_wsl_handbook.py:1334-1374 and
tests/test_architecture_pin_source.py:178-196. Winner identities, pin values,
gap decisions and host-acceptance evidence stay unchanged.

Validation: both failures reproduced before correction; 92 architecture and
handbook tests passed; supported builder write/check and FULL validate passed.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lane:shared Touches files owned by both lanes; needs both lanes' acknowledgement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant