Repository navigation
Feature/add GitHub app integration - #29
Merged
Merged
Conversation
- Introduced new UI components in `ui.tsx` for buttons, forms, modals, and other elements to enhance user interaction. - Updated `vite.config.ts` to expose the `GitHubAppCallbackPage` component. - Modified `index.ts` to include new properties in the `GitHubIntegration` interface for app connection details. - Bumped plugin version to 0.6.0 and added new permissions for managing GitHub Apps in `plugin.json`. - Implemented new API routes for GitHub App management in `plugin.json`. - Updated documentation in `SKILL.md` to reflect changes in GitHub integration options, including support for GitHub Apps.
…ating event handling
…ncing local URL checks, and improving setup code handling
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Turns the GitHub plugin from a per-project integration (personal access tokens, a project settings tab, its own PR/branch tables) into the GitHub provider for Paca's platform-neutral Git integration (
gitprovider.v1). Paca core now owns repositories, links, identities, change requests, triggers and audit; this plugin only adapts GitHub to the provider SPI. Connections are GitHub Apps only.Requires core v0.20.0 and Go SDK v0.4.0. Plugin version 0.5.0.
What changed
Added: the provider (
backend/spi_*.go,github.go,appjwt.go)ENCRYPTION_KEY).readorwrite. A requested lifetime is reported asExpiresAt(GitHub tokens last an hour and can't be shortened).branches)./_git/<op>operations. It passes the SDK's conformance suite against a fake GitHub.Removed (superseded by core)
Migration
0002_git_provider.sql(one migration for the whole PR) creates the provider's own tables (github_apps,github_app_installations,github_manifest_sessions) and drops the previous release's project-bound tables. Safe to re-run.Manifest:
capabilities: ["git-provider"], no routes/frontend, config keys limited toENCRYPTION_KEY.Merge with master
Master's last change (#27, drop unhandled webhook events before the repository lookup) fixed the old per-repository webhook receiver (
webhook.go,integration.go), which this branch deletes. The conflicts were resolved by keeping the deletions and this branch's README; nothing from #27 is lost, since deliveries now go through the provider'sverify_and_parse_webhook, which verifies the signature and maps only the events Paca uses.Testing
Includes the SDK conformance suite, a fake-GitHub provider test set and migration checks. The migration was also run twice against Postgres 16 with legacy data seeded.
Notes for review
git-providercapability and/git/*APIs).