@quickchatai/pi-quickreview 1.2.0 → 1.3.2
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 +79 -27
- package/assets/config.example.toml +25 -7
- package/assets/prompts/onboarding.md +8 -7
- package/assets/schemas/review-result.v1.json +60 -0
- package/dist/extensions/quickreview.d.ts +17 -5
- package/dist/extensions/quickreview.d.ts.map +1 -1
- package/dist/extensions/quickreview.js +79 -26
- package/dist/extensions/quickreview.js.map +1 -1
- package/dist/src/engine/auth.d.ts +4 -0
- package/dist/src/engine/auth.d.ts.map +1 -1
- package/dist/src/engine/auth.js +11 -2
- package/dist/src/engine/auth.js.map +1 -1
- package/dist/src/engine/lens/activity.d.ts +45 -0
- package/dist/src/engine/lens/activity.d.ts.map +1 -0
- package/dist/src/engine/lens/activity.js +118 -0
- package/dist/src/engine/lens/activity.js.map +1 -0
- package/dist/src/engine/lens/runlens.d.ts +7 -0
- package/dist/src/engine/lens/runlens.d.ts.map +1 -1
- package/dist/src/engine/lens/runlens.js +30 -1
- package/dist/src/engine/lens/runlens.js.map +1 -1
- package/dist/src/engine/lens/tool.d.ts +7 -0
- package/dist/src/engine/lens/tool.d.ts.map +1 -1
- package/dist/src/engine/lens/tool.js +101 -18
- package/dist/src/engine/lens/tool.js.map +1 -1
- package/dist/src/engine/lens/wave.d.ts +6 -0
- package/dist/src/engine/lens/wave.d.ts.map +1 -1
- package/dist/src/engine/lens/wave.js +16 -0
- package/dist/src/engine/lens/wave.js.map +1 -1
- package/dist/src/homes.js +1 -1
- package/dist/src/homes.js.map +1 -1
- package/dist/src/live/events.d.ts +3 -0
- package/dist/src/live/events.d.ts.map +1 -1
- package/dist/src/live/events.js.map +1 -1
- package/dist/src/live/lensline.d.ts +20 -0
- package/dist/src/live/lensline.d.ts.map +1 -0
- package/dist/src/live/lensline.js +70 -0
- package/dist/src/live/lensline.js.map +1 -0
- package/dist/src/live/projection.d.ts +55 -0
- package/dist/src/live/projection.d.ts.map +1 -0
- package/dist/src/live/projection.js +465 -0
- package/dist/src/live/projection.js.map +1 -0
- package/dist/src/live/read.d.ts +24 -0
- package/dist/src/live/read.d.ts.map +1 -0
- package/dist/src/live/read.js +60 -0
- package/dist/src/live/read.js.map +1 -0
- package/dist/src/live/writer.d.ts +3 -0
- package/dist/src/live/writer.d.ts.map +1 -1
- package/dist/src/live/writer.js +6 -1
- package/dist/src/live/writer.js.map +1 -1
- package/dist/src/localreview.d.ts +18 -8
- package/dist/src/localreview.d.ts.map +1 -1
- package/dist/src/localreview.js +103 -43
- package/dist/src/localreview.js.map +1 -1
- package/dist/src/modelroute.d.ts +4 -0
- package/dist/src/modelroute.d.ts.map +1 -1
- package/dist/src/modelroute.js +21 -0
- package/dist/src/modelroute.js.map +1 -1
- package/dist/src/plugin/args.d.ts +38 -7
- package/dist/src/plugin/args.d.ts.map +1 -1
- package/dist/src/plugin/args.js +134 -37
- package/dist/src/plugin/args.js.map +1 -1
- package/dist/src/plugin/index.d.ts.map +1 -1
- package/dist/src/plugin/index.js +5 -1
- package/dist/src/plugin/index.js.map +1 -1
- package/dist/src/plugin/login.d.ts +8 -4
- package/dist/src/plugin/login.d.ts.map +1 -1
- package/dist/src/plugin/login.js +25 -32
- package/dist/src/plugin/login.js.map +1 -1
- package/dist/src/plugin/messages.d.ts +7 -0
- package/dist/src/plugin/messages.d.ts.map +1 -0
- package/dist/src/plugin/messages.js +13 -0
- package/dist/src/plugin/messages.js.map +1 -0
- package/dist/src/plugin/peers.d.ts +17 -0
- package/dist/src/plugin/peers.d.ts.map +1 -0
- package/dist/src/plugin/peers.js +55 -0
- package/dist/src/plugin/peers.js.map +1 -0
- package/dist/src/plugin/review.d.ts +52 -6
- package/dist/src/plugin/review.d.ts.map +1 -1
- package/dist/src/plugin/review.js +261 -95
- package/dist/src/plugin/review.js.map +1 -1
- package/dist/src/plugin/scan.d.ts +80 -44
- package/dist/src/plugin/scan.d.ts.map +1 -1
- package/dist/src/plugin/scan.js +450 -233
- package/dist/src/plugin/scan.js.map +1 -1
- package/dist/src/plugin/scancases.d.ts +33 -0
- package/dist/src/plugin/scancases.d.ts.map +1 -0
- package/dist/src/plugin/scancases.js +153 -0
- package/dist/src/plugin/scancases.js.map +1 -0
- package/dist/src/plugin/settings.d.ts +18 -0
- package/dist/src/plugin/settings.d.ts.map +1 -0
- package/dist/src/plugin/settings.js +47 -0
- package/dist/src/plugin/settings.js.map +1 -0
- package/dist/src/plugin/setup.d.ts +35 -12
- package/dist/src/plugin/setup.d.ts.map +1 -1
- package/dist/src/plugin/setup.js +258 -118
- package/dist/src/plugin/setup.js.map +1 -1
- package/dist/src/plugin/versiongate.d.ts +3 -0
- package/dist/src/plugin/versiongate.d.ts.map +1 -1
- package/dist/src/plugin/versiongate.js +9 -4
- package/dist/src/plugin/versiongate.js.map +1 -1
- package/dist/src/profileoverrides.d.ts +3 -0
- package/dist/src/profileoverrides.d.ts.map +1 -1
- package/dist/src/profileoverrides.js +9 -2
- package/dist/src/profileoverrides.js.map +1 -1
- package/dist/src/reviewapi.d.ts +22 -31
- package/dist/src/reviewapi.d.ts.map +1 -1
- package/dist/src/reviewapi.js +90 -66
- package/dist/src/reviewapi.js.map +1 -1
- package/dist/src/reviewdest.d.ts +1 -1
- package/dist/src/reviewdest.d.ts.map +1 -1
- package/dist/src/reviewdest.js +4 -3
- package/dist/src/reviewdest.js.map +1 -1
- package/dist/src/reviewtarget.d.ts +36 -0
- package/dist/src/reviewtarget.d.ts.map +1 -0
- package/dist/src/reviewtarget.js +6 -0
- package/dist/src/reviewtarget.js.map +1 -0
- package/dist/src/round-progress.d.ts +5 -0
- package/dist/src/round-progress.d.ts.map +1 -1
- package/dist/src/round-progress.js.map +1 -1
- package/dist/src/round-stage-deadlines.d.ts +26 -1
- package/dist/src/round-stage-deadlines.d.ts.map +1 -1
- package/dist/src/round-stage-deadlines.js +45 -2
- package/dist/src/round-stage-deadlines.js.map +1 -1
- package/dist/src/savedpost.d.ts +65 -0
- package/dist/src/savedpost.d.ts.map +1 -0
- package/dist/src/savedpost.js +131 -0
- package/dist/src/savedpost.js.map +1 -0
- package/dist/src/scan/caseread.d.ts +84 -0
- package/dist/src/scan/caseread.d.ts.map +1 -0
- package/dist/src/scan/caseread.js +263 -0
- package/dist/src/scan/caseread.js.map +1 -0
- package/dist/src/scan/channelfs.d.ts +6 -0
- package/dist/src/scan/channelfs.d.ts.map +1 -0
- package/dist/src/scan/channelfs.js +27 -0
- package/dist/src/scan/channelfs.js.map +1 -0
- package/dist/src/scan/cutrender.d.ts +13 -0
- package/dist/src/scan/cutrender.d.ts.map +1 -0
- package/dist/src/scan/cutrender.js +51 -0
- package/dist/src/scan/cutrender.js.map +1 -0
- package/dist/src/scan/facts.d.ts +72 -0
- package/dist/src/scan/facts.d.ts.map +1 -0
- package/dist/src/scan/facts.js +593 -0
- package/dist/src/scan/facts.js.map +1 -0
- package/dist/src/scan/findings.d.ts +320 -0
- package/dist/src/scan/findings.d.ts.map +1 -0
- package/dist/src/scan/findings.js +948 -0
- package/dist/src/scan/findings.js.map +1 -0
- package/dist/src/scan/ledger.d.ts +116 -0
- package/dist/src/scan/ledger.d.ts.map +1 -0
- package/dist/src/scan/ledger.js +207 -0
- package/dist/src/scan/ledger.js.map +1 -0
- package/dist/src/scan/presentation.d.ts +19 -0
- package/dist/src/scan/presentation.d.ts.map +1 -0
- package/dist/src/scan/presentation.js +9 -0
- package/dist/src/scan/presentation.js.map +1 -0
- package/dist/src/scan/scan.d.ts +354 -0
- package/dist/src/scan/scan.d.ts.map +1 -0
- package/dist/src/scan/scan.js +725 -0
- package/dist/src/scan/scan.js.map +1 -0
- package/dist/src/scan/scanagents.d.ts +23 -0
- package/dist/src/scan/scanagents.d.ts.map +1 -0
- package/dist/src/scan/scanagents.js +99 -0
- package/dist/src/scan/scanagents.js.map +1 -0
- package/dist/src/scan/scanassemble.d.ts +65 -0
- package/dist/src/scan/scanassemble.d.ts.map +1 -0
- package/dist/src/scan/scanassemble.js +93 -0
- package/dist/src/scan/scanassemble.js.map +1 -0
- package/dist/src/scan/scanfs.d.ts +26 -0
- package/dist/src/scan/scanfs.d.ts.map +1 -0
- package/dist/src/scan/scanfs.js +229 -0
- package/dist/src/scan/scanfs.js.map +1 -0
- package/dist/src/scan/scanlease.d.ts +50 -0
- package/dist/src/scan/scanlease.d.ts.map +1 -0
- package/dist/src/scan/scanlease.js +251 -0
- package/dist/src/scan/scanlease.js.map +1 -0
- package/dist/src/scan/scanleaves.d.ts +55 -0
- package/dist/src/scan/scanleaves.d.ts.map +1 -0
- package/dist/src/scan/scanleaves.js +258 -0
- package/dist/src/scan/scanleaves.js.map +1 -0
- package/dist/src/scan/scanports.d.ts +79 -0
- package/dist/src/scan/scanports.d.ts.map +1 -0
- package/dist/src/scan/scanports.js +8 -0
- package/dist/src/scan/scanports.js.map +1 -0
- package/dist/src/scan/scanrender.d.ts +128 -0
- package/dist/src/scan/scanrender.d.ts.map +1 -0
- package/dist/src/scan/scanrender.js +527 -0
- package/dist/src/scan/scanrender.js.map +1 -0
- package/dist/src/scan/scanreport.d.ts +126 -0
- package/dist/src/scan/scanreport.d.ts.map +1 -0
- package/dist/src/scan/scanreport.js +289 -0
- package/dist/src/scan/scanreport.js.map +1 -0
- package/dist/src/scan/scanrun.d.ts +472 -0
- package/dist/src/scan/scanrun.d.ts.map +1 -0
- package/dist/src/scan/scanrun.js +1733 -0
- package/dist/src/scan/scanrun.js.map +1 -0
- package/dist/src/scan/scantree.d.ts +21 -0
- package/dist/src/scan/scantree.d.ts.map +1 -0
- package/dist/src/scan/scantree.js +297 -0
- package/dist/src/scan/scantree.js.map +1 -0
- package/dist/src/scan/scanverbs.d.ts +208 -0
- package/dist/src/scan/scanverbs.d.ts.map +1 -0
- package/dist/src/scan/scanverbs.js +689 -0
- package/dist/src/scan/scanverbs.js.map +1 -0
- package/dist/src/scan/stage2.d.ts +221 -0
- package/dist/src/scan/stage2.d.ts.map +1 -0
- package/dist/src/scan/stage2.js +617 -0
- package/dist/src/scan/stage2.js.map +1 -0
- package/dist/src/scan/stage2request.d.ts +125 -0
- package/dist/src/scan/stage2request.d.ts.map +1 -0
- package/dist/src/scan/stage2request.js +259 -0
- package/dist/src/scan/stage2request.js.map +1 -0
- package/dist/src/scan/textsniff.d.ts +14 -0
- package/dist/src/scan/textsniff.d.ts.map +1 -0
- package/dist/src/scan/textsniff.js +88 -0
- package/dist/src/scan/textsniff.js.map +1 -0
- package/dist/src/scan/unitcut.d.ts +135 -0
- package/dist/src/scan/unitcut.d.ts.map +1 -0
- package/dist/src/scan/unitcut.js +437 -0
- package/dist/src/scan/unitcut.js.map +1 -0
- package/dist/src/scan/unitcutstore.d.ts +155 -0
- package/dist/src/scan/unitcutstore.d.ts.map +1 -0
- package/dist/src/scan/unitcutstore.js +381 -0
- package/dist/src/scan/unitcutstore.js.map +1 -0
- package/dist/src/setupchecklist.d.ts +240 -0
- package/dist/src/setupchecklist.d.ts.map +1 -0
- package/dist/src/setupchecklist.js +407 -0
- package/dist/src/setupchecklist.js.map +1 -0
- package/package.json +7 -3
- package/skills/qcr-review/SKILL.md +24 -0
- package/skills/qcr-scan/SKILL.md +23 -0
- package/skills/qcr-setup/SKILL.md +18 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reviewdest.js","sourceRoot":"","sources":["../../src/reviewdest.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,
|
|
1
|
+
{"version":3,"file":"reviewdest.js","sourceRoot":"","sources":["../../src/reviewdest.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/** What is reviewed. */
|
|
2
|
+
export type ReviewTarget =
|
|
3
|
+
/** The repo dir's current branch against its base (`base`, else origin's
|
|
4
|
+
* default branch, main, master). `head` reviews that branch (or commit)
|
|
5
|
+
* instead of HEAD; `uncommitted` adds the working tree's uncommitted edits
|
|
6
|
+
* on top of HEAD's commits, reviewed as one (with `head`, the named branch
|
|
7
|
+
* is its commits alone). A branch with uncommitted edits keeps no state:
|
|
8
|
+
* its next review is a whole one. Never posted anywhere. */
|
|
9
|
+
{
|
|
10
|
+
kind: "branch";
|
|
11
|
+
base?: string;
|
|
12
|
+
head?: string;
|
|
13
|
+
uncommitted?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/** The uncommitted working tree (staged, unstaged and new files) against
|
|
16
|
+
* HEAD. Never posted anywhere. */
|
|
17
|
+
| {
|
|
18
|
+
kind: "uncommitted";
|
|
19
|
+
}
|
|
20
|
+
/** A pull request: `12`, `#12` or a github.com pull URL. A PR on another
|
|
21
|
+
* repo than the repo dir's needs `repo` (owner/name). */
|
|
22
|
+
| {
|
|
23
|
+
kind: "pr";
|
|
24
|
+
pr: string | number;
|
|
25
|
+
repo?: string;
|
|
26
|
+
}
|
|
27
|
+
/** A unified diff: its text, or a reader the run calls when it gets there
|
|
28
|
+
* (a reader's Error message is the refusal, word for word). `name` says
|
|
29
|
+
* where it came from: a file name, or "-" (or nothing) for a piped diff.
|
|
30
|
+
* The repo dir is optional and only read; a diff is never posted. */
|
|
31
|
+
| {
|
|
32
|
+
kind: "diff";
|
|
33
|
+
diff: string | (() => Promise<string>);
|
|
34
|
+
name?: string;
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=reviewtarget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reviewtarget.d.ts","sourceRoot":"","sources":["../../src/reviewtarget.ts"],"names":[],"mappings":"AAKA,wBAAwB;AACxB,MAAM,MAAM,YAAY;AACtB;;;;;4DAK4D;AAC1D;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE;AACzE;kCACkC;GAChC;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE;AACzB;yDACyD;GACvD;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE;AACpD;;;qEAGqE;GACnE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// What a review is of: the type a review's target is named by
|
|
2
|
+
// (packages/pi-plugin/src/reviewapi.ts runs it, the plugin's arguments build
|
|
3
|
+
// it), in a module of its own so naming a target never imports the review's
|
|
4
|
+
// runtime.
|
|
5
|
+
export {};
|
|
6
|
+
//# sourceMappingURL=reviewtarget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reviewtarget.js","sourceRoot":"","sources":["../../src/reviewtarget.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,6EAA6E;AAC7E,4EAA4E;AAC5E,WAAW"}
|
|
@@ -18,7 +18,12 @@ export interface LiveAgentProgress {
|
|
|
18
18
|
* snapshots; supervisors must never infer their absence as a failure. */
|
|
19
19
|
started_at?: string;
|
|
20
20
|
finished_at?: string;
|
|
21
|
+
/** The running tool, or the last one, as `<tool>: <args>` (or the bare name). */
|
|
21
22
|
current_tool?: string;
|
|
23
|
+
/** The path the running pass's current tool works on (a read's, grep's or
|
|
24
|
+
* find's `path`), relative to the pass's cwd when inside it. Absent on the
|
|
25
|
+
* native subagent shape and on a pass with no such tool yet. */
|
|
26
|
+
current_target?: string;
|
|
22
27
|
last_message?: string;
|
|
23
28
|
error?: string;
|
|
24
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"round-progress.d.ts","sourceRoot":"","sources":["../../src/round-progress.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,mBAAmB,6CAA8C,CAAC;AAC/E,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAE1E;AAED,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC;AAE/D,MAAM,WAAW,iBAAiB;IAChC;4EACwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd;;6CAEyC;IACzC,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,MAAM,EAAE,eAAe,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB;6EACyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,mBAAmB,GAC7B,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,WAAW,CAAC;AAE5F,MAAM,WAAW,qBAAqB;IACpC;kFAC8E;IAC9E,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,QAAQ,GAAG,SAAS,CAAC;IACpC;;gDAE4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;iFAC6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;4EAEwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,iBAAiB,EAAE,CAAC;CAC7B;AAED;;qEAEqE;AACrE,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAElD;AAKD,mDAAmD;AACnD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAEtE;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,GAAG,OAAO,CAEpF;AAED;;4BAE4B;AAC5B,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,qBAAqB,EAC/B,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,iBAAiB,EAAE,CAKrB;AAED;;+DAE+D;AAC/D,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,qBAAqB,EAC/B,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,mBAAmB,CAcrB;AAQD,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS,CA4FjF;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAE,KAAK,EAAE,cAAc,CAAA;CAAE,GACzB;IAAE,KAAK,EAAE,kBAAkB,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACnE;IAAE,KAAK,EAAE,YAAY,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC5D;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,eAAe,CAAA;CAAE,GACnF;IAAE,KAAK,EAAE,eAAe,CAAA;CAAE,CAAC;AAE/B,MAAM,MAAM,eAAe,GAAG,kBAAkB,GAAG;IACjD,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;;;;oDAKoD;AACpD,eAAO,MAAM,sBAAsB,QAAa,CAAC;AAEjD,sCAAsC;AACtC,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED;mEACmE;AACnE,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,eAAe,EACrB,QAAQ,SAAyB,GAChC,IAAI,CAUN"}
|
|
1
|
+
{"version":3,"file":"round-progress.d.ts","sourceRoot":"","sources":["../../src/round-progress.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"round-progress.js","sourceRoot":"","sources":["../../src/round-progress.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAU,CAAC;AAG/E,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC;AAC7F,CAAC;
|
|
1
|
+
{"version":3,"file":"round-progress.js","sourceRoot":"","sources":["../../src/round-progress.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAU,CAAC;AAG/E,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC;AAC7F,CAAC;AAgED;;qEAEqE;AACrE,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AACxC,CAAC;AAED,mEAAmE;AACnE,MAAM,WAAW,GAAG,IAAI,MAAM,CAAC,QAAQ,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAEtE,mDAAmD;AACnD,MAAM,UAAU,qBAAqB,CAAC,MAAuB;IAC3D,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,QAAQ,CAAC;AACvD,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,kBAAkB,CAAC,UAAwC;IACzE,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;AACnG,CAAC;AAED;;4BAE4B;AAC5B,MAAM,UAAU,mBAAmB,CACjC,QAA+B,EAC/B,OAA0B;IAE1B,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;IACrE,OAAO,QAAQ,CAAC,MAAM,CAAC,MAAM,CAC3B,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,CAC3F,CAAC;AACJ,CAAC;AAED;;+DAE+D;AAC/D,MAAM,UAAU,mBAAmB,CACjC,QAA+B,EAC/B,OAA0B;IAE1B,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,cAAc;QAAE,OAAO,SAAS,CAAC;IACjG,IAAI,QAAQ,CAAC,aAAa,KAAK,SAAS;QAAE,OAAO,WAAW,CAAC;IAC7D,IAAI,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;QACrD,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC;IAC1D,MAAM,QAAQ,GAAG,qBAAqB,CAAC;IACvC,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;QACzF,OAAO,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM;SAClC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;SAC/D,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5C,OAAO,eAAe,IAAI,aAAa,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,CAAC;AACjF,CAAC;AAED,SAAS,OAAO,CAAC,KAAc;IAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjC,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAmC,CAAC;QAChE,IACE,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;YAC5C,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;YACjC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,SAAS;YAC3C,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,SAAS;YACvC,CAAC,KAAK,CAAC,aAAa,KAAK,QAAQ,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,CAAC;YACvE,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,CAAC;YACzE,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC;YACxE,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS;gBACjC,CAAC,OAAO,KAAK,CAAC,cAAc,KAAK,QAAQ;oBACvC,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;YAClD,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YAC3F,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS;gBAC3B,CAAC,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACtE,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK,SAAS;YAC7C,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ;YACvC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;YAE5B,OAAO,SAAS,CAAC;QAEnB,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,cAAc,CAAE,CAAC;QAClD,MAAM,QAAQ,GACZ,KAAK,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAC3F,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC7F,MAAM,SAAS,GACb,KAAK,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC/F,MAAM,MAAM,GACV,KAAK,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACvF,IACE,CAAC,KAAK,CAAC,mBAAmB,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,CAAC;YACnE,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,CAAC;YAC7D,CAAC,KAAK,CAAC,qBAAqB,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,CAAC;YACtE,CAAC,KAAK,CAAC,iBAAiB,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,CAAC;YAC/D,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,UAAU,CAAC;YACjD,CAAC,QAAQ,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,GAAG,QAAQ,CAAC;YAC3E,CAAC,QAAQ,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,GAAG,QAAQ,CAAC;YAC3E,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,GAAG,SAAS,CAAC;YACvE,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,IAAI,SAAS,KAAK,MAAM,CAAC;YAEzE,OAAO,SAAS,CAAC;QACnB,IAAI,KAAK,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS;YACjF,OAAO,SAAS,CAAC;QAEnB,IACE,KAAK,CAAC,OAAO,KAAK,CAAC;YACnB,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;YACvB,SAAS,KAAK,SAAS;YACvB,MAAM,KAAK,SAAS;YAEpB,OAAO,SAAS,CAAC;QACnB,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACpC,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAC9E,OAAO,SAAS,CAAC;YACnB,MAAM,KAAK,GAAG,QAAsC,CAAC;YACrD,IACE,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,CAAC;gBAC/D,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;gBAC/B,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACnF,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC;gBAChC,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;gBACrC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC;gBACnC,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;gBACpC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC;gBAElC,OAAO,SAAS,CAAC;YACnB,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACvF,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC1F,IACE,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,CAAC;gBACzD,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,CAAC;gBAC3D,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,GAAG,UAAU,CAAC;gBAC/C,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,GAAG,QAAQ,CAAC;gBACvE,CAAC,OAAO,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,OAAO,CAAC;gBACvE,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAE,CAAC;gBACjE,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,IAAI,OAAO,KAAK,SAAS,CAAC;gBAC9C,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,CAAC;gBAC7E,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,CAAC;gBAE7E,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC5D,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,MAAM;gBAAE,OAAO,SAAS,CAAC;QACzD,CAAC;QACD,OAAO,KAA8B,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AA0BD;;;;;oDAKoD;AACpD,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,GAAG,IAAI,CAAC;AAEjD,sCAAsC;AACtC,MAAM,UAAU,eAAe,CAAC,YAAoB;IAClD,OAAO,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC;AAED;mEACmE;AACnE,MAAM,UAAU,iBAAiB,CAC/B,IAAY,EACZ,IAAqB,EACrB,QAAQ,GAAG,sBAAsB;IAEjC,MAAM,KAAK,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,CAAC;QACH,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;IAC7B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,GAAG,CAAC;IAClE,CAAC;IACD,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,QAAQ;QAAE,UAAU,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC;IAC1F,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -1,10 +1,35 @@
|
|
|
1
|
+
/** A plan up to this many discovery rows runs inside the configured bounds:
|
|
2
|
+
* measured live rounds of 20 rows or fewer finished in under 19 minutes. */
|
|
3
|
+
export declare const LARGE_PLAN_ROWS = 20;
|
|
4
|
+
/** Each discovery row past LARGE_PLAN_ROWS earns this much more passes and
|
|
5
|
+
* running time: a 36-row plan took 27 minutes with nothing retried. */
|
|
6
|
+
export declare const LARGE_PLAN_MIN_PER_ROW = 1;
|
|
7
|
+
/** The most a large plan earns, so the hard cap (45 + 20) stays inside the
|
|
8
|
+
* 75-minute round deadline. */
|
|
9
|
+
export declare const LARGE_PLAN_EXTRA_MAX_MIN = 20;
|
|
10
|
+
/** Extra passes and running minutes a plan of `discoveryRows` rows earns. */
|
|
11
|
+
export declare function largePlanExtraMin(discoveryRows: number): number;
|
|
12
|
+
/** The minutes a round's passes and running bounds get over the configured
|
|
13
|
+
* ones: the follow-up sweep's allowance or the large plan's, whichever is
|
|
14
|
+
* larger. They do not stack: the hard cap stays inside the round deadline. */
|
|
15
|
+
export declare function roundStageAllowanceMin(o: {
|
|
16
|
+
sweepOwed: boolean;
|
|
17
|
+
sweepExtraMin: number;
|
|
18
|
+
discoveryRows?: number;
|
|
19
|
+
}): number;
|
|
20
|
+
/** The discovery rows of a round's plan: its `pass_plan` rows (a split lens
|
|
21
|
+
* counts once per row) without the validator, else its lens list. */
|
|
22
|
+
export declare function discoveryRowsOf(round: {
|
|
23
|
+
pass_plan: string | null;
|
|
24
|
+
lenses: string;
|
|
25
|
+
}): number;
|
|
1
26
|
/** Start-derived round deadlines, shared by enforcement and status publication. */
|
|
2
27
|
export declare function roundStageDeadlines(started: number, bounds: {
|
|
3
28
|
first_pass_max_min: number;
|
|
4
29
|
passes_max_min: number;
|
|
5
30
|
running_max_min: number;
|
|
6
31
|
follow_up_sweep_extra_min?: number;
|
|
7
|
-
}, sweepOwed: boolean): {
|
|
32
|
+
}, sweepOwed: boolean, discoveryRows?: number): {
|
|
8
33
|
first_pass_start: number;
|
|
9
34
|
passes_complete: number;
|
|
10
35
|
running_hard_bound: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"round-stage-deadlines.d.ts","sourceRoot":"","sources":["../../src/round-stage-deadlines.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE;IACN,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,yBAAyB,CAAC,EAAE,MAAM,CAAC;CACpC,EACD,SAAS,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"round-stage-deadlines.d.ts","sourceRoot":"","sources":["../../src/round-stage-deadlines.ts"],"names":[],"mappings":"AAAA;4EAC4E;AAC5E,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC;uEACuE;AACvE,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC;+BAC+B;AAC/B,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,6EAA6E;AAC7E,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAG/D;AAED;;8EAE8E;AAC9E,wBAAgB,sBAAsB,CAAC,CAAC,EAAE;IACxC,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GAAG,MAAM,CAKT;AAED;qEACqE;AACrE,wBAAgB,eAAe,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAe3F;AAED,mFAAmF;AACnF,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE;IACN,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,yBAAyB,CAAC,EAAE,MAAM,CAAC;CACpC,EACD,SAAS,EAAE,OAAO,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB;IACD,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CAWA"}
|
|
@@ -1,6 +1,49 @@
|
|
|
1
|
+
/** A plan up to this many discovery rows runs inside the configured bounds:
|
|
2
|
+
* measured live rounds of 20 rows or fewer finished in under 19 minutes. */
|
|
3
|
+
export const LARGE_PLAN_ROWS = 20;
|
|
4
|
+
/** Each discovery row past LARGE_PLAN_ROWS earns this much more passes and
|
|
5
|
+
* running time: a 36-row plan took 27 minutes with nothing retried. */
|
|
6
|
+
export const LARGE_PLAN_MIN_PER_ROW = 1;
|
|
7
|
+
/** The most a large plan earns, so the hard cap (45 + 20) stays inside the
|
|
8
|
+
* 75-minute round deadline. */
|
|
9
|
+
export const LARGE_PLAN_EXTRA_MAX_MIN = 20;
|
|
10
|
+
/** Extra passes and running minutes a plan of `discoveryRows` rows earns. */
|
|
11
|
+
export function largePlanExtraMin(discoveryRows) {
|
|
12
|
+
const over = Math.max(0, discoveryRows - LARGE_PLAN_ROWS);
|
|
13
|
+
return Math.min(over * LARGE_PLAN_MIN_PER_ROW, LARGE_PLAN_EXTRA_MAX_MIN);
|
|
14
|
+
}
|
|
15
|
+
/** The minutes a round's passes and running bounds get over the configured
|
|
16
|
+
* ones: the follow-up sweep's allowance or the large plan's, whichever is
|
|
17
|
+
* larger. They do not stack: the hard cap stays inside the round deadline. */
|
|
18
|
+
export function roundStageAllowanceMin(o) {
|
|
19
|
+
return Math.max(o.sweepOwed ? o.sweepExtraMin : 0, o.discoveryRows === undefined ? 0 : largePlanExtraMin(o.discoveryRows));
|
|
20
|
+
}
|
|
21
|
+
/** The discovery rows of a round's plan: its `pass_plan` rows (a split lens
|
|
22
|
+
* counts once per row) without the validator, else its lens list. */
|
|
23
|
+
export function discoveryRowsOf(round) {
|
|
24
|
+
if (round.pass_plan) {
|
|
25
|
+
try {
|
|
26
|
+
const rows = JSON.parse(round.pass_plan);
|
|
27
|
+
if (Array.isArray(rows))
|
|
28
|
+
return rows.filter((row) => row?.lens !== "pass-validate")
|
|
29
|
+
.length;
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
// An unreadable plan falls back to the lens list.
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return round.lenses
|
|
36
|
+
.split(",")
|
|
37
|
+
.map((name) => name.trim())
|
|
38
|
+
.filter((name) => name !== "" && name !== "pass-validate").length;
|
|
39
|
+
}
|
|
1
40
|
/** Start-derived round deadlines, shared by enforcement and status publication. */
|
|
2
|
-
export function roundStageDeadlines(started, bounds, sweepOwed) {
|
|
3
|
-
const extra =
|
|
41
|
+
export function roundStageDeadlines(started, bounds, sweepOwed, discoveryRows) {
|
|
42
|
+
const extra = roundStageAllowanceMin({
|
|
43
|
+
sweepOwed,
|
|
44
|
+
sweepExtraMin: bounds.follow_up_sweep_extra_min ?? 0,
|
|
45
|
+
...(discoveryRows === undefined ? {} : { discoveryRows }),
|
|
46
|
+
});
|
|
4
47
|
return {
|
|
5
48
|
first_pass_start: started + bounds.first_pass_max_min * 60_000,
|
|
6
49
|
passes_complete: started + (bounds.passes_max_min + extra) * 60_000,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"round-stage-deadlines.js","sourceRoot":"","sources":["../../src/round-stage-deadlines.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,MAAM,UAAU,mBAAmB,CACjC,OAAe,EACf,MAKC,EACD,SAAkB;
|
|
1
|
+
{"version":3,"file":"round-stage-deadlines.js","sourceRoot":"","sources":["../../src/round-stage-deadlines.ts"],"names":[],"mappings":"AAAA;4EAC4E;AAC5E,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAClC;uEACuE;AACvE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACxC;+BAC+B;AAC/B,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAE3C,6EAA6E;AAC7E,MAAM,UAAU,iBAAiB,CAAC,aAAqB;IACrD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,GAAG,eAAe,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,sBAAsB,EAAE,wBAAwB,CAAC,CAAC;AAC3E,CAAC;AAED;;8EAE8E;AAC9E,MAAM,UAAU,sBAAsB,CAAC,CAItC;IACC,OAAO,IAAI,CAAC,GAAG,CACb,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EACjC,CAAC,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,CACvE,CAAC;AACJ,CAAC;AAED;qEACqE;AACrE,MAAM,UAAU,eAAe,CAAC,KAAmD;IACjF,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,IAAI,GAAY,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAClD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBACrB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAE,GAAiC,EAAE,IAAI,KAAK,eAAe,CAAC;qBACtF,MAAM,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,kDAAkD;QACpD,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,MAAM;SAChB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,eAAe,CAAC,CAAC,MAAM,CAAC;AACtE,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,mBAAmB,CACjC,OAAe,EACf,MAKC,EACD,SAAkB,EAClB,aAAsB;IAMtB,MAAM,KAAK,GAAG,sBAAsB,CAAC;QACnC,SAAS;QACT,aAAa,EAAE,MAAM,CAAC,yBAAyB,IAAI,CAAC;QACpD,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC;KAC1D,CAAC,CAAC;IACH,OAAO;QACL,gBAAgB,EAAE,OAAO,GAAG,MAAM,CAAC,kBAAkB,GAAG,MAAM;QAC9D,eAAe,EAAE,OAAO,GAAG,CAAC,MAAM,CAAC,cAAc,GAAG,KAAK,CAAC,GAAG,MAAM;QACnE,kBAAkB,EAAE,OAAO,GAAG,CAAC,MAAM,CAAC,eAAe,GAAG,KAAK,CAAC,GAAG,MAAM;KACxE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { type PostReview } from "./reviewpost.js";
|
|
2
|
+
import { type CredentialSource, type PrCredentialDeps, type PrFetchRequest } from "./prtarget.js";
|
|
3
|
+
/** The GitHub credential sources and where GitHub is (a test seam). */
|
|
4
|
+
export type PostGithub = PrCredentialDeps & Pick<PrFetchRequest, "fetchFn" | "gitBase" | "apiBase">;
|
|
5
|
+
/** A finished PR review that was not posted, kept beside the run's files
|
|
6
|
+
* (`<out dir>/post.json`, the result's `post_ready`) so a host that asks the
|
|
7
|
+
* person later posts exactly what `--to pr` would have (`postSavedReview`).
|
|
8
|
+
* No credential is kept: the post resolves its own when it is made. */
|
|
9
|
+
export interface SavedPost {
|
|
10
|
+
version: 1;
|
|
11
|
+
repo: string;
|
|
12
|
+
pr: number;
|
|
13
|
+
/** The head the review is of: the post's commit. */
|
|
14
|
+
head_sha: string;
|
|
15
|
+
/** The credential the PR was read with, and the repo's `post_as`. */
|
|
16
|
+
source: CredentialSource;
|
|
17
|
+
post_as: string | null;
|
|
18
|
+
/** Findings the bot had already posted on the PR, left out of `review`. */
|
|
19
|
+
skipped: number;
|
|
20
|
+
review: PostReview;
|
|
21
|
+
}
|
|
22
|
+
export declare const SAVED_POST_FILE = "post.json";
|
|
23
|
+
/** What a post did: the result's `post` block and its line for a person. */
|
|
24
|
+
export interface PostOutcome {
|
|
25
|
+
failed: boolean;
|
|
26
|
+
post: Record<string, unknown>;
|
|
27
|
+
line: string;
|
|
28
|
+
}
|
|
29
|
+
/** Post one assembled review: one comment-only review through the one gate,
|
|
30
|
+
* with the install's dry_run (AGENTS.md invariant 6). Both the run's own post
|
|
31
|
+
* and a saved one go through here. */
|
|
32
|
+
export declare function postAssembled(o: {
|
|
33
|
+
repo: string;
|
|
34
|
+
pr: number;
|
|
35
|
+
headSha: string;
|
|
36
|
+
credential: {
|
|
37
|
+
ok: true;
|
|
38
|
+
token: string;
|
|
39
|
+
} | {
|
|
40
|
+
ok: false;
|
|
41
|
+
error: string;
|
|
42
|
+
};
|
|
43
|
+
review: PostReview;
|
|
44
|
+
skipped: number;
|
|
45
|
+
dryRun: boolean;
|
|
46
|
+
dryrunDir: string;
|
|
47
|
+
github?: PostGithub;
|
|
48
|
+
log?: (line: string) => void;
|
|
49
|
+
}): Promise<PostOutcome>;
|
|
50
|
+
/** Post a finished review the run kept for later (`SavedPost`, the result's
|
|
51
|
+
* `post_ready`): the same comment-only review `--to pr` makes, through the
|
|
52
|
+
* same gate with the install's dry_run, posted as the credential found now
|
|
53
|
+
* (or the repo's `post_as`). Never throws: the outcome says what happened. */
|
|
54
|
+
export declare function postSavedReview(file: string, o: {
|
|
55
|
+
config: {
|
|
56
|
+
dry_run: boolean;
|
|
57
|
+
github: {
|
|
58
|
+
secrets_dir: string;
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
dryrunDir: string;
|
|
62
|
+
github?: PostGithub;
|
|
63
|
+
log?: (line: string) => void;
|
|
64
|
+
}): Promise<PostOutcome>;
|
|
65
|
+
//# sourceMappingURL=savedpost.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"savedpost.d.ts","sourceRoot":"","sources":["../../src/savedpost.ts"],"names":[],"mappings":"AAQA,OAAO,EAAkD,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClG,OAAO,EAGL,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACpB,MAAM,eAAe,CAAC;AAEvB,uEAAuE;AACvE,MAAM,MAAM,UAAU,GAAG,gBAAgB,GAAG,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC;AAEpG;;;uEAGuE;AACvE,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,CAAC,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,MAAM,EAAE,gBAAgB,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,2EAA2E;IAC3E,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,eAAO,MAAM,eAAe,cAAc,CAAC;AAE3C,4EAA4E;AAC5E,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;sCAEsC;AACtC,wBAAsB,aAAa,CAAC,CAAC,EAAE;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACvE,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B,GAAG,OAAO,CAAC,WAAW,CAAC,CA2DvB;AAyBD;;;8EAG8E;AAC9E,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE;IACD,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE;YAAE,WAAW,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IAC9D,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B,GACA,OAAO,CAAC,WAAW,CAAC,CA8BtB"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
// A finished PR review's post: the run's own (packages/pi-plugin/src/reviewapi.ts)
|
|
2
|
+
// and one the run kept for later (`post.json`, the result's `post_ready`),
|
|
3
|
+
// which a host posts once the person says yes. Both are one comment-only
|
|
4
|
+
// review through the one gate with the install's dry_run (AGENTS.md
|
|
5
|
+
// invariant 6). This module reaches only the post and the credential chain,
|
|
6
|
+
// never the review's runtime, so a host that only posts a kept review (the
|
|
7
|
+
// app's home) imports it alone.
|
|
8
|
+
import { readFileSync } from "node:fs";
|
|
9
|
+
import { localPostGate, postReviewToPr } from "./reviewpost.js";
|
|
10
|
+
import { resolvePostCredential, resolvePrCredential, } from "./prtarget.js";
|
|
11
|
+
export const SAVED_POST_FILE = "post.json";
|
|
12
|
+
/** Post one assembled review: one comment-only review through the one gate,
|
|
13
|
+
* with the install's dry_run (AGENTS.md invariant 6). Both the run's own post
|
|
14
|
+
* and a saved one go through here. */
|
|
15
|
+
export async function postAssembled(o) {
|
|
16
|
+
const gh = o.github;
|
|
17
|
+
const id = o.credential;
|
|
18
|
+
// Every finding was the bot's already (none left inline or in the body):
|
|
19
|
+
// there is nothing to post, not even a review body to repeat.
|
|
20
|
+
const res = !id.ok
|
|
21
|
+
? id
|
|
22
|
+
: o.skipped > 0 && o.review.comments.length === 0 && !o.review.bodyFindings
|
|
23
|
+
? { ok: true, posted: 0, skipped: o.skipped, url: null }
|
|
24
|
+
: await postReviewToPr({
|
|
25
|
+
repo: o.repo,
|
|
26
|
+
number: o.pr,
|
|
27
|
+
headSha: o.headSha,
|
|
28
|
+
token: id.token,
|
|
29
|
+
// The one gate, with the install's dry_run: a dry-run install records
|
|
30
|
+
// the review under its dryrun dir and sends nothing (AGENTS.md invariant 6).
|
|
31
|
+
gate: localPostGate({
|
|
32
|
+
dryRun: o.dryRun,
|
|
33
|
+
dryrunDir: o.dryrunDir,
|
|
34
|
+
token: id.token,
|
|
35
|
+
...(gh?.fetchFn ? { fetchFn: gh.fetchFn } : {}),
|
|
36
|
+
...(gh?.apiBase ? { apiBase: gh.apiBase } : {}),
|
|
37
|
+
...(o.log ? { log: (msg) => o.log(`[quickreviewd] ${msg}`) } : {}),
|
|
38
|
+
}),
|
|
39
|
+
review: o.review,
|
|
40
|
+
...(gh?.fetchFn ? { fetchFn: gh.fetchFn } : {}),
|
|
41
|
+
...(gh?.apiBase ? { apiBase: gh.apiBase } : {}),
|
|
42
|
+
});
|
|
43
|
+
if (res.ok && res.recorded !== undefined)
|
|
44
|
+
return {
|
|
45
|
+
failed: false,
|
|
46
|
+
post: {
|
|
47
|
+
ok: true,
|
|
48
|
+
posted: 0,
|
|
49
|
+
skipped: res.skipped,
|
|
50
|
+
url: null,
|
|
51
|
+
dry_run: true,
|
|
52
|
+
would_post: res.wouldPost,
|
|
53
|
+
recorded: res.recorded,
|
|
54
|
+
},
|
|
55
|
+
line: `Dry run (dry_run = true in this install's config): the review of ${res.wouldPost} ` +
|
|
56
|
+
`comment${res.wouldPost === 1 ? "" : "s"} on PR #${o.pr} was recorded, not posted: ${res.recorded}`,
|
|
57
|
+
};
|
|
58
|
+
if (res.ok)
|
|
59
|
+
return {
|
|
60
|
+
failed: false,
|
|
61
|
+
post: { ok: true, posted: res.posted, skipped: res.skipped, url: res.url },
|
|
62
|
+
line: res.posted === 0
|
|
63
|
+
? `Nothing posted: ${res.skipped} comment${res.skipped === 1 ? " is" : "s are"} already on the PR.`
|
|
64
|
+
: `Posted ${res.posted} comment${res.posted === 1 ? "" : "s"} to PR #${o.pr} (comment-only review)` +
|
|
65
|
+
`${res.skipped ? `, ${res.skipped} already there` : ""}${res.url ? `: ${res.url}` : ""}`,
|
|
66
|
+
};
|
|
67
|
+
return {
|
|
68
|
+
failed: true,
|
|
69
|
+
post: { ok: false, error: res.error },
|
|
70
|
+
line: `Review not posted: ${res.error}`,
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
/** Read a saved post; null when the file is not one. */
|
|
74
|
+
function readSavedPost(file) {
|
|
75
|
+
try {
|
|
76
|
+
const s = JSON.parse(readFileSync(file, "utf8"));
|
|
77
|
+
const r = s.review;
|
|
78
|
+
if (s.version !== 1 ||
|
|
79
|
+
typeof s.repo !== "string" ||
|
|
80
|
+
typeof s.pr !== "number" ||
|
|
81
|
+
typeof s.head_sha !== "string" ||
|
|
82
|
+
typeof s.source !== "string" ||
|
|
83
|
+
typeof s.skipped !== "number" ||
|
|
84
|
+
r === undefined ||
|
|
85
|
+
typeof r.body !== "string" ||
|
|
86
|
+
!Array.isArray(r.comments))
|
|
87
|
+
return null;
|
|
88
|
+
return { ...s, post_as: typeof s.post_as === "string" ? s.post_as : null };
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
/** Post a finished review the run kept for later (`SavedPost`, the result's
|
|
95
|
+
* `post_ready`): the same comment-only review `--to pr` makes, through the
|
|
96
|
+
* same gate with the install's dry_run, posted as the credential found now
|
|
97
|
+
* (or the repo's `post_as`). Never throws: the outcome says what happened. */
|
|
98
|
+
export async function postSavedReview(file, o) {
|
|
99
|
+
const fail = (error) => ({
|
|
100
|
+
failed: true,
|
|
101
|
+
post: { ok: false, error },
|
|
102
|
+
line: `Review not posted: ${error}`,
|
|
103
|
+
});
|
|
104
|
+
const saved = readSavedPost(file);
|
|
105
|
+
if (saved === null)
|
|
106
|
+
return fail(`${file} is not a saved review`);
|
|
107
|
+
const secrets = o.config.github.secrets_dir;
|
|
108
|
+
let credential;
|
|
109
|
+
try {
|
|
110
|
+
const read = await resolvePrCredential(secrets, o.github);
|
|
111
|
+
credential = read.ok
|
|
112
|
+
? await resolvePostCredential(secrets, saved.post_as, read, o.github)
|
|
113
|
+
: read;
|
|
114
|
+
}
|
|
115
|
+
catch (err) {
|
|
116
|
+
credential = { ok: false, error: String(err).slice(0, 200) };
|
|
117
|
+
}
|
|
118
|
+
return postAssembled({
|
|
119
|
+
repo: saved.repo,
|
|
120
|
+
pr: saved.pr,
|
|
121
|
+
headSha: saved.head_sha,
|
|
122
|
+
credential,
|
|
123
|
+
review: saved.review,
|
|
124
|
+
skipped: saved.skipped,
|
|
125
|
+
dryRun: o.config.dry_run,
|
|
126
|
+
dryrunDir: o.dryrunDir,
|
|
127
|
+
...(o.github ? { github: o.github } : {}),
|
|
128
|
+
...(o.log ? { log: o.log } : {}),
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=savedpost.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"savedpost.js","sourceRoot":"","sources":["../../src/savedpost.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/** An agent file of the companion set: `name`/`tools`/`model` frontmatter
|
|
2
|
+
* and the system prompt below it — the native subagent loader's format. */
|
|
3
|
+
export interface AgentFile {
|
|
4
|
+
name: string;
|
|
5
|
+
tools: string[];
|
|
6
|
+
model: string | null;
|
|
7
|
+
systemPrompt: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function parseAgentFile(text: string): AgentFile | null;
|
|
10
|
+
/** The tools whose `path` argument names content the model read. `find` and
|
|
11
|
+
* `ls` list names and read no content, so they are not reads. */
|
|
12
|
+
export declare const FILE_READ_TOOLS: readonly string[];
|
|
13
|
+
/** The path a `tool_execution_start` event says the model asked to read, or
|
|
14
|
+
* null. An attempt, not a read: `piCaseRunner` credits it only once the
|
|
15
|
+
* call's `tool_execution_end` reports success (`readSucceeded`).
|
|
16
|
+
* VERIFY-ON-PIN (read from 0.99.1's dist: the JSON mode passes agent events
|
|
17
|
+
* through verbatim — `tool_execution_start` carries `toolName` and `args`;
|
|
18
|
+
* `read` and `grep` both take `path`): the event and argument spelling. */
|
|
19
|
+
export declare function readPathOf(event: {
|
|
20
|
+
type?: string;
|
|
21
|
+
toolName?: unknown;
|
|
22
|
+
args?: unknown;
|
|
23
|
+
}): string | null;
|
|
24
|
+
/** The id of a `tool_execution_end` that finished WITHOUT an error, or null.
|
|
25
|
+
* A failed read (a missing file, an offset past its end) or a grep that
|
|
26
|
+
* could not run read nothing, so its start credits no file.
|
|
27
|
+
* VERIFY-ON-PIN (0.99.1's agent-core `tool_execution_end` carries
|
|
28
|
+
* `toolCallId` and `isError`; the same pair is in the JSON-mode transcripts
|
|
29
|
+
* kept by a scan at 1.0.0): the event spelling. */
|
|
30
|
+
export declare function readSucceeded(event: {
|
|
31
|
+
type?: string;
|
|
32
|
+
toolCallId?: unknown;
|
|
33
|
+
isError?: unknown;
|
|
34
|
+
}): string | null;
|
|
35
|
+
/** The file a read of `raw` opened, for a child running in `cwd` — pi's own
|
|
36
|
+
* resolution (`resolveToCwd`): one leading `@` stripped, `~` expanded, a
|
|
37
|
+
* relative path taken against the child's cwd, `.`/`..` collapsed. The scan
|
|
38
|
+
* judges what the lens opened, not how it spelled it: the child runs in the
|
|
39
|
+
* app root, not the scanned tree, so a relative `api/x.py` opened the app
|
|
40
|
+
* root's copy — another repository, or this checkout at HEAD — and must not
|
|
41
|
+
* pass for a read of the tree.
|
|
42
|
+
* VERIFY-ON-PIN (read from 0.99.1's dist/core/tools/path-utils.js
|
|
43
|
+
* `resolveToCwd` → utils/paths `resolvePath` with `stripAtPrefix` and
|
|
44
|
+
* `normalizeUnicodeSpaces`, `file://` URLs included): the macOS
|
|
45
|
+
* filename variants its `resolveReadPath` also tries are not modelled — they
|
|
46
|
+
* only differ for a path that does not exist as spelled. */
|
|
47
|
+
export declare function resolvedReadPath(raw: string, cwd: string, home: string): string;
|
|
48
|
+
/** What one case's event stream says, fed event by event: the last assistant
|
|
49
|
+
* text, pi's own per-message cost summed, how the model stopped, and the files
|
|
50
|
+
* its `read`/`grep` calls opened. One reader for both hosts of a leaf — the
|
|
51
|
+
* child process (`piCaseRunner`) and the in-process session
|
|
52
|
+
* (src/engine/caserunner-sdk.ts) emit the same events. */
|
|
53
|
+
export declare function caseReadout(cwd: string,
|
|
54
|
+
/** The user's home, which a read's `~` expands against. */
|
|
55
|
+
home: string, onCost?: (spentSoFar: number) => void): {
|
|
56
|
+
feed(event: unknown): void;
|
|
57
|
+
readonly final: string;
|
|
58
|
+
readonly failure: string | null;
|
|
59
|
+
readonly reads: string[];
|
|
60
|
+
/** The summed cost; null when no message priced itself. */
|
|
61
|
+
spent(): number | null;
|
|
62
|
+
};
|
|
63
|
+
/** The env one leaf's pi starts with: `source` (the driver's) filtered to the
|
|
64
|
+
* allowlist, the GitHub token envs always dropped, and `QCR_GITHUB_READ_ENV`
|
|
65
|
+
* (the path of the file holding the read token) with them. */
|
|
66
|
+
export declare function leafEnv(source: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
|
|
67
|
+
/** The stderr a failed case's reason is taken from: its last characters. */
|
|
68
|
+
export declare const STDERR_TAIL_CHARS = 4000;
|
|
69
|
+
/** The last three lines of the last `STDERR_TAIL_CHARS` characters of a failed
|
|
70
|
+
* leaf's stderr, joined with " / " — the excerpt a failure reason quotes. */
|
|
71
|
+
export declare function stderrExcerpt(stderr: string): string;
|
|
72
|
+
/** Transcript directories kept: the newest by modification time. */
|
|
73
|
+
export declare const TRANSCRIPT_RUNS_KEPT = 20;
|
|
74
|
+
/** Where a case's transcript lands under `dir`, relative to it: the case id's
|
|
75
|
+
* first segment (the run) is the directory, the rest of it the file name —
|
|
76
|
+
* `r3/row-2#1/validate` → `r3/row-2_1.validate.jsonl`. Every segment is
|
|
77
|
+
* reduced to `[A-Za-z0-9._-]` and none may be `.` or `..`, so an id never
|
|
78
|
+
* names a path outside `dir`. Pure. */
|
|
79
|
+
export declare function transcriptFile(id: string): string;
|
|
80
|
+
/** Remove all but the newest `keep` run directories under `dir` (by
|
|
81
|
+
* modification time, never `except`). Best effort: a transcript is evidence,
|
|
82
|
+
* not state, and a failure here never touches a case. */
|
|
83
|
+
export declare function pruneTranscripts(dir: string, keep: number, except: string): void;
|
|
84
|
+
//# sourceMappingURL=caseread.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"caseread.d.ts","sourceRoot":"","sources":["../../../src/scan/caseread.ts"],"names":[],"mappings":"AAUA;2EAC2E;AAC3E,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAmB7D;AAED;iEACiE;AACjE,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAAqB,CAAC;AAEnE;;;;;2EAK2E;AAC3E,wBAAgB,UAAU,CAAC,KAAK,EAAE;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,GAAG,MAAM,GAAG,IAAI,CAKhB;AAED;;;;;mDAKmD;AACnD,wBAAgB,aAAa,CAAC,KAAK,EAAE;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,MAAM,GAAG,IAAI,CAGhB;AAED;;;;;;;;;;;4DAW4D;AAC5D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAgB/E;AAED;;;;0DAI0D;AAC1D,wBAAgB,WAAW,CACzB,GAAG,EAAE,MAAM;AACX,2DAA2D;AAC3D,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,GACpC;IACD,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IACzB,2DAA2D;IAC3D,KAAK,IAAI,MAAM,GAAG,IAAI,CAAC;CACxB,CAqEA;AA0CD;;8DAE8D;AAC9D,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAUpE;AAED,4EAA4E;AAC5E,eAAO,MAAM,iBAAiB,OAAO,CAAC;AAEtC;6EAC6E;AAC7E,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,oEAAoE;AACpE,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC;;;;uCAIuC;AACvC,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAQjD;AAED;;yDAEyD;AACzD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAWhF"}
|