@fraction12/deepclean 0.1.0-alpha.0 → 0.1.0-alpha.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.
package/dist/state.d.ts CHANGED
@@ -1,9 +1,12 @@
1
- import { type CandidateRecord, type ClusterRecord, type DeepcleanConfig, type EvidenceRecord, type HandoffRecord, type PlanRecord, type ReportRecord, type RunRecord, type TriageRecord } from "./types.js";
1
+ import { type CandidateObservationRecord, type CandidateRecord, type CiRunRecord, type ClusterRecord, type DeepcleanConfig, type EvidenceRecord, type FeatureRecord, type FindingRecord, type FixAttemptRecord, type HandoffRecord, type LifecycleEventRecord, type LockRecord, type PlanRecord, type ReportRecord, type RetentionManifestRecord, type RevalidationRecord, type RunRecord, type TriageRecord } from "./types.js";
2
2
  export interface StatePaths {
3
3
  root: string;
4
4
  stateDir: string;
5
5
  configPath: string;
6
6
  runsDir: string;
7
+ findingsDir: string;
8
+ observationsDir: string;
9
+ featuresDir: string;
7
10
  evidenceDir: string;
8
11
  candidatesDir: string;
9
12
  clustersDir: string;
@@ -11,6 +14,12 @@ export interface StatePaths {
11
14
  triageDir: string;
12
15
  handoffsDir: string;
13
16
  plansDir: string;
17
+ lifecycleDir: string;
18
+ revalidationsDir: string;
19
+ ciDir: string;
20
+ locksDir: string;
21
+ retentionDir: string;
22
+ fixesDir: string;
14
23
  }
15
24
  export declare function resolveStatePaths(options: {
16
25
  cwd: string;
@@ -22,7 +31,18 @@ export declare function ensureState(paths: StatePaths): Promise<DeepcleanConfig>
22
31
  export declare function readConfig(paths: StatePaths): Promise<DeepcleanConfig>;
23
32
  export declare function writeRun(paths: StatePaths, run: RunRecord): Promise<string>;
24
33
  export declare function writeEvidence(paths: StatePaths, runId: string, records: EvidenceRecord[]): Promise<string>;
34
+ export declare function writeFeatures(paths: StatePaths, runId: string, records: FeatureRecord[]): Promise<string>;
25
35
  export declare function writeCandidates(paths: StatePaths, runId: string, records: CandidateRecord[]): Promise<string>;
36
+ export declare function writeFinding(paths: StatePaths, record: FindingRecord): Promise<string>;
37
+ export declare function writeFindings(paths: StatePaths, records: FindingRecord[]): Promise<string[]>;
38
+ export declare function writeCandidateObservations(paths: StatePaths, runId: string, records: CandidateObservationRecord[]): Promise<string>;
39
+ export declare function writeLifecycleEvent(paths: StatePaths, record: LifecycleEventRecord): Promise<string>;
40
+ export declare function writeLifecycleEvents(paths: StatePaths, records: LifecycleEventRecord[]): Promise<string[]>;
41
+ export declare function writeRevalidation(paths: StatePaths, record: RevalidationRecord): Promise<string>;
42
+ export declare function writeCiRun(paths: StatePaths, record: CiRunRecord): Promise<string>;
43
+ export declare function writeLock(paths: StatePaths, record: LockRecord): Promise<string>;
44
+ export declare function writeRetentionManifest(paths: StatePaths, record: RetentionManifestRecord): Promise<string>;
45
+ export declare function writeFixAttempt(paths: StatePaths, record: FixAttemptRecord): Promise<string>;
26
46
  export declare function writeReport(paths: StatePaths, report: ReportRecord, markdown: string): Promise<{
27
47
  jsonPath: string;
28
48
  markdownPath: string;
@@ -35,7 +55,13 @@ export declare function latestRunId(paths: StatePaths): Promise<string | undefin
35
55
  export declare function readLatestCandidates(paths: StatePaths): Promise<CandidateRecord[]>;
36
56
  export declare function readLatestClusters(paths: StatePaths): Promise<ClusterRecord[]>;
37
57
  export declare function readLatestEvidence(paths: StatePaths): Promise<EvidenceRecord[]>;
58
+ export declare function readLatestFeatures(paths: StatePaths): Promise<FeatureRecord[]>;
59
+ export declare function readFindings(paths: StatePaths): Promise<FindingRecord[]>;
60
+ export declare function readLatestObservations(paths: StatePaths): Promise<CandidateObservationRecord[]>;
61
+ export declare function readCandidateObservations(paths: StatePaths, runId: string): Promise<CandidateObservationRecord[]>;
62
+ export declare function readLifecycleEvents(paths: StatePaths): Promise<LifecycleEventRecord[]>;
38
63
  export declare function readClusters(paths: StatePaths, runId: string): Promise<ClusterRecord[]>;
39
64
  export declare function readCandidates(paths: StatePaths, runId: string): Promise<CandidateRecord[]>;
40
65
  export declare function readEvidence(paths: StatePaths, runId: string): Promise<EvidenceRecord[]>;
66
+ export declare function readFeatures(paths: StatePaths, runId: string): Promise<FeatureRecord[]>;
41
67
  export declare function updateLatestCandidates(paths: StatePaths, candidates: CandidateRecord[]): Promise<string>;
package/dist/state.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { mkdir, readFile, readdir, writeFile } from "node:fs/promises";
2
2
  import path from "node:path";
3
3
  import { defaultConfig, stateDirName } from "./defaults.js";
4
- import { candidateRecordSchema, clusterRecordSchema, configSchema, evidenceRecordSchema, handoffRecordSchema, planRecordSchema, reportRecordSchema, runRecordSchema, triageRecordSchema, } from "./types.js";
4
+ import { candidateRecordSchema, clusterRecordSchema, configSchema, candidateObservationRecordSchema, ciRunRecordSchema, evidenceRecordSchema, featureRecordSchema, findingRecordSchema, fixAttemptRecordSchema, handoffRecordSchema, lifecycleEventRecordSchema, lockRecordSchema, planRecordSchema, reportRecordSchema, retentionManifestRecordSchema, revalidationRecordSchema, runRecordSchema, triageRecordSchema, } from "./types.js";
5
5
  export function resolveStatePaths(options) {
6
6
  const root = path.resolve(options.cwd, options.root ?? ".");
7
7
  const stateDir = path.resolve(root, options.stateDir ?? stateDirName);
@@ -10,6 +10,9 @@ export function resolveStatePaths(options) {
10
10
  stateDir,
11
11
  configPath: path.resolve(root, options.config ?? path.join(stateDir, "config.json")),
12
12
  runsDir: path.join(stateDir, "runs"),
13
+ findingsDir: path.join(stateDir, "findings"),
14
+ observationsDir: path.join(stateDir, "observations"),
15
+ featuresDir: path.join(stateDir, "features"),
13
16
  evidenceDir: path.join(stateDir, "evidence"),
14
17
  candidatesDir: path.join(stateDir, "candidates"),
15
18
  clustersDir: path.join(stateDir, "clusters"),
@@ -17,11 +20,20 @@ export function resolveStatePaths(options) {
17
20
  triageDir: path.join(stateDir, "triage"),
18
21
  handoffsDir: path.join(stateDir, "handoffs"),
19
22
  plansDir: path.join(stateDir, "plans"),
23
+ lifecycleDir: path.join(stateDir, "lifecycle"),
24
+ revalidationsDir: path.join(stateDir, "revalidations"),
25
+ ciDir: path.join(stateDir, "ci"),
26
+ locksDir: path.join(stateDir, "locks"),
27
+ retentionDir: path.join(stateDir, "retention"),
28
+ fixesDir: path.join(stateDir, "fixes"),
20
29
  };
21
30
  }
22
31
  export async function ensureState(paths) {
23
32
  await Promise.all([
24
33
  mkdir(paths.runsDir, { recursive: true }),
34
+ mkdir(paths.findingsDir, { recursive: true }),
35
+ mkdir(paths.observationsDir, { recursive: true }),
36
+ mkdir(paths.featuresDir, { recursive: true }),
25
37
  mkdir(paths.evidenceDir, { recursive: true }),
26
38
  mkdir(paths.candidatesDir, { recursive: true }),
27
39
  mkdir(paths.clustersDir, { recursive: true }),
@@ -29,6 +41,12 @@ export async function ensureState(paths) {
29
41
  mkdir(paths.triageDir, { recursive: true }),
30
42
  mkdir(paths.handoffsDir, { recursive: true }),
31
43
  mkdir(paths.plansDir, { recursive: true }),
44
+ mkdir(paths.lifecycleDir, { recursive: true }),
45
+ mkdir(paths.revalidationsDir, { recursive: true }),
46
+ mkdir(paths.ciDir, { recursive: true }),
47
+ mkdir(paths.locksDir, { recursive: true }),
48
+ mkdir(paths.retentionDir, { recursive: true }),
49
+ mkdir(paths.fixesDir, { recursive: true }),
32
50
  ]);
33
51
  try {
34
52
  return await readConfig(paths);
@@ -58,6 +76,14 @@ export async function writeEvidence(paths, runId, records) {
58
76
  await writeJson(filePath, records);
59
77
  return filePath;
60
78
  }
79
+ export async function writeFeatures(paths, runId, records) {
80
+ for (const record of records) {
81
+ featureRecordSchema.parse(record);
82
+ }
83
+ const filePath = path.join(paths.featuresDir, `${runId}.json`);
84
+ await writeJson(filePath, records);
85
+ return filePath;
86
+ }
61
87
  export async function writeCandidates(paths, runId, records) {
62
88
  for (const record of records) {
63
89
  candidateRecordSchema.parse(record);
@@ -66,6 +92,70 @@ export async function writeCandidates(paths, runId, records) {
66
92
  await writeJson(filePath, records);
67
93
  return filePath;
68
94
  }
95
+ export async function writeFinding(paths, record) {
96
+ findingRecordSchema.parse(record);
97
+ const filePath = path.join(paths.findingsDir, `${record.id}.json`);
98
+ await writeJson(filePath, record);
99
+ return filePath;
100
+ }
101
+ export async function writeFindings(paths, records) {
102
+ const written = [];
103
+ for (const record of records) {
104
+ written.push(await writeFinding(paths, record));
105
+ }
106
+ return written;
107
+ }
108
+ export async function writeCandidateObservations(paths, runId, records) {
109
+ for (const record of records) {
110
+ candidateObservationRecordSchema.parse(record);
111
+ }
112
+ const filePath = path.join(paths.observationsDir, `${runId}.json`);
113
+ await writeJson(filePath, records);
114
+ return filePath;
115
+ }
116
+ export async function writeLifecycleEvent(paths, record) {
117
+ lifecycleEventRecordSchema.parse(record);
118
+ const filePath = path.join(paths.lifecycleDir, `${record.id}.json`);
119
+ await writeJson(filePath, record);
120
+ return filePath;
121
+ }
122
+ export async function writeLifecycleEvents(paths, records) {
123
+ const written = [];
124
+ for (const record of records) {
125
+ written.push(await writeLifecycleEvent(paths, record));
126
+ }
127
+ return written;
128
+ }
129
+ export async function writeRevalidation(paths, record) {
130
+ revalidationRecordSchema.parse(record);
131
+ const filePath = path.join(paths.revalidationsDir, `${record.id}.json`);
132
+ await writeJson(filePath, record);
133
+ return filePath;
134
+ }
135
+ export async function writeCiRun(paths, record) {
136
+ ciRunRecordSchema.parse(record);
137
+ const filePath = path.join(paths.ciDir, `${record.id}.json`);
138
+ await writeJson(filePath, record);
139
+ return filePath;
140
+ }
141
+ export async function writeLock(paths, record) {
142
+ lockRecordSchema.parse(record);
143
+ const filePath = path.join(paths.locksDir, `${record.id}.json`);
144
+ await writeJson(filePath, record);
145
+ return filePath;
146
+ }
147
+ export async function writeRetentionManifest(paths, record) {
148
+ retentionManifestRecordSchema.parse(record);
149
+ const filePath = path.join(paths.retentionDir, `${record.id}.json`);
150
+ await writeJson(filePath, record);
151
+ return filePath;
152
+ }
153
+ export async function writeFixAttempt(paths, record) {
154
+ fixAttemptRecordSchema.parse(record);
155
+ const filePath = path.join(paths.fixesDir, `${record.id}.json`);
156
+ await writeJson(filePath, record);
157
+ return filePath;
158
+ }
69
159
  export async function writeReport(paths, report, markdown) {
70
160
  reportRecordSchema.parse(report);
71
161
  const jsonPath = path.join(paths.reportsDir, `${report.id}.json`);
@@ -125,6 +215,48 @@ export async function readLatestEvidence(paths) {
125
215
  }
126
216
  return readEvidence(paths, runId);
127
217
  }
218
+ export async function readLatestFeatures(paths) {
219
+ const runId = await latestFeatureRunId(paths);
220
+ if (!runId) {
221
+ return [];
222
+ }
223
+ return readFeatures(paths, runId);
224
+ }
225
+ export async function readFindings(paths) {
226
+ const files = await jsonFiles(paths.findingsDir);
227
+ const findings = [];
228
+ for (const file of files) {
229
+ const raw = await readFile(path.join(paths.findingsDir, file), "utf8");
230
+ findings.push(findingRecordSchema.parse(JSON.parse(raw)));
231
+ }
232
+ return findings.sort((a, b) => a.id.localeCompare(b.id));
233
+ }
234
+ export async function readLatestObservations(paths) {
235
+ const runId = await latestRunId(paths);
236
+ if (!runId) {
237
+ return [];
238
+ }
239
+ return readCandidateObservations(paths, runId);
240
+ }
241
+ export async function readCandidateObservations(paths, runId) {
242
+ try {
243
+ const raw = await readFile(path.join(paths.observationsDir, `${runId}.json`), "utf8");
244
+ const parsed = JSON.parse(raw);
245
+ return parsed.map((item) => candidateObservationRecordSchema.parse(item));
246
+ }
247
+ catch {
248
+ return [];
249
+ }
250
+ }
251
+ export async function readLifecycleEvents(paths) {
252
+ const files = await jsonFiles(paths.lifecycleDir);
253
+ const events = [];
254
+ for (const file of files) {
255
+ const raw = await readFile(path.join(paths.lifecycleDir, file), "utf8");
256
+ events.push(lifecycleEventRecordSchema.parse(JSON.parse(raw)));
257
+ }
258
+ return events.sort((a, b) => a.createdAt.localeCompare(b.createdAt) || a.id.localeCompare(b.id));
259
+ }
128
260
  export async function readClusters(paths, runId) {
129
261
  try {
130
262
  const raw = await readFile(path.join(paths.clustersDir, `${runId}.json`), "utf8");
@@ -145,6 +277,11 @@ export async function readEvidence(paths, runId) {
145
277
  const parsed = JSON.parse(raw);
146
278
  return parsed.map((item) => evidenceRecordSchema.parse(item));
147
279
  }
280
+ export async function readFeatures(paths, runId) {
281
+ const raw = await readFile(path.join(paths.featuresDir, `${runId}.json`), "utf8");
282
+ const parsed = JSON.parse(raw);
283
+ return parsed.map((item) => featureRecordSchema.parse(item));
284
+ }
148
285
  export async function updateLatestCandidates(paths, candidates) {
149
286
  const runId = await latestRunId(paths);
150
287
  if (!runId) {
@@ -161,6 +298,10 @@ async function jsonFiles(dir) {
161
298
  return [];
162
299
  }
163
300
  }
301
+ async function latestFeatureRunId(paths) {
302
+ const files = await jsonFiles(paths.featuresDir);
303
+ return files.at(-1)?.replace(/\.json$/, "");
304
+ }
164
305
  async function writeJson(filePath, value) {
165
306
  await mkdir(path.dirname(filePath), { recursive: true });
166
307
  await writeFile(filePath, `${JSON.stringify(value, null, 2)}\n`, "utf8");
@@ -206,6 +347,10 @@ function mergeConfig(defaults, value) {
206
347
  ...defaults.privacy,
207
348
  ...value.privacy,
208
349
  },
350
+ fixExecution: {
351
+ ...defaults.fixExecution,
352
+ ...value.fixExecution,
353
+ },
209
354
  };
210
355
  }
211
356
  //# sourceMappingURL=state.js.map
package/dist/state.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,18 @@ export declare function synthesizeWithCodex(options: {
12
12
  config: DeepcleanConfig;
13
13
  existingCandidates: CandidateRecord[];
14
14
  includeSource: boolean;
15
- model?: string | undefined;
15
+ runtime: {
16
+ command: string;
17
+ model?: string | undefined;
18
+ effort?: string | undefined;
19
+ timeoutMs: number;
20
+ retries: number;
21
+ rpm: number;
22
+ concurrency: number;
23
+ tokenBudget: number;
24
+ excerptBudget: number;
25
+ privacyMode: "local-only" | "metadata" | "source-ok";
26
+ allowSourceInModel: boolean;
27
+ };
16
28
  verificationProfile?: VerificationProfile | undefined;
17
29
  }): Promise<SynthesisResult>;
package/dist/synthesis.js CHANGED
@@ -53,18 +53,22 @@ export async function synthesizeWithCodex(options) {
53
53
  "-o",
54
54
  outputPath,
55
55
  ];
56
- const model = options.model ?? options.config.reviewSynthesis.model;
56
+ const model = options.runtime.model;
57
57
  if (model) {
58
58
  args.push("-m", model);
59
59
  }
60
60
  args.push("-");
61
- const result = await runProcess(options.config.reviewSynthesis.command, args, prompt, options.config.reviewSynthesis.timeoutMs);
61
+ const result = await runProcessWithRetries(options.runtime.command, args, prompt, options.runtime.timeoutMs, options.runtime.retries);
62
62
  if (result.exitCode !== 0) {
63
63
  return {
64
64
  candidates: [],
65
65
  diagnostics: [{
66
66
  level: "warning",
67
- code: result.timedOut ? "codex_synthesis_timeout" : "codex_synthesis_failed",
67
+ code: result.timedOut
68
+ ? "codex_synthesis_timeout"
69
+ : result.providerUnavailable
70
+ ? "codex_provider_unavailable"
71
+ : "codex_synthesis_failed",
68
72
  message: codexFailureMessage(result),
69
73
  adapter: "codex-synthesis",
70
74
  }, ...diagnostics],
@@ -117,6 +121,17 @@ export async function synthesizeWithCodex(options) {
117
121
  model,
118
122
  promptVersion,
119
123
  reviewers: reviewerPack.rubrics.map((rubric) => rubric.id),
124
+ runtime: {
125
+ effort: options.runtime.effort,
126
+ timeoutMs: options.runtime.timeoutMs,
127
+ retries: options.runtime.retries,
128
+ rpm: options.runtime.rpm,
129
+ concurrency: options.runtime.concurrency,
130
+ tokenBudget: options.runtime.tokenBudget,
131
+ excerptBudget: options.runtime.excerptBudget,
132
+ privacyMode: options.runtime.privacyMode,
133
+ allowSourceInModel: options.runtime.allowSourceInModel,
134
+ },
120
135
  },
121
136
  createdAt: options.createdAt,
122
137
  updatedAt: options.createdAt,
@@ -178,7 +193,7 @@ Goal:
178
193
  - reject weak or noisy evidence rather than forcing findings
179
194
  - produce agent-ready cleanup directions, not code patches
180
195
 
181
- Clawpatch-style review flow for Deepclean:
196
+ Cleanup-surface review flow:
182
197
  - Treat local evidence as the source of truth.
183
198
  - Review mapped cleanup surfaces the way a bug finder reviews semantic feature slices.
184
199
  - Produce findings only when the surface shows a durable maintainability issue, not just an ugly file.
@@ -252,6 +267,7 @@ function tryParseJson(value) {
252
267
  async function runProcess(command, args, stdin, timeoutMs) {
253
268
  return new Promise((resolve) => {
254
269
  let timedOut = false;
270
+ let providerUnavailable = false;
255
271
  const child = spawn(command, args, {
256
272
  stdio: ["pipe", "pipe", "pipe"],
257
273
  env: process.env,
@@ -272,15 +288,25 @@ async function runProcess(command, args, stdin, timeoutMs) {
272
288
  });
273
289
  child.on("error", (error) => {
274
290
  clearTimeout(timeout);
275
- resolve({ exitCode: 1, stdout, stderr: error.message, timedOut });
291
+ providerUnavailable = typeof error === "object" && error !== null && "code" in error && error.code === "ENOENT";
292
+ resolve({ exitCode: 1, stdout, stderr: error.message, timedOut, providerUnavailable });
276
293
  });
277
294
  child.on("close", (exitCode) => {
278
295
  clearTimeout(timeout);
279
- resolve({ exitCode, stdout, stderr, timedOut });
296
+ resolve({ exitCode, stdout, stderr, timedOut, providerUnavailable });
280
297
  });
281
298
  child.stdin.end(stdin);
282
299
  });
283
300
  }
301
+ async function runProcessWithRetries(command, args, stdin, timeoutMs, retries) {
302
+ let last = await runProcess(command, args, stdin, timeoutMs);
303
+ let attempts = 1;
304
+ while (last.exitCode !== 0 && attempts <= retries && !last.providerUnavailable) {
305
+ attempts += 1;
306
+ last = await runProcess(command, args, stdin, timeoutMs);
307
+ }
308
+ return { ...last, attempts };
309
+ }
284
310
  async function resolveReviewerPack(root, config) {
285
311
  const diagnostics = [];
286
312
  const enabled = new Set(config.reviewers.enabled);
@@ -322,7 +348,7 @@ async function resolveReviewerPack(root, config) {
322
348
  }
323
349
  function codexFailureMessage(result) {
324
350
  if (result.timedOut) {
325
- return "Codex synthesis timed out before returning schema-valid JSON.";
351
+ return `Codex synthesis timed out before returning schema-valid JSON after ${result.attempts ?? 1} attempt(s).`;
326
352
  }
327
353
  const text = result.stderr || result.stdout || `Codex exited with code ${result.exitCode}`;
328
354
  if (/not found|ENOENT/i.test(text)) {
@@ -1 +1 @@
1
- {"version":3,"file":"synthesis.js","sourceRoot":"","sources":["../src/synthesis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"synthesis.js","sourceRoot":"","sources":["../src/synthesis.ts"],"names":[],"mappings":"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"}