fix: make source health reliable after failures and restarts - #146
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Reconcile the UAT hardening train with current main, preserve durable source-health evidence across retries and restarts, and align connector and runtime contracts.\n\nAssisted-by: AI Signed-off-by: Tim Nunamaker <tnunamak@gmail.com>
tnunamak
force-pushed
the
local/uat-final-0811
branch
from
August 15, 2026 03:47
d89d8cb to
f537163
Compare
Account for the stream-health authority test, normalize connector package metadata, and keep the new local-collector tests in formatter order. Assisted-by: AI Signed-off-by: Tim Nunamaker <tnunamak@gmail.com>
Keep workflow and package test entrypoints under the canonical scratch runner and apply the repository formatter to the affected manifests. Assisted-by: AI Signed-off-by: Tim Nunamaker <tnunamak@gmail.com>
Use the native scratch owner and pinned Node runtime in the Docker matrix so the core image test does not depend on pnpm being installed in that job.\n\nAssisted-by: AI Signed-off-by: Tim Nunamaker <tnunamak@gmail.com>
Handle PostgreSQL lazy and SQLite-only tables explicitly, require unproved tables to remain backup-required, and make live dump/restore use server-major-compatible client tooling. Assisted-by: AI Signed-off-by: Tim Nunamaker <tnunamak@gmail.com>
Treat consent exchange rows as backup-required until an executable crash-recovery proof exists. Assisted-by: AI Signed-off-by: Tim Nunamaker <tnunamak@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed
This PR brings the UAT hardening work onto current
mainas one reviewed change. Source health now uses the newest completed collection result: active work can show progress, but it cannot hide a newer failure. Checkpoint and coverage evidence remain durable across retries, cancellation, restarts, and storage-generation races, with SQLite and PostgreSQL behavior aligned.The change includes the runtime and connector contract fixes, manifest-derived setup and coverage behavior, local-collector boundaries, safer failure classification and redaction, durable run recovery, owner-facing navigation, and the backup inventory/restore correction needed for the assembled schema.
Exact candidate
c1bdb483867a76d3406d9d05c08d1d3b252077b8The pushed branch, UAT image tag, and
PDPP_REFERENCE_REVISIONall match this SHA. The revision appears exactly once in the UAT container environment.Verification
git diff --check.The backup correction keeps consent exchange state backup-required until an executable crash-recovery proof exists, handles lazy PostgreSQL tables explicitly, and fails closed on unproved non-backup classifications.
Release status
The retained-volume and assembled backup/restore gates are complete. This PR is ready for exact-head CI and final merge review. The old production connection-metadata investigation is separate from this code release and is not represented as resolved here.
Assisted-by: AI