HOMELAB-2682: revert(sbx-gits): pre-#859 proof tool delivery (declaration sequencing) #866
No reviewers
Labels
No labels
operator-review
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Homelab/infra-core!866
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "plane/HOMELAB-2682-revert-859-delivery"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why: revert #859's DELIVERY urgently
The sequencing violation. #859's proof tool reached
sbx-gitsthrough ArgoCD auto-sync at 03:43Z, before GITS's dev branch carries thegits-proof-suitedeclaration. That declaration is an explicit condition set by homelab-33 — the tool may not be deployed ahead of it.The result is a hard block: the new tool is live in the cluster while the declaration is absent, so every GITS head now fails the check and no GITS merge can land. This PR removes the deployed tool to unblock GITS merges immediately.
Approved by El Director: revert #859's delivery now; #859's work stays merged in Git and re-lands with the declaration support PR later.
Scope: exactly one file
Restored to its pre-#859 content (
9119eb2b^, the merge commit's first parent):core/manifests/apps/sbx-gits/tools/gits-sbx-emu-proof.shEvery other file #859 touched keeps #859's content on purpose:
core/manifests/apps/sbx-gits/README.md,docs/gits-sbx/run-proof.md)scripts/gits-sbx-epic-test.sh)Diff:
1 file changed, 48 insertions(+), 586 deletions(-). Nothing outside that one path is in the commit.Restored file sha256:
cab2b732a6e936bedbc5bedc9aa6dddd532d2daacf1a59a749ec4c73031d8875— prefix
cab2b732, matching the pre-#859 deployment thegits-hypervisormeasured.bash -npasses on the restored file.Expected failure: the SS25 anchor cases
The harness may go red on the SS25 anchor cases against the restored tool. This is expected and must not be "fixed" as part of this revert: those cases cover the undeployed anchor code — the #859 code that this PR deliberately does not deploy. The smoke and harness still carry #859's content, so they describe behaviour the restored tool does not implement.
Treating that redness as a regression would re-introduce the exact premature delivery this PR exists to undo. It resolves when the tool is refreshed after the declaration support PR.
Re-landing plan
gits-proof-suitedeclaration support so GITS's dev branch carries the declaration.Structural gap this exposed
NOTHING currently gates ConfigMap auto-sync. A ConfigMap change merged to
livereaches the cluster through ArgoCD with no delivery pin and no sequencing window — so a code-and-declaration order that matters, as it does here, cannot be enforced by the merge pipeline at all. The 03:43Z auto-sync was not a misconfiguration; it was the absence of any mechanism that could have stopped it.Proposed follow-up, to be worked with homelab-33: a delivery pin / window for paths that must not auto-sync ahead of a paired declaration. This revert treats the symptom; the gap is the cause.
Do not merge without the two gate seats
This is a delivery revert under time pressure with a known expected-red harness — it needs the two gate seats, not a self-merge.
Verdict of record — ld-reviewer — head
22c2c32823: APPROVEmodel: deepseek-flash
session: 01a1aefb-d9bf-757a-b84d-27cde49670c0
What I verified
1. The restored file is byte-identical to the pre-#859 parent.
git diff 9119eb2b^1..22c2c328 -- core/manifests/apps/sbx-gits/tools/gits-sbx-emu-proof.shis empty. Blob ids confirm it independently: head3beedb92772d7ec4e493741baa9591d4b7ab3843==9119eb2b^13beedb92…;9119eb2bitself (post-#859) is59517ada….One correction to the review brief, because it changes what "empty" means:
9119eb2b..headfor that path is not empty and cannot be —9119eb2bis the #859 merge commit, i.e. the post-change tree. The comparison that expresses the stated intent ("identical to the pre-#859 parent") is against the first parent9119eb2b^1, and that one is empty.2. Scope: exactly one file, one commit.
git diff --name-statusfrom the merge-base (9119eb2b, which is alsoorigin/live's head) to the PR head lists one path:M core/manifests/apps/sbx-gits/tools/gits-sbx-emu-proof.sh— 1 file changed, 48 insertions(+), 586 deletions(-). No smoke, no docs (README.md,docs/gits-sbx/run-proof.md), no harness (scripts/gits-sbx-epic-test.sh), no kustomization, no statefulset. The branch carries one commit.3. Restored file integrity. sha256
cab2b732a6e936bedbc5bedc9aa6dddd532d2daacf1a59a749ec4c73031d8875— prefixcab2b732, as stated, matching the pre-#859 deployment thatgits-hypervisormeasured.bash -nexits 0. Mode100644, unchanged.4. CI green on the head. Runs #3247 and #3248 on
22c2c328: shellcheck, terraform-validate, yaml-lint, alert-receiver-test, cockpit-e2e, cockpit-test, dispatcher-test, helm-validate, receiver-test, record-sql-test, runner-manifest-test — all success.Blockers
None.
Notes (non-blocking, for the re-land)
The revert withdraws, for the duration of this window, the
GIT_NO_REPLACE_OBJECTS/-c core.useReplaceRefs=falsedefence that #859 added againstgit replaceforging of thescript_sha256anchor (the B6/B7 notes inside the removed hunk). Until #859's tool is restored after thegits-proof-suitedeclaration lands, the deployed gate can be locally forged withgit replace. That is precisely the pre-#859 state, it is the deliberate trade to unblock GITS merges, and it does not block this revert — but the hardening has to come back with the re-land rather than being lost with the revert.The SS25 anchor redness the PR body predicts is not exercised here: CI on this head does not run the epic harness, and shellcheck passes on the restored file. Read that as "untested by this PR's CI", not as "contradicted".