@almightygpt/core 0.4.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/adapters/claude.d.ts +1 -1
  2. package/dist/adapters/claude.d.ts.map +1 -1
  3. package/dist/adapters/claude.js.map +1 -1
  4. package/dist/adapters/gemini.d.ts +1 -1
  5. package/dist/adapters/gemini.d.ts.map +1 -1
  6. package/dist/adapters/gemini.js.map +1 -1
  7. package/dist/adapters/mock.d.ts +1 -0
  8. package/dist/adapters/mock.d.ts.map +1 -1
  9. package/dist/adapters/mock.js +1 -0
  10. package/dist/adapters/mock.js.map +1 -1
  11. package/dist/adapters/openai.d.ts +1 -1
  12. package/dist/adapters/openai.d.ts.map +1 -1
  13. package/dist/adapters/openai.js.map +1 -1
  14. package/dist/adapters/types.d.ts +8 -0
  15. package/dist/adapters/types.d.ts.map +1 -1
  16. package/dist/adapters/types.js.map +1 -1
  17. package/dist/config/schema.d.ts +24 -0
  18. package/dist/config/schema.d.ts.map +1 -1
  19. package/dist/config/schema.js +6 -0
  20. package/dist/config/schema.js.map +1 -1
  21. package/dist/git/status.d.ts.map +1 -1
  22. package/dist/git/status.js +18 -5
  23. package/dist/git/status.js.map +1 -1
  24. package/dist/index.d.ts +2 -2
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +2 -2
  27. package/dist/index.js.map +1 -1
  28. package/dist/review/diff-filter.d.ts +37 -0
  29. package/dist/review/diff-filter.d.ts.map +1 -0
  30. package/dist/review/diff-filter.js +144 -0
  31. package/dist/review/diff-filter.js.map +1 -0
  32. package/dist/review/run-diff-review.d.ts.map +1 -1
  33. package/dist/review/run-diff-review.js +30 -8
  34. package/dist/review/run-diff-review.js.map +1 -1
  35. package/dist/review/run-worker-reviewer.d.ts.map +1 -1
  36. package/dist/review/run-worker-reviewer.js +31 -10
  37. package/dist/review/run-worker-reviewer.js.map +1 -1
  38. package/dist/review/write.d.ts +15 -0
  39. package/dist/review/write.d.ts.map +1 -1
  40. package/dist/review/write.js +29 -0
  41. package/dist/review/write.js.map +1 -1
  42. package/package.json +2 -1
  43. package/src/adapters/claude.ts +1 -1
  44. package/src/adapters/gemini.ts +1 -1
  45. package/src/adapters/mock.ts +1 -0
  46. package/src/adapters/openai.ts +1 -1
  47. package/src/adapters/types.ts +8 -0
  48. package/src/config/schema.ts +6 -0
  49. package/src/git/status.ts +21 -5
  50. package/src/index.ts +3 -1
  51. package/src/review/diff-filter.ts +190 -0
  52. package/src/review/run-diff-review.ts +40 -8
  53. package/src/review/run-worker-reviewer.ts +41 -10
  54. package/src/review/write.ts +42 -0
@@ -26,9 +26,10 @@ import { redactSecrets } from "../context/redact.js";
26
26
  import { buildContextManifest, writeContextManifest, } from "../context/manifest.js";
27
27
  import { collectGitContext, createRunFolder, writeAgentOutput, writeRunInput, writeRunMetadata, } from "../runs/folder.js";
28
28
  import { collectGitDiff } from "./diff.js";
29
+ import { filterDiffByIgnoreLists } from "./diff-filter.js";
29
30
  import { assembleMemory } from "./memory.js";
30
31
  import { buildReviewerSystemFraming, buildReviewerUserMessage, } from "./prompts.js";
31
- import { writeHumanReviewFile } from "./write.js";
32
+ import { preflightReviewFileCollision, writeHumanReviewFile, } from "./write.js";
32
33
  import { BudgetTracker, BudgetExceededError } from "./budget.js";
33
34
  export async function runDiffReview(opts) {
34
35
  const config = await loadConfig(opts.repoRoot);
@@ -48,6 +49,10 @@ export async function runDiffReview(opts) {
48
49
  throw new AdapterError(`Adapter "${reviewerName}" (${agentConfig.provider}) is not available. ` +
49
50
  envHintForProvider(agentConfig.provider), reviewerName);
50
51
  }
52
+ // Preflight the review-file collision BEFORE any paid adapter call.
53
+ // (Codex review v0.5: previously the check ran post-adapter, burning API
54
+ // money on duplicate-topic runs that were going to fail anyway.)
55
+ await preflightReviewFileCollision(opts.repoRoot, config.reviewsDir, opts.topic, opts.force ?? false);
51
56
  // Create run folder up front so partial failures still leave an artifact.
52
57
  const runFolder = await createRunFolder({
53
58
  repoRoot: opts.repoRoot,
@@ -89,13 +94,27 @@ export async function runDiffReview(opts) {
89
94
  throw new Error("No uncommitted changes to review. Stage some changes, pick a range with " +
90
95
  "--range, or pass --topic to a non-empty diff.");
91
96
  }
97
+ // Codex review v0.5 P1 #2: filter ignored files BEFORE secret redaction
98
+ // and BEFORE the provider call. Honors .almightyignore + .gitignore +
99
+ // config.context.exclude. Redaction still runs on the survivors as
100
+ // defense-in-depth.
101
+ const filtered = await filterDiffByIgnoreLists({
102
+ repoRoot: opts.repoRoot,
103
+ diffText: diffResult.diff,
104
+ files: diffResult.files,
105
+ configExclude: config.context.exclude,
106
+ });
92
107
  const redaction = config.security.redactSecrets
93
- ? redactSecrets(diffResult.diff)
94
- : { text: diffResult.diff, redactions: [], totalCount: 0 };
108
+ ? redactSecrets(filtered.filteredDiff)
109
+ : { text: filtered.filteredDiff, redactions: [], totalCount: 0 };
95
110
  const manifest = buildContextManifest({
96
111
  inputSource: opts.range ? "diff-range" : "diff",
97
- filesIncluded: diffResult.files.map((p) => ({ path: p, bytes: 0 })),
98
- filesSkipped: [],
112
+ filesIncluded: filtered.filesIncluded.map((p) => ({ path: p, bytes: 0 })),
113
+ filesSkipped: filtered.filesSkipped.map((s) => ({
114
+ path: s.path,
115
+ bytes: 0,
116
+ skippedReason: s.reason,
117
+ })),
99
118
  diffText: redaction.text,
100
119
  redaction: {
101
120
  enabled: config.security.redactSecrets,
@@ -110,12 +129,15 @@ export async function runDiffReview(opts) {
110
129
  const userMessage = buildReviewerUserMessage({
111
130
  topic: opts.topic,
112
131
  diff: redaction.text,
113
- files: diffResult.files,
132
+ files: filtered.filesIncluded,
114
133
  });
115
134
  const budget = new BudgetTracker(config.budget);
116
135
  const estimatedTokensIn = Math.ceil((systemPrompt.length + userMessage.length) / 4);
136
+ // Codex review v0.5 P2 #5: previously hardcoded "gpt-4o" here, which
137
+ // could block a cheap Gemini run on an OpenAI cost estimate. Use the
138
+ // actual adapter's default model so the preflight matches reality.
117
139
  budget.preflightCheck({
118
- model: "gpt-4o", // estimator only; adapter resolves real model
140
+ model: adapter.defaultModel,
119
141
  estimatedTokensIn,
120
142
  maxOutputTokens: 4096,
121
143
  });
@@ -193,7 +215,7 @@ export async function runDiffReview(opts) {
193
215
  costUsd: adapterOut.costUsd,
194
216
  latencyMs: adapterOut.latencyMs,
195
217
  diffEmpty: diffResult.empty,
196
- filesReviewed: diffResult.files,
218
+ filesReviewed: filtered.filesIncluded,
197
219
  memorySources: memory.sources,
198
220
  memoryMissing: memory.missing,
199
221
  runId: runFolder.id,
@@ -1 +1 @@
1
- {"version":3,"file":"run-diff-review.js","sourceRoot":"","sources":["../../src/review/run-diff-review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-diff-review.js","sourceRoot":"","sources":["../../src/review/run-diff-review.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"run-worker-reviewer.d.ts","sourceRoot":"","sources":["../../src/review/run-worker-reviewer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAoBH,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,kBAAkB,CAAC;AAWlE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wCAAwC;IACxC,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1D,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,MAAM,EAAE;QACN,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,oBAAoB,CAAC,CAsY/B"}
1
+ {"version":3,"file":"run-worker-reviewer.d.ts","sourceRoot":"","sources":["../../src/review/run-worker-reviewer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAoBH,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,kBAAkB,CAAC;AAelE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wCAAwC;IACxC,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1D,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,MAAM,EAAE;QACN,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,oBAAoB,CAAC,CAia/B"}
@@ -34,9 +34,10 @@ import { redactSecrets } from "../context/redact.js";
34
34
  import { buildContextManifest, writeContextManifest, } from "../context/manifest.js";
35
35
  import { collectGitContext, createRunFolder, writeAgentOutput, writeRunInput, writeRunMetadata, } from "../runs/folder.js";
36
36
  import { collectGitDiff } from "./diff.js";
37
+ import { filterDiffByIgnoreLists } from "./diff-filter.js";
37
38
  import { assembleMemory } from "./memory.js";
38
39
  import { buildReviewerSystemFraming, buildReviewerOfWorkerUserMessage, buildWorkerSystemFraming, buildWorkerUserMessage, } from "./prompts.js";
39
- import { writeHumanReviewFile } from "./write.js";
40
+ import { preflightReviewFileCollision, writeHumanReviewFile, } from "./write.js";
40
41
  import { BudgetTracker, BudgetExceededError } from "./budget.js";
41
42
  export async function runWorkerReviewerReview(opts) {
42
43
  const emit = opts.onEvent ?? (() => { });
@@ -76,6 +77,10 @@ export async function runWorkerReviewerReview(opts) {
76
77
  const sameProviderWarning = workerCfg.provider === reviewerCfg.provider
77
78
  ? `Worker and Reviewer are both ${workerCfg.provider}. Cross-vendor pairing catches more issues.`
78
79
  : undefined;
80
+ // Preflight the review-file collision BEFORE Worker or Reviewer fires.
81
+ // (Codex review v0.5: previously the check ran post-adapter, burning two
82
+ // adapter calls of API money on duplicate-topic runs.)
83
+ await preflightReviewFileCollision(opts.repoRoot, config.reviewsDir, opts.topic, opts.force ?? false);
79
84
  const runFolder = await createRunFolder({
80
85
  repoRoot: opts.repoRoot,
81
86
  runsDir: config.runsDir,
@@ -125,9 +130,18 @@ export async function runWorkerReviewerReview(opts) {
125
130
  if (diffResult.empty && !opts.range) {
126
131
  throw new Error("No uncommitted changes. Stage changes, pick a range with --range, or commit something to review.");
127
132
  }
133
+ // Codex review v0.5 P1 #2: filter ignored files BEFORE redaction and
134
+ // BEFORE either adapter call. Honors .almightyignore + .gitignore +
135
+ // config.context.exclude.
136
+ const filtered = await filterDiffByIgnoreLists({
137
+ repoRoot: opts.repoRoot,
138
+ diffText: diffResult.diff,
139
+ files: diffResult.files,
140
+ configExclude: config.context.exclude,
141
+ });
128
142
  const redaction = config.security.redactSecrets
129
- ? redactSecrets(diffResult.diff)
130
- : { text: diffResult.diff, redactions: [], totalCount: 0 };
143
+ ? redactSecrets(filtered.filteredDiff)
144
+ : { text: filtered.filteredDiff, redactions: [], totalCount: 0 };
131
145
  emit({
132
146
  type: "redaction_complete",
133
147
  totalCount: redaction.totalCount,
@@ -135,8 +149,12 @@ export async function runWorkerReviewerReview(opts) {
135
149
  });
136
150
  const manifest = buildContextManifest({
137
151
  inputSource: opts.range ? "diff-range" : "diff",
138
- filesIncluded: diffResult.files.map((p) => ({ path: p, bytes: 0 })),
139
- filesSkipped: [],
152
+ filesIncluded: filtered.filesIncluded.map((p) => ({ path: p, bytes: 0 })),
153
+ filesSkipped: filtered.filesSkipped.map((s) => ({
154
+ path: s.path,
155
+ bytes: 0,
156
+ skippedReason: s.reason,
157
+ })),
140
158
  diffText: redaction.text,
141
159
  redaction: {
142
160
  enabled: config.security.redactSecrets,
@@ -153,10 +171,13 @@ export async function runWorkerReviewerReview(opts) {
153
171
  const workerUser = buildWorkerUserMessage({
154
172
  topic: opts.topic,
155
173
  diff: redaction.text,
156
- files: diffResult.files,
174
+ files: filtered.filesIncluded,
157
175
  });
176
+ // Codex review v0.5 P2 #5: use the actual adapter's default model
177
+ // for the preflight estimate so a cheap Gemini Worker isn't blocked
178
+ // by an OpenAI cost estimate.
158
179
  budget.preflightCheck({
159
- model: "gpt-4o",
180
+ model: workerAdapter.defaultModel,
160
181
  estimatedTokensIn: Math.ceil((workerSystem.length + workerUser.length) / 4),
161
182
  maxOutputTokens: 4096,
162
183
  });
@@ -198,13 +219,13 @@ export async function runWorkerReviewerReview(opts) {
198
219
  const reviewerUser = buildReviewerOfWorkerUserMessage({
199
220
  topic: opts.topic,
200
221
  diff: redaction.text,
201
- files: diffResult.files,
222
+ files: filtered.filesIncluded,
202
223
  workerOutput: workerOut.content,
203
224
  workerAgent: workerName,
204
225
  workerProvider: workerAdapter.provider,
205
226
  });
206
227
  budget.preflightCheck({
207
- model: "gpt-4o",
228
+ model: reviewerAdapter.defaultModel,
208
229
  estimatedTokensIn: Math.ceil((reviewerSystem.length + reviewerUser.length) / 4),
209
230
  maxOutputTokens: 4096,
210
231
  });
@@ -341,7 +362,7 @@ export async function runWorkerReviewerReview(opts) {
341
362
  },
342
363
  metrics,
343
364
  totals,
344
- filesReviewed: diffResult.files,
365
+ filesReviewed: filtered.filesIncluded,
345
366
  redactionsTotal: redaction.totalCount,
346
367
  memoryMissing: [
347
368
  ...new Set([...workerMemory.missing, ...reviewerMemory.missing]),
@@ -1 +1 @@
1
- {"version":3,"file":"run-worker-reviewer.js","sourceRoot":"","sources":["../../src/review/run-worker-reviewer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-worker-reviewer.js","sourceRoot":"","sources":["../../src/review/run-worker-reviewer.ts"],"names":[],"mappings":"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"}
@@ -41,4 +41,19 @@ export interface WrittenReviewFile {
41
41
  bytes: number;
42
42
  }
43
43
  export declare function writeHumanReviewFile(opts: WriteReviewFileOptions): Promise<WrittenReviewFile>;
44
+ /**
45
+ * Compute the review file path for a topic without writing anything. Used
46
+ * by the review pipelines to **preflight** collisions *before* any paid
47
+ * adapter call. Same sanitization rules as writeHumanReviewFile.
48
+ */
49
+ export declare function reviewFilePathFor(reviewsDir: string, topic: string): string;
50
+ /**
51
+ * Preflight check: throws ReviewFileExistsError if the topic's review file
52
+ * already exists and `force` isn't set. Surfaces the error BEFORE any
53
+ * adapter is invoked so the user doesn't spend API money discovering an
54
+ * easily-avoidable collision.
55
+ *
56
+ * Returns the (relative) path so the caller doesn't have to recompute it.
57
+ */
58
+ export declare function preflightReviewFileCollision(repoRoot: string, reviewsDir: string, topic: string, force?: boolean): Promise<string>;
44
59
  //# sourceMappingURL=write.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../../src/review/write.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,qBAAa,qBAAsB,SAAQ,KAAK;aAED,IAAI,EAAE,MAAM;IADzD,SAAkB,IAAI,2BAA2B;gBACrC,OAAO,EAAE,MAAM,EAAkB,IAAI,EAAE,MAAM;CAG1D;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,sBAAsB,GAC3B,OAAO,CAAC,iBAAiB,CAAC,CAgC5B"}
1
+ {"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../../src/review/write.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,qBAAa,qBAAsB,SAAQ,KAAK;aAED,IAAI,EAAE,MAAM;IADzD,SAAkB,IAAI,2BAA2B;gBACrC,OAAO,EAAE,MAAM,EAAkB,IAAI,EAAE,MAAM;CAG1D;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,sBAAsB,GAC3B,OAAO,CAAC,iBAAiB,CAAC,CAgC5B;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,GACZ,MAAM,CAER;AAED;;;;;;;GAOG;AACH,wBAAsB,4BAA4B,CAChD,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,KAAK,UAAQ,GACZ,OAAO,CAAC,MAAM,CAAC,CAejB"}
@@ -46,6 +46,35 @@ export async function writeHumanReviewFile(opts) {
46
46
  await writeFile(absPath, content, "utf8");
47
47
  return { path: relPath, bytes: content.length };
48
48
  }
49
+ /**
50
+ * Compute the review file path for a topic without writing anything. Used
51
+ * by the review pipelines to **preflight** collisions *before* any paid
52
+ * adapter call. Same sanitization rules as writeHumanReviewFile.
53
+ */
54
+ export function reviewFilePathFor(reviewsDir, topic) {
55
+ return join(reviewsDir, `${sanitizeTopic(topic)}.md`);
56
+ }
57
+ /**
58
+ * Preflight check: throws ReviewFileExistsError if the topic's review file
59
+ * already exists and `force` isn't set. Surfaces the error BEFORE any
60
+ * adapter is invoked so the user doesn't spend API money discovering an
61
+ * easily-avoidable collision.
62
+ *
63
+ * Returns the (relative) path so the caller doesn't have to recompute it.
64
+ */
65
+ export async function preflightReviewFileCollision(repoRoot, reviewsDir, topic, force = false) {
66
+ const relPath = reviewFilePathFor(reviewsDir, topic);
67
+ const absPath = join(repoRoot, relPath);
68
+ if (existsSync(absPath) && !force) {
69
+ // Also run the git-status check to give a richer dirty-file message
70
+ // when applicable; falls through to the existence error below.
71
+ await assertSafeToWrite(repoRoot, relPath, false);
72
+ throw new ReviewFileExistsError(`Refusing to overwrite ${relPath}. Pass --force to overwrite (the ` +
73
+ `previous version remains in git history). Alternatively pick a ` +
74
+ `different --topic to keep both reviews.`, relPath);
75
+ }
76
+ return relPath;
77
+ }
49
78
  function sanitizeTopic(topic) {
50
79
  // Allow letters, digits, dot, dash, underscore. Replace everything else
51
80
  // with a single dash. Trim leading/trailing dashes. Lowercase.
@@ -1 +1 @@
1
- {"version":3,"file":"write.js","sourceRoot":"","sources":["../../src/review/write.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAED;IAD3B,IAAI,GAAG,uBAAuB,CAAC;IACjD,YAAY,OAAe,EAAkB,IAAY;QACvD,KAAK,CAAC,OAAO,CAAC,CAAC;QAD4B,SAAI,GAAJ,IAAI,CAAQ;IAEzD,CAAC;CACF;AA8BD,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAA4B;IAE5B,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,SAAS,KAAK,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAE7C,uEAAuE;IACvE,yEAAyE;IACzE,0EAA0E;IAC1E,0EAA0E;IAC1E,0DAA0D;IAC1D,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACvC,oEAAoE;QACpE,uEAAuE;QACvE,MAAM,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACvD,MAAM,IAAI,qBAAqB,CAC7B,yBAAyB,OAAO,mCAAmC;YACjE,iEAAiE;YACjE,yCAAyC,EAC3C,OAAO,CACR,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,0EAA0E;IAC1E,MAAM,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAE5D,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEnD,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAE1C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,wEAAwE;IACxE,+DAA+D;IAC/D,MAAM,OAAO,GAAG,KAAK;SAClB,IAAI,EAAE;SACN,WAAW,EAAE;SACb,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC;SAC9B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,UAAU,KAAK,wDAAwD;YACrE,sCAAsC,CACzC,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,oBAAoB,CAAC,IAA4B;IACxD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG;QAClB,aAAa,IAAI,CAAC,KAAK,EAAE;QACzB,EAAE;QACF,iBAAiB,IAAI,CAAC,YAAY,OAAO,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC,SAAS,KAAK;QACtF,gBAAgB,GAAG,IAAI;QACvB,aAAa,IAAI,CAAC,OAAO,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,CAAC,SAAS,QAAQ;QACzE,YAAY,IAAI,QAAQ;QACxB,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;QAC7D,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,mBAAmB,IAAI,CAAC,SAAS,MAAM,CAAC,CAAC,CAAC,EAAE;QAC7D,EAAE;KACH,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAa,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAEpD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,QAAQ,CAAC,IAAI,CACX;YACE,kCAAkC;YAClC,GAAG;YACH,KAAK,IAAI,CAAC,cAAc,EAAE;YAC1B,GAAG;YACH,2DAA2D;YAC3D,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,4DAA4D;IAC5D,IAAI,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACjC,SAAS,GAAG,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAChD,SAAS,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC;IACjD,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAEzB,uEAAuE;IACvE,2DAA2D;IAC3D,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,QAAQ,CAAC,IAAI,CACX;YACE,EAAE;YACF,0BAA0B;YAC1B,EAAE;YACF,mBAAmB,IAAI,CAAC,SAAS,KAAK;YACtC,sCAAsC,IAAI,CAAC,SAAS,sBAAsB;YAC1E,8BAA8B,IAAI,CAAC,SAAS,wBAAwB;YACpE,yBAAyB,IAAI,CAAC,SAAS,0BAA0B;YACjE,yBAAyB,IAAI,CAAC,SAAS,aAAa;YACpD,qBAAqB,IAAI,CAAC,SAAS,aAAa;SACjD,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,IAAI,CACX;QACE,EAAE;QACF,KAAK;QACL,+HAA+H;KAChI,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,IAAY,EAAE,KAAa;IAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,+DAA+D;IAC/D,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QACvB,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,KAAK,CAAC,KAAK,EAAE,CAAC;YACd,uDAAuD;YACvD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,KAAK,EAAE;gBAAE,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/D,SAAS;QACX,CAAC;QACD,MAAM;IACR,CAAC;IACD,oEAAoE;IACpE,4EAA4E;IAC5E,KAAK,KAAK,CAAC;IACX,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,yBAAyB,CAAC,IAAY;IAC7C,MAAM,cAAc,GAClB,8FAA8F,CAAC;IACjG,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"write.js","sourceRoot":"","sources":["../../src/review/write.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@almightygpt/core",
3
- "version": "0.4.0",
3
+ "version": "0.7.0",
4
4
  "description": "Core orchestrator, adapters, config, runs, and review logic for AlmightyGPT",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -26,6 +26,7 @@
26
26
  "@anthropic-ai/sdk": "^0.30.0",
27
27
  "@google/generative-ai": "^0.21.0",
28
28
  "execa": "^9.3.0",
29
+ "ignore": "^6.0.2",
29
30
  "openai": "^4.52.0",
30
31
  "p-limit": "^5.0.0",
31
32
  "yaml": "^2.4.0",
@@ -39,7 +39,7 @@ export class ClaudeAdapter implements Adapter {
39
39
  readonly provider = "anthropic";
40
40
 
41
41
  private readonly client: Anthropic | null;
42
- private readonly defaultModel: string;
42
+ readonly defaultModel: string;
43
43
  private readonly defaultMaxOutputTokens: number;
44
44
  private readonly defaultTimeoutMs: number;
45
45
 
@@ -59,7 +59,7 @@ export class GeminiAdapter implements Adapter {
59
59
  readonly provider = "google";
60
60
 
61
61
  private readonly client: GoogleGenerativeAI | null;
62
- private readonly defaultModel: string;
62
+ readonly defaultModel: string;
63
63
  private readonly defaultMaxOutputTokens: number;
64
64
  private readonly defaultTimeoutMs: number;
65
65
 
@@ -12,6 +12,7 @@ import type { Adapter, AdapterInput, AdapterOutput } from "./types.js";
12
12
  export class MockAdapter implements Adapter {
13
13
  readonly name = "mock";
14
14
  readonly provider = "mock";
15
+ readonly defaultModel = "mock-1";
15
16
 
16
17
  constructor(
17
18
  private readonly opts: {
@@ -43,7 +43,7 @@ export class OpenAIAdapter implements Adapter {
43
43
  readonly provider = "openai";
44
44
 
45
45
  private readonly client: OpenAI | null;
46
- private readonly defaultModel: string;
46
+ readonly defaultModel: string;
47
47
  private readonly defaultMaxOutputTokens: number;
48
48
  private readonly defaultTimeoutMs: number;
49
49
 
@@ -61,6 +61,14 @@ export interface Adapter {
61
61
  readonly name: string;
62
62
  /** Underlying provider family (e.g. "openai", "anthropic", "mock"). */
63
63
  readonly provider: string;
64
+ /**
65
+ * The model this adapter will call by default, exposed so the
66
+ * orchestrator can pass it to `BudgetTracker.preflightCheck` instead of
67
+ * the previous hardcoded "gpt-4o". (Codex review v0.5 P2 #5.) Adapters
68
+ * with no meaningful default — like Mock — return an opaque string and
69
+ * the budget tracker falls back to its conservative pricing.
70
+ */
71
+ readonly defaultModel: string;
64
72
  /** True if credentials are available and the adapter can be invoked. */
65
73
  isAvailable(): Promise<boolean>;
66
74
  /** Execute one model call. */
@@ -30,6 +30,12 @@ export const ConfigSchema = z
30
30
  .object({
31
31
  worker: z.string().min(1).optional(),
32
32
  reviewer: z.string().min(1).optional(),
33
+ /**
34
+ * Quick reviewer used by `almightygpt precommit` — typically a cheap
35
+ * fast model (Gemini Flash) that catches last-mile issues before
36
+ * commit. Falls back to `reviewer` if unset.
37
+ */
38
+ quickReviewer: z.string().min(1).optional(),
33
39
  })
34
40
  .default({}),
35
41
  context: z
package/src/git/status.ts CHANGED
@@ -40,7 +40,7 @@ export async function checkGitStatus(
40
40
  const normalized = relativePath.replace(/\\/g, "/");
41
41
 
42
42
  try {
43
- const { stdout } = await execa(
43
+ const { stdout, stderr, exitCode } = await execa(
44
44
  "git",
45
45
  ["status", "--short", "--", normalized],
46
46
  {
@@ -50,20 +50,36 @@ export async function checkGitStatus(
50
50
  },
51
51
  );
52
52
 
53
+ // Codex review v0.5 P2 #4: previously we ignored exitCode and treated
54
+ // every empty-stdout result as "clean", which silently includes the
55
+ // case where we're not in a git repo at all. Now we look at exitCode
56
+ // and stderr to distinguish "no changes" (exit 0, stdout empty) from
57
+ // "not a git repo" (exit 128, stderr matches).
58
+ if (exitCode !== 0) {
59
+ const stderrText = (stderr ?? "").toString();
60
+ if (
61
+ stderrText.includes("not a git repository") ||
62
+ stderrText.includes("fatal: not a git repository")
63
+ ) {
64
+ return { dirty: false, notInGitRepo: true };
65
+ }
66
+ // Some other git failure (corrupt index, etc.) — treat conservatively
67
+ // as no-protection so the caller can decide. Most callers should
68
+ // refuse writes in this case.
69
+ return { dirty: false, notInGitRepo: true };
70
+ }
71
+
53
72
  if (stdout.trim().length === 0) {
54
73
  return { dirty: false };
55
74
  }
56
75
 
57
76
  return { dirty: true, porcelain: stdout };
58
77
  } catch (err) {
59
- // execa throws if git is missing. Surface as not-in-repo so callers can
60
- // proceed cautiously rather than crash.
78
+ // execa throws if git is missing entirely. Surface as not-in-repo.
61
79
  const msg = err instanceof Error ? err.message : String(err);
62
80
  if (msg.includes("ENOENT")) {
63
81
  return { dirty: false, notInGitRepo: true };
64
82
  }
65
- // "not a git repository" returns non-zero but we used reject:false above,
66
- // so this branch is rare. Still, treat unknown errors as no-protection.
67
83
  return { dirty: false, notInGitRepo: true };
68
84
  }
69
85
  }
package/src/index.ts CHANGED
@@ -13,7 +13,7 @@
13
13
  * - budget/ ✅ task #14 BudgetTracker + BudgetExceededError
14
14
  */
15
15
 
16
- export const VERSION = "0.4.0";
16
+ export const VERSION = "0.7.0";
17
17
 
18
18
  // Git safety primitives
19
19
  export {
@@ -113,6 +113,8 @@ export { collectGitDiff, type DiffOptions, type DiffResult } from "./review/diff
113
113
  export {
114
114
  writeHumanReviewFile,
115
115
  ReviewFileExistsError,
116
+ reviewFilePathFor,
117
+ preflightReviewFileCollision,
116
118
  type WriteReviewFileOptions,
117
119
  } from "./review/write.js";
118
120
  export {