generated from actions/typescript-action
-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Following up on #149
Based on the research findings, this proposal outlines the implementation approach for GitHub App authentication to achieve branded comments.
Problem
Code PushUp users receive generic github-actions[bot]
comments that don't reflect our professional identity. This limits the brand's visibility and credibility in the developer ecosystem.

Solution
GitHub App installation authentication with an optional marketplace listing
Why GitHub App installation authentication?
- Replaces generic
github-actions[bot]
withcode-pushup-staging[bot]
(orcode-pushup[bot]
) for clear brand attribution - Provides more precise permission control
- Lays the foundation for future advanced integrations and features
- Is an industry standard; many successful tools consistently require GitHub Apps installation
- Requires zero breaking changes
User experience flow
- Without app: User gets standard
github-actions[bot]
comments (current behavior) - With app: User gets branded
code-pushup-staging[bot]
comments - Automatic detection: No user configuration needed after app installation
Implementation details
Users must install the Code PushUp GitHub App on their repository or organization to receive branded comments. The GitHub Action cannot authenticate with an app that's only installed on the Code PushUp organization.
Technical requirements
- GitHub App ID and private key stored as repository secrets
- Permissions:
pull-requests: write
(for posting comments) - The user must grant app access to target repositories during installation
Authentication process
- User installs the Code PushUp GitHub App on their repository/organization
- Action detects an app installation on the current repository during workflow execution
- Action uses the
@octokit/auth-app
library to authenticate as the GitHub App and generate installation tokens - Action uses an installation token for API calls instead of the default
github.token
- Comments appear as an app identity instead of a generic bot
- Graceful fallback to the standard token when the app is not installed
Implementation scope
- An authentication system that can detect when the Code PushUp GitHub App is installed on a user's repository
- Token generation logic that creates GitHub App installation tokens for API calls
- Fallback mechanism that uses a standard GitHub token when the app is not installed
- Professional GitHub App page with a meaningful description (the current app has no user-facing documentation)
- Documentation updates increasing app visibility (currently, no repositories mention the app)
Discussion points
- App identity: Should we use
code-pushup-staging
or create a more generalcode-pushup
app? - Permission compatibility: Does the current app have sufficient permissions?
- Marketplace priority: Should we create a GitHub Marketplace listing to help users discover the app (requirements for listing an app)?
matejchalk
Metadata
Metadata
Assignees
Labels
No labels