Files
kandev/docs/plans/github-authentication/task-17-frontend-registration-client.md
T
2026-08-24 11:09:03 +00:00

57 lines
2.0 KiB
Markdown

---
id: "17-frontend-registration-client"
title: "Frontend registration client"
status: done
wave: 5
depends_on: ["16-workspace-app-lifecycle-api"]
plan: "plan.md"
spec: "../../specs/integrations/requirements/github-authentication.md"
---
# Task 17: Frontend Registration Client
## Acceptance
1. Frontend types/API/hooks expose workspace-keyed catalog, create/import/rename/delete/install,
status, and callback contracts with no singleton deployment types or fetches.
2. Workspace changes clear prior catalog/actor/health/form state before refetch.
3. The System GitHub App route/sidebar/page and deployment-only hook are removed without breaking
settings navigation.
## Verification
```bash
cd apps/web && rtk pnpm run typecheck
cd apps && rtk pnpm --filter @kandev/web test -- lib/api/domains/github-api.test.ts hooks/domains/github/use-github-status.test.tsx components/settings/settings-layout-client.test.tsx
```
## Files Likely Touched
- `apps/web/lib/types/github.ts`
- `apps/web/lib/api/domains/github-auth-api.ts`
- `apps/web/lib/api/domains/github-api.test.ts`
- `apps/web/hooks/domains/github/use-deployment-app-registration.ts` (remove/replace)
- `apps/web/hooks/domains/github/use-deployment-app-registration.test.tsx` (remove/replace)
- `apps/web/hooks/domains/github/use-github-status.ts`
- `apps/web/hooks/domains/github/use-github-status.test.tsx`
- `apps/web/lib/state/slices/github/types.ts`
- `apps/web/lib/state/slices/github/github-slice.ts`
- `apps/web/src/settings-routes.tsx`
- `apps/web/app/settings/system/github-app/page.tsx` (remove)
- `apps/web/components/app-sidebar/sections/settings/system-group.tsx`
## Dependencies
Task 16.
## Inputs
- Spec: registration catalog/workspace/personal API and UX state isolation.
- Task 16 response/error contracts.
- Follow `apps/web/AGENTS.md` and mobile-parity shared-logic rules.
## Output Contract
Report client/state contract, tests run, files touched, blockers/risks, and update this task plus
`plan.md` to done.