Skip to content

chore: add CodeRabbit config - #365

Merged
tier940 merged 2 commits into
masterfrom
chore/coderabbit
Aug 6, 2026
Merged

chore: add CodeRabbit config#365
tier940 merged 2 commits into
masterfrom
chore/coderabbit

Conversation

@tier940

@tier940 tier940 commented Aug 6, 2026

Copy link
Copy Markdown
Member

Successor to the removed Gemini Code Assist / Claude PR review setups.

knowledge_base.mcp.usage: enabled

The default auto disables MCP for public repositories. Since this repo is public, leaving it at the default would silently stop the DeepWiki MCP server from being used as review context — so it has to be set explicitly.

reviews.path_instructions

This repo is a GregTech CE: Unofficial add-on (hard dependency gregtech:gregtech:2.8.10-beta), and review quality suffers when the reviewer has no GTCEu context. The instructions tell it to:

  • verify GTCEu API/registry usage against DeepWiki (GregTechCEu/GregTech)
  • respect the 1.12.2 / Java 8 platform (no modern Java or modern Minecraft APIs)
  • check mixin targets in mixins.gtexpert.*.json actually exist upstream
  • flag side-boundary violations that would crash a dedicated server
  • confirm optional-mod integrations are properly gated

Verifying DeepWiki

After CodeRabbit reviews this PR, ask it a GTCEu-specific question via @coderabbitai and check whether the answer reflects the actual GregTechCEu/GregTech implementation. If it does not, either DeepWiki has not indexed that repo yet or usage: enabled has not taken effect.

Summary by CodeRabbit

  • Chores
    • Added project review configuration to provide richer repository context.
    • Added guidance for validating Java compatibility, integrations, mixins, and client/server boundaries.
    • Documented build configuration safeguards.

Successor to the removed Gemini Code Assist / Claude PR review setups.

- knowledge_base.mcp.usage: enabled — 'auto' disables MCP for public
  repositories, which would prevent the DeepWiki MCP server from being
  used as review context.
- reviews.path_instructions: give the reviewer the GTCEu context it needs.
  This repo is a GregTech CE: Unofficial add-on, and reviews are imprecise
  without knowledge of the GTCEu codebase, the 1.12.2/Java 8 platform
  constraints, and the mixin targets.
@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@tier940, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 4 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 4b887180-3871-4b47-aa5f-6eafe53e8427

📥 Commits

Reviewing files that changed from the base of the PR and between 0c6decc and 041241d.

📒 Files selected for processing (1)
  • .coderabbit.yaml
📝 Walkthrough

Walkthrough

Added .coderabbit.yaml with MCP settings and Java-specific review instructions for GTCEu API validation, Java 8 compatibility, side boundaries, mixins, optional integrations, and generated build files.

Changes

Review configuration

Layer / File(s) Summary
CodeRabbit review rules
.coderabbit.yaml
Enables MCP usage and defines review guidance for GTCEu APIs, platform compatibility, side safety, mixin registration, optional integrations, and generated build files.

Estimated code review effort: 2 (Simple) | ~10 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely identifies the main change: adding the CodeRabbit configuration.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/coderabbit

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

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (2)
.coderabbit.yaml (2)

1-5: 📐 Maintainability & Code Quality | 🔵 Trivial

Verify that DeepWiki is connected outside this file.

usage: enabled controls use of connected MCP servers. It does not register an MCP server. Confirm that the DeepWiki integration is configured in CodeRabbit before relying on this setting. Otherwise, this setting does not make DeepWiki available. (docs.coderabbit.ai)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.coderabbit.yaml around lines 1 - 5, Verify the DeepWiki MCP server is
separately registered and connected in the CodeRabbit integration configuration;
keep knowledge_base.mcp.usage: enabled only for enabling use of
already-connected MCP servers, and do not treat this setting as the server
registration.

Source: MCP tools


15-17: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Require an independent upstream check for DeepWiki claims.

State that DeepWiki is a navigation aid, not the authority. Require each API, registry, helper-class, field, and method-signature claim to be checked against the pinned gregtech:gregtech:2.8.10-beta artifact or its matching upstream GregTechCEu implementation.

The current wording asks the reviewer to use DeepWiki and confirm the API. It does not define an independent source for confirming the response.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.coderabbit.yaml around lines 15 - 17, Update the GTCEu context guidance so
DeepWiki is explicitly treated only as a navigation aid, not the authority.
Require every API, registry, helper-class, field, and method-signature claim to
be independently verified against the pinned gregtech:gregtech:2.8.10-beta
artifact or its matching upstream GregTechCEu implementation.

Source: MCP tools

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.coderabbit.yaml:
- Around line 8-10: Update the path_instructions configuration by adding
dedicated entries for src/main/resources/mixins.gtexpert.*.json and
build.gradle, moving the checks currently scoped to src/main/java/**/*.java into
the appropriate non-Java entries so CodeRabbit applies them to those files.

---

Nitpick comments:
In @.coderabbit.yaml:
- Around line 1-5: Verify the DeepWiki MCP server is separately registered and
connected in the CodeRabbit integration configuration; keep
knowledge_base.mcp.usage: enabled only for enabling use of already-connected MCP
servers, and do not treat this setting as the server registration.
- Around line 15-17: Update the GTCEu context guidance so DeepWiki is explicitly
treated only as a navigation aid, not the authority. Require every API,
registry, helper-class, field, and method-signature claim to be independently
verified against the pinned gregtech:gregtech:2.8.10-beta artifact or its
matching upstream GregTechCEu implementation.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: b21e65e1-0e7f-43e8-8301-c24ef1998dc2

📥 Commits

Reviewing files that changed from the base of the PR and between 816887a and 0c6decc.

📒 Files selected for processing (1)
  • .coderabbit.yaml

Comment thread .coderabbit.yaml
Comment on lines +8 to +10
path_instructions:
- path: "src/main/java/**/*.java"
instructions: |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -eu
printf '%s\n' '--- .coderabbit.yaml ---'
cat -n .coderabbit.yaml
printf '%s\n' '--- related files ---'
git ls-files | rg '(^|/)(build\.gradle|buildscript\.properties|dependencies\.gradle|mixins\.gtexpert\..*\.json)$|(^|/)\.coderabbit\.yaml$'
printf '%s\n' '--- path instruction declarations ---'
rg -n -C 3 'path_instructions|src/main/java|src/main/resources|build\.gradle|mixins\.gtexpert' .coderabbit.yaml

Repository: GTModpackTeam/GTExpert-Core

Length of output: 4434


🌐 Web query:

CodeRabbit path_instructions configuration whether instructions apply only to files matched by path glob

💡 Result:

Yes, CodeRabbit path_instructions apply exclusively to files that match the specified path glob pattern [1][2][3]. When you define path_instructions in your.coderabbit.yaml configuration, CodeRabbit evaluates the files changed in a pull request against these glob patterns [2][3]. The associated instructions are then applied only to the files that match those patterns [1][3]. Key details regarding this behavior include: - Targeted Guidance: These instructions supplement your global review instructions [2][3]. If a file matches a path pattern, it receives both the global instructions and the specific path-based instructions [3]. - Multiple Matches: If a file matches multiple path glob patterns, it will receive the instructions from all applicable patterns [3]. - Not a Replacement: Path instructions are intended as a targeted supplement to CodeRabbit's built-in review logic, not a replacement for it [1]. - Configuration: You can configure these in your repository's.coderabbit.yaml file under the reviews.path_instructions key, using an array of objects that each contain a path and its associated instructions [1][2].

Citations:


Add matching path entries for non-Java checks.

The src/main/java/**/*.java entry does not apply to src/main/resources/mixins.gtexpert.*.json or build.gradle. Move their checks into dedicated path entries so CodeRabbit applies them when those files change.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.coderabbit.yaml around lines 8 - 10, Update the path_instructions
configuration by adding dedicated entries for
src/main/resources/mixins.gtexpert.*.json and build.gradle, moving the checks
currently scoped to src/main/java/**/*.java into the appropriate non-Java
entries so CodeRabbit applies them to those files.

@tier940

tier940 commented Aug 6, 2026

Copy link
Copy Markdown
Member Author

@coderabbitai This repo is a GregTech CE: Unofficial add-on, and I have just enabled MCP (knowledge_base.mcp.usage: enabled) with the DeepWiki MCP server connected, so that you can consult the upstream GregTechCEu/GregTech codebase during reviews.

Please confirm whether that is actually working, by answering a question that requires reading the upstream source rather than general knowledge:

In GregTech CE: Unofficial (GregTechCEu/GregTech, the 1.12.2 line this repo pins at gregtech:gregtech:2.8.10-beta), how does a mod register a custom MetaTileEntity? Please name the actual registry/API entry point and the real method signature, and say which upstream file you found it in.

Then please state explicitly:

  • whether you were able to consult DeepWiki / the upstream GregTechCEu/GregTech repository for this answer, or whether you answered from general knowledge only.

I need to know whether the DeepWiki integration is genuinely feeding you upstream context — a plausible-sounding answer from memory would not tell me that. If you could not reach it, please say so plainly.

@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown

Tip

For best results, initiate chat on the files or code changes.

🧩 Analysis chain

🔍 Additional research query:

`Using DeepWiki for the GitHub repository GregTechCEu/GregTech, inspect the 1.12.2 code corresponding to version 2.8.10-beta. How does an addon register a custom MetaTileEntity? Return:

  1. the concrete registry/API class or entry point;
  2. the exact Java method signature used to register it;
  3. the upstream repository-relative file path that declares the method;
  4. a concise source-based usage example, if the repository contains one.
    Do not answer from general knowledge. State any version/branch limitation.`

Length of output: 1700


@tier940 Yes. I was able to consult the connected DeepWiki integration for the upstream GregTechCEu/GregTech repository. This answer is based on that upstream-source query, not on general knowledge only.

An add-on registers a custom MetaTileEntity through MetaTileEntities.registerMetaTileEntity(...).

The upstream declaration is:

public static <T extends MetaTileEntity> `@NotNull` T registerMetaTileEntity(
    int id, `@NotNull` T mte
)

DeepWiki identified this declaration in:

src/main/java/gregtech/common/metatileentities/MetaTileEntities.java

The upstream registration code uses the API in MetaTileEntityRegistration.java, for example:

MetaTileEntities.STEAM_BOILER_COAL_BRONZE =
    MetaTileEntities.registerMetaTileEntity(
        1,
        new SteamCoalBoiler(gregtechId("steam_boiler_coal_bronze"), false)
    );

DeepWiki also reported that MetaTileEntities.init() invokes these registrations, and CoreModule.preInit() invokes MetaTileEntities.init().

One limitation remains. DeepWiki identified the indexed source as the Minecraft 1.12.2 code line, but it did not independently confirm that its index exactly matches the 2.8.10-beta tag.

You are interacting with an AI system.

GTECoreMod (IFMLLoadingPlugin) registers NAE2PatchTransformer, an
IClassTransformer that rewrites bytecode directly via the ASM tree API.
This is a different and riskier mechanism than the existing Mixin
guidance — a wrong field/method name fails silently or crashes at
class-load time instead of compile time. Call it out explicitly.
@tier940
tier940 merged commit d21271b into master Aug 6, 2026
2 checks passed
@tier940
tier940 deleted the chore/coderabbit branch August 6, 2026 05:56
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