2.4 KiB
2.4 KiB
id, title, status, wave, depends_on, plan, spec
| id | title | status | wave | depends_on | plan | spec | |
|---|---|---|---|---|---|---|---|
| 12-registration-persistence | Registration persistence | done | 1 |
|
plan.md | ../../specs/integrations/github-authentication.md |
Task 12: Registration Persistence
Acceptance
- The unpublished singleton tables are replaced by the plural registration, workspace-bound flow,
registration FK, and composite delivery schema from the spec without changing released
legacy_sharedmigration behavior. - Managed/imported registrations use independent encrypted generation bundles; the unpublished App environment configuration, bindings, source resolver, and compatibility behavior are removed.
- Delete/reference constraints, compensation, restart reload metadata, workspace copy/delete, and personal generation invalidation have focused real-database tests.
Verification
rtk go test ./internal/github -run 'Test.*(Registration|WorkspaceConnection|PersonalConnection|Legacy)'
test -z "$(rg -l 'KANDEV_GITHUB_APP' internal/common/config internal/github || true)"
Run from apps/backend.
Files Likely Touched
apps/backend/internal/github/models.goapps/backend/internal/github/store.goapps/backend/internal/github/deployment_app_store.go(rename to registration-oriented name)apps/backend/internal/github/deployment_app_store_test.go(rename with production file)apps/backend/internal/github/store_connections.goapps/backend/internal/github/store_connections_test.goapps/backend/internal/github/personal_connection_repository.goapps/backend/internal/github/personal_connection_repository_test.goapps/backend/internal/github/deployment_app_config.go(remove/replace with catalog-only resolver)apps/backend/internal/github/deployment_app_config_test.go(remove/replace)apps/backend/internal/common/config/config.goapps/backend/internal/common/config/config_test.go
Dependencies
Task 11.
Inputs
- Spec: Data Model, Persistence Guarantees, and removal of unpublished App configuration in What.
- ADR:
docs/decisions/2026-07-21-workspace-selectable-github-app-registrations.md. - Preserve existing encrypted secret-store compensation patterns and released legacy seeding.
Output Contract
Report schema/repository contract, migration assumptions, tests run, files touched, blockers/risks,
and update this task plus plan.md to done.