You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Repositories that use the GitHub App permission model can run
Process-PSModule without granting unneeded repository, pull-request, or
status write access. GitHub Pages deployments continue to use the
caller's `github.token` with `contents: read`, `pages: write`, and
`id-token: write`.
## Fixed: Reusable workflow permission escalation
The reusable workflow no longer requests permissions that GitHub App
installation tokens already provide for release and pull-request
operations. Update caller workflows to use the narrowed permission block
documented for `v8`.
```yaml
permissions:
contents: read
pages: write
id-token: write
```
---
<details>
<summary>Technical details</summary>
- Removed legacy `github.token` write requests from the reusable
workflow and nested jobs; scoped GitHub App tokens retain repository and
pull-request write access.
- Updated repository workflow tests and caller documentation to use the
`v8` permission contract.
| Changed surface | Standards checked | Framework docs checked | Result
|
| --- | --- | --- | --- |
| `.github/workflows/**` | GitHub Actions | Reusable workflow contract |
Fixed in this PR |
| `docs/content/**` | Markdown, Natural Language | Workflow setup guides
| Fixed in this PR |
</details>
<details>
<summary>Relevant issues (or links)</summary>
### Related work
- References #510
</details>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Every permission in that block is required. A push to `main` publishes a stable release after the full pipeline passes;
73
+
Every permission in that block is required. GitHub App installation tokens perform repository writes. A push to `main` publishes a stable release after the full pipeline passes;
76
74
the pull-request trigger handles CI, prereleases, and prerelease cleanup. See
77
75
[Workflow inputs](../reference/workflow-inputs.md) for what each permission is used for, and
78
76
[Calling the workflow](../guides/calling-the-workflow.md) for passing test secrets and variables.
0 commit comments