Skip to content

ci: architecture-guard .rs filter + drop stale fuzz target#85

Merged
EffortlessSteven merged 2 commits into
mainfrom
release/arch-guard-rs-only
Apr 15, 2026
Merged

ci: architecture-guard .rs filter + drop stale fuzz target#85
EffortlessSteven merged 2 commits into
mainfrom
release/arch-guard-rs-only

Conversation

@EffortlessSteven

@EffortlessSteven EffortlessSteven commented Apr 15, 2026

Copy link
Copy Markdown
Member

Summary

Two latent CI hygiene issues that would keep main red or fail post-launch:

1. architecture-guard false positive on CLAUDE.md

The job uses grep -rE to assert lower layers don't import upward. Without --include='*.rs', grep also scans the per-layer CLAUDE.md docs — which list the forbidden import patterns (use crate::engine::..., etc.) as examples of what NOT to do. That's enough to flip the guard red on every push.

Fix: add --include='*.rs' to each of the four layer greps (ops, runtime, state, plan).

2. Nightly fuzz.yml still lists deleted policy_effects target

Same class of stale reference as the PR Fuzz Smoke lane fixed in #83: policy_effects was deleted when shipper-policy was absorbed into shipper::runtime::policy (commit 54dbadf). The nightly fuzz matrix still references it and would fail every scheduled run at 3 AM UTC.

Verification

Per-layer local greps on main with the new filter:

Layer Pattern Result
ops use crate::(engine|plan|state|runtime):: clean
runtime use crate::(engine|plan|state):: clean
state use crate::(engine|plan):: clean
plan use crate::engine:: clean

Test plan

  • architecture-guard / forbid upward layer imports green on this PR
  • Next scheduled Fuzz workflow run doesn't fail on missing policy_effects

The architecture-guard job uses grep -rE to assert that lower layers
don't import upward. Without --include='*.rs', grep also scans the
per-layer CLAUDE.md files — which, for documentation purposes, explicitly
list the forbidden import patterns ('use crate::engine::...' etc.) as
examples of what NOT to do.

That's enough to flip the guard red on every push to main, even though
no .rs file actually violates the rule. Filter the grep to .rs files for
each of the four layer checks (ops, runtime, state, plan).

Verified locally that all four per-layer greps report clean on main.
@gemini-code-assist

Copy link
Copy Markdown

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@coderabbitai

coderabbitai Bot commented Apr 15, 2026

Copy link
Copy Markdown

Warning

Rate limit exceeded

@EffortlessSteven has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 12 minutes and 12 seconds before requesting another review.

Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 12 minutes and 12 seconds.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 281335f5-430a-482c-91d2-ce03343dc364

📥 Commits

Reviewing files that changed from the base of the PR and between dd1a1b9 and 1da7580.

📒 Files selected for processing (2)
  • .github/workflows/architecture-guard.yml
  • .github/workflows/fuzz.yml
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch release/arch-guard-rs-only

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Same class of stale reference as the PR Fuzz Smoke lane (#83): the
policy_effects fuzz target was deleted when shipper-policy was absorbed
into shipper::runtime::policy (commit 54dbadf), but the nightly fuzz.yml
matrix still lists it. Would fail every scheduled nightly run at 3 AM UTC.
@EffortlessSteven EffortlessSteven changed the title ci: architecture-guard should only scan .rs files ci: architecture-guard .rs filter + drop stale fuzz target Apr 15, 2026
@EffortlessSteven EffortlessSteven merged commit ea75b53 into main Apr 15, 2026
11 of 14 checks passed
@EffortlessSteven EffortlessSteven deleted the release/arch-guard-rs-only branch April 15, 2026 22:45
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