@chief-clancy/core 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -14
- package/dist/board/azdo/azdo-board.d.ts.map +1 -1
- package/dist/board/azdo/azdo-board.js +1 -0
- package/dist/board/azdo/azdo-board.js.map +1 -1
- package/dist/board/github/api/api.d.ts.map +1 -1
- package/dist/board/github/api/api.js +5 -2
- package/dist/board/github/api/api.js.map +1 -1
- package/dist/board/github/github-board.d.ts.map +1 -1
- package/dist/board/github/github-board.js +2 -1
- package/dist/board/github/github-board.js.map +1 -1
- package/dist/board/github/relations/relations.js +2 -2
- package/dist/board/github/relations/relations.js.map +1 -1
- package/dist/board/jira/jira-board.d.ts.map +1 -1
- package/dist/board/jira/jira-board.js +1 -0
- package/dist/board/jira/jira-board.js.map +1 -1
- package/dist/board/linear/linear-board.d.ts.map +1 -1
- package/dist/board/linear/linear-board.js +1 -0
- package/dist/board/linear/linear-board.js.map +1 -1
- package/dist/board/notion/notion-board.d.ts.map +1 -1
- package/dist/board/notion/notion-board.js +2 -1
- package/dist/board/notion/notion-board.js.map +1 -1
- package/dist/board/shortcut/shortcut-board.d.ts.map +1 -1
- package/dist/board/shortcut/shortcut-board.js +1 -0
- package/dist/board/shortcut/shortcut-board.js.map +1 -1
- package/dist/index.d.ts +1 -31
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -23
- package/dist/index.js.map +1 -1
- package/dist/shared/remote/remote.js.map +1 -1
- package/dist/types/board.d.ts +2 -0
- package/dist/types/board.d.ts.map +1 -1
- package/package.json +6 -2
- package/dist/dev/lifecycle/branch/branch.d.ts +0 -35
- package/dist/dev/lifecycle/branch/branch.d.ts.map +0 -1
- package/dist/dev/lifecycle/branch/branch.js +0 -48
- package/dist/dev/lifecycle/branch/branch.js.map +0 -1
- package/dist/dev/lifecycle/branch/index.d.ts +0 -2
- package/dist/dev/lifecycle/branch/index.d.ts.map +0 -1
- package/dist/dev/lifecycle/branch/index.js +0 -2
- package/dist/dev/lifecycle/branch/index.js.map +0 -1
- package/dist/dev/lifecycle/commit-type/commit-type.d.ts +0 -22
- package/dist/dev/lifecycle/commit-type/commit-type.d.ts.map +0 -1
- package/dist/dev/lifecycle/commit-type/commit-type.js +0 -50
- package/dist/dev/lifecycle/commit-type/commit-type.js.map +0 -1
- package/dist/dev/lifecycle/commit-type/index.d.ts +0 -2
- package/dist/dev/lifecycle/commit-type/index.d.ts.map +0 -1
- package/dist/dev/lifecycle/commit-type/index.js +0 -2
- package/dist/dev/lifecycle/commit-type/index.js.map +0 -1
- package/dist/dev/lifecycle/cost/cost.d.ts +0 -28
- package/dist/dev/lifecycle/cost/cost.d.ts.map +0 -1
- package/dist/dev/lifecycle/cost/cost.js +0 -36
- package/dist/dev/lifecycle/cost/cost.js.map +0 -1
- package/dist/dev/lifecycle/deliver-epic/deliver-epic.d.ts +0 -44
- package/dist/dev/lifecycle/deliver-epic/deliver-epic.d.ts.map +0 -1
- package/dist/dev/lifecycle/deliver-epic/deliver-epic.js +0 -75
- package/dist/dev/lifecycle/deliver-epic/deliver-epic.js.map +0 -1
- package/dist/dev/lifecycle/deliver-ticket/deliver-ticket.d.ts +0 -51
- package/dist/dev/lifecycle/deliver-ticket/deliver-ticket.d.ts.map +0 -1
- package/dist/dev/lifecycle/deliver-ticket/deliver-ticket.js +0 -132
- package/dist/dev/lifecycle/deliver-ticket/deliver-ticket.js.map +0 -1
- package/dist/dev/lifecycle/epic/epic.d.ts +0 -66
- package/dist/dev/lifecycle/epic/epic.d.ts.map +0 -1
- package/dist/dev/lifecycle/epic/epic.js +0 -91
- package/dist/dev/lifecycle/epic/epic.js.map +0 -1
- package/dist/dev/lifecycle/epic/index.d.ts +0 -2
- package/dist/dev/lifecycle/epic/index.d.ts.map +0 -1
- package/dist/dev/lifecycle/epic/index.js +0 -2
- package/dist/dev/lifecycle/epic/index.js.map +0 -1
- package/dist/dev/lifecycle/feasibility/feasibility.d.ts +0 -55
- package/dist/dev/lifecycle/feasibility/feasibility.d.ts.map +0 -1
- package/dist/dev/lifecycle/feasibility/feasibility.js +0 -75
- package/dist/dev/lifecycle/feasibility/feasibility.js.map +0 -1
- package/dist/dev/lifecycle/fetch-ticket/fetch-ticket.d.ts +0 -49
- package/dist/dev/lifecycle/fetch-ticket/fetch-ticket.d.ts.map +0 -1
- package/dist/dev/lifecycle/fetch-ticket/fetch-ticket.js +0 -81
- package/dist/dev/lifecycle/fetch-ticket/fetch-ticket.js.map +0 -1
- package/dist/dev/lifecycle/format/format.d.ts +0 -11
- package/dist/dev/lifecycle/format/format.d.ts.map +0 -1
- package/dist/dev/lifecycle/format/format.js +0 -23
- package/dist/dev/lifecycle/format/format.js.map +0 -1
- package/dist/dev/lifecycle/lock/index.d.ts +0 -3
- package/dist/dev/lifecycle/lock/index.d.ts.map +0 -1
- package/dist/dev/lifecycle/lock/index.js +0 -2
- package/dist/dev/lifecycle/lock/index.js.map +0 -1
- package/dist/dev/lifecycle/lock/lock.d.ts +0 -68
- package/dist/dev/lifecycle/lock/lock.d.ts.map +0 -1
- package/dist/dev/lifecycle/lock/lock.js +0 -125
- package/dist/dev/lifecycle/lock/lock.js.map +0 -1
- package/dist/dev/lifecycle/outcome/index.d.ts +0 -2
- package/dist/dev/lifecycle/outcome/index.d.ts.map +0 -1
- package/dist/dev/lifecycle/outcome/index.js +0 -2
- package/dist/dev/lifecycle/outcome/index.js.map +0 -1
- package/dist/dev/lifecycle/outcome/outcome.d.ts +0 -65
- package/dist/dev/lifecycle/outcome/outcome.d.ts.map +0 -1
- package/dist/dev/lifecycle/outcome/outcome.js +0 -61
- package/dist/dev/lifecycle/outcome/outcome.js.map +0 -1
- package/dist/dev/lifecycle/pr-creation/index.d.ts +0 -3
- package/dist/dev/lifecycle/pr-creation/index.d.ts.map +0 -1
- package/dist/dev/lifecycle/pr-creation/index.js +0 -2
- package/dist/dev/lifecycle/pr-creation/index.js.map +0 -1
- package/dist/dev/lifecycle/pr-creation/pr-creation.d.ts +0 -47
- package/dist/dev/lifecycle/pr-creation/pr-creation.d.ts.map +0 -1
- package/dist/dev/lifecycle/pr-creation/pr-creation.js +0 -143
- package/dist/dev/lifecycle/pr-creation/pr-creation.js.map +0 -1
- package/dist/dev/lifecycle/preflight/preflight.d.ts +0 -42
- package/dist/dev/lifecycle/preflight/preflight.d.ts.map +0 -1
- package/dist/dev/lifecycle/preflight/preflight.js +0 -101
- package/dist/dev/lifecycle/preflight/preflight.js.map +0 -1
- package/dist/dev/lifecycle/progress/index.d.ts +0 -3
- package/dist/dev/lifecycle/progress/index.d.ts.map +0 -1
- package/dist/dev/lifecycle/progress/index.js +0 -2
- package/dist/dev/lifecycle/progress/index.js.map +0 -1
- package/dist/dev/lifecycle/progress/progress.d.ts +0 -98
- package/dist/dev/lifecycle/progress/progress.d.ts.map +0 -1
- package/dist/dev/lifecycle/progress/progress.js +0 -212
- package/dist/dev/lifecycle/progress/progress.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/azdo/azdo.d.ts +0 -86
- package/dist/dev/lifecycle/pull-request/azdo/azdo.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/azdo/azdo.js +0 -198
- package/dist/dev/lifecycle/pull-request/azdo/azdo.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/azdo/index.d.ts +0 -2
- package/dist/dev/lifecycle/pull-request/azdo/index.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/azdo/index.js +0 -2
- package/dist/dev/lifecycle/pull-request/azdo/index.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/bitbucket/cloud.d.ts +0 -85
- package/dist/dev/lifecycle/pull-request/bitbucket/cloud.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/bitbucket/cloud.js +0 -158
- package/dist/dev/lifecycle/pull-request/bitbucket/cloud.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/bitbucket/index.d.ts +0 -3
- package/dist/dev/lifecycle/pull-request/bitbucket/index.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/bitbucket/index.js +0 -3
- package/dist/dev/lifecycle/pull-request/bitbucket/index.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/bitbucket/server.d.ts +0 -85
- package/dist/dev/lifecycle/pull-request/bitbucket/server.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/bitbucket/server.js +0 -168
- package/dist/dev/lifecycle/pull-request/bitbucket/server.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/github/github.d.ts +0 -107
- package/dist/dev/lifecycle/pull-request/github/github.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/github/github.js +0 -225
- package/dist/dev/lifecycle/pull-request/github/github.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/github/index.d.ts +0 -2
- package/dist/dev/lifecycle/pull-request/github/index.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/github/index.js +0 -2
- package/dist/dev/lifecycle/pull-request/github/index.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/gitlab/gitlab.d.ts +0 -103
- package/dist/dev/lifecycle/pull-request/gitlab/gitlab.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/gitlab/gitlab.js +0 -215
- package/dist/dev/lifecycle/pull-request/gitlab/gitlab.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/gitlab/index.d.ts +0 -2
- package/dist/dev/lifecycle/pull-request/gitlab/index.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/gitlab/index.js +0 -2
- package/dist/dev/lifecycle/pull-request/gitlab/index.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/post-pr/post-pr.d.ts +0 -44
- package/dist/dev/lifecycle/pull-request/post-pr/post-pr.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/post-pr/post-pr.js +0 -64
- package/dist/dev/lifecycle/pull-request/post-pr/post-pr.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/pr-body/index.d.ts +0 -3
- package/dist/dev/lifecycle/pull-request/pr-body/index.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/pr-body/index.js +0 -2
- package/dist/dev/lifecycle/pull-request/pr-body/index.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/pr-body/pr-body.d.ts +0 -65
- package/dist/dev/lifecycle/pull-request/pr-body/pr-body.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/pr-body/pr-body.js +0 -144
- package/dist/dev/lifecycle/pull-request/pr-body/pr-body.js.map +0 -1
- package/dist/dev/lifecycle/pull-request/rework-comment/rework-comment.d.ts +0 -30
- package/dist/dev/lifecycle/pull-request/rework-comment/rework-comment.d.ts.map +0 -1
- package/dist/dev/lifecycle/pull-request/rework-comment/rework-comment.js +0 -39
- package/dist/dev/lifecycle/pull-request/rework-comment/rework-comment.js.map +0 -1
- package/dist/dev/lifecycle/quality/quality.d.ts +0 -99
- package/dist/dev/lifecycle/quality/quality.d.ts.map +0 -1
- package/dist/dev/lifecycle/quality/quality.js +0 -213
- package/dist/dev/lifecycle/quality/quality.js.map +0 -1
- package/dist/dev/lifecycle/resume/resume.d.ts +0 -64
- package/dist/dev/lifecycle/resume/resume.d.ts.map +0 -1
- package/dist/dev/lifecycle/resume/resume.js +0 -171
- package/dist/dev/lifecycle/resume/resume.js.map +0 -1
- package/dist/dev/lifecycle/rework/rework-builders.d.ts +0 -20
- package/dist/dev/lifecycle/rework/rework-builders.d.ts.map +0 -1
- package/dist/dev/lifecycle/rework/rework-builders.js +0 -203
- package/dist/dev/lifecycle/rework/rework-builders.js.map +0 -1
- package/dist/dev/lifecycle/rework/rework-handlers.d.ts +0 -50
- package/dist/dev/lifecycle/rework/rework-handlers.d.ts.map +0 -1
- package/dist/dev/lifecycle/rework/rework-handlers.js +0 -41
- package/dist/dev/lifecycle/rework/rework-handlers.js.map +0 -1
- package/dist/dev/lifecycle/rework/rework.d.ts +0 -63
- package/dist/dev/lifecycle/rework/rework.d.ts.map +0 -1
- package/dist/dev/lifecycle/rework/rework.js +0 -141
- package/dist/dev/lifecycle/rework/rework.js.map +0 -1
- package/dist/dev/pipeline/context.d.ts +0 -105
- package/dist/dev/pipeline/context.d.ts.map +0 -1
- package/dist/dev/pipeline/context.js +0 -107
- package/dist/dev/pipeline/context.js.map +0 -1
- package/dist/dev/pipeline/index.d.ts +0 -6
- package/dist/dev/pipeline/index.d.ts.map +0 -1
- package/dist/dev/pipeline/index.js +0 -5
- package/dist/dev/pipeline/index.js.map +0 -1
- package/dist/dev/pipeline/phases/branch-setup/branch-setup.d.ts +0 -62
- package/dist/dev/pipeline/phases/branch-setup/branch-setup.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/branch-setup/branch-setup.js +0 -128
- package/dist/dev/pipeline/phases/branch-setup/branch-setup.js.map +0 -1
- package/dist/dev/pipeline/phases/branch-setup/index.d.ts +0 -3
- package/dist/dev/pipeline/phases/branch-setup/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/branch-setup/index.js +0 -2
- package/dist/dev/pipeline/phases/branch-setup/index.js.map +0 -1
- package/dist/dev/pipeline/phases/cleanup-phase/cleanup-phase.d.ts +0 -32
- package/dist/dev/pipeline/phases/cleanup-phase/cleanup-phase.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/cleanup-phase/cleanup-phase.js +0 -32
- package/dist/dev/pipeline/phases/cleanup-phase/cleanup-phase.js.map +0 -1
- package/dist/dev/pipeline/phases/cleanup-phase/index.d.ts +0 -3
- package/dist/dev/pipeline/phases/cleanup-phase/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/cleanup-phase/index.js +0 -2
- package/dist/dev/pipeline/phases/cleanup-phase/index.js.map +0 -1
- package/dist/dev/pipeline/phases/cost-phase/cost-phase.d.ts +0 -40
- package/dist/dev/pipeline/phases/cost-phase/cost-phase.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/cost-phase/cost-phase.js +0 -43
- package/dist/dev/pipeline/phases/cost-phase/cost-phase.js.map +0 -1
- package/dist/dev/pipeline/phases/cost-phase/index.d.ts +0 -3
- package/dist/dev/pipeline/phases/cost-phase/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/cost-phase/index.js +0 -2
- package/dist/dev/pipeline/phases/cost-phase/index.js.map +0 -1
- package/dist/dev/pipeline/phases/deliver-phase/deliver-phase.d.ts +0 -68
- package/dist/dev/pipeline/phases/deliver-phase/deliver-phase.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/deliver-phase/deliver-phase.js +0 -125
- package/dist/dev/pipeline/phases/deliver-phase/deliver-phase.js.map +0 -1
- package/dist/dev/pipeline/phases/deliver-phase/index.d.ts +0 -3
- package/dist/dev/pipeline/phases/deliver-phase/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/deliver-phase/index.js +0 -2
- package/dist/dev/pipeline/phases/deliver-phase/index.js.map +0 -1
- package/dist/dev/pipeline/phases/dry-run/dry-run.d.ts +0 -38
- package/dist/dev/pipeline/phases/dry-run/dry-run.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/dry-run/dry-run.js +0 -33
- package/dist/dev/pipeline/phases/dry-run/dry-run.js.map +0 -1
- package/dist/dev/pipeline/phases/dry-run/index.d.ts +0 -2
- package/dist/dev/pipeline/phases/dry-run/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/dry-run/index.js +0 -2
- package/dist/dev/pipeline/phases/dry-run/index.js.map +0 -1
- package/dist/dev/pipeline/phases/epic-completion/epic-completion.d.ts +0 -48
- package/dist/dev/pipeline/phases/epic-completion/epic-completion.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/epic-completion/epic-completion.js +0 -42
- package/dist/dev/pipeline/phases/epic-completion/epic-completion.js.map +0 -1
- package/dist/dev/pipeline/phases/epic-completion/index.d.ts +0 -3
- package/dist/dev/pipeline/phases/epic-completion/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/epic-completion/index.js +0 -2
- package/dist/dev/pipeline/phases/epic-completion/index.js.map +0 -1
- package/dist/dev/pipeline/phases/feasibility/feasibility.d.ts +0 -52
- package/dist/dev/pipeline/phases/feasibility/feasibility.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/feasibility/feasibility.js +0 -34
- package/dist/dev/pipeline/phases/feasibility/feasibility.js.map +0 -1
- package/dist/dev/pipeline/phases/feasibility/index.d.ts +0 -3
- package/dist/dev/pipeline/phases/feasibility/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/feasibility/index.js +0 -2
- package/dist/dev/pipeline/phases/feasibility/index.js.map +0 -1
- package/dist/dev/pipeline/phases/index.d.ts +0 -26
- package/dist/dev/pipeline/phases/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/index.js +0 -14
- package/dist/dev/pipeline/phases/index.js.map +0 -1
- package/dist/dev/pipeline/phases/lock-check/index.d.ts +0 -3
- package/dist/dev/pipeline/phases/lock-check/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/lock-check/index.js +0 -2
- package/dist/dev/pipeline/phases/lock-check/index.js.map +0 -1
- package/dist/dev/pipeline/phases/lock-check/lock-check.d.ts +0 -55
- package/dist/dev/pipeline/phases/lock-check/lock-check.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/lock-check/lock-check.js +0 -60
- package/dist/dev/pipeline/phases/lock-check/lock-check.js.map +0 -1
- package/dist/dev/pipeline/phases/pr-retry/index.d.ts +0 -3
- package/dist/dev/pipeline/phases/pr-retry/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/pr-retry/index.js +0 -2
- package/dist/dev/pipeline/phases/pr-retry/index.js.map +0 -1
- package/dist/dev/pipeline/phases/pr-retry/pr-retry.d.ts +0 -58
- package/dist/dev/pipeline/phases/pr-retry/pr-retry.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/pr-retry/pr-retry.js +0 -82
- package/dist/dev/pipeline/phases/pr-retry/pr-retry.js.map +0 -1
- package/dist/dev/pipeline/phases/preflight-phase/index.d.ts +0 -3
- package/dist/dev/pipeline/phases/preflight-phase/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/preflight-phase/index.js +0 -2
- package/dist/dev/pipeline/phases/preflight-phase/index.js.map +0 -1
- package/dist/dev/pipeline/phases/preflight-phase/preflight-phase.d.ts +0 -42
- package/dist/dev/pipeline/phases/preflight-phase/preflight-phase.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/preflight-phase/preflight-phase.js +0 -41
- package/dist/dev/pipeline/phases/preflight-phase/preflight-phase.js.map +0 -1
- package/dist/dev/pipeline/phases/rework-detection/index.d.ts +0 -3
- package/dist/dev/pipeline/phases/rework-detection/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/rework-detection/index.js +0 -2
- package/dist/dev/pipeline/phases/rework-detection/index.js.map +0 -1
- package/dist/dev/pipeline/phases/rework-detection/rework-detection.d.ts +0 -40
- package/dist/dev/pipeline/phases/rework-detection/rework-detection.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/rework-detection/rework-detection.js +0 -38
- package/dist/dev/pipeline/phases/rework-detection/rework-detection.js.map +0 -1
- package/dist/dev/pipeline/phases/ticket-fetch/index.d.ts +0 -3
- package/dist/dev/pipeline/phases/ticket-fetch/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/ticket-fetch/index.js +0 -2
- package/dist/dev/pipeline/phases/ticket-fetch/index.js.map +0 -1
- package/dist/dev/pipeline/phases/ticket-fetch/ticket-fetch.d.ts +0 -46
- package/dist/dev/pipeline/phases/ticket-fetch/ticket-fetch.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/ticket-fetch/ticket-fetch.js +0 -64
- package/dist/dev/pipeline/phases/ticket-fetch/ticket-fetch.js.map +0 -1
- package/dist/dev/pipeline/phases/transition/index.d.ts +0 -3
- package/dist/dev/pipeline/phases/transition/index.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/transition/index.js +0 -2
- package/dist/dev/pipeline/phases/transition/index.js.map +0 -1
- package/dist/dev/pipeline/phases/transition/transition.d.ts +0 -30
- package/dist/dev/pipeline/phases/transition/transition.d.ts.map +0 -1
- package/dist/dev/pipeline/phases/transition/transition.js +0 -27
- package/dist/dev/pipeline/phases/transition/transition.js.map +0 -1
- package/dist/dev/pipeline/run-pipeline.d.ts +0 -98
- package/dist/dev/pipeline/run-pipeline.d.ts.map +0 -1
- package/dist/dev/pipeline/run-pipeline.js +0 -106
- package/dist/dev/pipeline/run-pipeline.js.map +0 -1
|
@@ -1,213 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Quality feedback tracking for `.clancy/quality.json`.
|
|
3
|
-
*
|
|
4
|
-
* Tracks per-ticket quality metrics: rework cycles, verification retries,
|
|
5
|
-
* and delivery duration. Filesystem access is dependency-injected for
|
|
6
|
-
* testability.
|
|
7
|
-
*/
|
|
8
|
-
import { join } from 'node:path';
|
|
9
|
-
// ─── Constants ───────────────────────────────────────────────────────────────
|
|
10
|
-
const CLANCY_DIR = '.clancy';
|
|
11
|
-
const QUALITY_FILE = 'quality.json';
|
|
12
|
-
const QUALITY_PATH = `${CLANCY_DIR}/${QUALITY_FILE}`;
|
|
13
|
-
// ─── Helpers ─────────────────────────────────────────────────────────────────
|
|
14
|
-
const EMPTY_SUMMARY = {
|
|
15
|
-
totalTickets: 0,
|
|
16
|
-
avgReworkCycles: 0,
|
|
17
|
-
avgVerificationRetries: 0,
|
|
18
|
-
avgDuration: 0,
|
|
19
|
-
};
|
|
20
|
-
function emptyData() {
|
|
21
|
-
return { tickets: {}, summary: EMPTY_SUMMARY };
|
|
22
|
-
}
|
|
23
|
-
/** Round a number to two decimal places. */
|
|
24
|
-
function round2(value) {
|
|
25
|
-
return Math.round(value * 100) / 100;
|
|
26
|
-
}
|
|
27
|
-
/** Sum a numeric property across an array of items (recursive — safe for bounded ticket counts). */
|
|
28
|
-
function sumBy(items, fn, i = 0) {
|
|
29
|
-
return i >= items.length ? 0 : fn(items[i]) + sumBy(items, fn, i + 1);
|
|
30
|
-
}
|
|
31
|
-
/** Whether an entry has valid numeric reworkCycles and verificationRetries. */
|
|
32
|
-
function isValidEntry(entry) {
|
|
33
|
-
return (entry !== null &&
|
|
34
|
-
typeof entry === 'object' &&
|
|
35
|
-
'reworkCycles' in entry &&
|
|
36
|
-
'verificationRetries' in entry &&
|
|
37
|
-
// Safe: `in` checks above confirm the properties exist
|
|
38
|
-
Number.isFinite(entry.reworkCycles) &&
|
|
39
|
-
Number.isFinite(entry.verificationRetries));
|
|
40
|
-
}
|
|
41
|
-
/** Whether `value` looks like a `{ tickets: Record<…> }` object. */
|
|
42
|
-
function hasTicketsRecord(value) {
|
|
43
|
-
return (value !== null &&
|
|
44
|
-
typeof value === 'object' &&
|
|
45
|
-
'tickets' in value &&
|
|
46
|
-
typeof value.tickets === 'object' &&
|
|
47
|
-
value.tickets !== null &&
|
|
48
|
-
!Array.isArray(value.tickets));
|
|
49
|
-
}
|
|
50
|
-
/** Recompute aggregate summary from ticket entries. */
|
|
51
|
-
function recomputeSummary(tickets) {
|
|
52
|
-
const entries = Object.values(tickets);
|
|
53
|
-
const total = entries.length;
|
|
54
|
-
if (total === 0)
|
|
55
|
-
return EMPTY_SUMMARY;
|
|
56
|
-
const delivered = entries.filter((e) => e.duration != null);
|
|
57
|
-
return {
|
|
58
|
-
totalTickets: total,
|
|
59
|
-
avgReworkCycles: round2(sumBy(entries, (e) => e.reworkCycles) / total),
|
|
60
|
-
avgVerificationRetries: round2(sumBy(entries, (e) => e.verificationRetries) / total),
|
|
61
|
-
avgDuration: delivered.length > 0
|
|
62
|
-
? round2(sumBy(delivered, (e) => e.duration) / delivered.length)
|
|
63
|
-
: 0,
|
|
64
|
-
};
|
|
65
|
-
}
|
|
66
|
-
/** Write quality data atomically via temp file + rename. */
|
|
67
|
-
function writeQualityData(fs, projectRoot, data) {
|
|
68
|
-
const filePath = join(projectRoot, QUALITY_PATH);
|
|
69
|
-
const tmpPath = `${filePath}.tmp`;
|
|
70
|
-
fs.mkdir(join(projectRoot, CLANCY_DIR));
|
|
71
|
-
fs.writeFile(tmpPath, JSON.stringify(data, null, 2) + '\n');
|
|
72
|
-
fs.rename(tmpPath, filePath);
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Ensure a ticket entry exists, returning the entry and updated tickets map.
|
|
76
|
-
*
|
|
77
|
-
* @returns A tuple of [entry, updatedTickets].
|
|
78
|
-
*/
|
|
79
|
-
function ensureEntry(tickets, ticketKey) {
|
|
80
|
-
const existing = tickets[ticketKey];
|
|
81
|
-
if (existing)
|
|
82
|
-
return [existing, tickets];
|
|
83
|
-
const entry = { reworkCycles: 0, verificationRetries: 0 };
|
|
84
|
-
return [entry, { ...tickets, [ticketKey]: entry }];
|
|
85
|
-
}
|
|
86
|
-
// ─── Public API ──────────────────────────────────────────────────────────────
|
|
87
|
-
/**
|
|
88
|
-
* Read quality data from `.clancy/quality.json`.
|
|
89
|
-
*
|
|
90
|
-
* Returns empty data if the file is missing, corrupt, or structurally invalid.
|
|
91
|
-
* Summary is always recomputed from ticket entries to guard against stale data.
|
|
92
|
-
*
|
|
93
|
-
* @param fs - Injected filesystem operations.
|
|
94
|
-
* @param projectRoot - Absolute path to the project root.
|
|
95
|
-
* @returns The quality data.
|
|
96
|
-
*/
|
|
97
|
-
export function readQualityData(fs, projectRoot) {
|
|
98
|
-
try {
|
|
99
|
-
const raw = JSON.parse(fs.readFile(join(projectRoot, QUALITY_PATH)));
|
|
100
|
-
if (hasTicketsRecord(raw)) {
|
|
101
|
-
// Safe: hasTicketsRecord narrows raw.tickets to object
|
|
102
|
-
const rawTickets = raw.tickets;
|
|
103
|
-
// Safe: isValidEntry filter ensures all remaining values are QualityEntry
|
|
104
|
-
const tickets = Object.fromEntries(Object.entries(rawTickets).filter(([, v]) => isValidEntry(v)));
|
|
105
|
-
return { tickets, summary: recomputeSummary(tickets) };
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
catch {
|
|
109
|
-
// File missing or corrupt — return empty
|
|
110
|
-
}
|
|
111
|
-
return emptyData();
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Record a rework cycle for a ticket.
|
|
115
|
-
*
|
|
116
|
-
* Increments the rework counter. Best-effort — filesystem errors are
|
|
117
|
-
* swallowed to avoid crashing the orchestrator.
|
|
118
|
-
*
|
|
119
|
-
* @param fs - Injected filesystem operations.
|
|
120
|
-
* @param projectRoot - Absolute path to the project root.
|
|
121
|
-
* @param ticketKey - The ticket identifier.
|
|
122
|
-
* @returns Nothing.
|
|
123
|
-
*/
|
|
124
|
-
export function recordRework(fs, projectRoot, ticketKey) {
|
|
125
|
-
try {
|
|
126
|
-
const data = readQualityData(fs, projectRoot);
|
|
127
|
-
const [entry, tickets] = ensureEntry(data.tickets, ticketKey);
|
|
128
|
-
const updated = {
|
|
129
|
-
...tickets,
|
|
130
|
-
[ticketKey]: { ...entry, reworkCycles: entry.reworkCycles + 1 },
|
|
131
|
-
};
|
|
132
|
-
writeQualityData(fs, projectRoot, {
|
|
133
|
-
tickets: updated,
|
|
134
|
-
summary: recomputeSummary(updated),
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
catch {
|
|
138
|
-
// Best-effort — never crash the orchestrator
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
/**
|
|
142
|
-
* Record verification retries for a ticket.
|
|
143
|
-
*
|
|
144
|
-
* Sets the verification retry count. Best-effort — filesystem errors are
|
|
145
|
-
* swallowed to avoid crashing the orchestrator.
|
|
146
|
-
*
|
|
147
|
-
* @param fs - Injected filesystem operations.
|
|
148
|
-
* @param projectRoot - Absolute path to the project root.
|
|
149
|
-
* @param opts - Verification retry options (ticket key, retry count).
|
|
150
|
-
* @returns Nothing.
|
|
151
|
-
*/
|
|
152
|
-
export function recordVerificationRetry(fs, projectRoot, opts) {
|
|
153
|
-
try {
|
|
154
|
-
const data = readQualityData(fs, projectRoot);
|
|
155
|
-
const [entry, tickets] = ensureEntry(data.tickets, opts.ticketKey);
|
|
156
|
-
const updated = {
|
|
157
|
-
...tickets,
|
|
158
|
-
[opts.ticketKey]: { ...entry, verificationRetries: opts.retries },
|
|
159
|
-
};
|
|
160
|
-
writeQualityData(fs, projectRoot, {
|
|
161
|
-
tickets: updated,
|
|
162
|
-
summary: recomputeSummary(updated),
|
|
163
|
-
});
|
|
164
|
-
}
|
|
165
|
-
catch {
|
|
166
|
-
// Best-effort — never crash the orchestrator
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
/**
|
|
170
|
-
* Record successful delivery of a ticket.
|
|
171
|
-
*
|
|
172
|
-
* Sets the delivery timestamp (from injected `now`) and duration.
|
|
173
|
-
* Best-effort — filesystem errors are swallowed to avoid crashing
|
|
174
|
-
* the orchestrator.
|
|
175
|
-
*
|
|
176
|
-
* @param fs - Injected filesystem operations.
|
|
177
|
-
* @param projectRoot - Absolute path to the project root.
|
|
178
|
-
* @param opts - Delivery options (ticket key, duration, timestamp).
|
|
179
|
-
* @returns Nothing.
|
|
180
|
-
*/
|
|
181
|
-
export function recordDelivery(fs, projectRoot, opts) {
|
|
182
|
-
try {
|
|
183
|
-
const data = readQualityData(fs, projectRoot);
|
|
184
|
-
const [entry, tickets] = ensureEntry(data.tickets, opts.ticketKey);
|
|
185
|
-
const updated = {
|
|
186
|
-
...tickets,
|
|
187
|
-
[opts.ticketKey]: {
|
|
188
|
-
...entry,
|
|
189
|
-
deliveredAt: new Date(opts.now).toISOString(),
|
|
190
|
-
duration: Math.max(0, opts.duration),
|
|
191
|
-
},
|
|
192
|
-
};
|
|
193
|
-
writeQualityData(fs, projectRoot, {
|
|
194
|
-
tickets: updated,
|
|
195
|
-
summary: recomputeSummary(updated),
|
|
196
|
-
});
|
|
197
|
-
}
|
|
198
|
-
catch {
|
|
199
|
-
// Best-effort — never crash the orchestrator
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
/**
|
|
203
|
-
* Read quality data for reporting.
|
|
204
|
-
*
|
|
205
|
-
* @param fs - Injected filesystem operations.
|
|
206
|
-
* @param projectRoot - Absolute path to the project root.
|
|
207
|
-
* @returns The quality data, or `undefined` if no tickets have been tracked.
|
|
208
|
-
*/
|
|
209
|
-
export function getQualityData(fs, projectRoot) {
|
|
210
|
-
const data = readQualityData(fs, projectRoot);
|
|
211
|
-
return Object.keys(data.tickets).length === 0 ? undefined : data;
|
|
212
|
-
}
|
|
213
|
-
//# sourceMappingURL=quality.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"quality.js","sourceRoot":"","sources":["../../../../src/dev/lifecycle/quality/quality.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Resume detection and execution for crash recovery.
|
|
3
|
-
*
|
|
4
|
-
* After a stale lock is cleaned up, checks if the ticket branch exists
|
|
5
|
-
* locally with uncommitted or unpushed work. If so, the caller can
|
|
6
|
-
* resume by committing, pushing, and optionally creating a PR.
|
|
7
|
-
*/
|
|
8
|
-
import type { LockData } from '../../../dev/lifecycle/lock/index.js';
|
|
9
|
-
import type { ProgressFs } from '../../../dev/lifecycle/progress/index.js';
|
|
10
|
-
import type { ExecGit } from '../../../shared/git-ops/index.js';
|
|
11
|
-
import type { PrCreationResult } from '../../../types/remote.js';
|
|
12
|
-
/** Detection result for a resumable stale lock. */
|
|
13
|
-
type ResumeInfo = {
|
|
14
|
-
readonly branch: string;
|
|
15
|
-
readonly hasUncommitted: boolean;
|
|
16
|
-
readonly hasUnpushed: boolean;
|
|
17
|
-
readonly alreadyDelivered: boolean;
|
|
18
|
-
};
|
|
19
|
-
/** Options for {@link detectResume}. */
|
|
20
|
-
type DetectResumeOpts = {
|
|
21
|
-
readonly exec: ExecGit;
|
|
22
|
-
readonly progressFs: ProgressFs;
|
|
23
|
-
readonly projectRoot: string;
|
|
24
|
-
readonly lock: LockData;
|
|
25
|
-
};
|
|
26
|
-
/** Callback for PR creation during resume. */
|
|
27
|
-
type CreateResumePr = (lock: LockData, sourceBranch: string) => Promise<PrCreationResult | undefined>;
|
|
28
|
-
/** Result of executing a resume. */
|
|
29
|
-
type ResumeExecResult = {
|
|
30
|
-
readonly ok: boolean;
|
|
31
|
-
readonly prResult?: PrCreationResult;
|
|
32
|
-
readonly error?: string;
|
|
33
|
-
};
|
|
34
|
-
/** Options for {@link executeResume}. */
|
|
35
|
-
type ExecuteResumeOpts = {
|
|
36
|
-
readonly exec: ExecGit;
|
|
37
|
-
readonly progressFs: ProgressFs;
|
|
38
|
-
readonly projectRoot: string;
|
|
39
|
-
readonly lock: LockData;
|
|
40
|
-
readonly resumeInfo: ResumeInfo;
|
|
41
|
-
readonly createPr?: CreateResumePr;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Check if the ticket branch from a stale lock has recoverable work.
|
|
45
|
-
*
|
|
46
|
-
* Switches to the branch, inspects for uncommitted or unpushed changes,
|
|
47
|
-
* then restores the original branch. If no local work exists, checks
|
|
48
|
-
* progress for an already-delivered ticket (crash after push but before
|
|
49
|
-
* lock deletion).
|
|
50
|
-
*
|
|
51
|
-
* @param opts - Detection options with DI dependencies.
|
|
52
|
-
* @returns Resume info if recovery is possible, `undefined` otherwise.
|
|
53
|
-
*/
|
|
54
|
-
export declare function detectResume(opts: DetectResumeOpts): ResumeInfo | undefined;
|
|
55
|
-
/**
|
|
56
|
-
* Resume a crashed session: commit uncommitted changes, push, and
|
|
57
|
-
* optionally create a PR.
|
|
58
|
-
*
|
|
59
|
-
* @param opts - Execution options with DI dependencies.
|
|
60
|
-
* @returns Result indicating success/failure and optional PR info.
|
|
61
|
-
*/
|
|
62
|
-
export declare function executeResume(opts: ExecuteResumeOpts): Promise<ResumeExecResult>;
|
|
63
|
-
export {};
|
|
64
|
-
//# sourceMappingURL=resume.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resume.d.ts","sourceRoot":"","sources":["../../../../src/dev/lifecycle/resume/resume.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAiB5D,mDAAmD;AACnD,KAAK,UAAU,GAAG;IAChB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF,wCAAwC;AACxC,KAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;CACzB,CAAC;AAEF,8CAA8C;AAC9C,KAAK,cAAc,GAAG,CACpB,IAAI,EAAE,QAAQ,EACd,YAAY,EAAE,MAAM,KACjB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;AAE3C,oCAAoC;AACpC,KAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IACrC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,yCAAyC;AACzC,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;CACpC,CAAC;AAIF;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,UAAU,GAAG,SAAS,CAsB3E;AAID;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,gBAAgB,CAAC,CA4B3B"}
|
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
import { appendProgress, findLastEntry, } from '../../../dev/lifecycle/progress/index.js';
|
|
2
|
-
import { branchExists, checkout, currentBranch, hasUncommittedChanges, pushBranch, } from '../../../shared/git-ops/index.js';
|
|
3
|
-
import { DELIVERED_STATUSES } from '../../../types/progress.js';
|
|
4
|
-
// ─── Detection ───────────────────────────────────────────────────────────────
|
|
5
|
-
/**
|
|
6
|
-
* Check if the ticket branch from a stale lock has recoverable work.
|
|
7
|
-
*
|
|
8
|
-
* Switches to the branch, inspects for uncommitted or unpushed changes,
|
|
9
|
-
* then restores the original branch. If no local work exists, checks
|
|
10
|
-
* progress for an already-delivered ticket (crash after push but before
|
|
11
|
-
* lock deletion).
|
|
12
|
-
*
|
|
13
|
-
* @param opts - Detection options with DI dependencies.
|
|
14
|
-
* @returns Resume info if recovery is possible, `undefined` otherwise.
|
|
15
|
-
*/
|
|
16
|
-
export function detectResume(opts) {
|
|
17
|
-
const { exec, progressFs, projectRoot, lock } = opts;
|
|
18
|
-
const branch = lock.ticketBranch;
|
|
19
|
-
if (!branchExists(exec, branch))
|
|
20
|
-
return undefined;
|
|
21
|
-
const previous = safeCurrent(exec);
|
|
22
|
-
if (!previous)
|
|
23
|
-
return undefined;
|
|
24
|
-
if (!safeCheckout(exec, branch)) {
|
|
25
|
-
safeCheckout(exec, previous);
|
|
26
|
-
return undefined;
|
|
27
|
-
}
|
|
28
|
-
const state = inspectBranch(exec, branch, lock.targetBranch);
|
|
29
|
-
safeCheckout(exec, previous);
|
|
30
|
-
if (!state.hasUncommitted && !state.hasUnpushed) {
|
|
31
|
-
return checkAlreadyDelivered({ progressFs, projectRoot, lock }, branch);
|
|
32
|
-
}
|
|
33
|
-
return { branch, ...state, alreadyDelivered: false };
|
|
34
|
-
}
|
|
35
|
-
// ─── Execution ───────────────────────────────────────────────────────────────
|
|
36
|
-
/**
|
|
37
|
-
* Resume a crashed session: commit uncommitted changes, push, and
|
|
38
|
-
* optionally create a PR.
|
|
39
|
-
*
|
|
40
|
-
* @param opts - Execution options with DI dependencies.
|
|
41
|
-
* @returns Result indicating success/failure and optional PR info.
|
|
42
|
-
*/
|
|
43
|
-
export async function executeResume(opts) {
|
|
44
|
-
const { exec, progressFs, projectRoot, lock, resumeInfo, createPr } = opts;
|
|
45
|
-
try {
|
|
46
|
-
checkout(exec, resumeInfo.branch);
|
|
47
|
-
if (resumeInfo.hasUncommitted && !commitResumableWork(exec, lock)) {
|
|
48
|
-
return { ok: false, error: 'Could not commit in-progress work' };
|
|
49
|
-
}
|
|
50
|
-
if (!pushBranch(exec, resumeInfo.branch)) {
|
|
51
|
-
return { ok: false, error: 'Could not push branch' };
|
|
52
|
-
}
|
|
53
|
-
const prResult = createPr
|
|
54
|
-
? await createPr(lock, resumeInfo.branch)
|
|
55
|
-
: undefined;
|
|
56
|
-
appendResumedProgress({ progressFs, projectRoot, lock }, prResult);
|
|
57
|
-
safeCheckout(exec, lock.targetBranch);
|
|
58
|
-
return { ok: true, prResult };
|
|
59
|
-
}
|
|
60
|
-
catch (err) {
|
|
61
|
-
return {
|
|
62
|
-
ok: false,
|
|
63
|
-
error: err instanceof Error ? err.message : String(err),
|
|
64
|
-
};
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
// ─── Internal helpers ────────────────────────────────────────────────────────
|
|
68
|
-
/** Get current branch, returning `undefined` on failure. */
|
|
69
|
-
function safeCurrent(exec) {
|
|
70
|
-
try {
|
|
71
|
-
return currentBranch(exec);
|
|
72
|
-
}
|
|
73
|
-
catch {
|
|
74
|
-
return undefined;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
/** Checkout a branch, returning `true` on success. */
|
|
78
|
-
function safeCheckout(exec, branch) {
|
|
79
|
-
try {
|
|
80
|
-
checkout(exec, branch);
|
|
81
|
-
return true;
|
|
82
|
-
}
|
|
83
|
-
catch {
|
|
84
|
-
return false;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Inspect a branch for uncommitted and unpushed changes.
|
|
89
|
-
*
|
|
90
|
-
* Assumes the branch is already checked out.
|
|
91
|
-
*/
|
|
92
|
-
function inspectBranch(exec, branch, targetBranch) {
|
|
93
|
-
const uncommitted = safeHasUncommitted(exec);
|
|
94
|
-
const unpushed = hasUnpushedCommits(exec, branch, targetBranch);
|
|
95
|
-
return { hasUncommitted: uncommitted, hasUnpushed: unpushed };
|
|
96
|
-
}
|
|
97
|
-
/** Check for uncommitted changes, returning `false` on error. */
|
|
98
|
-
function safeHasUncommitted(exec) {
|
|
99
|
-
try {
|
|
100
|
-
return hasUncommittedChanges(exec);
|
|
101
|
-
}
|
|
102
|
-
catch {
|
|
103
|
-
return false;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Check for unpushed commits on a branch.
|
|
108
|
-
*
|
|
109
|
-
* First checks `origin/{branch}..{branch}`. If the remote branch
|
|
110
|
-
* doesn't exist, falls back to `origin/{targetBranch}..{branch}`.
|
|
111
|
-
*/
|
|
112
|
-
function hasUnpushedCommits(exec, branch, targetBranch) {
|
|
113
|
-
try {
|
|
114
|
-
const log = exec(['log', `origin/${branch}..${branch}`, '--oneline']);
|
|
115
|
-
return log.trim().length > 0;
|
|
116
|
-
}
|
|
117
|
-
catch {
|
|
118
|
-
try {
|
|
119
|
-
const log = exec([
|
|
120
|
-
'log',
|
|
121
|
-
`origin/${targetBranch}..${branch}`,
|
|
122
|
-
'--oneline',
|
|
123
|
-
]);
|
|
124
|
-
return log.trim().length > 0;
|
|
125
|
-
}
|
|
126
|
-
catch {
|
|
127
|
-
return false;
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
/** Check progress file for an already-delivered ticket. */
|
|
132
|
-
function checkAlreadyDelivered(opts, branch) {
|
|
133
|
-
const lastEntry = findLastEntry(opts.progressFs, opts.projectRoot, opts.lock.ticketKey);
|
|
134
|
-
if (lastEntry && DELIVERED_STATUSES.has(lastEntry.status)) {
|
|
135
|
-
return {
|
|
136
|
-
branch,
|
|
137
|
-
hasUncommitted: false,
|
|
138
|
-
hasUnpushed: false,
|
|
139
|
-
alreadyDelivered: true,
|
|
140
|
-
};
|
|
141
|
-
}
|
|
142
|
-
return undefined;
|
|
143
|
-
}
|
|
144
|
-
/** Commit in-progress work during resume. Returns `true` on success. */
|
|
145
|
-
function commitResumableWork(exec, lock) {
|
|
146
|
-
try {
|
|
147
|
-
exec(['add', '-A']);
|
|
148
|
-
exec(['commit', '-m', `fix(${lock.ticketKey}): resume after crash`]);
|
|
149
|
-
return true;
|
|
150
|
-
}
|
|
151
|
-
catch {
|
|
152
|
-
return false;
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
/** Resolve parentKey from lock, treating empty/'none' as `undefined`. */
|
|
156
|
-
function resolveParentKey(lock) {
|
|
157
|
-
return lock.parentKey && lock.parentKey !== 'none'
|
|
158
|
-
? lock.parentKey
|
|
159
|
-
: undefined;
|
|
160
|
-
}
|
|
161
|
-
/** Append a RESUMED progress entry. */
|
|
162
|
-
function appendResumedProgress(opts, prResult) {
|
|
163
|
-
appendProgress(opts.progressFs, opts.projectRoot, {
|
|
164
|
-
key: opts.lock.ticketKey,
|
|
165
|
-
summary: opts.lock.ticketTitle,
|
|
166
|
-
status: 'RESUMED',
|
|
167
|
-
prNumber: prResult?.ok ? prResult.number : undefined,
|
|
168
|
-
parent: resolveParentKey(opts.lock),
|
|
169
|
-
});
|
|
170
|
-
}
|
|
171
|
-
//# sourceMappingURL=resume.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resume.js","sourceRoot":"","sources":["../../../../src/dev/lifecycle/resume/resume.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Platform-specific rework handler builders.
|
|
3
|
-
*
|
|
4
|
-
* Each builder wires a platform's PR API into the uniform
|
|
5
|
-
* {@link PlatformReworkHandlers} interface. Called exclusively by
|
|
6
|
-
* `resolvePlatformHandlers` in `rework-handlers.ts`.
|
|
7
|
-
*/
|
|
8
|
-
import type { PlatformReworkHandlers, ReworkCtx } from './rework-handlers.js';
|
|
9
|
-
import type { AzdoRemote, BitbucketRemote, BitbucketServerRemote, GitHubRemote, GitLabRemote } from '../../../types/remote.js';
|
|
10
|
-
/** Build rework handlers for GitHub. */
|
|
11
|
-
export declare function githubHandlers(ctx: ReworkCtx, remote: GitHubRemote): PlatformReworkHandlers;
|
|
12
|
-
/** Build rework handlers for GitLab. */
|
|
13
|
-
export declare function gitlabHandlers(ctx: ReworkCtx, remote: GitLabRemote): PlatformReworkHandlers;
|
|
14
|
-
/** Build rework handlers for Bitbucket Cloud. */
|
|
15
|
-
export declare function bbCloudHandlers(ctx: ReworkCtx, remote: BitbucketRemote): PlatformReworkHandlers;
|
|
16
|
-
/** Build rework handlers for Bitbucket Server. */
|
|
17
|
-
export declare function bbServerHandlers(ctx: ReworkCtx, remote: BitbucketServerRemote): PlatformReworkHandlers;
|
|
18
|
-
/** Build rework handlers for Azure DevOps. */
|
|
19
|
-
export declare function azdoHandlers(ctx: ReworkCtx, remote: AzdoRemote): PlatformReworkHandlers;
|
|
20
|
-
//# sourceMappingURL=rework-builders.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rework-builders.d.ts","sourceRoot":"","sources":["../../../../src/dev/lifecycle/rework/rework-builders.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,KAAK,EACV,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACb,MAAM,qBAAqB,CAAC;AA+B7B,wCAAwC;AACxC,wBAAgB,cAAc,CAC5B,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,YAAY,GACnB,sBAAsB,CA4CxB;AAED,wCAAwC;AACxC,wBAAgB,cAAc,CAC5B,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,YAAY,GACnB,sBAAsB,CAyCxB;AAED,iDAAiD;AACjD,wBAAgB,eAAe,CAC7B,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,eAAe,GACtB,sBAAsB,CAsCxB;AAED,kDAAkD;AAClD,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,qBAAqB,GAC5B,sBAAsB,CAqCxB;AAED,8CAA8C;AAC9C,wBAAgB,YAAY,CAC1B,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,UAAU,GACjB,sBAAsB,CAsCxB"}
|