Repository navigation
story-151: A copy of this repository made for a test carries what the test needs and not what the runs left behind - #306
Merged
Merged
Conversation
…t the test needs and not what the runs left behind
The run escalated and this commit is a holding place for what it left in the working tree, so the work survives a checkout of another branch. It is not a decision about that work: the story did not finish and nothing here has been accepted or reviewed.
Escalation reason: tester agent process failed; tester has exhausted its max_self_routes budget of 1
To put these changes back in the working tree:
git reset --mixed HEAD~2
The run escalated and this commit is a holding place for what it left in the working tree, so the work survives a checkout of another branch. It is not a decision about that work: the story did not finish and nothing here has been accepted or reviewed.
Escalation reason: tester agent process failed; tester has exhausted its max_self_routes budget of 1
To put these changes back in the working tree:
git reset --mixed HEAD~2
… test needs and not what the runs left behind Implemented by the l5 harness story workflow.
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.
The suite was getting slower every week rather than merely being slow, and this fixture was why.
repo_copycopied the whole repository excluding only.venv,__pycache__and.pytest_cache— so it carried.harness/logsand.harness/runs, measured at 915 MB and 797 MB, and.venv310, another 32 MB the pattern missed because it named.venvalone. About 1.75 GB copied to run tests whose subject is source, tests and a bounded range of history.It cost 19.48 s of module setup in a
--durations=40run of the whole suite — the most expensive fixture measured, above every test in the suite but four. And both of those directories grow with every story that runs, so it got slower without a line of test code changing.The exclusion is asked of git, not written down
ignored_pathsrunsgit ls-files --others --ignored --directory --exclude-standard -zand excludes what git reports. So a directory added to.gitignorelater is left behind here with nobody editing this module — which is the property that matters, because the list that was there had already drifted once by naming.venvwhile the repository carried.venv310.--directorycollapses a wholly-ignored directory to one entry, which is what keeps it from enumerating every file under.harness/runs.-zasks for the NUL-separated form git does not quote, so a path carrying an unusual byte arrives as itself.What still comes along
.git, because every assertion the copy is made for bounds itself at its own story's commit range and cannot resolve one without it — and the tracked source and tests, because a subprocess pytest run inside the copy imports them.A finding this run raised about itself, and did not act on
The Inspector routed a finding to this story on both attempts and the verifier acted on neither, so both were lost rather than fixed or filed. They are recovered by hand:
.gitis a file naming the real git directory, and the copy carries that pointer rather than a git directory of its own. The suite meets this on every run the harness makes, since every story runs in a worktree. Filed as its own brief; it is not introduced by this change and is not fixed by it.That they had to be recovered by hand is #302.
Planned from the brief filed under 296.
🤖 Generated with Claude Code
https://claude.ai/code/session_01NJzpgnY9aJ7K2godyjrJJR