On reviewing the Github Action workflows, we found that one was too complicated for maintainability. Its complexity constrains the ability to reason and debug, and this is limiting our ability to ensure security.
The workflow needs to be refactored. In doing this it will be broken up into multiple files.
Each one of those files must follow best practices for security.
Proposed differences
Break up each of the larger units into a separate file
add a new secret github_token_rw that has write priveledges
make the existing github_token a read only token
change the pull_request_target trigger to pull_request.
Description
On reviewing the Github Action workflows, we found that one was too complicated for maintainability. Its complexity constrains the ability to reason and debug, and this is limiting our ability to ensure security.
The workflow needs to be refactored. In doing this it will be broken up into multiple files.
Each one of those files must follow best practices for security.
Proposed differences
(See also https://docs.github.com/en/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token, where there is a described way of changing to the restricted mode for the token)
Additional context
Perceived complexity
The technical obstacles are roughly at medium difficulty. They entail:
Proposed bounty reward
$1000