Hi all,
I’ve run into a frustrating catch-22 when building a Forge app for Bitbucket that manages repository webhooks, and wanted to raise it here in case others are hitting the same wall.
The problem
When calling the Bitbucket REST API webhook endpoints (GET /repositories/{workspace}/{repo_slug}/hooks, POST .../hooks, DELETE .../hooks/{uid}), forge lint correctly (according to the documention provided here) reports that the following scopes are required:
read:webhook:bitbucketwrite:webhook:bitbucketdelete:webhook:bitbucket
However, when these scopes are added to manifest.yml, forge deploy rejects them outright:
Manifest validation failed: Some scopes defined are not supported: write:webhook:bitbucket, read:webhook:bitbucket, delete:webhook:bitbucket
So forge lint tells you to add scopes that forge deploy refuses to accept. The tooling is directly contradicting itself.
Steps to reproduce
- Create a Forge app targeting Bitbucket
- Call any of the
/repositories/{workspace}/{repo_slug}/hooksendpoints - Run
forge lint— it reportsread:webhook:bitbucket,write:webhook:bitbucket,delete:webhook:bitbucketas required - Add those scopes to
manifest.yml - Run
forge deploy— it fails with “Some scopes defined are not supported”
Expected behaviour
The webhook scopes (read:webhook:bitbucket, write:webhook:bitbucket, delete:webhook:bitbucket) should be valid, accepted scopes in the Forge manifest and consistent with what forge lint already expects.
Has anyone found a workaround, or is there a timeline for these scopes being added to the Forge manifest allowlist?
Thanks