From 780eb83532b247e10e0e09dea4a13c54340a803a Mon Sep 17 00:00:00 2001 From: jcant0n Date: Mon, 3 Aug 2026 11:22:47 +0200 Subject: [PATCH] feat: gate agent pull requests on the public API delta --- .github/workflows/api-gate.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/workflows/api-gate.yml diff --git a/.github/workflows/api-gate.yml b/.github/workflows/api-gate.yml new file mode 100644 index 0000000..8fd19cf --- /dev/null +++ b/.github/workflows/api-gate.yml @@ -0,0 +1,25 @@ +# Measures what a pull request does to the public API surface, and merges the +# binding updater's work when nothing anyone depends on has moved. +# +# The gate is the API delta rather than the size of the diff, because the two are +# uncorrelated here: the generator is a multiplier. A 41-line change to +# OpenGLSpecification.cs once produced 12,368 insertions and renamed public types. +# +# This package ships no native libraries, so there is no header-to-binary +# coherence to check -- the managed surface is the whole contract. + +name: API Gate + +on: + pull_request: + branches: [ "main" ] + +jobs: + api: + uses: EvergineTeam/Evergine.Bindings/.github/workflows/binding-api-gate.yml@v1 + with: + binding-project: "RenderDocGen/Evergine.Bindings.RenderDoc/Evergine.Bindings.RenderDoc.csproj" + auto-merge: true + app-client-id: ${{ vars.APP_CLIENT_ID }} + secrets: + APP_PRIVATE_KEY: ${{ secrets.APP_PRIVATE_KEY }}