Skip to content

Shrink pre_build to what its run produces (audit step 3)#160

Merged
Jammy2211 merged 1 commit into
mainfrom
feature/pre-build-slim
Jul 16, 2026
Merged

Shrink pre_build to what its run produces (audit step 3)#160
Jammy2211 merged 1 commit into
mainfrom
feature/pre-build-slim

Conversation

@Jammy2211

Copy link
Copy Markdown
Collaborator

Summary

Step 3 of the audit design (#156/#157; campaign #155), with the open §6 decision resolved by the human (2026-07-16): delete the sweep vestige. pre_build now touches only what its run produces:

  • black . → black on the staged dirs only (scripts/, slam_pipeline/). Blacking "." reformatted 13 files no staging rule covered (HowTo* .github/scripts/, autoassistant/), leaving them perpetually dirty-local on every release.
  • The dataset/ and config/ adds are deleted. Nothing in the run modifies them; their only function was sweeping pre-existing human-uncommitted work into release commits — the bug: release pipeline force-commits simulated workspace datasets (git add -f) #126 leak mechanism. Releases require clean mains (Heart gates on it); human work is committed by humans. The dataset allowlist check stays (it guards tracked data regardless of staging).
  • The staging loop's [ -d "$d" ] && git add idiom → explicit if (removes the latent bug-1-class fatal on a present-but-fully-ignored dir).
  • generate.py: os.system(f"git add -f {notebook}")subprocess.run([...], check=True) without -f. Measured before dropping the force flag: start_here.ipynb is tracked and unignored in every workspace that has one; a real add failure now raises instead of vanishing into an ignored return.
  • Skill doc synced.

With this, every failure-tolerant site the audit enumerated is resolved: :55/:88 deleted (#158), the runner sweep owned (#159), :82 made explicit, generate.py:107 checked. The remaining || true (:79 shape) is gone with the dataset add itself.

Shipped under the human-authorized corrective-PR exception for Heart RED (standing this session). PR-open only; merge stays human.

API Changes

None — release-script internals. Behavioural deltas, deliberate and human-decided: pre_build no longer commits pre-existing dirt in dataset//config/, and no longer reformats files outside scripts//slam_pipeline/.

Test Plan

  • bash -n pre_build.sh; ast.parse(generate.py).
  • Full PyAutoBuild suite: 113 passed (incl. the pre_build drift guard).
  • -f drop measured safe: git check-ignore start_here.ipynb clean + tracked in all 5 repos that carry one.
  • Post-merge: next release's workspace commits should contain only notebooks//scripts//slam_pipeline/ paths.

Generated by the PyAutoLabs agent workflow.

Human-decided (2026-07-16): delete the dataset/config sweep vestige. black
runs on the staged dirs only (scripts/, slam_pipeline/) instead of ".", the
dataset/ and config/ adds are removed (they staged nothing the run produced —
sweeping human dirt into release commits was the #126 leak mechanism; Heart
gates on clean mains), the staging loop's latent [ -d ] && fatal idiom is now
an explicit if, and generate.py's os.system("git add -f ...") becomes a
checked subprocess.run without -f (measured: start_here.ipynb tracked and
unignored everywhere it exists). Allowlist check retained. Skill doc synced.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@Jammy2211 Jammy2211 added the pending-release Merged PR awaiting inclusion in the next release build label Jul 16, 2026
@Jammy2211
Jammy2211 merged commit 21c5609 into main Jul 16, 2026
@Jammy2211
Jammy2211 deleted the feature/pre-build-slim branch July 16, 2026 14:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pending-release Merged PR awaiting inclusion in the next release build

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant