Add CI/CD workflows for release and pull request testing#1
Merged
IvanMurzak merged 12 commits intomainfrom Jan 17, 2026
Merged
Conversation
…ol execution logic
Updated test cases to pass null as the value when creating SerializedMember diffs for ParticleSystem modules. This avoids serializing all module properties and ensures only the intended properties are modified in tests.
Reordered and added tools in AI-Game-Developer-Config.json, including moving particlesystem tools and adding assets-find-built-in. Updated keepConnected to false. Adjusted project order in Unity-Package.slnx and added Assembly-CSharp.csproj.
Bump com.ivanmurzak.unity.mcp dependency from 0.39.0 to 0.39.2 in manifest and lock files. Remove several unused projects from Unity-Package.slnx to streamline the solution.
There was a problem hiding this comment.
Pull request overview
This pull request introduces CI/CD automation and comprehensive test coverage for the Unity AI ParticleSystem package. The PR adds GitHub Actions workflows for automated testing across multiple Unity versions (2022.3.62f3, 2023.2.22f1, 6000.3.1f1) in editmode, playmode, and standalone configurations, plus automated release management.
Changes:
- Added GitHub Actions workflows for pull request testing and automated releases with multi-version Unity testing
- Created comprehensive test suites for ParticleSystem Get and Modify tools with both direct API and JSON API test coverage
- Updated MCP dependency from version 0.39.0 to 0.39.2 and reorganized tool configuration
- Replaced template documentation with project-specific README content including installation instructions and stability badges
Reviewed changes
Copilot reviewed 13 out of 18 changed files in this pull request and generated 12 comments.
Show a summary per file
| File | Description |
|---|---|
| .github/workflows/release.yml | Implements complete release pipeline with version checking, installer building, comprehensive Unity testing across 3 versions and 3 test modes, and automated GitHub release creation |
| .github/workflows/test_pull_request.yml | Defines PR validation workflow that runs all Unity tests across multiple versions and modes |
| Unity-Package/Assets/root/Tests/Editor/TestToolParticleSystemModify.cs | Adds 17 comprehensive test cases for the ParticleSystem Modify tool covering all major modules (main, emission, shape, noise, trails) with both direct API and JSON API testing |
| Unity-Package/Assets/root/Tests/Editor/TestToolParticleSystemGet.cs | Adds 14 test cases for the ParticleSystem Get tool validating retrieval of individual modules and complete system state |
| Unity-Package/Assets/root/Tests/Editor/BaseTest.cs | Creates test base class with helper methods for running MCP tools and creating test ParticleSystem GameObjects |
| Unity-Package/Assets/root/Tests/Editor/DemoTest.cs | Removes placeholder demo test that is no longer needed |
| Unity-Package/Assets/root/Tests/Editor/*.meta | Adds Unity metadata files for new test files |
| Unity-Package/Assets/root/README.md | Replaces template content with project-specific documentation including feature list, installation options, and stability status table |
| Unity-Package/Assets/Resources/AI-Game-Developer-Config.json | Updates tool ordering by moving particlesystem tools to end of list and adds assets-find-built-in tool, changes keepConnected to false |
| Unity-Package/Packages/manifest.json | Updates com.ivanmurzak.unity.mcp dependency from 0.39.0 to 0.39.2 |
| Unity-Package/Packages/packages-lock.json | Updates lock file to reflect dependency version change |
| README.md | Updates root README to match Unity package README content |
| docs/img/particle-system-glitch.gif | Adds promotional animation for documentation |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…ckage description and keywords
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request updates the project to rebrand it as "Unity AI Particle System" and improves accuracy and consistency for tool naming and configuration. It also updates documentation to focus on the Particle System features, and makes minor configuration changes for tool enablement and connection behavior.
Key changes:
Documentation and Branding Updates
README.mdto rebrand the project as "Unity AI Particle System," with new badges, feature descriptions, installation instructions, and a detailed list of supported ParticleSystem modules. The documentation now targets end-users rather than package developers.Tool Naming Consistency and Configuration
Tool_ParticleSystemclasses fromparticlesystem-getandparticlesystem-modifytoparticle-system-getandparticle-system-modifyto ensure consistency across code and configuration. (ParticleSystem.Get.cs,ParticleSystem.Modify.cs) [1] [2]AI-Game-Developer-Config.jsonto use the new tool names (particle-system-get,particle-system-modify) and removed the old ones. [1] [2]Tool Enablement and Configuration
assets-find-built-ininAI-Game-Developer-Config.json.keepConnectedproperty inAI-Game-Developer-Config.jsonfromtruetofalse, altering the default connection behavior.