@quickchatai/pi-quickreview 1.1.0 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) hide show
  1. package/README.md +79 -27
  2. package/assets/config.example.toml +60 -14
  3. package/assets/prompts/onboarding.md +58 -18
  4. package/assets/schemas/review-result.v1.json +60 -0
  5. package/dist/extensions/quickreview.d.ts +13 -5
  6. package/dist/extensions/quickreview.d.ts.map +1 -1
  7. package/dist/extensions/quickreview.js +77 -25
  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/envmap.d.ts.map +1 -1
  14. package/dist/src/engine/envmap.js +5 -0
  15. package/dist/src/engine/envmap.js.map +1 -1
  16. package/dist/src/engine/lens/activity.d.ts +45 -0
  17. package/dist/src/engine/lens/activity.d.ts.map +1 -0
  18. package/dist/src/engine/lens/activity.js +118 -0
  19. package/dist/src/engine/lens/activity.js.map +1 -0
  20. package/dist/src/engine/lens/runlens.d.ts +7 -0
  21. package/dist/src/engine/lens/runlens.d.ts.map +1 -1
  22. package/dist/src/engine/lens/runlens.js +30 -1
  23. package/dist/src/engine/lens/runlens.js.map +1 -1
  24. package/dist/src/engine/lens/tool.d.ts +7 -0
  25. package/dist/src/engine/lens/tool.d.ts.map +1 -1
  26. package/dist/src/engine/lens/tool.js +101 -18
  27. package/dist/src/engine/lens/tool.js.map +1 -1
  28. package/dist/src/engine/lens/wave.d.ts +6 -0
  29. package/dist/src/engine/lens/wave.d.ts.map +1 -1
  30. package/dist/src/engine/lens/wave.js +16 -0
  31. package/dist/src/engine/lens/wave.js.map +1 -1
  32. package/dist/src/engine/pisdk.d.ts +9 -0
  33. package/dist/src/engine/pisdk.d.ts.map +1 -1
  34. package/dist/src/engine/pisdk.js +29 -4
  35. package/dist/src/engine/pisdk.js.map +1 -1
  36. package/dist/src/githubAuth.d.ts +39 -1
  37. package/dist/src/githubAuth.d.ts.map +1 -1
  38. package/dist/src/githubAuth.js +75 -8
  39. package/dist/src/githubAuth.js.map +1 -1
  40. package/dist/src/guards.d.ts +14 -1
  41. package/dist/src/guards.d.ts.map +1 -1
  42. package/dist/src/guards.js +61 -2
  43. package/dist/src/guards.js.map +1 -1
  44. package/dist/src/homes.js +1 -1
  45. package/dist/src/homes.js.map +1 -1
  46. package/dist/src/identity.d.ts +34 -0
  47. package/dist/src/identity.d.ts.map +1 -0
  48. package/dist/src/identity.js +67 -0
  49. package/dist/src/identity.js.map +1 -0
  50. package/dist/src/live/events.d.ts +3 -0
  51. package/dist/src/live/events.d.ts.map +1 -1
  52. package/dist/src/live/events.js.map +1 -1
  53. package/dist/src/live/lensline.d.ts +20 -0
  54. package/dist/src/live/lensline.d.ts.map +1 -0
  55. package/dist/src/live/lensline.js +70 -0
  56. package/dist/src/live/lensline.js.map +1 -0
  57. package/dist/src/live/projection.d.ts +55 -0
  58. package/dist/src/live/projection.d.ts.map +1 -0
  59. package/dist/src/live/projection.js +465 -0
  60. package/dist/src/live/projection.js.map +1 -0
  61. package/dist/src/live/read.d.ts +24 -0
  62. package/dist/src/live/read.d.ts.map +1 -0
  63. package/dist/src/live/read.js +60 -0
  64. package/dist/src/live/read.js.map +1 -0
  65. package/dist/src/live/writer.d.ts +3 -0
  66. package/dist/src/live/writer.d.ts.map +1 -1
  67. package/dist/src/live/writer.js +6 -1
  68. package/dist/src/live/writer.js.map +1 -1
  69. package/dist/src/localreview.d.ts +18 -8
  70. package/dist/src/localreview.d.ts.map +1 -1
  71. package/dist/src/localreview.js +103 -43
  72. package/dist/src/localreview.js.map +1 -1
  73. package/dist/src/modelroute.d.ts +42 -0
  74. package/dist/src/modelroute.d.ts.map +1 -0
  75. package/dist/src/modelroute.js +126 -0
  76. package/dist/src/modelroute.js.map +1 -0
  77. package/dist/src/plugin/args.d.ts +38 -7
  78. package/dist/src/plugin/args.d.ts.map +1 -1
  79. package/dist/src/plugin/args.js +134 -37
  80. package/dist/src/plugin/args.js.map +1 -1
  81. package/dist/src/plugin/login.d.ts +11 -4
  82. package/dist/src/plugin/login.d.ts.map +1 -1
  83. package/dist/src/plugin/login.js +28 -26
  84. package/dist/src/plugin/login.js.map +1 -1
  85. package/dist/src/plugin/messages.d.ts +7 -0
  86. package/dist/src/plugin/messages.d.ts.map +1 -0
  87. package/dist/src/plugin/messages.js +13 -0
  88. package/dist/src/plugin/messages.js.map +1 -0
  89. package/dist/src/plugin/review.d.ts +52 -6
  90. package/dist/src/plugin/review.d.ts.map +1 -1
  91. package/dist/src/plugin/review.js +269 -99
  92. package/dist/src/plugin/review.js.map +1 -1
  93. package/dist/src/plugin/scan.d.ts +80 -44
  94. package/dist/src/plugin/scan.d.ts.map +1 -1
  95. package/dist/src/plugin/scan.js +450 -233
  96. package/dist/src/plugin/scan.js.map +1 -1
  97. package/dist/src/plugin/scancases.d.ts +33 -0
  98. package/dist/src/plugin/scancases.d.ts.map +1 -0
  99. package/dist/src/plugin/scancases.js +153 -0
  100. package/dist/src/plugin/scancases.js.map +1 -0
  101. package/dist/src/plugin/settings.d.ts +18 -0
  102. package/dist/src/plugin/settings.d.ts.map +1 -0
  103. package/dist/src/plugin/settings.js +47 -0
  104. package/dist/src/plugin/settings.js.map +1 -0
  105. package/dist/src/plugin/setup.d.ts +35 -12
  106. package/dist/src/plugin/setup.d.ts.map +1 -1
  107. package/dist/src/plugin/setup.js +258 -118
  108. package/dist/src/plugin/setup.js.map +1 -1
  109. package/dist/src/plugin/versiongate.js +1 -1
  110. package/dist/src/plugin/versiongate.js.map +1 -1
  111. package/dist/src/profileoverrides.d.ts +3 -0
  112. package/dist/src/profileoverrides.d.ts.map +1 -1
  113. package/dist/src/profileoverrides.js +9 -2
  114. package/dist/src/profileoverrides.js.map +1 -1
  115. package/dist/src/reviewapi.d.ts +22 -31
  116. package/dist/src/reviewapi.d.ts.map +1 -1
  117. package/dist/src/reviewapi.js +90 -66
  118. package/dist/src/reviewapi.js.map +1 -1
  119. package/dist/src/reviewconfig.d.ts +12 -0
  120. package/dist/src/reviewconfig.d.ts.map +1 -1
  121. package/dist/src/reviewconfig.js +9 -1
  122. package/dist/src/reviewconfig.js.map +1 -1
  123. package/dist/src/reviewdest.d.ts +1 -1
  124. package/dist/src/reviewdest.d.ts.map +1 -1
  125. package/dist/src/reviewdest.js +4 -3
  126. package/dist/src/reviewdest.js.map +1 -1
  127. package/dist/src/reviewtarget.d.ts +36 -0
  128. package/dist/src/reviewtarget.d.ts.map +1 -0
  129. package/dist/src/reviewtarget.js +6 -0
  130. package/dist/src/reviewtarget.js.map +1 -0
  131. package/dist/src/round-progress.d.ts +5 -0
  132. package/dist/src/round-progress.d.ts.map +1 -1
  133. package/dist/src/round-progress.js.map +1 -1
  134. package/dist/src/savedpost.d.ts +65 -0
  135. package/dist/src/savedpost.d.ts.map +1 -0
  136. package/dist/src/savedpost.js +131 -0
  137. package/dist/src/savedpost.js.map +1 -0
  138. package/dist/src/scan/caseread.d.ts +84 -0
  139. package/dist/src/scan/caseread.d.ts.map +1 -0
  140. package/dist/src/scan/caseread.js +263 -0
  141. package/dist/src/scan/caseread.js.map +1 -0
  142. package/dist/src/scan/channelfs.d.ts +6 -0
  143. package/dist/src/scan/channelfs.d.ts.map +1 -0
  144. package/dist/src/scan/channelfs.js +27 -0
  145. package/dist/src/scan/channelfs.js.map +1 -0
  146. package/dist/src/scan/cutrender.d.ts +13 -0
  147. package/dist/src/scan/cutrender.d.ts.map +1 -0
  148. package/dist/src/scan/cutrender.js +51 -0
  149. package/dist/src/scan/cutrender.js.map +1 -0
  150. package/dist/src/scan/facts.d.ts +72 -0
  151. package/dist/src/scan/facts.d.ts.map +1 -0
  152. package/dist/src/scan/facts.js +593 -0
  153. package/dist/src/scan/facts.js.map +1 -0
  154. package/dist/src/scan/findings.d.ts +320 -0
  155. package/dist/src/scan/findings.d.ts.map +1 -0
  156. package/dist/src/scan/findings.js +948 -0
  157. package/dist/src/scan/findings.js.map +1 -0
  158. package/dist/src/scan/ledger.d.ts +116 -0
  159. package/dist/src/scan/ledger.d.ts.map +1 -0
  160. package/dist/src/scan/ledger.js +207 -0
  161. package/dist/src/scan/ledger.js.map +1 -0
  162. package/dist/src/scan/presentation.d.ts +19 -0
  163. package/dist/src/scan/presentation.d.ts.map +1 -0
  164. package/dist/src/scan/presentation.js +9 -0
  165. package/dist/src/scan/presentation.js.map +1 -0
  166. package/dist/src/scan/scan.d.ts +354 -0
  167. package/dist/src/scan/scan.d.ts.map +1 -0
  168. package/dist/src/scan/scan.js +725 -0
  169. package/dist/src/scan/scan.js.map +1 -0
  170. package/dist/src/scan/scanagents.d.ts +23 -0
  171. package/dist/src/scan/scanagents.d.ts.map +1 -0
  172. package/dist/src/scan/scanagents.js +99 -0
  173. package/dist/src/scan/scanagents.js.map +1 -0
  174. package/dist/src/scan/scanassemble.d.ts +65 -0
  175. package/dist/src/scan/scanassemble.d.ts.map +1 -0
  176. package/dist/src/scan/scanassemble.js +93 -0
  177. package/dist/src/scan/scanassemble.js.map +1 -0
  178. package/dist/src/scan/scanfs.d.ts +26 -0
  179. package/dist/src/scan/scanfs.d.ts.map +1 -0
  180. package/dist/src/scan/scanfs.js +229 -0
  181. package/dist/src/scan/scanfs.js.map +1 -0
  182. package/dist/src/scan/scanlease.d.ts +50 -0
  183. package/dist/src/scan/scanlease.d.ts.map +1 -0
  184. package/dist/src/scan/scanlease.js +251 -0
  185. package/dist/src/scan/scanlease.js.map +1 -0
  186. package/dist/src/scan/scanleaves.d.ts +55 -0
  187. package/dist/src/scan/scanleaves.d.ts.map +1 -0
  188. package/dist/src/scan/scanleaves.js +258 -0
  189. package/dist/src/scan/scanleaves.js.map +1 -0
  190. package/dist/src/scan/scanports.d.ts +79 -0
  191. package/dist/src/scan/scanports.d.ts.map +1 -0
  192. package/dist/src/scan/scanports.js +8 -0
  193. package/dist/src/scan/scanports.js.map +1 -0
  194. package/dist/src/scan/scanrender.d.ts +128 -0
  195. package/dist/src/scan/scanrender.d.ts.map +1 -0
  196. package/dist/src/scan/scanrender.js +527 -0
  197. package/dist/src/scan/scanrender.js.map +1 -0
  198. package/dist/src/scan/scanreport.d.ts +126 -0
  199. package/dist/src/scan/scanreport.d.ts.map +1 -0
  200. package/dist/src/scan/scanreport.js +289 -0
  201. package/dist/src/scan/scanreport.js.map +1 -0
  202. package/dist/src/scan/scanrun.d.ts +472 -0
  203. package/dist/src/scan/scanrun.d.ts.map +1 -0
  204. package/dist/src/scan/scanrun.js +1733 -0
  205. package/dist/src/scan/scanrun.js.map +1 -0
  206. package/dist/src/scan/scantree.d.ts +21 -0
  207. package/dist/src/scan/scantree.d.ts.map +1 -0
  208. package/dist/src/scan/scantree.js +297 -0
  209. package/dist/src/scan/scantree.js.map +1 -0
  210. package/dist/src/scan/scanverbs.d.ts +208 -0
  211. package/dist/src/scan/scanverbs.d.ts.map +1 -0
  212. package/dist/src/scan/scanverbs.js +689 -0
  213. package/dist/src/scan/scanverbs.js.map +1 -0
  214. package/dist/src/scan/stage2.d.ts +221 -0
  215. package/dist/src/scan/stage2.d.ts.map +1 -0
  216. package/dist/src/scan/stage2.js +617 -0
  217. package/dist/src/scan/stage2.js.map +1 -0
  218. package/dist/src/scan/stage2request.d.ts +125 -0
  219. package/dist/src/scan/stage2request.d.ts.map +1 -0
  220. package/dist/src/scan/stage2request.js +259 -0
  221. package/dist/src/scan/stage2request.js.map +1 -0
  222. package/dist/src/scan/textsniff.d.ts +14 -0
  223. package/dist/src/scan/textsniff.d.ts.map +1 -0
  224. package/dist/src/scan/textsniff.js +88 -0
  225. package/dist/src/scan/textsniff.js.map +1 -0
  226. package/dist/src/scan/unitcut.d.ts +135 -0
  227. package/dist/src/scan/unitcut.d.ts.map +1 -0
  228. package/dist/src/scan/unitcut.js +437 -0
  229. package/dist/src/scan/unitcut.js.map +1 -0
  230. package/dist/src/scan/unitcutstore.d.ts +155 -0
  231. package/dist/src/scan/unitcutstore.d.ts.map +1 -0
  232. package/dist/src/scan/unitcutstore.js +381 -0
  233. package/dist/src/scan/unitcutstore.js.map +1 -0
  234. package/dist/src/setupchecklist.d.ts +240 -0
  235. package/dist/src/setupchecklist.d.ts.map +1 -0
  236. package/dist/src/setupchecklist.js +407 -0
  237. package/dist/src/setupchecklist.js.map +1 -0
  238. package/package.json +7 -3
  239. package/skills/qcr-review/SKILL.md +24 -0
  240. package/skills/qcr-scan/SKILL.md +23 -0
  241. package/skills/qcr-setup/SKILL.md +18 -0
@@ -1 +1 @@
1
- {"version":3,"file":"writer.js","sourceRoot":"","sources":["../../../src/live/writer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writer.js","sourceRoot":"","sources":["../../../src/live/writer.ts"],"names":[],"mappings":"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"}
@@ -35,14 +35,19 @@ export type BranchResolution = {
35
35
  };
36
36
  /** `owner/name` from the origin remote, or null when there is none. */
37
37
  export declare function originRepo(cwd: string): string | null;
38
- export declare function resolveBranch(cwd: string, asked?: string): BranchResolution;
38
+ /** How a branch target is read: `head` names the branch (or commit) to
39
+ * review instead of HEAD; `uncommitted` adds the working tree's uncommitted
40
+ * edits on top of HEAD's commits, as one review (`snapshotWorkTree`, its
41
+ * scratch store under `scratchParent`). */
42
+ export interface BranchOptions {
43
+ head?: string;
44
+ uncommitted?: boolean;
45
+ scratchParent?: string;
46
+ }
47
+ export declare function resolveBranch(cwd: string, asked?: string, o?: BranchOptions): BranchResolution;
39
48
  /** The uncommitted working tree against HEAD: staged, unstaged and new
40
49
  * (untracked, not ignored) files, read without touching the person's index or
41
- * files. The snapshot is a tree built in a throwaway index, and its objects
42
- * are written to a throwaway object store that borrows the repo's as an
43
- * alternate, so nothing is written into the reviewed repository and a
44
- * read-only checkout works. The snapshot's scratch store goes under
45
- * `scratchParent` (default: the OS temp dir) and is gone when this returns. */
50
+ * files (the snapshot is `snapshotWorkTree`'s). */
46
51
  export declare function resolveUncommitted(cwd: string, o?: {
47
52
  scratchParent?: string;
48
53
  }): BranchResolution;
@@ -58,10 +63,15 @@ export declare function resolveDiff(cwd: string, text: string): BranchResolution
58
63
  * the review reads the changes from the diff itself. Returns a warning when
59
64
  * the diff did not apply. The HEAD archive is staged beside `dir`. */
60
65
  export declare function addDiffTree(cwd: string, dir: string, t: BranchTarget): string | null;
61
- /** The review's tree for an uncommitted target: HEAD, then the edits on top. */
66
+ /** The review's tree for an uncommitted target: HEAD, then the edits on top,
67
+ * committed inside the throwaway checkout so the snapshot has a commit the
68
+ * instructions can name (`git diff <merge-base> <snapshot>` then holds the
69
+ * edits and new files too). Returns that commit, or `t.headSha` when there
70
+ * were no edits. `commit-tree`, not `commit`: no hook runs and nothing is
71
+ * signed. */
62
72
  export declare function addUncommittedTree(cwd: string, dir: string, t: BranchTarget, o?: {
63
73
  signal?: AbortSignal;
64
- }): Promise<void>;
74
+ }): Promise<string>;
65
75
  /** A throwaway detached checkout of `sha`, for the review to read. A shared
66
76
  * clone, not a worktree: its objects come from the repository by alternates, so
67
77
  * nothing is written into the reviewed repo's .git (the wrapper and the Action
@@ -1 +1 @@
1
- {"version":3,"file":"localreview.d.ts","sourceRoot":"","sources":["../../src/localreview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"localreview.d.ts","sourceRoot":"","sources":["../../src/localreview.ts"],"names":[],"mappings":"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"}
@@ -119,11 +119,18 @@ function admitRepo(cwd) {
119
119
  return { ok: false, error: "the repository has no commits yet" };
120
120
  return { ok: true, headSha };
121
121
  }
122
- export function resolveBranch(cwd, asked) {
123
- const head = admitRepo(cwd);
124
- if (!head.ok)
125
- return head;
126
- const headSha = head.headSha;
122
+ export function resolveBranch(cwd, asked, o = {}) {
123
+ const admitted = admitRepo(cwd);
124
+ if (!admitted.ok)
125
+ return admitted;
126
+ let headSha = admitted.headSha;
127
+ if (o.head !== undefined) {
128
+ const named = tryGit(cwd, ["rev-parse", "--verify", "--quiet", `${o.head}^{commit}`]);
129
+ if (named === null)
130
+ return { ok: false, error: `${o.head} is not a branch or commit in this repository` };
131
+ headSha = named;
132
+ }
133
+ const headRef = o.head ?? "HEAD";
127
134
  const base = baseOf(cwd, asked);
128
135
  if (base === null)
129
136
  return {
@@ -133,16 +140,44 @@ export function resolveBranch(cwd, asked) {
133
140
  : "no base to review against: no origin default branch, main or master — pass --base REF",
134
141
  };
135
142
  const baseSha = git(cwd, ["rev-parse", `${base}^{commit}`]);
136
- const mergeBase = tryGit(cwd, ["merge-base", base, "HEAD"]);
143
+ const mergeBase = tryGit(cwd, ["merge-base", base, headRef]);
137
144
  if (mergeBase === null)
138
145
  return {
139
146
  ok: false,
140
- error: `HEAD and ${base} share no history, so there is no branch to review`,
147
+ error: `${headRef} and ${base} share no history, so there is no branch to review`,
141
148
  };
142
- const branch = tryGit(cwd, ["rev-parse", "--abbrev-ref", "HEAD"]) ?? "HEAD";
149
+ const branch = o.head ?? tryGit(cwd, ["rev-parse", "--abbrev-ref", "HEAD"]) ?? "HEAD";
150
+ // The working tree's edits ride on HEAD only: a named branch is its commits.
151
+ if (o.uncommitted && o.head === undefined) {
152
+ const snap = snapshotWorkTree(cwd, headSha, mergeBase, o.scratchParent);
153
+ if (snap.edited) {
154
+ if (snap.files.length === 0)
155
+ return {
156
+ ok: false,
157
+ error: `nothing to review: ${branch} has no changes against ${base}, committed or not`,
158
+ };
159
+ return {
160
+ ok: true,
161
+ target: {
162
+ repo: repoName(cwd),
163
+ branch,
164
+ base,
165
+ headSha,
166
+ baseSha,
167
+ mergeBase,
168
+ files: snap.files,
169
+ lines: snap.lines,
170
+ uncommitted: { treeSha: snap.treeSha, patch: snap.patch },
171
+ },
172
+ };
173
+ }
174
+ }
143
175
  const { files, lines } = diffFiles(cwd, mergeBase, headSha);
144
176
  if (files.length === 0)
145
- return { ok: false, error: `nothing to review: ${branch} has no changes against ${base}` };
177
+ return {
178
+ ok: false,
179
+ error: `nothing to review: ${branch} has no changes against ${base}${o.uncommitted && o.head === undefined ? ", committed or not" : ""}`,
180
+ };
146
181
  return {
147
182
  ok: true,
148
183
  target: {
@@ -157,25 +192,18 @@ export function resolveBranch(cwd, asked) {
157
192
  },
158
193
  };
159
194
  }
160
- /** The uncommitted working tree against HEAD: staged, unstaged and new
161
- * (untracked, not ignored) files, read without touching the person's index or
162
- * files. The snapshot is a tree built in a throwaway index, and its objects
163
- * are written to a throwaway object store that borrows the repo's as an
164
- * alternate, so nothing is written into the reviewed repository and a
165
- * read-only checkout works. The snapshot's scratch store goes under
166
- * `scratchParent` (default: the OS temp dir) and is gone when this returns. */
167
- export function resolveUncommitted(cwd, o = {}) {
168
- const head = admitRepo(cwd);
169
- if (!head.ok)
170
- return head;
171
- const headSha = head.headSha;
172
- if (o.scratchParent !== undefined)
173
- mkdirSync(o.scratchParent, { recursive: true });
174
- const scratch = mkdtempSync(join(o.scratchParent ?? tmpdir(), "qcr-snap-"));
175
- let treeSha;
176
- let files;
177
- let lines;
178
- let patch;
195
+ /** The working tree as one tree object: HEAD plus every uncommitted edit
196
+ * (staged, unstaged and new files, not ignored), built in a throwaway index
197
+ * whose objects go to a throwaway store borrowing the repo's as an alternate,
198
+ * so nothing is written into the reviewed repository and a read-only checkout
199
+ * works. `files` are the tree against `from`; `patch` is the binary patch
200
+ * from HEAD to it (empty when the tree is HEAD's, `edited` false). The scratch
201
+ * store goes under `scratchParent` (default: the OS temp dir) and is gone
202
+ * when this returns. */
203
+ function snapshotWorkTree(cwd, headSha, from, scratchParent) {
204
+ if (scratchParent !== undefined)
205
+ mkdirSync(scratchParent, { recursive: true });
206
+ const scratch = mkdtempSync(join(scratchParent ?? tmpdir(), "qcr-snap-"));
179
207
  try {
180
208
  const objects = join(scratch, "objects");
181
209
  mkdirSync(objects);
@@ -205,16 +233,28 @@ export function resolveUncommitted(cwd, o = {}) {
205
233
  git(top, ["read-tree", headSha], { env });
206
234
  }
207
235
  git(top, ["add", "-A"], { env });
208
- treeSha = git(top, ["write-tree"], { env });
209
- ({ files, lines } = diffFiles(cwd, headSha, treeSha, env));
210
- patch =
211
- files.length === 0
212
- ? ""
213
- : git(cwd, ["diff", "--binary", "--no-renames", headSha, treeSha], { env, raw: true });
236
+ const treeSha = git(top, ["write-tree"], { env });
237
+ const edited = treeSha !== git(cwd, ["rev-parse", `${headSha}^{tree}`]);
238
+ const { files, lines } = diffFiles(cwd, from, treeSha, env);
239
+ const patch = edited
240
+ ? git(cwd, ["diff", "--binary", "--no-renames", headSha, treeSha], { env, raw: true })
241
+ : "";
242
+ return { treeSha, files, lines, patch, edited };
214
243
  }
215
244
  finally {
216
245
  rmSync(scratch, { recursive: true, force: true });
217
246
  }
247
+ }
248
+ /** The uncommitted working tree against HEAD: staged, unstaged and new
249
+ * (untracked, not ignored) files, read without touching the person's index or
250
+ * files (the snapshot is `snapshotWorkTree`'s). */
251
+ export function resolveUncommitted(cwd, o = {}) {
252
+ const head = admitRepo(cwd);
253
+ if (!head.ok)
254
+ return head;
255
+ const headSha = head.headSha;
256
+ const snap = snapshotWorkTree(cwd, headSha, headSha, o.scratchParent);
257
+ const { treeSha, files, lines, patch } = snap;
218
258
  if (files.length === 0)
219
259
  return { ok: false, error: "nothing to review: the working tree has no uncommitted changes" };
220
260
  const branch = tryGit(cwd, ["rev-parse", "--abbrev-ref", "HEAD"]) ?? "HEAD";
@@ -293,17 +333,37 @@ export function addDiffTree(cwd, dir, t) {
293
333
  rmSync(scratch, { recursive: true, force: true });
294
334
  }
295
335
  }
296
- /** The review's tree for an uncommitted target: HEAD, then the edits on top. */
336
+ /** The review's tree for an uncommitted target: HEAD, then the edits on top,
337
+ * committed inside the throwaway checkout so the snapshot has a commit the
338
+ * instructions can name (`git diff <merge-base> <snapshot>` then holds the
339
+ * edits and new files too). Returns that commit, or `t.headSha` when there
340
+ * were no edits. `commit-tree`, not `commit`: no hook runs and nothing is
341
+ * signed. */
297
342
  export async function addUncommittedTree(cwd, dir, t, o = {}) {
298
343
  await addReviewTree(cwd, dir, t.headSha, o);
299
- if (!t.uncommitted)
300
- return;
301
- const { patch } = t.uncommitted;
302
- if (patch)
303
- await gitAsync(dir, ["apply", "--whitespace=nowarn"], {
304
- input: patch,
305
- ...(o.signal ? { signal: o.signal } : {}),
306
- });
344
+ if (!t.uncommitted?.patch)
345
+ return t.headSha;
346
+ const signal = o.signal ? { signal: o.signal } : {};
347
+ await gitAsync(dir, ["apply", "--index", "--whitespace=nowarn"], {
348
+ input: t.uncommitted.patch,
349
+ ...signal,
350
+ });
351
+ const tree = await gitAsync(dir, ["write-tree"], signal);
352
+ const snapshot = await gitAsync(dir, [
353
+ "-c",
354
+ "user.name=quickreview",
355
+ "-c",
356
+ "user.email=quickreview@localhost",
357
+ "commit-tree",
358
+ "--no-gpg-sign",
359
+ tree,
360
+ "-p",
361
+ t.headSha,
362
+ "-m",
363
+ "quickreview: the uncommitted changes under review",
364
+ ], signal);
365
+ await gitAsync(dir, ["update-ref", "--no-deref", "HEAD", snapshot], signal);
366
+ return snapshot;
307
367
  }
308
368
  /** A throwaway detached checkout of `sha`, for the review to read. A shared
309
369
  * clone, not a worktree: its objects come from the repository by alternates, so
@@ -1 +1 @@
1
- {"version":3,"file":"localreview.js","sourceRoot":"","sources":["../../src/localreview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"localreview.js","sourceRoot":"","sources":["../../src/localreview.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import type { CoreConfig } from "./reviewconfig.js";
2
+ /** The providers the review's sessions run on: every model spec's
3
+ * `provider/` prefix, in first-seen order. */
4
+ export declare function reviewProviders(cfg: Pick<CoreConfig, "models">): string[];
5
+ /** The OpenAI providers, each the other's twin. */
6
+ export declare const OPENAI_PROVIDERS: readonly string[];
7
+ /** The provider that serves the same models on another OpenAI login, or
8
+ * undefined for a provider outside the family. */
9
+ export declare function twinProvider(provider: string): string | undefined;
10
+ /** A spec taken apart at its first `/`: `provider/rest`, where `rest` is the
11
+ * model id with any `:thinking` suffix left on. Null for a bare id. */
12
+ export declare function splitProvider(spec: string): {
13
+ provider: string;
14
+ rest: string;
15
+ } | null;
16
+ /** The model id of a spec's `rest`: the `:thinking` suffix dropped. */
17
+ export declare function modelIdOf(rest: string): string;
18
+ export interface ProviderProbe {
19
+ /** Does this provider have a usable credential? */
20
+ hasCredential(provider: string): boolean;
21
+ /** Does this provider serve this model id? Omitted: assume it does (the
22
+ * OpenAI twins carry the same catalog). */
23
+ hasModel?(provider: string, modelId: string): boolean;
24
+ }
25
+ /** The provider to run `provider`'s model `modelId` on: `provider` itself when
26
+ * it has a credential (or when nothing better exists), else its OpenAI twin
27
+ * when the twin has one and serves the model. */
28
+ export declare function routeProvider(provider: string, modelId: string, probe: ProviderProbe): string;
29
+ /** A whole spec (`provider/id[:thinking]`) rerouted by `routeProvider`; a spec
30
+ * with no provider prefix is returned as given. */
31
+ export declare function routeModelSpec(spec: string, probe: ProviderProbe): string;
32
+ /** The providers a pi `auth.json` holds a credential for: every entry of type
33
+ * "oauth" or "api_key" (pi's two stored credential shapes; an api_key's `key`
34
+ * may be a literal, an env name or a `!command`, all of which count). An API key
35
+ * in `OPENAI_API_KEY` counts for `openai`, as pi's own env lookup does. Text
36
+ * that does not parse holds nothing. */
37
+ export declare function providersInAuthJson(raw: string | null, env?: Readonly<Record<string, string | undefined>>): Set<string>;
38
+ /** `routeModelSpec` over a login file's text (null: no file) and the env the
39
+ * pi will run with: for a host that starts a CLI pi on a login it holds as a
40
+ * file (a takeover's or a debug round's borrowed copy). */
41
+ export declare function routeModelSpecForLogin(spec: string, authJson: string | null, env?: Readonly<Record<string, string | undefined>>): string;
42
+ //# sourceMappingURL=modelroute.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modelroute.d.ts","sourceRoot":"","sources":["../../src/modelroute.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD;8CAC8C;AAC9C,wBAAgB,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,MAAM,EAAE,CAgBzE;AAED,mDAAmD;AACnD,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAA+B,CAAC;AAE9E;kDACkD;AAClD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAIjE;AAED;uEACuE;AACvE,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAIrF;AAED,uEAAuE;AACvE,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAG9C;AAED,MAAM,WAAW,aAAa;IAC5B,mDAAmD;IACnD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IACzC;+CAC2C;IAC3C,QAAQ,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;CACvD;AAED;;iDAEiD;AACjD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,MAAM,CAM7F;AAED;mDACmD;AACnD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,MAAM,CAKzE;AAED;;;;wCAIwC;AACxC,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,GAAG,IAAI,EAClB,GAAG,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAM,GACrD,GAAG,CAAC,MAAM,CAAC,CAqBb;AAED;;2DAE2D;AAC3D,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,GAAG,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAM,GACrD,MAAM,CAGR"}
@@ -0,0 +1,126 @@
1
+ // Which provider a model spec runs on, given the logins that exist.
2
+ //
3
+ // pi offers three OpenAI logins, and they land on two providers:
4
+ // - "OpenAI Codex (legacy)" (an OAuth login) is the provider `openai-codex`;
5
+ // - "Sign in with ChatGPT" (pi 1.4's newer OAuth login) is the provider `openai`;
6
+ // - an OpenAI API key (stored by /login, or OPENAI_API_KEY) is also `openai`.
7
+ // Both providers serve the same model ids (pi-ai's catalogs carry gpt-6.1-sol
8
+ // on each), so one login is as good as the other for a review. The shipped
9
+ // specs name `openai-codex/…`, the route the production install logged in
10
+ // with, and stay that way: this module only reroutes a spec whose named
11
+ // provider has no usable credential while its twin has one. The provider a
12
+ // spec names always wins when its credential exists, so an install that works
13
+ // today runs exactly as before.
14
+ //
15
+ // Pure: the caller says which providers have a credential. The SDK host asks
16
+ // pi's own ModelRuntime (packages/pi-plugin/src/engine/pisdk.ts); a CLI pi is
17
+ // rerouted by its own extension from pi's model registry
18
+ // (extensions/login-route.ts); a host that only has a login FILE (the companion
19
+ // entrypoint's default model) reads it with `providersInAuthJson`.
20
+ /** The providers the review's sessions run on: every model spec's
21
+ * `provider/` prefix, in first-seen order. */
22
+ export function reviewProviders(cfg) {
23
+ const m = cfg.models;
24
+ const specs = [
25
+ m.conversation,
26
+ m.default,
27
+ ...Object.values(m.tiers),
28
+ ...Object.values(m.pass_models),
29
+ ];
30
+ const out = [];
31
+ for (const spec of specs) {
32
+ const slash = spec.indexOf("/");
33
+ if (slash <= 0)
34
+ continue;
35
+ const p = spec.slice(0, slash);
36
+ if (!out.includes(p))
37
+ out.push(p);
38
+ }
39
+ return out;
40
+ }
41
+ /** The OpenAI providers, each the other's twin. */
42
+ export const OPENAI_PROVIDERS = ["openai-codex", "openai"];
43
+ /** The provider that serves the same models on another OpenAI login, or
44
+ * undefined for a provider outside the family. */
45
+ export function twinProvider(provider) {
46
+ if (provider === "openai-codex")
47
+ return "openai";
48
+ if (provider === "openai")
49
+ return "openai-codex";
50
+ return undefined;
51
+ }
52
+ /** A spec taken apart at its first `/`: `provider/rest`, where `rest` is the
53
+ * model id with any `:thinking` suffix left on. Null for a bare id. */
54
+ export function splitProvider(spec) {
55
+ const at = spec.indexOf("/");
56
+ if (at <= 0 || at === spec.length - 1)
57
+ return null;
58
+ return { provider: spec.slice(0, at), rest: spec.slice(at + 1) };
59
+ }
60
+ /** The model id of a spec's `rest`: the `:thinking` suffix dropped. */
61
+ export function modelIdOf(rest) {
62
+ const colon = rest.lastIndexOf(":");
63
+ return colon > 0 ? rest.slice(0, colon) : rest;
64
+ }
65
+ /** The provider to run `provider`'s model `modelId` on: `provider` itself when
66
+ * it has a credential (or when nothing better exists), else its OpenAI twin
67
+ * when the twin has one and serves the model. */
68
+ export function routeProvider(provider, modelId, probe) {
69
+ if (probe.hasCredential(provider))
70
+ return provider;
71
+ const twin = twinProvider(provider);
72
+ if (twin === undefined || !probe.hasCredential(twin))
73
+ return provider;
74
+ if (probe.hasModel && !probe.hasModel(twin, modelId))
75
+ return provider;
76
+ return twin;
77
+ }
78
+ /** A whole spec (`provider/id[:thinking]`) rerouted by `routeProvider`; a spec
79
+ * with no provider prefix is returned as given. */
80
+ export function routeModelSpec(spec, probe) {
81
+ const parts = splitProvider(spec);
82
+ if (parts === null)
83
+ return spec;
84
+ const provider = routeProvider(parts.provider, modelIdOf(parts.rest), probe);
85
+ return provider === parts.provider ? spec : `${provider}/${parts.rest}`;
86
+ }
87
+ /** The providers a pi `auth.json` holds a credential for: every entry of type
88
+ * "oauth" or "api_key" (pi's two stored credential shapes; an api_key's `key`
89
+ * may be a literal, an env name or a `!command`, all of which count). An API key
90
+ * in `OPENAI_API_KEY` counts for `openai`, as pi's own env lookup does. Text
91
+ * that does not parse holds nothing. */
92
+ export function providersInAuthJson(raw, env = {}) {
93
+ const out = new Set();
94
+ if (raw !== null) {
95
+ try {
96
+ const parsed = JSON.parse(raw);
97
+ if (typeof parsed === "object" && parsed !== null)
98
+ for (const [name, v] of Object.entries(parsed)) {
99
+ if (typeof v !== "object" || v === null)
100
+ continue;
101
+ const type = v["type"];
102
+ if (type === "oauth")
103
+ out.add(name);
104
+ else if (type === "api_key") {
105
+ const key = v["key"];
106
+ if (typeof key === "string" && key.trim() !== "")
107
+ out.add(name);
108
+ }
109
+ }
110
+ }
111
+ catch {
112
+ // an unreadable login holds no credential
113
+ }
114
+ }
115
+ if ((env["OPENAI_API_KEY"] ?? "").trim() !== "")
116
+ out.add("openai");
117
+ return out;
118
+ }
119
+ /** `routeModelSpec` over a login file's text (null: no file) and the env the
120
+ * pi will run with: for a host that starts a CLI pi on a login it holds as a
121
+ * file (a takeover's or a debug round's borrowed copy). */
122
+ export function routeModelSpecForLogin(spec, authJson, env = {}) {
123
+ const have = providersInAuthJson(authJson, env);
124
+ return routeModelSpec(spec, { hasCredential: (p) => have.has(p) });
125
+ }
126
+ //# sourceMappingURL=modelroute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modelroute.js","sourceRoot":"","sources":["../../src/modelroute.ts"],"names":[],"mappings":"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"}