Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/harness-defaults.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ When a claim or action proves wrong, correct it where it was relayed and record

| Date | Anti-pattern | What happened | Rule or check that prevents it | Where enforced |
| --- | --- | --- | --- | --- |
| 2026-10-05 | Leaving a finished job's working trees, build scratch and caches in place | NativeStack's root fell to 191 GB free of 1,007 GB, and its VHDX on Z: grew to 1,065 GB for 765 GB used. The bulk was finished work: 403 git worktrees of this repository; 124 GB of gateway and currency build trees in `/var/tmp` from a session that ended on 2026-09-30; 56.5 GB of 1,802 byte-identical fixture-binary copies inside a harness's evidence folder; 27.8 GB of per-session code-index databases; about 75 GB of superseded gateway prefixes and source builds; and 30 GB of unused container images. The 2026-10-05 cleanup reached 529 GB free; every uncommitted change, and the one gateway patch that existed only in local clones, were preserved first | Close each job when its receipt or PR lands: first list what it holds with `git status --ignored --untracked-files=all`, then remove it with `git worktree remove` without `--force`. That refuses modified or untracked files as `git status` reports them, but it deletes ignored files and any untracked file hidden by `status.showUntrackedFiles=no` ([git-worktree](https://github.com/git/git/blob/67ad42147a7acc2af6074753ebd03d904476118f/builtin/worktree.c#L1307-L1344)); keep receipts, patches and artifacts with their sha256 and drop dependency and build trees; before deleting a clone, save any commit that exists only locally with `git bundle create <file outside the clone> <refs>`, which keeps merge commits and their conflict resolutions (`git format-patch` skips merges and, with default settings, writes into the directory being deleted); prune caches with their own tools ([`uv cache prune`](https://github.com/astral-sh/uv/blob/70fe1196a546e49148a73b1c592b2f74c33af80e/crates/uv/src/commands/cache_prune.rs#L14-L68), [`docker image prune --all`](https://github.com/docker/cli/blob/7fc2dff9bceb96b266a3b2c3117c0955a0d9e616/cli/command/image/prune.go#L59-L74) for unused images); keep build scratch in the job's own state folder, never `/var/tmp`. A WSL VHDX never shrinks on its own: reclaim it with `wsl --manage <distro> --compact` (WSL 3.0.1, [compaction](https://github.com/microsoft/WSL/blob/91f161fa240dc355c1a88daabc8aac4273e35ba5/src/windows/service/exe/LxssUserSession.cpp#L1871-L1921) and [termination](https://github.com/microsoft/WSL/blob/91f161fa240dc355c1a88daabc8aac4273e35ba5/src/windows/service/exe/LxssUserSession.cpp#L2518-L2523); it force-terminates the distro) in a window, and leave sparse VHD off while WSL 3.0.1 refuses it without `--allow-unsafe` ([sparse-mode guard at 3.0.1](https://github.com/microsoft/WSL/blob/91f161fa240dc355c1a88daabc8aac4273e35ba5/src/windows/service/exe/LxssUserSession.cpp#L1778-L1782)) | This log; the disk-headroom alerts of #712 report the symptom |
| 2026-10-05 | Requiring package and version text to be adjacent in a pin-source description | After merging main ec0b8fd82, tests.test_architecture_pin_source failed six Alpaca cells at 504dba2e0: the source now spells alpaca-py 0.44.0 with a space, while its locators still identify selected_path at line 158. | Allow whitespace between the named package and exact version, retain the version boundary check, and reject wrong-version and delimiter locators. | [tests/test_architecture_pin_source.py](../tests/test_architecture_pin_source.py), through unittest discovery; the merged-tree regression and whitespace/wrong-version fixtures |
| 2026-10-05 | Relaying an obsolete pin classification after moving its live mirror | At #703 head 95cf94ca4, the original inventory still labelled five moved EdgarTools audit/snapshot fields historical. The receipt relayed that inventory. The correction tests failed for the missing dated corrections in both records. | Add a dated correction where the classification was relayed; retain the original inventory and dated observations. The five live mirrors now have explicit corrections, and the v5.58.0 check endpoint stays historical. | This log for the general rule; [tests/test_edgartools_pin_move.py](../tests/test_edgartools_pin_move.py) is the regression for the five EdgarTools sites, through unittest discovery; the classification artifact and pin-move receipt carry the same 2026-10-05 correction |
| 2026-10-05 | Limiting semantic pin-source checks to one cited file | The first #703 locator test checked stack.json alone. Its extension failed 11 cells at 95cf94ca4: three shifted NautilusTrader locators and eight older Alpaca, SDK and WSL-image locators. | Check every line-bearing pin_source against the named component, package or pin key in its own source file; path and bounds alone do not establish identity. Recompute all affected locators after any source line shift and keep edition-pin drift separate. | [tests/test_architecture_pin_source.py](../tests/test_architecture_pin_source.py), through unittest discovery; it reuses scripts/build_ecosystem.py locator validation and checks all cited pin fields |
Expand Down
4 changes: 2 additions & 2 deletions manifests/evidence.json
Original file line number Diff line number Diff line change
Expand Up @@ -17403,8 +17403,8 @@
},
{
"path": "docs/harness-defaults.md",
"sha256": "6857b6116387ceecdb7bfe821cfd2e44e98d25197064fbc4097adebf0fa5eccd",
"bytes": 222886
"sha256": "26ec355b96aa6bc91fba8fd4f1ff33d84b13ce7865c4eb3108d98ead4dfa534c",
"bytes": 225647
},
{
"path": "docs/harness-rules-convergence-20260922.md",
Expand Down
Loading