@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.
Files changed (231) hide show
  1. package/README.md +79 -27
  2. package/assets/config.example.toml +25 -7
  3. package/assets/prompts/onboarding.md +8 -7
  4. package/assets/schemas/review-result.v1.json +60 -0
  5. package/dist/extensions/quickreview.d.ts +17 -5
  6. package/dist/extensions/quickreview.d.ts.map +1 -1
  7. package/dist/extensions/quickreview.js +79 -26
  8. package/dist/extensions/quickreview.js.map +1 -1
  9. package/dist/src/engine/auth.d.ts +4 -0
  10. package/dist/src/engine/auth.d.ts.map +1 -1
  11. package/dist/src/engine/auth.js +11 -2
  12. package/dist/src/engine/auth.js.map +1 -1
  13. package/dist/src/engine/lens/activity.d.ts +45 -0
  14. package/dist/src/engine/lens/activity.d.ts.map +1 -0
  15. package/dist/src/engine/lens/activity.js +118 -0
  16. package/dist/src/engine/lens/activity.js.map +1 -0
  17. package/dist/src/engine/lens/runlens.d.ts +7 -0
  18. package/dist/src/engine/lens/runlens.d.ts.map +1 -1
  19. package/dist/src/engine/lens/runlens.js +30 -1
  20. package/dist/src/engine/lens/runlens.js.map +1 -1
  21. package/dist/src/engine/lens/tool.d.ts +7 -0
  22. package/dist/src/engine/lens/tool.d.ts.map +1 -1
  23. package/dist/src/engine/lens/tool.js +101 -18
  24. package/dist/src/engine/lens/tool.js.map +1 -1
  25. package/dist/src/engine/lens/wave.d.ts +6 -0
  26. package/dist/src/engine/lens/wave.d.ts.map +1 -1
  27. package/dist/src/engine/lens/wave.js +16 -0
  28. package/dist/src/engine/lens/wave.js.map +1 -1
  29. package/dist/src/homes.js +1 -1
  30. package/dist/src/homes.js.map +1 -1
  31. package/dist/src/live/events.d.ts +3 -0
  32. package/dist/src/live/events.d.ts.map +1 -1
  33. package/dist/src/live/events.js.map +1 -1
  34. package/dist/src/live/lensline.d.ts +20 -0
  35. package/dist/src/live/lensline.d.ts.map +1 -0
  36. package/dist/src/live/lensline.js +70 -0
  37. package/dist/src/live/lensline.js.map +1 -0
  38. package/dist/src/live/projection.d.ts +55 -0
  39. package/dist/src/live/projection.d.ts.map +1 -0
  40. package/dist/src/live/projection.js +465 -0
  41. package/dist/src/live/projection.js.map +1 -0
  42. package/dist/src/live/read.d.ts +24 -0
  43. package/dist/src/live/read.d.ts.map +1 -0
  44. package/dist/src/live/read.js +60 -0
  45. package/dist/src/live/read.js.map +1 -0
  46. package/dist/src/live/writer.d.ts +3 -0
  47. package/dist/src/live/writer.d.ts.map +1 -1
  48. package/dist/src/live/writer.js +6 -1
  49. package/dist/src/live/writer.js.map +1 -1
  50. package/dist/src/localreview.d.ts +18 -8
  51. package/dist/src/localreview.d.ts.map +1 -1
  52. package/dist/src/localreview.js +103 -43
  53. package/dist/src/localreview.js.map +1 -1
  54. package/dist/src/modelroute.d.ts +4 -0
  55. package/dist/src/modelroute.d.ts.map +1 -1
  56. package/dist/src/modelroute.js +21 -0
  57. package/dist/src/modelroute.js.map +1 -1
  58. package/dist/src/plugin/args.d.ts +38 -7
  59. package/dist/src/plugin/args.d.ts.map +1 -1
  60. package/dist/src/plugin/args.js +134 -37
  61. package/dist/src/plugin/args.js.map +1 -1
  62. package/dist/src/plugin/index.d.ts.map +1 -1
  63. package/dist/src/plugin/index.js +5 -1
  64. package/dist/src/plugin/index.js.map +1 -1
  65. package/dist/src/plugin/login.d.ts +8 -4
  66. package/dist/src/plugin/login.d.ts.map +1 -1
  67. package/dist/src/plugin/login.js +25 -32
  68. package/dist/src/plugin/login.js.map +1 -1
  69. package/dist/src/plugin/messages.d.ts +7 -0
  70. package/dist/src/plugin/messages.d.ts.map +1 -0
  71. package/dist/src/plugin/messages.js +13 -0
  72. package/dist/src/plugin/messages.js.map +1 -0
  73. package/dist/src/plugin/peers.d.ts +17 -0
  74. package/dist/src/plugin/peers.d.ts.map +1 -0
  75. package/dist/src/plugin/peers.js +55 -0
  76. package/dist/src/plugin/peers.js.map +1 -0
  77. package/dist/src/plugin/review.d.ts +52 -6
  78. package/dist/src/plugin/review.d.ts.map +1 -1
  79. package/dist/src/plugin/review.js +261 -95
  80. package/dist/src/plugin/review.js.map +1 -1
  81. package/dist/src/plugin/scan.d.ts +80 -44
  82. package/dist/src/plugin/scan.d.ts.map +1 -1
  83. package/dist/src/plugin/scan.js +450 -233
  84. package/dist/src/plugin/scan.js.map +1 -1
  85. package/dist/src/plugin/scancases.d.ts +33 -0
  86. package/dist/src/plugin/scancases.d.ts.map +1 -0
  87. package/dist/src/plugin/scancases.js +153 -0
  88. package/dist/src/plugin/scancases.js.map +1 -0
  89. package/dist/src/plugin/settings.d.ts +18 -0
  90. package/dist/src/plugin/settings.d.ts.map +1 -0
  91. package/dist/src/plugin/settings.js +47 -0
  92. package/dist/src/plugin/settings.js.map +1 -0
  93. package/dist/src/plugin/setup.d.ts +35 -12
  94. package/dist/src/plugin/setup.d.ts.map +1 -1
  95. package/dist/src/plugin/setup.js +258 -118
  96. package/dist/src/plugin/setup.js.map +1 -1
  97. package/dist/src/plugin/versiongate.d.ts +3 -0
  98. package/dist/src/plugin/versiongate.d.ts.map +1 -1
  99. package/dist/src/plugin/versiongate.js +9 -4
  100. package/dist/src/plugin/versiongate.js.map +1 -1
  101. package/dist/src/profileoverrides.d.ts +3 -0
  102. package/dist/src/profileoverrides.d.ts.map +1 -1
  103. package/dist/src/profileoverrides.js +9 -2
  104. package/dist/src/profileoverrides.js.map +1 -1
  105. package/dist/src/reviewapi.d.ts +22 -31
  106. package/dist/src/reviewapi.d.ts.map +1 -1
  107. package/dist/src/reviewapi.js +90 -66
  108. package/dist/src/reviewapi.js.map +1 -1
  109. package/dist/src/reviewdest.d.ts +1 -1
  110. package/dist/src/reviewdest.d.ts.map +1 -1
  111. package/dist/src/reviewdest.js +4 -3
  112. package/dist/src/reviewdest.js.map +1 -1
  113. package/dist/src/reviewtarget.d.ts +36 -0
  114. package/dist/src/reviewtarget.d.ts.map +1 -0
  115. package/dist/src/reviewtarget.js +6 -0
  116. package/dist/src/reviewtarget.js.map +1 -0
  117. package/dist/src/round-progress.d.ts +5 -0
  118. package/dist/src/round-progress.d.ts.map +1 -1
  119. package/dist/src/round-progress.js.map +1 -1
  120. package/dist/src/round-stage-deadlines.d.ts +26 -1
  121. package/dist/src/round-stage-deadlines.d.ts.map +1 -1
  122. package/dist/src/round-stage-deadlines.js +45 -2
  123. package/dist/src/round-stage-deadlines.js.map +1 -1
  124. package/dist/src/savedpost.d.ts +65 -0
  125. package/dist/src/savedpost.d.ts.map +1 -0
  126. package/dist/src/savedpost.js +131 -0
  127. package/dist/src/savedpost.js.map +1 -0
  128. package/dist/src/scan/caseread.d.ts +84 -0
  129. package/dist/src/scan/caseread.d.ts.map +1 -0
  130. package/dist/src/scan/caseread.js +263 -0
  131. package/dist/src/scan/caseread.js.map +1 -0
  132. package/dist/src/scan/channelfs.d.ts +6 -0
  133. package/dist/src/scan/channelfs.d.ts.map +1 -0
  134. package/dist/src/scan/channelfs.js +27 -0
  135. package/dist/src/scan/channelfs.js.map +1 -0
  136. package/dist/src/scan/cutrender.d.ts +13 -0
  137. package/dist/src/scan/cutrender.d.ts.map +1 -0
  138. package/dist/src/scan/cutrender.js +51 -0
  139. package/dist/src/scan/cutrender.js.map +1 -0
  140. package/dist/src/scan/facts.d.ts +72 -0
  141. package/dist/src/scan/facts.d.ts.map +1 -0
  142. package/dist/src/scan/facts.js +593 -0
  143. package/dist/src/scan/facts.js.map +1 -0
  144. package/dist/src/scan/findings.d.ts +320 -0
  145. package/dist/src/scan/findings.d.ts.map +1 -0
  146. package/dist/src/scan/findings.js +948 -0
  147. package/dist/src/scan/findings.js.map +1 -0
  148. package/dist/src/scan/ledger.d.ts +116 -0
  149. package/dist/src/scan/ledger.d.ts.map +1 -0
  150. package/dist/src/scan/ledger.js +207 -0
  151. package/dist/src/scan/ledger.js.map +1 -0
  152. package/dist/src/scan/presentation.d.ts +19 -0
  153. package/dist/src/scan/presentation.d.ts.map +1 -0
  154. package/dist/src/scan/presentation.js +9 -0
  155. package/dist/src/scan/presentation.js.map +1 -0
  156. package/dist/src/scan/scan.d.ts +354 -0
  157. package/dist/src/scan/scan.d.ts.map +1 -0
  158. package/dist/src/scan/scan.js +725 -0
  159. package/dist/src/scan/scan.js.map +1 -0
  160. package/dist/src/scan/scanagents.d.ts +23 -0
  161. package/dist/src/scan/scanagents.d.ts.map +1 -0
  162. package/dist/src/scan/scanagents.js +99 -0
  163. package/dist/src/scan/scanagents.js.map +1 -0
  164. package/dist/src/scan/scanassemble.d.ts +65 -0
  165. package/dist/src/scan/scanassemble.d.ts.map +1 -0
  166. package/dist/src/scan/scanassemble.js +93 -0
  167. package/dist/src/scan/scanassemble.js.map +1 -0
  168. package/dist/src/scan/scanfs.d.ts +26 -0
  169. package/dist/src/scan/scanfs.d.ts.map +1 -0
  170. package/dist/src/scan/scanfs.js +229 -0
  171. package/dist/src/scan/scanfs.js.map +1 -0
  172. package/dist/src/scan/scanlease.d.ts +50 -0
  173. package/dist/src/scan/scanlease.d.ts.map +1 -0
  174. package/dist/src/scan/scanlease.js +251 -0
  175. package/dist/src/scan/scanlease.js.map +1 -0
  176. package/dist/src/scan/scanleaves.d.ts +55 -0
  177. package/dist/src/scan/scanleaves.d.ts.map +1 -0
  178. package/dist/src/scan/scanleaves.js +258 -0
  179. package/dist/src/scan/scanleaves.js.map +1 -0
  180. package/dist/src/scan/scanports.d.ts +79 -0
  181. package/dist/src/scan/scanports.d.ts.map +1 -0
  182. package/dist/src/scan/scanports.js +8 -0
  183. package/dist/src/scan/scanports.js.map +1 -0
  184. package/dist/src/scan/scanrender.d.ts +128 -0
  185. package/dist/src/scan/scanrender.d.ts.map +1 -0
  186. package/dist/src/scan/scanrender.js +527 -0
  187. package/dist/src/scan/scanrender.js.map +1 -0
  188. package/dist/src/scan/scanreport.d.ts +126 -0
  189. package/dist/src/scan/scanreport.d.ts.map +1 -0
  190. package/dist/src/scan/scanreport.js +289 -0
  191. package/dist/src/scan/scanreport.js.map +1 -0
  192. package/dist/src/scan/scanrun.d.ts +472 -0
  193. package/dist/src/scan/scanrun.d.ts.map +1 -0
  194. package/dist/src/scan/scanrun.js +1733 -0
  195. package/dist/src/scan/scanrun.js.map +1 -0
  196. package/dist/src/scan/scantree.d.ts +21 -0
  197. package/dist/src/scan/scantree.d.ts.map +1 -0
  198. package/dist/src/scan/scantree.js +297 -0
  199. package/dist/src/scan/scantree.js.map +1 -0
  200. package/dist/src/scan/scanverbs.d.ts +208 -0
  201. package/dist/src/scan/scanverbs.d.ts.map +1 -0
  202. package/dist/src/scan/scanverbs.js +689 -0
  203. package/dist/src/scan/scanverbs.js.map +1 -0
  204. package/dist/src/scan/stage2.d.ts +221 -0
  205. package/dist/src/scan/stage2.d.ts.map +1 -0
  206. package/dist/src/scan/stage2.js +617 -0
  207. package/dist/src/scan/stage2.js.map +1 -0
  208. package/dist/src/scan/stage2request.d.ts +125 -0
  209. package/dist/src/scan/stage2request.d.ts.map +1 -0
  210. package/dist/src/scan/stage2request.js +259 -0
  211. package/dist/src/scan/stage2request.js.map +1 -0
  212. package/dist/src/scan/textsniff.d.ts +14 -0
  213. package/dist/src/scan/textsniff.d.ts.map +1 -0
  214. package/dist/src/scan/textsniff.js +88 -0
  215. package/dist/src/scan/textsniff.js.map +1 -0
  216. package/dist/src/scan/unitcut.d.ts +135 -0
  217. package/dist/src/scan/unitcut.d.ts.map +1 -0
  218. package/dist/src/scan/unitcut.js +437 -0
  219. package/dist/src/scan/unitcut.js.map +1 -0
  220. package/dist/src/scan/unitcutstore.d.ts +155 -0
  221. package/dist/src/scan/unitcutstore.d.ts.map +1 -0
  222. package/dist/src/scan/unitcutstore.js +381 -0
  223. package/dist/src/scan/unitcutstore.js.map +1 -0
  224. package/dist/src/setupchecklist.d.ts +240 -0
  225. package/dist/src/setupchecklist.d.ts.map +1 -0
  226. package/dist/src/setupchecklist.js +407 -0
  227. package/dist/src/setupchecklist.js.map +1 -0
  228. package/package.json +7 -3
  229. package/skills/qcr-review/SKILL.md +24 -0
  230. package/skills/qcr-scan/SKILL.md +23 -0
  231. package/skills/qcr-setup/SKILL.md +18 -0
@@ -3,40 +3,14 @@ import type { Ecosystem } from "./ecosystem.js";
3
3
  import { type ReviewMemoryPort } from "./memoryport.js";
4
4
  import type { ProfilePlace } from "./profilelookup.js";
5
5
  import type { ProfileLookup } from "./profiles.js";
6
- import { type PrCredentialDeps, type PrFetchRequest } from "./prtarget.js";
7
6
  import { type Destination, type DestinationChoice } from "./reviewdest.js";
8
7
  import { type OneShotResult } from "./oneshot.js";
9
8
  import type { RoundSpec } from "./engine/round.js";
10
9
  import type { Runtime } from "./engine/port.js";
11
- /** What is reviewed. */
12
- export type ReviewTarget =
13
- /** The repo dir's current branch against its base (`base`, else origin's
14
- * default branch, main, master). */
15
- {
16
- kind: "branch";
17
- base?: string;
18
- }
19
- /** The uncommitted working tree (staged, unstaged and new files) against
20
- * HEAD. Never posted anywhere. */
21
- | {
22
- kind: "uncommitted";
23
- }
24
- /** A pull request: `12`, `#12` or a github.com pull URL. A PR on another
25
- * repo than the repo dir's needs `repo` (owner/name). */
26
- | {
27
- kind: "pr";
28
- pr: string | number;
29
- repo?: string;
30
- }
31
- /** A unified diff: its text, or a reader the run calls when it gets there
32
- * (a reader's Error message is the refusal, word for word). `name` says
33
- * where it came from: a file name, or "-" (or nothing) for a piped diff.
34
- * The repo dir is optional and only read; a diff is never posted. */
35
- | {
36
- kind: "diff";
37
- diff: string | (() => Promise<string>);
38
- name?: string;
39
- };
10
+ import { type PostGithub } from "./savedpost.js";
11
+ import type { ReviewTarget } from "./reviewtarget.js";
12
+ export { postSavedReview, SAVED_POST_FILE, type PostOutcome, type SavedPost } from "./savedpost.js";
13
+ export type { ReviewTarget } from "./reviewtarget.js";
40
14
  /** Who is asking. "laptop" previews the estimate, asks above the limit and
41
15
  * stops hard at twice the estimate. "action" never asks and has no cap of its
42
16
  * own: only a given limit stops the run. */
@@ -139,13 +113,24 @@ export interface ReviewOptions {
139
113
  full?: boolean;
140
114
  limits: ReviewLimits;
141
115
  /** The GitHub credential sources and where GitHub is (a test seam). */
142
- github?: PrCredentialDeps & Pick<PrFetchRequest, "fetchFn" | "gitBase" | "apiBase">;
116
+ github?: PostGithub;
143
117
  }
144
118
  /** What a prompt port is given beside its question: the run's stop, which
145
119
  * closes the question unanswered. */
146
120
  export interface AskOptions {
147
121
  signal?: AbortSignal;
148
122
  }
123
+ /** A finished PR review, offered for posting (`ReviewIo.offerPost`). */
124
+ export interface PostOffer {
125
+ repo: string;
126
+ pr: number;
127
+ /** The review as the report renders it. */
128
+ markdown: string;
129
+ /** Findings in it the bot has not already posted on the PR. */
130
+ findings: number;
131
+ /** The install keeps dry_run on: a post is recorded, not sent. */
132
+ dryRun: boolean;
133
+ }
149
134
  /** The round that is about to start, for a UI to show while it runs. */
150
135
  export interface ReviewStarted {
151
136
  /** The run's directory: the round's live log is under it (src/live/). */
@@ -170,6 +155,12 @@ export interface ReviewIo {
170
155
  /** The run's own progress lines for a person (the preview before the run,
171
156
  * the memory notice). */
172
157
  progress?: (line: string) => void;
158
+ /** Asked once a PR review has finished, when its destinations do not
159
+ * already post it: post it now? Yes posts exactly as `pr` would have, one
160
+ * comment-only review through the gate with the install's dry_run. Given
161
+ * the review as a person reads it. Absent: nothing is offered. A stop
162
+ * closes the question unanswered, and nothing is posted. */
163
+ offerPost?: (offer: PostOffer, o?: AskOptions) => Promise<boolean>;
173
164
  /** The round is about to start: where it runs and what it plans. */
174
165
  started?: (run: ReviewStarted) => void;
175
166
  /** A warning said before the run. */
@@ -1 +1 @@
1
- {"version":3,"file":"reviewapi.d.ts","sourceRoot":"","sources":["../../src/reviewapi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reviewapi.d.ts","sourceRoot":"","sources":["../../src/reviewapi.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ import { mkdirSync, mkdtempSync, readFileSync, rmSync, rmdirSync, writeFileSync
31
31
  import { dirname, join, resolve } from "node:path";
32
32
  import { addDiffTree, addReviewTree, addUncommittedTree, groupFindings, loadReviewSettings, hardStopFor, priceReview, removeReviewTree, renderGrouped, originRepo, resolveBranch, resolveDiff, resolveUncommitted, reviewKey, } from "./localreview.js";
33
33
  import { MEMORY_NOT_SET_UP } from "./memoryport.js";
34
- import { assemblePostReview, loadPostIdentity, localPostGate, postReviewToPr, } from "./reviewpost.js";
34
+ import { assemblePostReview, loadPostIdentity } from "./reviewpost.js";
35
35
  import { fetchPrTarget, parsePrTarget, resolvePostCredential, resolvePrCredential, } from "./prtarget.js";
36
36
  import { FALLBACK_DESTINATIONS, destinationChoices, loadDefaultDestinationsIn, renderMarkdown, saveDefaultDestinationsIn, } from "./reviewdest.js";
37
37
  import { runOneShot } from "./oneshot.js";
@@ -46,6 +46,8 @@ import { assessOverrides, customisedNote, overrideReader, resolveOverrides, } fr
46
46
  import { branchTargetKey, prTargetKey, lastRound, loadState, openFindings, recordRound, saveState, } from "./reviewstate.js";
47
47
  import { openReviewStoreIn } from "./reviewstore.js";
48
48
  import { prepareReviewHost } from "./reviewhost.js";
49
+ import { postAssembled, SAVED_POST_FILE } from "./savedpost.js";
50
+ export { postSavedReview, SAVED_POST_FILE } from "./savedpost.js";
49
51
  const credentialLabel = (s) => s === "app"
50
52
  ? "the GitHub App"
51
53
  : s === "handoff"
@@ -301,7 +303,10 @@ async function runPipeline(target, opts, io, mode, cleanups) {
301
303
  resolved =
302
304
  target.kind === "uncommitted"
303
305
  ? resolveUncommitted(repoDir, { scratchParent: opts.runsDir })
304
- : resolveBranch(repoDir, target.base);
306
+ : resolveBranch(repoDir, target.base, {
307
+ ...(target.head !== undefined ? { head: target.head } : {}),
308
+ ...(target.uncommitted ? { uncommitted: true, scratchParent: opts.runsDir } : {}),
309
+ });
305
310
  if (!resolved.ok)
306
311
  return refuse(1, [resolved.error]);
307
312
  t = resolved.target;
@@ -336,10 +341,12 @@ async function runPipeline(target, opts, io, mode, cleanups) {
336
341
  : `the diff ${diffName}`
337
342
  : target.kind === "uncommitted"
338
343
  ? `uncommitted changes on ${t.branch}`
339
- : `${t.branch} against ${t.base}`;
344
+ : `${t.branch} against ${t.base}${t.uncommitted ? ", with its uncommitted changes" : ""}`;
340
345
  const kind = target.kind;
341
346
  // what the markdown report is titled
342
- const subject = kind === "diff" ? label : `${t.branch} against ${t.base}`;
347
+ const subject = kind === "diff"
348
+ ? label
349
+ : `${t.branch} against ${t.base}${kind === "branch" && t.uncommitted ? ", with its uncommitted changes" : ""}`;
343
350
  const settings = loadReviewSettings(repoDir);
344
351
  const action = (opts.limits.route ?? "laptop") === "action";
345
352
  // The laptop's confirm threshold is the person's limit; the Action has none,
@@ -350,14 +357,15 @@ async function runPipeline(target, opts, io, mode, cleanups) {
350
357
  // What an earlier review of this target left (none with `full`, or when it
351
358
  // cannot be trusted).
352
359
  // A branch and a PR each keep state under their own key (the PR's delta is
353
- // computed in its scratch repository); the uncommitted tree and a diff keep none.
360
+ // computed in its scratch repository); the uncommitted tree, a branch with
361
+ // uncommitted edits on top and a diff keep none.
354
362
  // A run that posts to a PR reviews in full: the findings already on the PR
355
363
  // (the posted-findings skip) are its repeat protection, and an
356
364
  // unchanged-head shortcut would also skip the post.
357
365
  const targetKey = prInfo
358
366
  ? prTargetKey(prInfo.repo, prInfo.number)
359
367
  : branchTargetKey(t.repo, t.branch);
360
- const keepsState = kind === "branch" || kind === "pr";
368
+ const keepsState = (kind === "branch" && t.uncommitted === undefined) || kind === "pr";
361
369
  const statePath = opts.storeDir === null
362
370
  ? null
363
371
  : (openReviewStoreIn(opts.storeDir, repoDir)?.statePath(targetKey) ?? null);
@@ -478,12 +486,12 @@ async function runPipeline(target, opts, io, mode, cleanups) {
478
486
  // The plan: the production round order's lens plan for this diff — the
479
487
  // follow-up plan over the delta when there is one, else the full plan. Pure;
480
488
  // the checkout the person is standing in is only read.
481
- const planRound = (tree, memory) => {
489
+ const planRound = (tree, memory, target = roundTarget) => {
482
490
  const common = {
483
491
  root: opts.root,
484
492
  cfg,
485
493
  ecosystem,
486
- target: roundTarget,
494
+ target,
487
495
  tree,
488
496
  caseDir: outDir,
489
497
  files: t.files,
@@ -541,7 +549,7 @@ async function runPipeline(target, opts, io, mode, cleanups) {
541
549
  const priorCount = scope === "delta" ? openFindings(prev).findings.length : 0;
542
550
  const previewData = {
543
551
  repo: t.repo,
544
- target: { kind },
552
+ target: { kind, ...(kind === "branch" && t.uncommitted ? { uncommitted: true } : {}) },
545
553
  // posting is offered only when a PR is behind the target
546
554
  postable: prInfo !== null,
547
555
  ...(kind === "diff" ? {} : { branch: t.branch }),
@@ -687,6 +695,7 @@ async function runPipeline(target, opts, io, mode, cleanups) {
687
695
  const sessionName = `review-${(kind === "diff" ? "diff" : kind === "uncommitted" ? "uncommitted" : t.branch).replace(/[^A-Za-z0-9._-]/g, "-")}`;
688
696
  const roundNo = scope === "delta" && prev !== null ? lastRound(prev).round_no + 1 : 1;
689
697
  let shot;
698
+ let runTarget = roundTarget;
690
699
  try {
691
700
  if (kind === "diff") {
692
701
  // a plain directory: no git write, so a read-only checkout is enough
@@ -696,8 +705,12 @@ async function runPipeline(target, opts, io, mode, cleanups) {
696
705
  warn(w);
697
706
  }
698
707
  }
699
- else if (kind === "uncommitted")
700
- await addUncommittedTree(gitDir, treeDir, t, io.signal ? { signal: io.signal } : {});
708
+ else if (kind === "uncommitted" || t.uncommitted !== undefined) {
709
+ // the edits are committed in the review tree, so the advertised diff
710
+ // names that snapshot rather than HEAD, which lacks them
711
+ const snapshot = await addUncommittedTree(gitDir, treeDir, t, io.signal ? { signal: io.signal } : {});
712
+ runTarget = { ...roundTarget, headSha: snapshot };
713
+ }
701
714
  else
702
715
  await addReviewTree(gitDir, treeDir, t.headSha, io.signal ? { signal: io.signal } : {});
703
716
  const round = {
@@ -707,13 +720,13 @@ async function runPipeline(target, opts, io, mode, cleanups) {
707
720
  agentDir: host.agentDir,
708
721
  tree: treeDir,
709
722
  files: t.files,
710
- target: roundTarget,
723
+ target: runTarget,
711
724
  outDir,
712
725
  cfg,
713
726
  ecosystem,
714
727
  timeoutMs: opts.limits.timeoutMs,
715
728
  // Rendered over the review tree, as production renders over its worktree.
716
- prompts: planRound(treeDir, seeded.memory).prompts,
729
+ prompts: planRound(treeDir, seeded.memory, runTarget).prompts,
717
730
  ...(cap !== null ? { capUsd: cap } : {}),
718
731
  memory: seeded.memory,
719
732
  sessionName,
@@ -866,12 +879,27 @@ async function runPipeline(target, opts, io, mode, cleanups) {
866
879
  ...customNotes,
867
880
  `Files: ${outDir}`,
868
881
  ].join("\n");
869
- // Posting to the PR: one comment-only review, marked, deduplicated.
882
+ // Posting to the PR: one comment-only review, marked, deduplicated. Sent
883
+ // when the destinations say so, else when the person says yes to the offer.
870
884
  let posted = null;
871
885
  let postFailed = false;
872
886
  let postLine = "";
873
- if (sends("pr") && prInfo !== null) {
874
- const id = await resolvePostCredential(opts.config.github.secrets_dir, loadPostIdentity(repoDir), { source: prInfo.source, token: prToken }, gh);
887
+ let postReady = null;
888
+ const markdown = renderMarkdown(mdMeta, groups);
889
+ let post = sends("pr");
890
+ if (!post && prInfo !== null && io.offerPost) {
891
+ const offerPost = io.offerPost;
892
+ const offer = {
893
+ repo: prInfo.repo,
894
+ pr: prInfo.number,
895
+ markdown,
896
+ findings: count,
897
+ dryRun: opts.config.dry_run,
898
+ };
899
+ const yes = await unlessStopped(io.signal, (o) => offerPost(offer, o));
900
+ post = yes === true && !io.signal?.aborted;
901
+ }
902
+ if (prInfo !== null) {
875
903
  // what the bot has not already posted, as the terminal shows it
876
904
  const toPost = assemblePostReview(rawWithout(shot.findings, bot.findings), {
877
905
  cfg,
@@ -881,59 +909,55 @@ async function runPipeline(target, opts, io, mode, cleanups) {
881
909
  verdict,
882
910
  summary: typeof shot.outcome?.["summary"] === "string" ? shot.outcome["summary"] : null,
883
911
  });
884
- // Every finding was the bot's already (none left inline or in the body):
885
- // there is nothing to post, not even a review body to repeat.
886
- const res = !id.ok
887
- ? id
888
- : skipped.skipped > 0 && toPost.comments.length === 0 && !toPost.bodyFindings
889
- ? { ok: true, posted: 0, skipped: skipped.skipped, url: null }
890
- : await postReviewToPr({
891
- repo: t.repo,
892
- number: prInfo.number,
893
- headSha: t.headSha,
894
- token: id.token,
895
- // The one gate, with the install's dry_run: a dry-run install records
896
- // the review under its dryrun dir and sends nothing (AGENTS.md invariant 6).
897
- gate: localPostGate({
898
- dryRun: opts.config.dry_run,
899
- dryrunDir: opts.dryrunDir,
900
- token: id.token,
901
- ...(gh?.fetchFn ? { fetchFn: gh.fetchFn } : {}),
902
- ...(gh?.apiBase ? { apiBase: gh.apiBase } : {}),
903
- ...(io.log ? { log: (msg) => io.log(`[quickreviewd] ${msg}`) } : {}),
904
- }),
905
- review: toPost,
906
- ...(gh?.fetchFn ? { fetchFn: gh.fetchFn } : {}),
907
- ...(gh?.apiBase ? { apiBase: gh.apiBase } : {}),
908
- });
909
- if (res.ok && res.recorded !== undefined) {
910
- posted = {
911
- ok: true,
912
- posted: 0,
913
- skipped: res.skipped,
914
- url: null,
915
- dry_run: true,
916
- would_post: res.wouldPost,
917
- recorded: res.recorded,
918
- };
919
- postLine =
920
- `Dry run (dry_run = true in this install's config): the review of ${res.wouldPost} ` +
921
- `comment${res.wouldPost === 1 ? "" : "s"} on PR #${prInfo.number} was recorded, not posted: ${res.recorded}`;
922
- }
923
- else if (res.ok) {
924
- posted = { ok: true, posted: res.posted, skipped: res.skipped, url: res.url };
925
- postLine =
926
- res.posted === 0
927
- ? `Nothing posted: ${res.skipped} comment${res.skipped === 1 ? " is" : "s are"} already on the PR.`
928
- : `Posted ${res.posted} comment${res.posted === 1 ? "" : "s"} to PR #${prInfo.number} (comment-only review)` +
929
- `${res.skipped ? `, ${res.skipped} already there` : ""}${res.url ? `: ${res.url}` : ""}`;
912
+ const postAs = loadPostIdentity(repoDir);
913
+ if (post) {
914
+ const id = await resolvePostCredential(opts.config.github.secrets_dir, postAs, { source: prInfo.source, token: prToken }, gh);
915
+ const out = await postAssembled({
916
+ repo: t.repo,
917
+ pr: prInfo.number,
918
+ headSha: t.headSha,
919
+ credential: id,
920
+ review: toPost,
921
+ skipped: skipped.skipped,
922
+ dryRun: opts.config.dry_run,
923
+ dryrunDir: opts.dryrunDir,
924
+ ...(gh ? { github: gh } : {}),
925
+ ...(io.log ? { log: io.log } : {}),
926
+ });
927
+ posted = out.post;
928
+ postFailed = out.failed;
929
+ postLine = out.line;
930
930
  }
931
931
  else {
932
- postFailed = true;
933
- posted = { ok: false, error: res.error };
934
- postLine = `Review not posted: ${res.error}`;
932
+ // Not posted: kept beside the run's files, so a host that asks the
933
+ // person later posts exactly this (`postSavedReview`). No token is kept.
934
+ const saved = {
935
+ version: 1,
936
+ repo: t.repo,
937
+ pr: prInfo.number,
938
+ head_sha: t.headSha,
939
+ source: prInfo.source,
940
+ post_as: postAs,
941
+ skipped: skipped.skipped,
942
+ review: toPost,
943
+ };
944
+ try {
945
+ mkdirSync(outDir, { recursive: true });
946
+ const file = join(outDir, SAVED_POST_FILE);
947
+ writeFileSync(file, `${JSON.stringify(saved, null, 2)}\n`);
948
+ postReady = file;
949
+ }
950
+ catch {
951
+ // a review that cannot be kept for later is still the review
952
+ }
935
953
  }
936
954
  }
937
- return finish(postFailed ? 1 : 0, postLine ? `${human}\n${postLine}` : human, { ok: !postFailed, partial: false, ...data, ...(posted ? { post: posted } : {}) }, renderMarkdown(mdMeta, groups));
955
+ return finish(postFailed ? 1 : 0, postLine ? `${human}\n${postLine}` : human, {
956
+ ok: !postFailed,
957
+ partial: false,
958
+ ...data,
959
+ ...(posted ? { post: posted } : {}),
960
+ ...(postReady !== null ? { post_ready: postReady } : {}),
961
+ }, markdown);
938
962
  }
939
963
  //# sourceMappingURL=reviewapi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reviewapi.js","sourceRoot":"","sources":["../../src/reviewapi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reviewapi.js","sourceRoot":"","sources":["../../src/reviewapi.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export interface DestinationChoice {
10
10
  label: string;
11
11
  }
12
12
  /** Where the person reads a result: a terminal (`qcr review`), or a pi
13
- * session (the plugin's /review), where "terminal" is the session itself and
13
+ * session, where "terminal" is the session itself and
14
14
  * a saved report carries its JSON beside the markdown. */
15
15
  export type DestinationSurface = "terminal" | "session";
16
16
  /** The destinations a person can be asked to pick. `pr`: the target is a PR,
@@ -1 +1 @@
1
- {"version":3,"file":"reviewdest.d.ts","sourceRoot":"","sources":["../../src/reviewdest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reviewdest.d.ts","sourceRoot":"","sources":["../../src/reviewdest.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  // Where a local review's result goes: shown to the person, saved as files,
2
- // JSON back to an agent, or posted to the PR. The same rules hold for every
3
- // surface that runs a review (`qcr review` in a terminal, the pi plugin's
4
- // /review in a session):
2
+ // JSON back to an agent, or posted to the PR. These rules are `qcr review`'s
3
+ // in a terminal. The pi plugin's /qcr-review asks none of this: it shows the
4
+ // result in the session and keeps it as files, and offers a post after the
5
+ // review by the person's posting rule (src/plugin/settings.ts):
5
6
  //
6
7
  // - flags (`--to`, `--json`, `--out`) decide, when given;
7
8
  // - else the repo's saved default, when it has one;