-
Notifications
You must be signed in to change notification settings - Fork 1
fix(runner): stage error diagnostics outside the checkout, in all four runners #3212
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -58,15 +58,16 @@ | |
| # Artifact paths that ARE inside the checkout and are deliberately not excluded/ignored. Each entry | ||
| # is an incident record: say why it is safe, so the next reader can tell a reviewed decision from an | ||
| # oversight. Anything not listed here must be excluded, ignored, or written outside the checkout. | ||
| KNOWN_IN_CHECKOUT: dict[str, str] = { | ||
| "error-diagnostics/": ( | ||
| "Created by the 'Create error diagnostics' step, which runs AFTER the commit step in the " | ||
| "same job, so `git add -A` never sees it. That is step ORDERING, not a safety property: " | ||
| "reorder the steps, or add a second commit step later in the job, and this becomes the " | ||
| "langsmith-fleet-worker-attempt.json defect again. Prefer moving it under RUNNER_TEMP if it " | ||
| "is ever touched." | ||
| ), | ||
| } | ||
| # | ||
| # EMPTY, and worth keeping empty. It held `error-diagnostics/` until 2026-08-23, justified by "its | ||
| # step runs AFTER the commit step, so `git add -A` never sees it". That was true and it was still | ||
| # the wrong kind of reason: step ORDERING is not a safety property, so the entry was a deferral | ||
| # wearing the costume of a rationale. All four registered runners now stage that directory under | ||
| # RUNNER_TEMP, which removed the last in-checkout artifact and the entry with it. | ||
| # | ||
| # Adding one back is permitted, but say what makes the path SAFE, not merely that it currently is. | ||
| # "Nothing commits after it today" is the former; "git can never see it" is the latter. | ||
| KNOWN_IN_CHECKOUT: dict[str, str] = {} | ||
|
Comment on lines
+61
to
+70
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win Verify the diagnostics producer path, not only the upload path. This guard parses As per path instructions, changed Python behavior must have accompanying test coverage. 🤖 Prompt for AI AgentsSource: Path instructions |
||
|
|
||
|
|
||
| def workflow_text(rel: str) -> str: | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win
Copy the PR-specific Codex output.
When
PR_NUMis set,Run Codexwritescodex-output-${PR_NUM}.md. This condition checks onlycodex-output.md, so the error-diagnostics artifact omits the output for every PR-numbered Codex failure. Iterate overcodex-output*.mdor derive the same filename used byOUTPUT_FILE.Proposed fix
📝 Committable suggestion
🤖 Prompt for AI Agents