Align release proofs with the integrated producer tree - #13
Merged
Conversation
The integrated Alembic head, HTTP contract, and electrolysis adapters had drifted from the committed proofs. Keep the rehearsal on the unique current head, expose existing electrolysis ingestion through CLI and HTTP, and refuse dirty or stale-base evidence runs. Campaign reliability remains implemented until a clean producer commit regenerates the fault-campaign artifact.
A linked worktree of a bare common directory reports core.bare=true. Pin --git-dir and --work-tree from the gitfile so producer identity can run git status on the checkout that actually holds the source tree.
The fault-campaign artifact was regenerated from commit 376dc22, a clean tree that contains origin/main. Record the measured synthetic-replay results and promote the capability to demonstrated. Observed replay and live execution remain out of scope.
CI installs the latest Ruff, which stabilized PLR0917. Keep the HTTP factory at one positional engine argument, and ignore positional-argument count the same way too-many-arguments is already ignored.
CI installs the latest FastAPI, whose OpenAPI renderer no longer matches contracts/openapi-v1.json byte-for-byte. Pin the generator to the version that exported the committed contract.
… drift Windows Path sorting and floating Pydantic 2.12 made the same bytes fail Linux rebuild and OpenAPI checks. Inspect CLI options instead of Rich help truncated at 80 columns.
VivienP
marked this pull request as ready for review
August 14, 2026 12:41
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.
Summary
Align committed release proofs with the current producer tree: unique Alembic head rehearsal, OpenAPI/TypeScript contract, electrolysis CLI/HTTP adapters, producer-identity guards, and a regenerated synthetic-replay fault-campaign artifact.
Rationale
The integrated schema head, HTTP contract, and electrolysis operators had drifted from the committed proofs. Dirty or stale-base evidence runs could still look closed. Fail closed unless HEAD is clean and contains
origin/main, including linked worktrees of a bare common directory, then record measured campaign reliability from that producer.Validation
python .claude/tools/gates.pyinventory used; scaffolded/deferred gates were not reported as passing.mypy --strict src/, offline pytest,check_docs.py --strict(2 pre-existing WARN on exactly-once wording), SHA256SUMS,validate-artifacts.74e1b6a09d22→d9c4e7a1b280, legacy row preserved, v2 constraint present.python scripts/reproduce_campaign_reliability.py --campaigns 100 --master-seed 20260813 --database-name labbridge_phase7_fault_release3 --bucket labbridge-phase7-fault-release3 --output build/phase7-fault-campaign(no--allow-dirty).artifacts/fault-campaign: producergit_head=376dc22,origin_main=2f090e71contained,working_tree=clean; 100 campaigns;acceptance_met=true; 0 lost accepted observations, unintended duplicates, hard-budget overspends, projection mismatches, or Package-verification failures; 51lease_lost; 100 suppressed redeliveries; restore 100/100 objects and Packages; migrationpassed.python -m labbridge.cli validate-artifacts --bundle artifacts/fault-campaign:complete.pytest -m data: NOT RUN — HER archive absent.Limitations and follow-up
Checklist
artifacts.