Skip to content

ci: link check passes PRs with no Markdown links; agent-guard e2e waits for the guard notice - #1575

Merged
abrichr merged 1 commit into
mainfrom
fix/ci-link-check-and-guard-race
Oct 25, 2026
Merged

abrichr merged 1 commit into
mainfrom
fix/ci-link-check-and-guard-race

Conversation

@abrichr

@abrichr abrichr commented Oct 25, 2026

Copy link
Copy Markdown
Member

These two failures block unrelated PRs, #1530 among them.

  • Link check. A PR whose changed Markdown holds no links makes lychee fail with "No links were found", because lychee-action defaults to failIfEmpty: true. Main never hits it: a push to main checks every file. The fix is failIfEmpty: false on the PR job.
  • test_agent_guard_e2e (flow core critical) intermittently records screen_after == "error" instead of "blocked". It failed on benchmark: freeze the independent verification spec and fault suite #1530 and on Production configuration soak: verified items per operator-minute, before and after (evidence) #1513's branch, and main passed. A blocked save also fails the app's request, and the app's #save-error can show before the guard injects its notice; the simulated agent (benchmark/agent_guard/agent.py) stopped at the first one it saw. It now keeps looking for the guard notice until its 4 s deadline, and calls the save an error only if no notice came.

Not verified locally: the e2e can't run on this machine (an mcp version mismatch, call_tool() got an unexpected keyword argument 'validate_input'). The change is limited to the agent's observation loop. CI will exercise it.

🤖 Generated with Claude Code

…or the guard notice

Link check: a pull request whose changed Markdown holds no links made lychee
fail with "No links were found" (failIfEmpty defaults to true). Main never
hit it because pushes check every file.

Agent guard e2e: a blocked save also fails the app's request, and its error
could show before the guard's notice, so the simulated agent recorded
"error" instead of "blocked" (intermittent on CI). It now keeps looking
for the notice until its deadline before calling the save an error.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@abrichr

abrichr commented Oct 25, 2026

Copy link
Copy Markdown
Member Author

AI review (coordinator): approved. link-check: failIfEmpty false is correct (a PR whose changed Markdown has no links has nothing to check). agent_guard: the simulated agent keeps waiting for the guard notice until its deadline instead of reporting the app's save error first; fixes the race seen on #1530 and #1513. Benchmark harness only.

@abrichr
abrichr enabled auto-merge October 25, 2026 14:32
@abrichr
abrichr merged commit 24b3e78 into main Oct 25, 2026
39 checks passed
@abrichr
abrichr deleted the fix/ci-link-check-and-guard-race branch October 25, 2026 15:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant