1.9 KiB
1.9 KiB
id, title, status, wave, depends_on, plan, spec
| id | title | status | wave | depends_on | plan | spec |
|---|---|---|---|---|---|---|
| 01-policy-persistence | Persist the task Git credential policy | done | 1 | plan.md | ../../specs/integrations/github-authentication.md |
Task 01: Persist The Task Git Credential Policy
Acceptance
github_workspace_settings.task_git_credentials_modedefaults/normalizes tomanaged, accepts onlymanagedorexecutor, and survives fresh schema, replay, read, upsert, partial update, and settings copy.- The existing workspace-settings API exposes the policy without changing its authorization model.
- A non-secret GitHub service descriptor returns the policy plus known workspace method/actor context without resolving a token.
Verification
cd apps/backend && go test ./internal/github ./internal/backendapp -run 'Test(Store_GitHubWorkspaceSettings|Service_UpdateWorkspaceSettings|CopyWorkspaceSettings|TaskGitCredential|GitHubWorkspaceSettings)'
Files likely touched
apps/backend/internal/github/models.goapps/backend/internal/github/store.goapps/backend/internal/github/workspace_settings_service.goapps/backend/internal/github/copy.goapps/backend/internal/github/controller.goapps/backend/internal/github/workspace_settings_test.goapps/backend/internal/github/copy_test.go- focused GitHub schema/descriptor tests
apps/backend/internal/backendapp/services_github_broker_test.go- this task file and
plan.md
Dependencies
None.
Parallelism
Sequential. It owns the shared schema and API contract.
Inputs
- Spec sections
What,Data Model,API Surface, and task-policy scenarios. - ADR-2026-07-27-task-git-credential-policy.
- Existing repository-scope partial-update and workspace-copy patterns.
Output contract
Report the migration/replay behavior, normalized enum contract, descriptor shape, RED/GREEN command
results, files changed, residual risks, and update this task plus plan.md status.