Gate publishing on a smoke test, and listen to JoltPhysicsC #7
Workflow file for this run
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
| # Measures what a pull request does to the public API surface, and reports whether | |
| # anything a consumer could notice changed. | |
| # | |
| # auto-merge is on, and the reasoning is worth stating because the risk here is not the | |
| # usual one. The agent that opens these pull requests regenerates C# from a C header; it | |
| # does not write the C. So the failure it could introduce is a binding that disagrees with | |
| # the library, and that is what the gate measures: the API delta, plus every P/Invoke | |
| # resolving in all ten shipped libraries. | |
| # | |
| # What the gate cannot judge is whether the C wrapper itself is right, and that question | |
| # is answered upstream in JoltPhysicsC -- where a bump compiles on ten platforms and runs | |
| # eleven test suites before a release is cut. A wrapper defect is caught there, not here. | |
| name: api | |
| on: | |
| pull_request: | |
| branches: [main] | |
| permissions: | |
| contents: read | |
| pull-requests: write | |
| jobs: | |
| api: | |
| uses: EvergineTeam/Evergine.Bindings/.github/workflows/binding-api-gate.yml@v1 | |
| with: | |
| binding-project: "Evergine.Bindings.JoltPhysics/Evergine.Bindings.JoltPhysics.csproj" | |
| dotnet-version: "10.x" | |
| # Windows, same reason as CI and CD: the parse aborts on Linux, and a partial | |
| # surface compared against a full one reads as a large removal. | |
| runner-os: windows-latest | |
| # This package ships ten native libraries, and the agent that opens these pull | |
| # requests runs the generator, not the native build. Without this the coherence | |
| # check would run alongside the gate, go red, and the merge would proceed anyway. | |
| native-coherence: true | |
| auto-merge: true | |
| app-client-id: ${{ vars.APP_CLIENT_ID }} | |
| secrets: | |
| APP_PRIVATE_KEY: ${{ secrets.APP_PRIVATE_KEY }} |