feat(cli): unified-machine-auth f2 — godot-cli adopts cli-core Machin… #837
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
| name: CI | |
| on: | |
| push: | |
| branches: ["**"] | |
| pull_request: | |
| jobs: | |
| # Fast Runtime/Editor boundary guard — no .NET build, runs in milliseconds. Fails the PR | |
| # if any addons/godot_mcp/Runtime/**/*.cs file references an editor-only Godot API | |
| # (EditorInterface/EditorPlugin/EditorFileSystem/EditorScript) in un-guarded shipping code. | |
| # See scripts/check-runtime-boundary.py and docs/ARCHITECTURE.md. | |
| runtime-boundary: | |
| name: runtime/editor boundary | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| - name: Setup Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.x" | |
| - name: Check Runtime/ does not leak editor-only APIs | |
| run: python scripts/check-runtime-boundary.py --verbose | |
| build: | |
| name: dotnet build (.NET 8) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| - name: Setup .NET 8 | |
| uses: actions/setup-dotnet@v5 | |
| with: | |
| dotnet-version: "8.0.x" | |
| - name: Restore | |
| run: dotnet restore Godot-MCP.sln | |
| - name: Build | |
| run: dotnet build Godot-MCP.sln --configuration Debug --no-restore | |
| - name: Test | |
| run: dotnet test Godot-MCP.Tests/Godot-MCP.Tests.csproj --configuration Debug --no-build --verbosity normal --collect:"XPlat Code Coverage" --results-directory TestResults | |
| # Coverage REPORTING only — no failing threshold. Publishes the cobertura report | |
| # produced by coverlet so progress is measurable; the gate never turns red on low coverage. | |
| - name: Upload .NET coverage report | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: dotnet-coverage | |
| path: TestResults/**/coverage.cobertura.xml | |
| if-no-files-found: warn | |
| retention-days: 7 |