Skip to content

ci: ai-code-review: preserve ci/ across the source move - #498

Open
theihor wants to merge 1 commit into
masterfrom
ai-review-mcp-fix
Open

ci: ai-code-review: preserve ci/ across the source move#498
theihor wants to merge 1 commit into
masterfrom
ai-review-mcp-fix

Conversation

@theihor

@theihor theihor commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

The AI review config (ci/claude/) lives on every *_base branch, so it is present in the pull_request checkout that actions/checkout uses by default (the merge ref, head merged into base). But "Move linux source in place" ran rm -rf .git .github ci and then overlaid the PR head tree fetched separately by get-linux-source (head.sha only, not the merge). Series whose head does not carry ci/ -- built on a base without the injection, or manual branches -- thus lost the config, and the claude-code-action step failed with:

Error: Invalid MCP configuration:
MCP config file not found: .../ci/claude/mcp.json

The same post-move loss would break ci/claude/post-pr-comment.js, which the "Comment on PR" step requires later.

Keep the checked-out ci/ across the move (drop only the head tree's own ci/ to avoid a collision) so the config is available regardless of whether the head carries it. No config duplication or inlining needed; ci/claude/*.json stays the single source of truth, consistent with ai-agent.yml, whose move does not delete ci/ and was never affected.

The AI review config (ci/claude/) lives on every *_base branch, so it is
present in the pull_request checkout that actions/checkout uses by
default (the merge ref, head merged into base). But "Move linux source
in place" ran `rm -rf .git .github ci` and then overlaid the PR *head*
tree fetched separately by get-linux-source (head.sha only, not the
merge). Series whose head does not carry ci/ -- built on a base without
the injection, or manual branches -- thus lost the config, and the
claude-code-action step failed with:

  Error: Invalid MCP configuration:
  MCP config file not found: .../ci/claude/mcp.json

The same post-move loss would break ci/claude/post-pr-comment.js, which
the "Comment on PR" step requires later.

Keep the checked-out ci/ across the move (drop only the head tree's own
ci/ to avoid a collision) so the config is available regardless of
whether the head carries it. No config duplication or inlining needed;
ci/claude/*.json stays the single source of truth, consistent with
ai-agent.yml, whose move does not delete ci/ and was never affected.

Signed-off-by: Ihor Solodrai <ihor.solodrai@linux.dev>
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