chief-clancy 0.5.12 → 0.7.0
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 +15 -8
- package/dist/bundle/clancy-afk.js +6 -2
- package/dist/bundle/clancy-once.js +71 -48
- package/dist/installer/hook-installer/hook-installer.d.ts +2 -0
- package/dist/installer/hook-installer/hook-installer.d.ts.map +1 -1
- package/dist/installer/hook-installer/hook-installer.js +36 -1
- package/dist/installer/hook-installer/hook-installer.js.map +1 -1
- package/dist/installer/install.js +16 -1
- package/dist/installer/install.js.map +1 -1
- package/dist/schemas/env.d.ts +36 -0
- package/dist/schemas/env.d.ts.map +1 -1
- package/dist/schemas/env.js +11 -0
- package/dist/schemas/env.js.map +1 -1
- package/dist/schemas/github-issues.d.ts +6 -0
- package/dist/schemas/github-issues.d.ts.map +1 -1
- package/dist/schemas/github-issues.js +3 -0
- package/dist/schemas/github-issues.js.map +1 -1
- package/dist/schemas/jira.d.ts +21 -0
- package/dist/schemas/jira.d.ts.map +1 -1
- package/dist/schemas/jira.js +18 -0
- package/dist/schemas/jira.js.map +1 -1
- package/dist/schemas/linear.d.ts +41 -0
- package/dist/schemas/linear.d.ts.map +1 -1
- package/dist/schemas/linear.js +34 -0
- package/dist/schemas/linear.js.map +1 -1
- package/dist/scripts/afk/afk.d.ts.map +1 -1
- package/dist/scripts/afk/afk.js +28 -0
- package/dist/scripts/afk/afk.js.map +1 -1
- package/dist/scripts/afk/report/report.d.ts +47 -0
- package/dist/scripts/afk/report/report.d.ts.map +1 -0
- package/dist/scripts/afk/report/report.js +194 -0
- package/dist/scripts/afk/report/report.js.map +1 -0
- package/dist/scripts/board/github/github.d.ts +33 -3
- package/dist/scripts/board/github/github.d.ts.map +1 -1
- package/dist/scripts/board/github/github.js +112 -27
- package/dist/scripts/board/github/github.js.map +1 -1
- package/dist/scripts/board/jira/jira.d.ts +36 -4
- package/dist/scripts/board/jira/jira.d.ts.map +1 -1
- package/dist/scripts/board/jira/jira.js +138 -65
- package/dist/scripts/board/jira/jira.js.map +1 -1
- package/dist/scripts/board/linear/linear.d.ts +32 -5
- package/dist/scripts/board/linear/linear.d.ts.map +1 -1
- package/dist/scripts/board/linear/linear.js +135 -17
- package/dist/scripts/board/linear/linear.js.map +1 -1
- package/dist/scripts/once/board-ops/board-ops.d.ts.map +1 -1
- package/dist/scripts/once/board-ops/board-ops.js +1 -1
- package/dist/scripts/once/board-ops/board-ops.js.map +1 -1
- package/dist/scripts/once/cost/cost.d.ts +10 -0
- package/dist/scripts/once/cost/cost.d.ts.map +1 -0
- package/dist/scripts/once/cost/cost.js +23 -0
- package/dist/scripts/once/cost/cost.js.map +1 -0
- package/dist/scripts/once/deliver/deliver.d.ts.map +1 -1
- package/dist/scripts/once/deliver/deliver.js +18 -1
- package/dist/scripts/once/deliver/deliver.js.map +1 -1
- package/dist/scripts/once/fetch-ticket/fetch-ticket.d.ts +19 -1
- package/dist/scripts/once/fetch-ticket/fetch-ticket.d.ts.map +1 -1
- package/dist/scripts/once/fetch-ticket/fetch-ticket.js +93 -29
- package/dist/scripts/once/fetch-ticket/fetch-ticket.js.map +1 -1
- package/dist/scripts/once/lock/lock.d.ts +17 -0
- package/dist/scripts/once/lock/lock.d.ts.map +1 -0
- package/dist/scripts/once/lock/lock.js +70 -0
- package/dist/scripts/once/lock/lock.js.map +1 -0
- package/dist/scripts/once/once.d.ts.map +1 -1
- package/dist/scripts/once/once.js +100 -4
- package/dist/scripts/once/once.js.map +1 -1
- package/dist/scripts/once/resume/resume.d.ts +24 -0
- package/dist/scripts/once/resume/resume.d.ts.map +1 -0
- package/dist/scripts/once/resume/resume.js +159 -0
- package/dist/scripts/once/resume/resume.js.map +1 -0
- package/dist/scripts/shared/format/format.d.ts.map +1 -1
- package/dist/scripts/shared/format/format.js +6 -1
- package/dist/scripts/shared/format/format.js.map +1 -1
- package/dist/scripts/shared/progress/progress.d.ts +18 -2
- package/dist/scripts/shared/progress/progress.d.ts.map +1 -1
- package/dist/scripts/shared/progress/progress.js +31 -4
- package/dist/scripts/shared/progress/progress.js.map +1 -1
- package/dist/scripts/shared/pull-request/pr-body/pr-body.d.ts +2 -1
- package/dist/scripts/shared/pull-request/pr-body/pr-body.d.ts.map +1 -1
- package/dist/scripts/shared/pull-request/pr-body/pr-body.js +10 -1
- package/dist/scripts/shared/pull-request/pr-body/pr-body.js.map +1 -1
- package/dist/types/remote.d.ts +1 -1
- package/dist/types/remote.d.ts.map +1 -1
- package/hooks/clancy-branch-guard.js +129 -0
- package/hooks/clancy-check-update.js +43 -0
- package/hooks/clancy-context-monitor.js +134 -46
- package/hooks/clancy-post-compact.js +53 -0
- package/hooks/package.json +3 -0
- package/package.json +3 -2
- package/src/agents/devils-advocate.md +53 -0
- package/src/agents/verification-gate.md +128 -0
- package/src/roles/planner/workflows/approve-plan.md +2 -2
- package/src/roles/reviewer/workflows/logs.md +9 -6
- package/src/roles/setup/commands/help.md +7 -0
- package/src/roles/setup/workflows/init.md +111 -6
- package/src/roles/setup/workflows/scaffold.md +57 -0
- package/src/roles/setup/workflows/settings.md +145 -0
- package/src/roles/setup/workflows/update.md +18 -0
- package/src/roles/strategist/commands/approve-brief.md +20 -0
- package/src/roles/strategist/commands/brief.md +27 -0
- package/src/roles/strategist/workflows/approve-brief.md +763 -0
- package/src/roles/strategist/workflows/brief.md +732 -0
- package/src/templates/CLAUDE.md +8 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linear.js","sourceRoot":"","sources":["../../../../src/scripts/board/linear/linear.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"linear.js","sourceRoot":"","sources":["../../../../src/scripts/board/linear/linear.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"board-ops.d.ts","sourceRoot":"","sources":["../../../../src/scripts/once/board-ops/board-ops.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACV,MAAM,2CAA2C,CAAC;AAEnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIvD,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAExD;AAID,wBAAsB,SAAS,CAC7B,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAc1C;AAID,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CA8BtE;AAID,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,aAAa,EACrB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAmCf;AAID;;;;;;;;;;GAUG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"board-ops.d.ts","sourceRoot":"","sources":["../../../../src/scripts/once/board-ops/board-ops.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACV,MAAM,2CAA2C,CAAC;AAEnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIvD,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAExD;AAID,wBAAsB,SAAS,CAC7B,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAc1C;AAID,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CA8BtE;AAID,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,aAAa,EACrB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAmCf;AAID;;;;;;;;;;GAUG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAC,CA2B5D"}
|
|
@@ -106,7 +106,7 @@ export async function fetchEpicChildrenStatus(config, parentKey, parentId) {
|
|
|
106
106
|
case 'linear': {
|
|
107
107
|
if (!parentId)
|
|
108
108
|
return undefined;
|
|
109
|
-
return fetchLinearChildrenStatus(config.env.LINEAR_API_KEY, parentId);
|
|
109
|
+
return fetchLinearChildrenStatus(config.env.LINEAR_API_KEY, parentId, parentKey);
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
112
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"board-ops.js","sourceRoot":"","sources":["../../../../src/scripts/once/board-ops/board-ops.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"board-ops.js","sourceRoot":"","sources":["../../../../src/scripts/once/board-ops/board-ops.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,IAAI,yBAAyB,EAChD,WAAW,EACX,UAAU,GACX,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,eAAe,EACf,mBAAmB,IAAI,uBAAuB,EAC9C,cAAc,EACd,QAAQ,EACR,eAAe,IAAI,mBAAmB,GACvC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,mBAAmB,IAAI,yBAAyB,EAChD,aAAa,EACb,UAAU,EACV,eAAe,IAAI,qBAAqB,GACzC,MAAM,kCAAkC,CAAC;AAQ1C,iFAAiF;AAEjF,oEAAoE;AACpE,MAAM,UAAU,SAAS,CAAC,MAAmB;IAC3C,OAAO,MAAM,CAAC,GAAG,CAAC;AACpB,CAAC;AAED,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,MAAmB;IAEnB,QAAQ,MAAM,CAAC,QAAQ,EAAE,CAAC;QACxB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;YACvB,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;YAChE,OAAO,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACjE,CAAC;QAED,KAAK,QAAQ;YACX,OAAO,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAErE,KAAK,QAAQ;YACX,OAAO,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACjD,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF,MAAM,UAAU,cAAc,CAAC,MAAmB;IAChD,QAAQ,MAAM,CAAC,QAAQ,EAAE,CAAC;QACxB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;YACvB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBAC1C,OAAO,gDAAgD,CAAC;YAC1D,CAAC;YACD,IAAI,GAAG,CAAC,YAAY,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC1D,OAAO,4CAA4C,CAAC;YACtD,CAAC;YACD,IAAI,GAAG,CAAC,iBAAiB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACpE,OAAO,iDAAiD,CAAC;YAC3D,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBACzC,OAAO,uDAAuD,CAAC;YACjE,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC9C,OAAO,8CAA8C,CAAC;YACxD,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAmB,EACnB,MAAqB,EACrB,UAAkB;IAElB,QAAQ,MAAM,CAAC,QAAQ,EAAE,CAAC;QACxB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;YACvB,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;YAChE,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC;YAC5B,MAAM,EAAE,GAAG,MAAM,mBAAmB,CAClC,GAAG,CAAC,aAAa,EACjB,IAAI,EACJ,QAAQ,EACR,UAAU,CACX,CAAC;YACF,IAAI,EAAE;gBAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,UAAU,EAAE,CAAC,CAAC;YACzD,MAAM;QACR,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,yEAAyE;YACzE,8CAA8C;YAC9C,MAAM;QACR,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,aAAa;gBAAE,MAAM;YACjC,MAAM,EAAE,GAAG,MAAM,qBAAqB,CACpC,GAAG,CAAC,cAAc,EAClB,GAAG,CAAC,cAAc,EAClB,MAAM,CAAC,aAAa,EACpB,UAAU,CACX,CAAC;YACF,IAAI,EAAE;gBAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,UAAU,EAAE,CAAC,CAAC;YACzD,MAAM;QACR,CAAC;IACH,CAAC;AACH,CAAC;AAED,+EAA+E;AAE/E;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAAmB,EACnB,SAAiB,EACjB,QAAiB;IAEjB,QAAQ,MAAM,CAAC,QAAQ,EAAE,CAAC;QACxB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;YACvB,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;YAChE,OAAO,uBAAuB,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QACrE,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7D,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;gBAAE,OAAO,SAAS,CAAC;YAChD,OAAO,yBAAyB,CAC9B,MAAM,CAAC,GAAG,CAAC,YAAY,EACvB,MAAM,CAAC,GAAG,CAAC,WAAW,EACtB,WAAW,CACZ,CAAC;QACJ,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,CAAC,QAAQ;gBAAE,OAAO,SAAS,CAAC;YAChC,OAAO,yBAAyB,CAC9B,MAAM,CAAC,GAAG,CAAC,cAAc,EACzB,QAAQ,EACR,SAAS,CACV,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Append a cost entry to `.clancy/costs.log`.
|
|
3
|
+
*
|
|
4
|
+
* @param projectRoot - The root directory of the project.
|
|
5
|
+
* @param ticketKey - The ticket key (e.g., 'PROJ-101').
|
|
6
|
+
* @param startedAt - ISO 8601 timestamp when the ticket was started.
|
|
7
|
+
* @param tokenRate - Estimated tokens per minute (default: 6600).
|
|
8
|
+
*/
|
|
9
|
+
export declare function appendCostEntry(projectRoot: string, ticketKey: string, startedAt: string, tokenRate?: number): void;
|
|
10
|
+
//# sourceMappingURL=cost.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cost.d.ts","sourceRoot":"","sources":["../../../../src/scripts/once/cost/cost.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,SAAS,GAAE,MAAa,GACvB,IAAI,CAcN"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { appendFileSync, mkdirSync } from 'node:fs';
|
|
2
|
+
import { dirname, join } from 'node:path';
|
|
3
|
+
/**
|
|
4
|
+
* Append a cost entry to `.clancy/costs.log`.
|
|
5
|
+
*
|
|
6
|
+
* @param projectRoot - The root directory of the project.
|
|
7
|
+
* @param ticketKey - The ticket key (e.g., 'PROJ-101').
|
|
8
|
+
* @param startedAt - ISO 8601 timestamp when the ticket was started.
|
|
9
|
+
* @param tokenRate - Estimated tokens per minute (default: 6600).
|
|
10
|
+
*/
|
|
11
|
+
export function appendCostEntry(projectRoot, ticketKey, startedAt, tokenRate = 6600) {
|
|
12
|
+
const filePath = join(projectRoot, '.clancy', 'costs.log');
|
|
13
|
+
mkdirSync(dirname(filePath), { recursive: true });
|
|
14
|
+
const start = new Date(startedAt).getTime();
|
|
15
|
+
const now = Date.now();
|
|
16
|
+
const durationMs = Number.isNaN(start) ? 0 : Math.max(0, now - start);
|
|
17
|
+
const durationMin = Math.round(durationMs / 60000);
|
|
18
|
+
const estimatedTokens = Math.round(durationMin * tokenRate);
|
|
19
|
+
const timestamp = new Date().toISOString();
|
|
20
|
+
const line = `${timestamp} | ${ticketKey} | ${durationMin}min | ~${estimatedTokens} tokens (estimated)\n`;
|
|
21
|
+
appendFileSync(filePath, line, 'utf8');
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=cost.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cost.js","sourceRoot":"","sources":["../../../../src/scripts/once/cost/cost.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAC7B,WAAmB,EACnB,SAAiB,EACjB,SAAiB,EACjB,YAAoB,IAAI;IAExB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC3D,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAElD,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;IAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;IACtE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;IACnD,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IAE5D,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,IAAI,GAAG,GAAG,SAAS,MAAM,SAAS,MAAM,WAAW,UAAU,eAAe,uBAAuB,CAAC;IAE1G,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACzC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deliver.d.ts","sourceRoot":"","sources":["../../../../src/scripts/once/deliver/deliver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"deliver.d.ts","sourceRoot":"","sources":["../../../../src/scripts/once/deliver/deliver.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAyB7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIvD;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GACjB,OAAO,CAgET;AAID;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,OAAO,UAAQ,EACf,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,CAiLlB;AAID;;;;;;;;;;;;GAYG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC,CA6FlB"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { execFileSync } from 'node:child_process';
|
|
2
|
+
import { readFileSync } from 'node:fs';
|
|
3
|
+
import { join } from 'node:path';
|
|
2
4
|
import { formatDuration } from '../../../scripts/shared/format/format.js';
|
|
3
5
|
import { branchExists, checkout, fetchRemoteBranch, pushBranch, remoteBranchExists, } from '../../../scripts/shared/git-ops/git-ops.js';
|
|
4
6
|
import { appendProgress, findEntriesWithStatus, } from '../../../scripts/shared/progress/progress.js';
|
|
@@ -87,6 +89,21 @@ export async function deliverViaPullRequest(config, ticket, ticketBranch, target
|
|
|
87
89
|
return false;
|
|
88
90
|
}
|
|
89
91
|
console.log(green(` ✓ Pushed ${ticketBranch}`));
|
|
92
|
+
// Check for verification warnings (file exists when verification didn't fully pass)
|
|
93
|
+
let verificationWarning;
|
|
94
|
+
try {
|
|
95
|
+
const attemptPath = join(process.cwd(), '.clancy', 'verify-attempt.txt');
|
|
96
|
+
const attempt = readFileSync(attemptPath, 'utf8').trim();
|
|
97
|
+
const attemptNum = parseInt(attempt, 10);
|
|
98
|
+
if (attemptNum > 0) {
|
|
99
|
+
// The file exists = verification didn't fully pass. The number is
|
|
100
|
+
// the attempt counter (1 = ran once and failed, 2 = ran twice, etc.)
|
|
101
|
+
verificationWarning = `Verification checks did not fully pass (${attemptNum} attempt(s)). Review carefully.`;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
// No verify-attempt file — verification passed or wasn't run
|
|
106
|
+
}
|
|
90
107
|
// Attempt PR/MR creation
|
|
91
108
|
const platformOverride = sharedEnv(config).CLANCY_GIT_PLATFORM;
|
|
92
109
|
const remote = detectRemote(platformOverride);
|
|
@@ -96,7 +113,7 @@ export async function deliverViaPullRequest(config, ticket, ticketBranch, target
|
|
|
96
113
|
title: ticket.title,
|
|
97
114
|
description: ticket.description,
|
|
98
115
|
provider: config.provider,
|
|
99
|
-
}, targetBranch);
|
|
116
|
+
}, targetBranch, verificationWarning);
|
|
100
117
|
if (remote.host !== 'none' &&
|
|
101
118
|
remote.host !== 'unknown' &&
|
|
102
119
|
remote.host !== 'azure') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deliver.js","sourceRoot":"","sources":["../../../../src/scripts/once/deliver/deliver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"deliver.js","sourceRoot":"","sources":["../../../../src/scripts/once/deliver/deliver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,22 @@
|
|
|
1
1
|
import type { BoardConfig } from '../../../scripts/shared/env-schema/env-schema.js';
|
|
2
2
|
import type { FetchedTicket } from '../types/types.js';
|
|
3
|
-
|
|
3
|
+
/** Options for ticket fetching behaviour. */
|
|
4
|
+
export type FetchTicketOptions = {
|
|
5
|
+
/** If `true`, excludes tickets with the `clancy:hitl` label. */
|
|
6
|
+
isAfk?: boolean;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Fetch the next available unblocked ticket from the board.
|
|
10
|
+
*
|
|
11
|
+
* Fetches up to 5 candidate tickets and returns the first one that is not
|
|
12
|
+
* blocked. If all candidates are blocked, returns `undefined`.
|
|
13
|
+
*
|
|
14
|
+
* In AFK mode (`CLANCY_AFK_MODE=1` or `opts.isAfk`), tickets with the
|
|
15
|
+
* `clancy:hitl` label are excluded from the candidate pool.
|
|
16
|
+
*
|
|
17
|
+
* @param config - The board configuration.
|
|
18
|
+
* @param opts - Optional fetch behaviour overrides.
|
|
19
|
+
* @returns The first unblocked ticket, or `undefined` if none available.
|
|
20
|
+
*/
|
|
21
|
+
export declare function fetchTicket(config: BoardConfig, opts?: FetchTicketOptions): Promise<FetchedTicket | undefined>;
|
|
4
22
|
//# sourceMappingURL=fetch-ticket.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-ticket.d.ts","sourceRoot":"","sources":["../../../../src/scripts/once/fetch-ticket/fetch-ticket.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fetch-ticket.d.ts","sourceRoot":"","sources":["../../../../src/scripts/once/fetch-ticket/fetch-ticket.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAE7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,6CAA6C;AAC7C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,gEAAgE;IAChE,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAuIF;;;;;;;;;;;;GAYG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,WAAW,EACnB,IAAI,CAAC,EAAE,kBAAkB,GACxB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAYpC"}
|
|
@@ -1,50 +1,57 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { buildAuthHeader,
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { fetchBlockerStatus as fetchGitHubBlockerStatus, fetchIssues as fetchGitHubIssues, resolveUsername, } from '../../../scripts/board/github/github.js';
|
|
2
|
+
import { buildAuthHeader, fetchBlockerStatus as fetchJiraBlockerStatus, fetchTickets as fetchJiraTickets, } from '../../../scripts/board/jira/jira.js';
|
|
3
|
+
import { fetchBlockerStatus as fetchLinearBlockerStatus, fetchIssues as fetchLinearIssues, } from '../../../scripts/board/linear/linear.js';
|
|
4
|
+
/** Whether the current run is in AFK mode (set by the AFK runner). */
|
|
5
|
+
function detectAfkMode(opts) {
|
|
6
|
+
return opts?.isAfk ?? process.env.CLANCY_AFK_MODE === '1';
|
|
7
|
+
}
|
|
8
|
+
// ─── Board-specific candidate fetch ──────────────────────────────────────────
|
|
9
|
+
/**
|
|
10
|
+
* Fetch candidate tickets from the board.
|
|
11
|
+
*
|
|
12
|
+
* @param config - The board configuration.
|
|
13
|
+
* @param excludeHitl - Whether to exclude `clancy:hitl` labelled tickets.
|
|
14
|
+
* @returns Array of normalised candidate tickets.
|
|
15
|
+
*/
|
|
16
|
+
async function fetchCandidates(config, excludeHitl) {
|
|
6
17
|
switch (config.provider) {
|
|
7
18
|
case 'jira': {
|
|
8
19
|
const { env } = config;
|
|
9
20
|
const auth = buildAuthHeader(env.JIRA_USER, env.JIRA_API_TOKEN);
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
};
|
|
21
|
+
const tickets = await fetchJiraTickets(env.JIRA_BASE_URL, auth, env.JIRA_PROJECT_KEY, env.CLANCY_JQL_STATUS ?? 'To Do', env.CLANCY_JQL_SPRINT, env.CLANCY_LABEL, excludeHitl);
|
|
22
|
+
return tickets.map((ticket) => {
|
|
23
|
+
const blockerStr = ticket.blockers.length
|
|
24
|
+
? `Blocked by: ${ticket.blockers.join(', ')}`
|
|
25
|
+
: 'None';
|
|
26
|
+
return {
|
|
27
|
+
key: ticket.key,
|
|
28
|
+
title: ticket.title,
|
|
29
|
+
description: ticket.description,
|
|
30
|
+
parentInfo: ticket.epicKey ?? 'none',
|
|
31
|
+
blockers: blockerStr,
|
|
32
|
+
};
|
|
33
|
+
});
|
|
23
34
|
}
|
|
24
35
|
case 'github': {
|
|
25
36
|
const { env } = config;
|
|
26
37
|
const username = await resolveUsername(env.GITHUB_TOKEN);
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
return undefined;
|
|
30
|
-
return {
|
|
38
|
+
const tickets = await fetchGitHubIssues(env.GITHUB_TOKEN, env.GITHUB_REPO, env.CLANCY_LABEL, username, excludeHitl);
|
|
39
|
+
return tickets.map((ticket) => ({
|
|
31
40
|
key: ticket.key,
|
|
32
41
|
title: ticket.title,
|
|
33
42
|
description: ticket.description,
|
|
34
43
|
parentInfo: ticket.milestone ?? 'none',
|
|
35
44
|
blockers: 'None',
|
|
36
|
-
};
|
|
45
|
+
}));
|
|
37
46
|
}
|
|
38
47
|
case 'linear': {
|
|
39
48
|
const { env } = config;
|
|
40
|
-
const
|
|
49
|
+
const tickets = await fetchLinearIssues({
|
|
41
50
|
LINEAR_API_KEY: env.LINEAR_API_KEY,
|
|
42
51
|
LINEAR_TEAM_ID: env.LINEAR_TEAM_ID,
|
|
43
52
|
CLANCY_LABEL: env.CLANCY_LABEL,
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
return undefined;
|
|
47
|
-
return {
|
|
53
|
+
}, excludeHitl);
|
|
54
|
+
return tickets.map((ticket) => ({
|
|
48
55
|
key: ticket.key,
|
|
49
56
|
title: ticket.title,
|
|
50
57
|
description: ticket.description,
|
|
@@ -52,8 +59,65 @@ export async function fetchTicket(config) {
|
|
|
52
59
|
blockers: 'None',
|
|
53
60
|
linearIssueId: ticket.issueId,
|
|
54
61
|
issueId: ticket.issueId,
|
|
55
|
-
};
|
|
62
|
+
}));
|
|
56
63
|
}
|
|
57
64
|
}
|
|
58
65
|
}
|
|
66
|
+
// ─── Blocker check ───────────────────────────────────────────────────────────
|
|
67
|
+
/**
|
|
68
|
+
* Check whether a ticket is blocked on the board.
|
|
69
|
+
*
|
|
70
|
+
* @param config - The board configuration.
|
|
71
|
+
* @param ticket - The candidate ticket.
|
|
72
|
+
* @returns `true` if the ticket is blocked.
|
|
73
|
+
*/
|
|
74
|
+
async function isBlocked(config, ticket) {
|
|
75
|
+
switch (config.provider) {
|
|
76
|
+
case 'jira': {
|
|
77
|
+
const { env } = config;
|
|
78
|
+
const auth = buildAuthHeader(env.JIRA_USER, env.JIRA_API_TOKEN);
|
|
79
|
+
return fetchJiraBlockerStatus(env.JIRA_BASE_URL, auth, ticket.key);
|
|
80
|
+
}
|
|
81
|
+
case 'github': {
|
|
82
|
+
const { env } = config;
|
|
83
|
+
const issueNumber = parseInt(ticket.key.replace('#', ''), 10);
|
|
84
|
+
if (Number.isNaN(issueNumber))
|
|
85
|
+
return false;
|
|
86
|
+
return fetchGitHubBlockerStatus(env.GITHUB_TOKEN, env.GITHUB_REPO, issueNumber, ticket.description);
|
|
87
|
+
}
|
|
88
|
+
case 'linear': {
|
|
89
|
+
const { env } = config;
|
|
90
|
+
if (!ticket.issueId)
|
|
91
|
+
return false;
|
|
92
|
+
return fetchLinearBlockerStatus(env.LINEAR_API_KEY, ticket.issueId);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
// ─── Board-specific fetch (blocker-aware) ────────────────────────────────────
|
|
97
|
+
/**
|
|
98
|
+
* Fetch the next available unblocked ticket from the board.
|
|
99
|
+
*
|
|
100
|
+
* Fetches up to 5 candidate tickets and returns the first one that is not
|
|
101
|
+
* blocked. If all candidates are blocked, returns `undefined`.
|
|
102
|
+
*
|
|
103
|
+
* In AFK mode (`CLANCY_AFK_MODE=1` or `opts.isAfk`), tickets with the
|
|
104
|
+
* `clancy:hitl` label are excluded from the candidate pool.
|
|
105
|
+
*
|
|
106
|
+
* @param config - The board configuration.
|
|
107
|
+
* @param opts - Optional fetch behaviour overrides.
|
|
108
|
+
* @returns The first unblocked ticket, or `undefined` if none available.
|
|
109
|
+
*/
|
|
110
|
+
export async function fetchTicket(config, opts) {
|
|
111
|
+
const excludeHitl = detectAfkMode(opts);
|
|
112
|
+
const candidates = await fetchCandidates(config, excludeHitl);
|
|
113
|
+
if (!candidates.length)
|
|
114
|
+
return undefined;
|
|
115
|
+
for (const candidate of candidates) {
|
|
116
|
+
const blocked = await isBlocked(config, candidate);
|
|
117
|
+
if (!blocked)
|
|
118
|
+
return candidate;
|
|
119
|
+
console.log(`Skipping ${candidate.key} — blocked`);
|
|
120
|
+
}
|
|
121
|
+
return undefined;
|
|
122
|
+
}
|
|
59
123
|
//# sourceMappingURL=fetch-ticket.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-ticket.js","sourceRoot":"","sources":["../../../../src/scripts/once/fetch-ticket/fetch-ticket.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"fetch-ticket.js","sourceRoot":"","sources":["../../../../src/scripts/once/fetch-ticket/fetch-ticket.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export type LockData = {
|
|
2
|
+
pid: number;
|
|
3
|
+
ticketKey: string;
|
|
4
|
+
ticketTitle: string;
|
|
5
|
+
ticketBranch: string;
|
|
6
|
+
targetBranch: string;
|
|
7
|
+
parentKey: string;
|
|
8
|
+
description?: string;
|
|
9
|
+
startedAt: string;
|
|
10
|
+
};
|
|
11
|
+
export declare function writeLock(projectRoot: string, data: LockData): void;
|
|
12
|
+
export declare function readLock(projectRoot: string): LockData | undefined;
|
|
13
|
+
export declare function deleteLock(projectRoot: string): void;
|
|
14
|
+
export declare function deleteVerifyAttempt(projectRoot: string): void;
|
|
15
|
+
export declare function isPidAlive(pid: number): boolean;
|
|
16
|
+
export declare function isLockStale(lock: LockData): boolean;
|
|
17
|
+
//# sourceMappingURL=lock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../../../../src/scripts/once/lock/lock.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,QAAQ,GAAG;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,IAAI,CAInE;AAED,wBAAgB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAQlE;AAED,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAOpD;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAO7D;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAU/C;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAenD"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lock file management for `.clancy/lock.json`.
|
|
3
|
+
*
|
|
4
|
+
* Prevents double-runs and provides context for hooks
|
|
5
|
+
* (PostCompact, time guard, cost tracker).
|
|
6
|
+
*/
|
|
7
|
+
import { mkdirSync, readFileSync, unlinkSync, writeFileSync } from 'node:fs';
|
|
8
|
+
import { dirname, join } from 'node:path';
|
|
9
|
+
export function writeLock(projectRoot, data) {
|
|
10
|
+
const filePath = join(projectRoot, '.clancy', 'lock.json');
|
|
11
|
+
mkdirSync(dirname(filePath), { recursive: true });
|
|
12
|
+
writeFileSync(filePath, JSON.stringify(data, null, 2), 'utf8');
|
|
13
|
+
}
|
|
14
|
+
export function readLock(projectRoot) {
|
|
15
|
+
const filePath = join(projectRoot, '.clancy', 'lock.json');
|
|
16
|
+
try {
|
|
17
|
+
const content = readFileSync(filePath, 'utf8');
|
|
18
|
+
return JSON.parse(content);
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
return undefined;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
export function deleteLock(projectRoot) {
|
|
25
|
+
const filePath = join(projectRoot, '.clancy', 'lock.json');
|
|
26
|
+
try {
|
|
27
|
+
unlinkSync(filePath);
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
// File may not exist — that's fine
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
export function deleteVerifyAttempt(projectRoot) {
|
|
34
|
+
const filePath = join(projectRoot, '.clancy', 'verify-attempt.txt');
|
|
35
|
+
try {
|
|
36
|
+
unlinkSync(filePath);
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
// File may not exist — that's fine
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
export function isPidAlive(pid) {
|
|
43
|
+
try {
|
|
44
|
+
process.kill(pid, 0); // Signal 0 = no-op, just checks if process exists
|
|
45
|
+
return true;
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
// EPERM means the process exists but we lack permission to signal it — still alive
|
|
49
|
+
if (err instanceof Error && 'code' in err && err.code === 'EPERM')
|
|
50
|
+
return true;
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
export function isLockStale(lock) {
|
|
55
|
+
// If PID is dead, lock is stale
|
|
56
|
+
if (!isPidAlive(lock.pid))
|
|
57
|
+
return true;
|
|
58
|
+
// If PID is alive but lock is older than 24 hours, treat as PID reuse.
|
|
59
|
+
// Note: PID reuse can happen faster on busy systems, but 24h is a practical
|
|
60
|
+
// threshold — Clancy sessions never run that long. A false negative here means
|
|
61
|
+
// the user sees "another session is running" and must manually delete lock.json.
|
|
62
|
+
const lockAge = Date.now() - new Date(lock.startedAt).getTime();
|
|
63
|
+
if (Number.isNaN(lockAge))
|
|
64
|
+
return true; // Invalid timestamp — can't trust it
|
|
65
|
+
const twentyFourHours = 24 * 60 * 60 * 1000;
|
|
66
|
+
if (lockAge > twentyFourHours)
|
|
67
|
+
return true;
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=lock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../../src/scripts/once/lock/lock.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAa1C,MAAM,UAAU,SAAS,CAAC,WAAmB,EAAE,IAAc;IAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC3D,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,WAAmB;IAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC3D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAa,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,WAAmB;IAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC3D,IAAI,CAAC;QACH,UAAU,CAAC,QAAQ,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,mCAAmC;IACrC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAAmB;IACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAC;IACpE,IAAI,CAAC;QACH,UAAU,CAAC,QAAQ,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,mCAAmC;IACrC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAW;IACpC,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,kDAAkD;QACxE,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,mFAAmF;QACnF,IAAI,GAAG,YAAY,KAAK,IAAI,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO;YAC/D,OAAO,IAAI,CAAC;QACd,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAc;IACxC,gCAAgC;IAChC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAEvC,uEAAuE;IACvE,4EAA4E;IAC5E,+EAA+E;IAC/E,iFAAiF;IACjF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;IAChE,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,qCAAqC;IAE7E,MAAM,eAAe,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC5C,IAAI,OAAO,GAAG,eAAe;QAAE,OAAO,IAAI,CAAC;IAE3C,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"once.d.ts","sourceRoot":"","sources":["../../../src/scripts/once/once.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"once.d.ts","sourceRoot":"","sources":["../../../src/scripts/once/once.ts"],"names":[],"mappings":"AAqEA;;;;;;;;;GASG;AACH,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAkjBvD"}
|