q792602257
a2b6d5382e
feat(workspace,jobs): emit sync_aborted_on_restart audit + enrich worktree.pruned metadata
...
- workspace.ResetStuckSyncStatuses now returns affected IDs so app.New can record one workspace.sync_aborted_on_restart audit per reset row
- worktree_prune audit metadata gains workspace_id and path alongside existing branch
- updated fakeRepo + integration test for new ResetStuckSyncStatuses signature
- add TestWorktreePrune_AuditMetadataContainsWorkspaceIDAndPath
2026-05-07 10:14:46 +08:00
q792602257
7b3892c42e
feat(config,workspace,user): jobs/notify config + workspace fetch repo + user ListAdmins
2026-05-06 09:10:43 +08:00
q792602257
c50621eeca
feat(jobs/runners): worktree prune two-phase + workspace prune queries/repo methods
2026-05-06 07:55:56 +08:00
q792602257
ba1d657973
feat(workspace): clear prune_warning_at on SetWorktreeActive/Idle
2026-05-05 16:45:25 +08:00
q792602257
7429a817bc
feat(app): wire workspace module + integration test for ws closed loop
2026-05-02 12:32:05 +08:00
q792602257
78e74c9734
feat(workspace): http handler with workspace/worktree/gitops endpoints
2026-05-02 08:55:45 +08:00
q792602257
e31710f04e
feat(workspace): GitOpsService for status/commit/push on main+worktree
2026-05-02 08:18:18 +08:00
q792602257
d76ed67666
feat(workspace): WorktreeService with acquire/release state machine
2026-05-02 08:13:07 +08:00
q792602257
bd91880898
feat(workspace): WorkspaceService + async clone runner
2026-05-02 08:00:00 +08:00
q792602257
64dd560b55
feat(workspace): postgres repository with type conversions and tx
2026-05-02 07:42:54 +08:00
q792602257
08845f92d7
feat(workspace): sqlc queries for workspace/worktree/credential
2026-05-02 07:07:33 +08:00
q792602257
e5800ef5dc
feat(workspace): domain types + pathing/validation
2026-05-01 22:07:41 +08:00