@humanbased/crosscheck 1.3.1-beta.7 → 1.6.0-beta.11

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 (165) hide show
  1. package/README.md +16 -1
  2. package/assets/demo-block-to-approve.gif +0 -0
  3. package/assets/demo-block-to-approve.mp4 +0 -0
  4. package/dist/__tests__/base-ref-recovery.test.d.ts +2 -0
  5. package/dist/__tests__/base-ref-recovery.test.d.ts.map +1 -0
  6. package/dist/__tests__/base-ref-recovery.test.js +102 -0
  7. package/dist/__tests__/base-ref-recovery.test.js.map +1 -0
  8. package/dist/__tests__/board.test.js +510 -20
  9. package/dist/__tests__/board.test.js.map +1 -1
  10. package/dist/__tests__/codex-env.test.js +4 -0
  11. package/dist/__tests__/codex-env.test.js.map +1 -1
  12. package/dist/__tests__/credential-free-origin.test.js +134 -2
  13. package/dist/__tests__/credential-free-origin.test.js.map +1 -1
  14. package/dist/__tests__/demo-arc.test.d.ts +2 -0
  15. package/dist/__tests__/demo-arc.test.d.ts.map +1 -0
  16. package/dist/__tests__/demo-arc.test.js +73 -0
  17. package/dist/__tests__/demo-arc.test.js.map +1 -0
  18. package/dist/__tests__/doc-only-verdict.test.d.ts +2 -0
  19. package/dist/__tests__/doc-only-verdict.test.d.ts.map +1 -0
  20. package/dist/__tests__/doc-only-verdict.test.js +79 -0
  21. package/dist/__tests__/doc-only-verdict.test.js.map +1 -0
  22. package/dist/__tests__/error-classification.test.js +14 -0
  23. package/dist/__tests__/error-classification.test.js.map +1 -1
  24. package/dist/__tests__/fix-requires-recheck.test.d.ts +2 -0
  25. package/dist/__tests__/fix-requires-recheck.test.d.ts.map +1 -0
  26. package/dist/__tests__/fix-requires-recheck.test.js +56 -0
  27. package/dist/__tests__/fix-requires-recheck.test.js.map +1 -0
  28. package/dist/__tests__/human-feedback.test.d.ts +2 -0
  29. package/dist/__tests__/human-feedback.test.d.ts.map +1 -0
  30. package/dist/__tests__/human-feedback.test.js +132 -0
  31. package/dist/__tests__/human-feedback.test.js.map +1 -0
  32. package/dist/__tests__/inconclusive-review.test.d.ts +2 -0
  33. package/dist/__tests__/inconclusive-review.test.d.ts.map +1 -0
  34. package/dist/__tests__/inconclusive-review.test.js +110 -0
  35. package/dist/__tests__/inconclusive-review.test.js.map +1 -0
  36. package/dist/__tests__/lock-ownership.test.d.ts +2 -0
  37. package/dist/__tests__/lock-ownership.test.d.ts.map +1 -0
  38. package/dist/__tests__/lock-ownership.test.js +167 -0
  39. package/dist/__tests__/lock-ownership.test.js.map +1 -0
  40. package/dist/__tests__/merge-gate.test.d.ts +2 -0
  41. package/dist/__tests__/merge-gate.test.d.ts.map +1 -0
  42. package/dist/__tests__/merge-gate.test.js +220 -0
  43. package/dist/__tests__/merge-gate.test.js.map +1 -0
  44. package/dist/__tests__/no-verdict.test.d.ts +2 -0
  45. package/dist/__tests__/no-verdict.test.d.ts.map +1 -0
  46. package/dist/__tests__/no-verdict.test.js +415 -0
  47. package/dist/__tests__/no-verdict.test.js.map +1 -0
  48. package/dist/__tests__/pr-spec.test.js +37 -0
  49. package/dist/__tests__/pr-spec.test.js.map +1 -1
  50. package/dist/__tests__/run.test.js +50 -1
  51. package/dist/__tests__/run.test.js.map +1 -1
  52. package/dist/__tests__/runner.test.js +82 -1
  53. package/dist/__tests__/runner.test.js.map +1 -1
  54. package/dist/__tests__/standing-verdict-history.test.d.ts +2 -0
  55. package/dist/__tests__/standing-verdict-history.test.d.ts.map +1 -0
  56. package/dist/__tests__/standing-verdict-history.test.js +109 -0
  57. package/dist/__tests__/standing-verdict-history.test.js.map +1 -0
  58. package/dist/__tests__/step-plan.test.d.ts +2 -0
  59. package/dist/__tests__/step-plan.test.d.ts.map +1 -0
  60. package/dist/__tests__/step-plan.test.js +129 -0
  61. package/dist/__tests__/step-plan.test.js.map +1 -0
  62. package/dist/cli.js +14 -1
  63. package/dist/cli.js.map +1 -1
  64. package/dist/commands/merge.d.ts +11 -0
  65. package/dist/commands/merge.d.ts.map +1 -0
  66. package/dist/commands/merge.js +188 -0
  67. package/dist/commands/merge.js.map +1 -0
  68. package/dist/commands/review.d.ts +3 -1
  69. package/dist/commands/review.d.ts.map +1 -1
  70. package/dist/commands/review.js +117 -9
  71. package/dist/commands/review.js.map +1 -1
  72. package/dist/commands/run.d.ts +53 -0
  73. package/dist/commands/run.d.ts.map +1 -1
  74. package/dist/commands/run.js +218 -36
  75. package/dist/commands/run.js.map +1 -1
  76. package/dist/commands/watch.d.ts.map +1 -1
  77. package/dist/commands/watch.js +41 -26
  78. package/dist/commands/watch.js.map +1 -1
  79. package/dist/config/loader.d.ts +4 -0
  80. package/dist/config/loader.d.ts.map +1 -1
  81. package/dist/config/loader.js +8 -0
  82. package/dist/config/loader.js.map +1 -1
  83. package/dist/config/review-strategy.json +5 -5
  84. package/dist/github/client.d.ts +18 -1
  85. package/dist/github/client.d.ts.map +1 -1
  86. package/dist/github/client.js +19 -3
  87. package/dist/github/client.js.map +1 -1
  88. package/dist/github/merge.d.ts +28 -0
  89. package/dist/github/merge.d.ts.map +1 -1
  90. package/dist/github/merge.js +41 -0
  91. package/dist/github/merge.js.map +1 -1
  92. package/dist/github/review-status.d.ts +33 -0
  93. package/dist/github/review-status.d.ts.map +1 -1
  94. package/dist/github/review-status.js +94 -9
  95. package/dist/github/review-status.js.map +1 -1
  96. package/dist/github/webhook.d.ts +1 -0
  97. package/dist/github/webhook.d.ts.map +1 -1
  98. package/dist/github/webhook.js.map +1 -1
  99. package/dist/lib/board.d.ts +60 -4
  100. package/dist/lib/board.d.ts.map +1 -1
  101. package/dist/lib/board.js +357 -65
  102. package/dist/lib/board.js.map +1 -1
  103. package/dist/lib/clone.d.ts +65 -1
  104. package/dist/lib/clone.d.ts.map +1 -1
  105. package/dist/lib/clone.js +252 -16
  106. package/dist/lib/clone.js.map +1 -1
  107. package/dist/lib/human-feedback.d.ts +9 -0
  108. package/dist/lib/human-feedback.d.ts.map +1 -0
  109. package/dist/lib/human-feedback.js +83 -0
  110. package/dist/lib/human-feedback.js.map +1 -0
  111. package/dist/lib/logger.d.ts +1 -1
  112. package/dist/lib/logger.d.ts.map +1 -1
  113. package/dist/lib/logger.js +6 -0
  114. package/dist/lib/logger.js.map +1 -1
  115. package/dist/lib/merge-gate.d.ts +70 -0
  116. package/dist/lib/merge-gate.d.ts.map +1 -0
  117. package/dist/lib/merge-gate.js +138 -0
  118. package/dist/lib/merge-gate.js.map +1 -0
  119. package/dist/lib/no-verdict.d.ts +104 -0
  120. package/dist/lib/no-verdict.d.ts.map +1 -0
  121. package/dist/lib/no-verdict.js +262 -0
  122. package/dist/lib/no-verdict.js.map +1 -0
  123. package/dist/lib/pr-lock.d.ts +37 -1
  124. package/dist/lib/pr-lock.d.ts.map +1 -1
  125. package/dist/lib/pr-lock.js +176 -29
  126. package/dist/lib/pr-lock.js.map +1 -1
  127. package/dist/lib/pr-spec.d.ts +7 -0
  128. package/dist/lib/pr-spec.d.ts.map +1 -1
  129. package/dist/lib/pr-spec.js +12 -1
  130. package/dist/lib/pr-spec.js.map +1 -1
  131. package/dist/lib/pr-workflow-state.d.ts +39 -0
  132. package/dist/lib/pr-workflow-state.d.ts.map +1 -1
  133. package/dist/lib/pr-workflow-state.js +73 -1
  134. package/dist/lib/pr-workflow-state.js.map +1 -1
  135. package/dist/lib/review-strategy.d.ts +14 -0
  136. package/dist/lib/review-strategy.d.ts.map +1 -1
  137. package/dist/lib/review-strategy.js +32 -1
  138. package/dist/lib/review-strategy.js.map +1 -1
  139. package/dist/lib/runner.d.ts +51 -2
  140. package/dist/lib/runner.d.ts.map +1 -1
  141. package/dist/lib/runner.js +211 -105
  142. package/dist/lib/runner.js.map +1 -1
  143. package/dist/lib/tips.d.ts.map +1 -1
  144. package/dist/lib/tips.js +1 -0
  145. package/dist/lib/tips.js.map +1 -1
  146. package/dist/lib/verdict.d.ts +30 -1
  147. package/dist/lib/verdict.d.ts.map +1 -1
  148. package/dist/lib/verdict.js +94 -9
  149. package/dist/lib/verdict.js.map +1 -1
  150. package/dist/reviewers/codex-env.d.ts.map +1 -1
  151. package/dist/reviewers/codex-env.js +2 -0
  152. package/dist/reviewers/codex-env.js.map +1 -1
  153. package/dist/reviewers/codex.d.ts.map +1 -1
  154. package/dist/reviewers/codex.js +3 -1
  155. package/dist/reviewers/codex.js.map +1 -1
  156. package/dist/reviewers/fix.d.ts +2 -2
  157. package/dist/reviewers/fix.d.ts.map +1 -1
  158. package/dist/reviewers/fix.js +10 -4
  159. package/dist/reviewers/fix.js.map +1 -1
  160. package/docs/growth/launch/README.md +59 -0
  161. package/docs/growth/launch/essay-stop-letting-one-agent-review-its-own-code.md +118 -0
  162. package/docs/growth/launch/posts.md +175 -0
  163. package/docs/trust.md +16 -1
  164. package/get-started.md +17 -0
  165. package/package.json +11 -3
@@ -1 +1 @@
1
- {"version":3,"file":"board.js","sourceRoot":"","sources":["../../src/lib/board.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"board.js","sourceRoot":"","sources":["../../src/lib/board.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,79 @@
1
1
  import type { Config } from '../config/schema.js';
2
+ export declare function isolateGitConfig(): void;
2
3
  export declare function redactCloneSecrets(value: string): string;
4
+ /**
5
+ * How `refs/remotes/origin/<base>` came to exist — or that it does not.
6
+ *
7
+ * `unavailable` is the one that matters: without the base ref there is no PR diff,
8
+ * and every downstream step degrades silently rather than failing. The review
9
+ * vendor answers "could not be performed", the commit counter falls back to whole
10
+ * history and skips the fix step, and `git diff origin/<base>...HEAD` in the fixer
11
+ * falls through to `HEAD~1` — a diff of the wrong thing.
12
+ */
13
+ export type BaseRefStatus = 'fetched' | 'recovered_by_sha' | 'recovered_by_merge_ref' | 'unavailable';
14
+ export interface CloneResult {
15
+ baseRefStatus: BaseRefStatus;
16
+ }
17
+ export declare class BaseRefUnavailableError extends Error {
18
+ readonly baseRef: string;
19
+ constructor(baseRef: string);
20
+ }
21
+ export declare function isBaseRefUnavailableError(err: unknown): err is BaseRefUnavailableError;
3
22
  export declare function clonePRForReview(params: {
4
23
  owner: string;
5
24
  repo: string;
6
25
  prNumber: number;
7
26
  baseRef: string;
27
+ /**
28
+ * The base commit from the PR payload. A branch that was deleted or renamed after
29
+ * the PR opened no longer resolves by name, but GitHub still serves the commit
30
+ * itself — so this is what turns an unreviewable PR back into a reviewable one.
31
+ */
32
+ baseSha?: string;
8
33
  tmpDir: string;
9
34
  token: string;
10
35
  protocol: Config['clone_protocol'];
11
36
  onBaseFetchFailed?: () => void;
37
+ onBaseRefRecovered?: (status: BaseRefStatus) => void;
12
38
  onProgress?: (line: string) => void;
13
- }): Promise<void>;
39
+ }): Promise<CloneResult>;
40
+ /**
41
+ * Puts `refs/remotes/origin/<baseRef>` in place, or reports that it cannot be.
42
+ *
43
+ * Split out of clonePRForReview so it is testable against a local origin: the
44
+ * clone itself is hard-wired to github.com, and the part worth testing is the
45
+ * recovery chain, not the URL building.
46
+ *
47
+ * Assumes `tmpDir` is a git repo with an `origin` remote and the PR head checked
48
+ * out — never the base branch, since git refuses to update a checked-out ref.
49
+ */
50
+ export declare function resolveBaseRef(params: {
51
+ tmpDir: string;
52
+ baseRef: string;
53
+ prNumber: number;
54
+ baseSha?: string;
55
+ onBaseFetchFailed?: () => void;
56
+ onBaseRefRecovered?: (status: BaseRefStatus) => void;
57
+ }): Promise<BaseRefStatus>;
58
+ export declare function runGitWithoutHooks(repoDir: string, args: string[], env?: NodeJS.ProcessEnv): void;
59
+ export declare class CompromisedCloneError extends Error {
60
+ constructor();
61
+ }
62
+ export interface ChangedFiles {
63
+ files: string[];
64
+ additions: number;
65
+ deletions: number;
66
+ }
67
+ /**
68
+ * The PR's own changes, read from the clone rather than the API.
69
+ *
70
+ * The API's file list paginates and truncates on large PRs, and a truncated list
71
+ * can turn a mixed PR into an apparently doc-only one — which now caps a verdict,
72
+ * so a wrong answer suppresses a real BLOCK. The clone has the whole diff.
73
+ *
74
+ * Returns null when the diff cannot be read (no base ref, empty diff), so callers
75
+ * fall back rather than treating "unknown" as "no files".
76
+ */
77
+ export declare function changedFilesVsBase(tmpDir: string, baseRef: string): ChangedFiles | null;
14
78
  export declare function withCredentialFreeOrigin<T>(repoDir: string, fn: () => Promise<T>): Promise<T>;
15
79
  //# sourceMappingURL=clone.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"clone.d.ts","sourceRoot":"","sources":["../../src/lib/clone.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAkBjD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AA4DD,wBAAsB,gBAAgB,CAAC,MAAM,EAAE;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAA;IAClC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC9B,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BhB;AAgBD,wBAAsB,wBAAwB,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAoBnG"}
1
+ {"version":3,"file":"clone.d.ts","sourceRoot":"","sources":["../../src/lib/clone.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAgBjD,wBAAgB,gBAAgB,IAAI,IAAI,CAuBvC;AAUD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AA0DD;;;;;;;;GAQG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,kBAAkB,GAAG,wBAAwB,GAAG,aAAa,CAAA;AAErG,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,aAAa,CAAA;CAC7B;AAED,qBAAa,uBAAwB,SAAQ,KAAK;aACpB,OAAO,EAAE,MAAM;gBAAf,OAAO,EAAE,MAAM;CAO5C;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,uBAAuB,CAEtF;AAcD,wBAAsB,gBAAgB,CAAC,MAAM,EAAE;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAA;IAClC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC9B,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IACpD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC,GAAG,OAAO,CAAC,WAAW,CAAC,CAgCvB;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE;IAC3C,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC9B,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;CACrD,GAAG,OAAO,CAAC,aAAa,CAAC,CAgDzB;AAID,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAOjG;AAED,qBAAa,qBAAsB,SAAQ,KAAK;;CAK/C;AAkDD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CA2BvF;AAoBD,wBAAsB,wBAAwB,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAyCnG"}
package/dist/lib/clone.js CHANGED
@@ -1,6 +1,10 @@
1
1
  import { setTimeout as sleep } from 'node:timers/promises';
2
+ import { randomUUID } from 'crypto';
2
3
  import { execFileSync } from 'child_process';
4
+ import { existsSync, readFileSync, renameSync, rmSync, statSync, writeFileSync } from 'fs';
5
+ import { isAbsolute, resolve } from 'path';
3
6
  import { execa } from 'execa';
7
+ import { getGitIdentityFromEnv } from '../config/loader.js';
4
8
  const GIT_RESILIENCE_ARGS = [
5
9
  '-c', 'http.postBuffer=524288000',
6
10
  '-c', 'http.lowSpeedLimit=1000',
@@ -8,6 +12,36 @@ const GIT_RESILIENCE_ARGS = [
8
12
  '-c', 'http.keepAlive=true',
9
13
  '-c', 'http.connectTimeout=30',
10
14
  ];
15
+ const NULL_DEVICE = process.platform === 'win32' ? 'NUL' : '/dev/null';
16
+ // Agents share the operator's HOME, so a full-access run can edit global Git
17
+ // config. Preserve only the identity needed for commits, then make every Git
18
+ // child in this process ignore global and system config.
19
+ export function isolateGitConfig() {
20
+ const configValue = (key) => {
21
+ for (const scope of ['--global', '--system']) {
22
+ try {
23
+ const value = execFileSync('git', ['config', scope, '--get', key], { encoding: 'utf8', stdio: 'pipe' }).trim();
24
+ if (value)
25
+ return value;
26
+ }
27
+ catch { /* try the next scope */ }
28
+ }
29
+ return undefined;
30
+ };
31
+ const envIdentity = getGitIdentityFromEnv();
32
+ const name = envIdentity.name ?? configValue('user.name');
33
+ const email = envIdentity.email ?? configValue('user.email');
34
+ if (name) {
35
+ process.env.GIT_AUTHOR_NAME ??= name;
36
+ process.env.GIT_COMMITTER_NAME ??= name;
37
+ }
38
+ if (email) {
39
+ process.env.GIT_AUTHOR_EMAIL ??= email;
40
+ process.env.GIT_COMMITTER_EMAIL ??= email;
41
+ }
42
+ process.env.GIT_CONFIG_NOSYSTEM = '1';
43
+ process.env.GIT_CONFIG_GLOBAL = NULL_DEVICE;
44
+ }
11
45
  // Bypass `gh repo clone` so gh's keyring auth (which may bridge to VS Code's
12
46
  // GitHub extension) is never invoked. HTTPS embeds the token in the URL.
13
47
  function buildCloneUrl(owner, repo, token, protocol) {
@@ -29,6 +63,7 @@ function isTransientGitError(message) {
29
63
  const MAX_GIT_RETRIES = 3;
30
64
  const GIT_RETRY_DELAY_MS = 2000;
31
65
  async function runGit(args, cwd, retryable = false, onProgress) {
66
+ isolateGitConfig();
32
67
  let lastErr;
33
68
  for (let attempt = 1; attempt <= (retryable ? MAX_GIT_RETRIES : 1); attempt++) {
34
69
  try {
@@ -72,11 +107,36 @@ async function runGit(args, cwd, retryable = false, onProgress) {
72
107
  if (lastErr)
73
108
  throw lastErr;
74
109
  }
110
+ export class BaseRefUnavailableError extends Error {
111
+ baseRef;
112
+ constructor(baseRef) {
113
+ super(`base ref origin/${baseRef} could not be resolved — the branch is deleted or renamed, `
114
+ + 'so the PR diff cannot be computed. Retarget the PR to a live base branch and re-run.');
115
+ this.baseRef = baseRef;
116
+ this.name = 'BaseRefUnavailableError';
117
+ }
118
+ }
119
+ export function isBaseRefUnavailableError(err) {
120
+ return err instanceof BaseRefUnavailableError;
121
+ }
122
+ function refExists(tmpDir, ref) {
123
+ try {
124
+ execFileSync('git', ['rev-parse', '--verify', '--quiet', `${ref}^{commit}`], { cwd: tmpDir, stdio: ['ignore', 'pipe', 'ignore'] });
125
+ return true;
126
+ }
127
+ catch {
128
+ return false;
129
+ }
130
+ }
75
131
  // Clone the repo, fetch & checkout the PR head, and fetch the base ref into
76
132
  // refs/remotes/origin/<base>. onBaseFetchFailed lets callers log a warning;
77
133
  // other failures bubble up.
78
134
  export async function clonePRForReview(params) {
79
- const { owner, repo, prNumber, baseRef, tmpDir, token, protocol, onBaseFetchFailed, onProgress } = params;
135
+ // Isolation is scoped here, not globally in cli.ts, so commands like `skill install`
136
+ // that don't execute agents keep using the operator's normal Git config (credential
137
+ // helpers, url.*.insteadOf, CA/proxy settings).
138
+ isolateGitConfig();
139
+ const { owner, repo, prNumber, baseRef, baseSha, tmpDir, token, protocol, onBaseFetchFailed, onBaseRefRecovered, onProgress } = params;
80
140
  const cloneUrl = buildCloneUrl(owner, repo, token, protocol);
81
141
  // Clone is retryable — transient network issues (curl 16/18, framing errors) are common.
82
142
  // GIT_RESILIENCE_ARGS inline (-c flags) apply HTTP buffer/timeout settings without
@@ -95,11 +155,161 @@ export async function clonePRForReview(params) {
95
155
  // origin/<base>, countCrosscheckCommitsForPR cannot scope its range and falls
96
156
  // back to counting the whole history — which trips the auto-fix commit cap on
97
157
  // any repo with prior [crosscheck] commits and silently disables fixing.
158
+ const baseRefStatus = await resolveBaseRef({
159
+ tmpDir, baseRef, prNumber,
160
+ ...(baseSha !== undefined && { baseSha }),
161
+ ...(onBaseFetchFailed !== undefined && { onBaseFetchFailed }),
162
+ ...(onBaseRefRecovered !== undefined && { onBaseRefRecovered }),
163
+ });
164
+ return { baseRefStatus };
165
+ }
166
+ /**
167
+ * Puts `refs/remotes/origin/<baseRef>` in place, or reports that it cannot be.
168
+ *
169
+ * Split out of clonePRForReview so it is testable against a local origin: the
170
+ * clone itself is hard-wired to github.com, and the part worth testing is the
171
+ * recovery chain, not the URL building.
172
+ *
173
+ * Assumes `tmpDir` is a git repo with an `origin` remote and the PR head checked
174
+ * out — never the base branch, since git refuses to update a checked-out ref.
175
+ */
176
+ export async function resolveBaseRef(params) {
177
+ // Called at this entry point too, not just in clonePRForReview: this is exported
178
+ // and reachable on its own, and every public git entry point in this module
179
+ // isolates for itself rather than trusting its caller to have done it.
180
+ isolateGitConfig();
181
+ const { tmpDir, baseRef, prNumber, baseSha, onBaseFetchFailed, onBaseRefRecovered } = params;
182
+ let baseRefStatus = 'fetched';
98
183
  try {
99
184
  await runGit([...GIT_RESILIENCE_ARGS, 'fetch', 'origin', `${baseRef}:refs/remotes/origin/${baseRef}`], tmpDir, true);
100
185
  }
101
186
  catch {
102
187
  onBaseFetchFailed?.();
188
+ baseRefStatus = 'unavailable';
189
+ }
190
+ // Fetching by name reports success in cases where the ref did not actually land,
191
+ // so trust the ref, not the exit code.
192
+ if (baseRefStatus === 'fetched' && !refExists(tmpDir, `refs/remotes/origin/${baseRef}`)) {
193
+ onBaseFetchFailed?.();
194
+ baseRefStatus = 'unavailable';
195
+ }
196
+ // Recovery 1 — by commit. A deleted or renamed base branch has no name to fetch,
197
+ // but the commit stays reachable and GitHub still serves it. Depth matches the
198
+ // clone so the recovered ref carries the same history a by-name fetch would.
199
+ if (baseRefStatus === 'unavailable' && baseSha) {
200
+ try {
201
+ await runGit([...GIT_RESILIENCE_ARGS, 'fetch', '--depth=50', 'origin', baseSha], tmpDir, true);
202
+ execFileSync('git', ['update-ref', `refs/remotes/origin/${baseRef}`, 'FETCH_HEAD'], { cwd: tmpDir, stdio: 'ignore' });
203
+ if (refExists(tmpDir, `refs/remotes/origin/${baseRef}`))
204
+ baseRefStatus = 'recovered_by_sha';
205
+ }
206
+ catch { /* fall through to the merge-ref recovery */ }
207
+ }
208
+ // Recovery 2 — via the PR's merge ref. GitHub keeps refs/pull/<n>/merge for an
209
+ // open, mergeable PR; its first parent is the base tip. This survives even when
210
+ // the base commit itself is no longer directly fetchable.
211
+ if (baseRefStatus === 'unavailable') {
212
+ try {
213
+ await runGit([...GIT_RESILIENCE_ARGS, 'fetch', '--depth=50', 'origin', `pull/${prNumber}/merge:refs/crosscheck/pr-${prNumber}-merge`], tmpDir, true);
214
+ const parent = execFileSync('git', ['rev-parse', `refs/crosscheck/pr-${prNumber}-merge^1`], { cwd: tmpDir, encoding: 'utf8' }).trim();
215
+ execFileSync('git', ['update-ref', `refs/remotes/origin/${baseRef}`, parent], { cwd: tmpDir, stdio: 'ignore' });
216
+ if (refExists(tmpDir, `refs/remotes/origin/${baseRef}`))
217
+ baseRefStatus = 'recovered_by_merge_ref';
218
+ }
219
+ catch { /* base ref is genuinely unavailable */ }
220
+ }
221
+ if (baseRefStatus === 'recovered_by_sha' || baseRefStatus === 'recovered_by_merge_ref') {
222
+ onBaseRefRecovered?.(baseRefStatus);
223
+ }
224
+ return baseRefStatus;
225
+ }
226
+ const HOOKS_DISABLED = NULL_DEVICE;
227
+ export function runGitWithoutHooks(repoDir, args, env) {
228
+ isolateGitConfig();
229
+ execFileSync('git', ['-c', `core.hooksPath=${HOOKS_DISABLED}`, ...args], {
230
+ cwd: repoDir,
231
+ env: { ...process.env, ...env, GIT_CONFIG_NOSYSTEM: '1', GIT_CONFIG_GLOBAL: NULL_DEVICE },
232
+ stdio: 'pipe',
233
+ });
234
+ }
235
+ export class CompromisedCloneError extends Error {
236
+ constructor() {
237
+ super('Review clone is compromised: its Git configuration could not be restored after the agent exited. This clone must be discarded before another Git operation runs.');
238
+ this.name = 'CompromisedCloneError';
239
+ }
240
+ }
241
+ function isGitRepository(repoDir) {
242
+ try {
243
+ execFileSync('git', ['rev-parse', '--git-dir'], { cwd: repoDir, stdio: 'pipe' });
244
+ return true;
245
+ }
246
+ catch {
247
+ return false;
248
+ }
249
+ }
250
+ function disableHooks(repoDir) {
251
+ execFileSync('git', ['config', 'core.hooksPath', HOOKS_DISABLED], { cwd: repoDir });
252
+ }
253
+ function gitPath(repoDir, name) {
254
+ const path = execFileSync('git', ['rev-parse', '--git-path', name], { cwd: repoDir, encoding: 'utf8' }).trim();
255
+ return isAbsolute(path) ? path : resolve(repoDir, path);
256
+ }
257
+ function snapshotFile(path) {
258
+ if (!existsSync(path))
259
+ return { path };
260
+ return { path, contents: readFileSync(path), mode: statSync(path).mode };
261
+ }
262
+ function restoreFile(snapshot) {
263
+ if (snapshot.contents === undefined) {
264
+ rmSync(snapshot.path, { force: true });
265
+ return;
266
+ }
267
+ const tmpPath = `${snapshot.path}.crosscheck-restore-${randomUUID()}`;
268
+ try {
269
+ writeFileSync(tmpPath, snapshot.contents, { mode: snapshot.mode });
270
+ renameSync(tmpPath, snapshot.path);
271
+ }
272
+ finally {
273
+ rmSync(tmpPath, { force: true });
274
+ }
275
+ }
276
+ function resolvedGitConfig(repoDir) {
277
+ return execFileSync('git', ['config', '--null', '--list', '--show-origin'], { cwd: repoDir, stdio: 'pipe' });
278
+ }
279
+ /**
280
+ * The PR's own changes, read from the clone rather than the API.
281
+ *
282
+ * The API's file list paginates and truncates on large PRs, and a truncated list
283
+ * can turn a mixed PR into an apparently doc-only one — which now caps a verdict,
284
+ * so a wrong answer suppresses a real BLOCK. The clone has the whole diff.
285
+ *
286
+ * Returns null when the diff cannot be read (no base ref, empty diff), so callers
287
+ * fall back rather than treating "unknown" as "no files".
288
+ */
289
+ export function changedFilesVsBase(tmpDir, baseRef) {
290
+ try {
291
+ // execFileSync, not execSync: a git ref may legally contain `;`, `$( )` and
292
+ // backticks, and this value drives routing rather than best-effort logging.
293
+ const raw = execFileSync('git', ['diff', '--numstat', `origin/${baseRef}...HEAD`], { cwd: tmpDir, encoding: 'utf8', stdio: ['ignore', 'pipe', 'pipe'] }).trim();
294
+ if (!raw)
295
+ return null;
296
+ const files = [];
297
+ let additions = 0;
298
+ let deletions = 0;
299
+ for (const line of raw.split('\n')) {
300
+ // numstat: <added>\t<deleted>\t<path>. Binary files report '-' for both.
301
+ const [add, del, ...rest] = line.split('\t');
302
+ const path = rest.join('\t').trim();
303
+ if (!path)
304
+ continue;
305
+ files.push(path);
306
+ additions += parseInt(add, 10) || 0;
307
+ deletions += parseInt(del, 10) || 0;
308
+ }
309
+ return files.length === 0 ? null : { files, additions, deletions };
310
+ }
311
+ catch {
312
+ return null;
103
313
  }
104
314
  }
105
315
  // Runs `fn` with the clone's `origin` URL stripped of its embedded credentials.
@@ -112,31 +322,57 @@ export async function clonePRForReview(params) {
112
322
  //
113
323
  // The token is not needed while an agent runs: reviews only read, and the fix
114
324
  // step's push happens back in the runner after the agent has exited. So it is
115
- // removed for the duration and restored in `finally`, whether `fn` returned or
116
- // threw. A crash hard enough to skip the finally loses only the throwaway clone.
325
+ // removed for the duration and restored afterwards, whether `fn` returned or
326
+ // threw. A crash hard enough to skip that loses only the throwaway clone.
117
327
  //
118
- // SSH remotes carry no credential and are left untouched.
328
+ // Git config is the second half of the same hole: hooks, fsmonitor, filters, and
329
+ // other settings can execute programs during the runner's later Git commands.
330
+ // Snapshotting and restoring the trusted config closes those paths together;
331
+ // comparing Git's resolved view also detects changes hidden in pre-existing
332
+ // includes. The clone is disposable, so a failed restore fails shut.
119
333
  export async function withCredentialFreeOrigin(repoDir, fn) {
334
+ isolateGitConfig();
335
+ if (!isGitRepository(repoDir))
336
+ return fn();
337
+ disableHooks(repoDir);
120
338
  let original;
121
339
  try {
122
- original = execFileSync('git', ['remote', 'get-url', 'origin'], { cwd: repoDir, encoding: 'utf8' }).trim();
340
+ original = execFileSync('git', ['remote', 'get-url', 'origin'], { cwd: repoDir, encoding: 'utf8', stdio: 'pipe' }).trim();
123
341
  }
124
342
  catch {
125
- // No origin (or no repo) — nothing to strip, and nothing to restore.
126
- return fn();
343
+ // No origin — nothing to strip.
127
344
  }
128
- const scrubbed = original.replace(/^https:\/\/[^@/]*@github\.com\//, 'https://github.com/');
129
- if (scrubbed === original)
130
- return fn();
131
- execFileSync('git', ['remote', 'set-url', 'origin', scrubbed], { cwd: repoDir });
345
+ const scrubbed = original?.replace(/^https:\/\/[^@/]*@github\.com\//, 'https://github.com/');
346
+ const stripped = original !== undefined && scrubbed !== original;
347
+ if (stripped)
348
+ execFileSync('git', ['remote', 'set-url', 'origin', scrubbed], { cwd: repoDir });
349
+ const configSnapshots = [...new Set(['config', 'config.worktree'].map(name => gitPath(repoDir, name)))]
350
+ .map(snapshotFile);
351
+ const trustedConfig = resolvedGitConfig(repoDir);
352
+ let result;
353
+ let bodyError;
354
+ let bodyFailed = false;
132
355
  try {
133
- return await fn();
356
+ result = await fn();
134
357
  }
135
- finally {
136
- try {
358
+ catch (err) {
359
+ bodyError = err;
360
+ bodyFailed = true;
361
+ }
362
+ try {
363
+ for (const snapshot of configSnapshots)
364
+ restoreFile(snapshot);
365
+ if (!resolvedGitConfig(repoDir).equals(trustedConfig))
366
+ throw new Error('resolved Git config changed');
367
+ if (stripped)
137
368
  execFileSync('git', ['remote', 'set-url', 'origin', original], { cwd: repoDir });
138
- }
139
- catch { /* clone is disposable; a failed restore must not mask fn's result */ }
140
369
  }
370
+ catch {
371
+ // Deliberately avoids the words the vendor-login classifier keys on.
372
+ throw new CompromisedCloneError();
373
+ }
374
+ if (bodyFailed)
375
+ throw bodyError;
376
+ return result;
141
377
  }
142
378
  //# sourceMappingURL=clone.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clone.js","sourceRoot":"","sources":["../../src/lib/clone.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clone.js","sourceRoot":"","sources":["../../src/lib/clone.ts"],"names":[],"mappings":"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"}