Skip to content

docs: clarify development setup and package-source checks#1101

Open
JMartinezRuiz wants to merge 2 commits intoCoplayDev:betafrom
JMartinezRuiz:docs/dev-package-source-guidance
Open

docs: clarify development setup and package-source checks#1101
JMartinezRuiz wants to merge 2 commits intoCoplayDev:betafrom
JMartinezRuiz:docs/dev-package-source-guidance

Conversation

@JMartinezRuiz
Copy link
Copy Markdown

@JMartinezRuiz JMartinezRuiz commented May 4, 2026

Description

Clarifies contributor docs for local server/package work and for reproducing Unity package-source issues.

Type of Change

Documentation update.

Changes Made

  • Add a short repo map to the development guide.
  • Document the local server setup and common Python test commands.
  • Explain when to check Packages/packages-lock.json, since Unity may resolve a Git package to a specific commit even when manifest.json uses a branch name.
  • Add notes for local Unity package work, tool/resource changes, compatibility checks, and common development failures.
  • Update the PR template to ask for Unity version, package source, resolved commit hash from Packages/packages-lock.json, and the relevant test coverage.
  • Replace the stale tools/UPDATE_DOCS.md reference with manual review wording; the repo currently has tools/UPDATE_DOCS_PROMPT.md.

Compatibility / Package Source

  • Unity version(s) tested: Not applicable; documentation/template-only change.
  • Package source used: local checkout of CoplayDev/unity-mcp#beta.
  • Resolved commit hash from Packages/packages-lock.json (if using a Git package URL): Not applicable.

Testing/Screenshots/Recordings

Runtime/package tests were not run because this only changes contributor documentation and the PR template.

Validation performed:

  • git diff --check

Documentation Updates

  • No tools or resources were added, removed, or modified.
  • Developer docs and the PR template were updated manually.

Related Issues

None

Additional Notes

This intentionally leaves workflow changes out of scope; the PR only updates contributor-facing documentation and the PR template.

Summary by CodeRabbit

  • Documentation
    • Enhanced developer contribution guidelines with detailed PR requirements, local development setup instructions, tool development workflows, and testing procedures.
    • Added troubleshooting checklist addressing common development challenges.
    • Updated pull request template with structured change-type checklists and package compatibility tracking.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 4, 2026

📝 Walkthrough

Walkthrough

Updates to the repository's developer-facing materials: the GitHub PR template and the developer README. The PR template gains structured checklists (including package/source fields) and revised testing/documentation prompts. The README expands local setup, package-source guidance, tool/resource authoring, testing examples, compatibility notes, and troubleshooting steps.

Changes

Developer docs and PR template

Layer / File(s) Summary
PR Template Structure
.github/pull_request_template.md
Converted "Type of Change" into checkbox checklist; added "Compatibility / Package Source" checklist for Unity version(s), package source, and optional resolved lockfile commit; replaced testing and documentation checklist items with structured checkboxes and a "manual review of the generated changes" instruction.
Contributing Rules & Bug-fix Metadata
docs/development/README-DEV.md (lines 10–23)
Clarified PR scope rules; added required bug-fix metadata (tested Unity versions, package source, lockfile commit hash for Git URLs, commands/tests); discouraged mixing release/version bumps with feature/bug PRs.
Local Development Setup
docs/development/README-DEV.md (lines 32–46)
Added CI-aligned Python server setup: uv sync, editable dev install, and pytest invocation examples (verbosity/traceback flags).
Package Source Guidance
docs/development/README-DEV.md (lines 69–85)
Recommend using "Local workspace" for package testing; warn against patching Unity's package cache; add lockfile/manifest debugging tips and example packages-lock.json Git-resolution entry.
Tools & Resources Authoring
docs/development/README-DEV.md (lines 86–115)
New "Adding or Changing Tools and Resources" section describing C# vs Python split, Unity decorators and server registration decorators, long-running/non-blocking tool guidance, current server tool groups, group enabling behavior, and required docs/metadata update workflow (tools/UPDATE_DOCS_PROMPT.md).
Tool Selection, Testing & Troubleshooting
docs/development/README-DEV.md (lines 116–241)
Refined meta-tool/group naming; expanded Python test examples with narrower pytest runs; clarified Unity C# test project's import/compile purpose; added "Compatibility Notes" and extended troubleshooting checklist (stale Git packages, Safe Mode after package-source changes, server-change pickup, manage_tools(action="sync") for tool visibility, and mcpforunity://instances for active editor detection).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related PRs

  • CoplayDev/unity-mcp#209: Related developer docs and tooling changes (mcp_source.py utility, README guidance) and overlaps in developer workflow updates.

Poem

🐰 Checklists lined up, and guides all in view,
I hop through the docs to show what is new,
From setup to tools, tests tidy and bright,
Developers leap—PRs now feel light! 🥕✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title directly describes the main changes: clarifying development setup and adding package-source guidance to documentation and PR template.
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.
Description check ✅ Passed The PR description is comprehensive and well-structured, matching the required template with all major sections completed including Description, Type of Change, Changes Made, Testing/Screenshots/Recordings, Documentation Updates, Related Issues, and Additional Notes.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Tip

💬 Introducing Slack Agent: The best way for teams to turn conversations into code.

Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.

  • Generate code and open pull requests
  • Plan features and break down work
  • Investigate incidents and troubleshoot customer tickets together
  • Automate recurring tasks and respond to alerts with triggers
  • Summarize progress and report instantly

Built for teams:

  • Shared memory across your entire org—no repeating context
  • Per-thread sandboxes to safely plan and execute work
  • Governance built-in—scoped access, auditability, and budget controls

One agent for your entire SDLC. Right inside Slack.

👉 Get started


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.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
.github/pull_request_template.md (1)

20-28: ⚡ Quick win

Tighten checklist wording for traceability.

At Line 20 and Line 28, making the source of truth explicit and requiring a brief N/A rationale will reduce review back-and-forth.

Suggested wording update
- - Resolved package hash, if using a Git package URL:
+ - Resolved commit hash from `Packages/packages-lock.json` (if using a Git package URL):

- - [ ] Not applicable
+ - [ ] Not applicable (explain why in Additional Notes)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/pull_request_template.md around lines 20 - 28, Update the pull
request checklist wording to make the source-of-truth explicit and require a
brief rationale when marking items not applicable: change the "Resolved package
hash, if using a Git package URL:" line to explicitly ask for the exact
commit/tag/hash used (e.g., "Resolved package hash (if using a Git package URL):
specify commit/tag/hash"), and change the "Not applicable" checkbox to "Not
applicable — provide brief reason" (or similar) so reviewers must include a
short N/A rationale for any skipped checks; apply these text edits in the
checklist section that contains the Python/Unity test and package checks.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In @.github/pull_request_template.md:
- Around line 20-28: Update the pull request checklist wording to make the
source-of-truth explicit and require a brief rationale when marking items not
applicable: change the "Resolved package hash, if using a Git package URL:" line
to explicitly ask for the exact commit/tag/hash used (e.g., "Resolved package
hash (if using a Git package URL): specify commit/tag/hash"), and change the
"Not applicable" checkbox to "Not applicable — provide brief reason" (or
similar) so reviewers must include a short N/A rationale for any skipped checks;
apply these text edits in the checklist section that contains the Python/Unity
test and package checks.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: bf568423-d281-4605-9d9b-1d00953bfdb0

📥 Commits

Reviewing files that changed from the base of the PR and between 37ef016 and 800b30b.

📒 Files selected for processing (2)
  • .github/pull_request_template.md
  • docs/development/README-DEV.md

@dsarno dsarno added the safe-to-test Triggers CI checks label May 5, 2026
Copy link
Copy Markdown
Author

Updated the PR template wording based on the review suggestion: the package source field now points to Packages/packages-lock.json, and the Not applicable test option asks for a brief reason. Keeping the PR documentation-only.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

safe-to-test Triggers CI checks

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants