@zaowu-labs/dev 1.0.5 → 1.1.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.
package/README.md CHANGED
@@ -27,3 +27,22 @@ Safety:
27
27
  - Review hunks include new-file line ranges, and line-specific findings expose
28
28
  an optional line number.
29
29
  - Machine-readable commit and review output includes a schema version.
30
+
31
+ ## Trustworthy previews
32
+
33
+ Local review and commit results identify `method: "heuristic"`. Model assistance
34
+ uses `method: "ai-assisted"`, and appended model findings identify `origin: "ai"`.
35
+ Echo uses `method: "echo"` and retains local results: it is a diagnostic, not a
36
+ code reviewer or commit author. Model commit titles must be Conventional Commit
37
+ messages of at most 100 characters; malformed suggestions fail visibly.
38
+
39
+ Git paths use NUL framing for lists/status and decode quoted diff paths, so
40
+ Unicode, whitespace, and Unix newline filenames keep their identity. Diff reads
41
+ disable external diff drivers, text conversion, and color. Optional Git locks
42
+ are disabled; read-only commands leave the index and worktree unchanged.
43
+
44
+ Cross-package commits use a project scope instead of choosing the first package.
45
+ Local rules are risk signals, not a complete review. Untracked files remain
46
+ name-only until staged. AI previews disclose included/total diff characters;
47
+ only the first 100,000 characters are sent, so stage smaller changes for full
48
+ context. Neither local nor AI suggestions commit, stage, or push changes.
@@ -7,7 +7,7 @@
7
7
  * confirmation stay in the CLI composition layer, which is the only layer
8
8
  * allowed to depend on both `@zaowu-labs/dev` and `@zaowu-labs/ai`.
9
9
  */
10
- import { type DevCommitResult, type DevReviewFinding } from './contracts.js';
10
+ import { type DevCommitResult, type DevDiffHunk, type DevReviewFinding } from './contracts.js';
11
11
  export declare const DEV_AI_DIFF_CHARACTER_LIMIT = 100000;
12
12
  export declare const truncateDevAiDiff: (diffText: string) => string;
13
13
  export declare const buildDevAiCommitPrompt: (diffText: string) => string;
@@ -23,5 +23,8 @@ export declare const applyDevAiCommitSuggestion: (preview: DevCommitResult, aiOu
23
23
  * output that is not a JSON array falls back to a single plain-text summary
24
24
  * finding so the review never silently loses the provider's response.
25
25
  */
26
- export declare const parseDevAiReviewFindings: (aiOutput: string) => DevReviewFinding[];
26
+ export declare const parseDevAiReviewFindings: (aiOutput: string, context?: {
27
+ files: readonly string[];
28
+ hunks: readonly DevDiffHunk[];
29
+ }) => DevReviewFinding[];
27
30
  //# sourceMappingURL=ai-assist.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-assist.d.ts","sourceRoot":"","sources":["../src/ai-assist.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAIL,KAAK,eAAe,EAEpB,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AAExB,eAAO,MAAM,2BAA2B,SAAU,CAAC;AAEnD,eAAO,MAAM,iBAAiB,GAAI,UAAU,MAAM,KAAG,MAGvC,CAAC;AAEf,eAAO,MAAM,sBAAsB,GAAI,UAAU,MAAM,KAAG,MAQ5C,CAAC;AAEf,eAAO,MAAM,sBAAsB,GAAI,UAAU,MAAM,KAAG,MAqB5C,CAAC;AAEf;;;GAGG;AACH,eAAO,MAAM,0BAA0B,GACrC,SAAS,eAAe,EACxB,UAAU,MAAM,KACf,eAqBF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,GAAI,UAAU,MAAM,KAAG,gBAAgB,EAgD3E,CAAC"}
1
+ {"version":3,"file":"ai-assist.d.ts","sourceRoot":"","sources":["../src/ai-assist.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAIL,KAAK,eAAe,EAEpB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AAExB,eAAO,MAAM,2BAA2B,SAAU,CAAC;AAEnD,eAAO,MAAM,iBAAiB,GAAI,UAAU,MAAM,KAAG,MAGvC,CAAC;AAEf,eAAO,MAAM,sBAAsB,GAAI,UAAU,MAAM,KAAG,MAQ5C,CAAC;AAEf,eAAO,MAAM,sBAAsB,GAAI,UAAU,MAAM,KAAG,MAqB5C,CAAC;AAEf;;;GAGG;AACH,eAAO,MAAM,0BAA0B,GACrC,SAAS,eAAe,EACxB,UAAU,MAAM,KACf,eAiCF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,GACnC,UAAU,MAAM,EAChB,UAAU;IAAE,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAA;CAAE,KACpE,gBAAgB,EAiFlB,CAAC"}
package/dist/ai-assist.js CHANGED
@@ -7,6 +7,7 @@
7
7
  * confirmation stay in the CLI composition layer, which is the only layer
8
8
  * allowed to depend on both `@zaowu-labs/dev` and `@zaowu-labs/ai`.
9
9
  */
10
+ import { ZaoWuError } from '@zaowu-labs/core';
10
11
  import { isDevFindingCategory, isDevFindingPriority, isDevFindingSeverity, } from './contracts.js';
11
12
  export const DEV_AI_DIFF_CHARACTER_LIMIT = 100_000;
12
13
  export const truncateDevAiDiff = (diffText) => diffText.length > DEV_AI_DIFF_CHARACTER_LIMIT
@@ -46,22 +47,34 @@ export const buildDevAiReviewPrompt = (diffText) => [
46
47
  * commit preview. Returns a new result; the input preview is not mutated.
47
48
  */
48
49
  export const applyDevAiCommitSuggestion = (preview, aiOutput) => {
49
- const lines = aiOutput
50
+ const cleanOutput = aiOutput
51
+ .trim()
52
+ .replace(/^```[^\n]*\r?\n/, '')
53
+ .replace(/\r?\n```$/, '');
54
+ const lines = cleanOutput
50
55
  .split(/\r?\n/)
51
56
  .map((line) => line.trim())
52
57
  .filter(Boolean);
53
- const title = lines[0] || preview.suggestion.title;
58
+ const title = lines[0] ?? '';
54
59
  const body = lines.slice(1);
55
- const match = /^([a-z0-9]+)(?:\(([^)]+)\))?:\s*(.+)$/i.exec(title);
60
+ const match = /^([a-z][a-z0-9-]*)(?:\(([^():\r\n]+)\))?(!)?:\s+(.+)$/i.exec(title);
61
+ if (!match || title.length > 100)
62
+ throw new ZaoWuError({
63
+ code: 'AI_PROVIDER_RESPONSE_INVALID',
64
+ message: 'AI commit suggestion is invalid.',
65
+ why: 'The model did not return a Conventional Commit title of at most 100 characters.',
66
+ fix: 'Retry with a real model, edit the message yourself, or use the local heuristic preview without --ai.',
67
+ });
56
68
  const suggestion = {
57
69
  type: match?.[1] || preview.suggestion.type,
58
- scope: match?.[2] || preview.suggestion.scope,
59
- subject: match?.[3] || preview.suggestion.subject,
70
+ scope: match[2] ?? '',
71
+ subject: match[4],
60
72
  title,
61
73
  body: body.length > 0 ? body : preview.suggestion.body,
62
74
  };
63
75
  return {
64
76
  ...preview,
77
+ method: 'ai-assisted',
65
78
  suggestion,
66
79
  message: title,
67
80
  };
@@ -72,7 +85,7 @@ export const applyDevAiCommitSuggestion = (preview, aiOutput) => {
72
85
  * output that is not a JSON array falls back to a single plain-text summary
73
86
  * finding so the review never silently loses the provider's response.
74
87
  */
75
- export const parseDevAiReviewFindings = (aiOutput) => {
88
+ export const parseDevAiReviewFindings = (aiOutput, context) => {
76
89
  let cleanOutput = aiOutput.trim();
77
90
  if (cleanOutput.startsWith('```')) {
78
91
  cleanOutput = cleanOutput.replace(/^```[a-z]*\r?\n/, '').replace(/\r?\n```$/, '');
@@ -100,17 +113,41 @@ export const parseDevAiReviewFindings = (aiOutput) => {
100
113
  }
101
114
  return parsedItems.map((item) => {
102
115
  const finding = item && typeof item === 'object' ? item : {};
116
+ if (typeof finding.title !== 'string' ||
117
+ !finding.title.trim() ||
118
+ typeof finding.detail !== 'string' ||
119
+ !finding.detail.trim())
120
+ throw new ZaoWuError({
121
+ code: 'AI_PROVIDER_RESPONSE_INVALID',
122
+ message: 'AI review findings are invalid.',
123
+ why: 'Each structured finding must have a non-empty title and detail; empty or malformed items are not review findings.',
124
+ fix: 'Retry with a real model or use the local review without --ai.',
125
+ });
126
+ const path = typeof finding.filePath === 'string' ? finding.filePath : undefined;
127
+ const locationValid = !context || !path || context.files.includes(path);
128
+ const validLine = Number.isInteger(finding.line) &&
129
+ Number(finding.line) > 0 &&
130
+ locationValid &&
131
+ (!context ||
132
+ context.hunks.some((hunk) => hunk.filePath === path &&
133
+ Number(finding.line) >= hunk.startLine &&
134
+ Number(finding.line) <= hunk.endLine));
103
135
  return {
104
136
  severity: isDevFindingSeverity(finding.severity) ? finding.severity : 'info',
105
137
  priority: isDevFindingPriority(finding.priority) ? finding.priority : 'medium',
106
138
  category: isDevFindingCategory(finding.category) ? finding.category : 'quality',
107
139
  title: typeof finding.title === 'string' ? finding.title : 'AI Review',
108
- detail: typeof finding.detail === 'string' ? finding.detail : '',
109
- filePath: typeof finding.filePath === 'string' ? finding.filePath : undefined,
110
- line: Number.isInteger(finding.line) && Number(finding.line) > 0
111
- ? Number(finding.line)
140
+ detail: finding.detail +
141
+ (!locationValid || (finding.line !== undefined && !validLine)
142
+ ? ' Location could not be verified against this diff.'
143
+ : ''),
144
+ filePath: locationValid ? path : undefined,
145
+ line: validLine ? Number(finding.line) : undefined,
146
+ hunkHeader: typeof finding.hunkHeader === 'string' &&
147
+ (!context ||
148
+ context.hunks.some((hunk) => hunk.filePath === path && hunk.header === finding.hunkHeader))
149
+ ? finding.hunkHeader
112
150
  : undefined,
113
- hunkHeader: typeof finding.hunkHeader === 'string' ? finding.hunkHeader : undefined,
114
151
  };
115
152
  });
116
153
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ai-assist.js","sourceRoot":"","sources":["../src/ai-assist.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-assist.js","sourceRoot":"","sources":["../src/ai-assist.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import type { OperationPlan } from '@zaowu-labs/core';
2
2
  export type DevCommandRunner = (command: string, args: readonly string[], options?: {
3
3
  cwd?: string;
4
+ env?: NodeJS.ProcessEnv;
5
+ timeout?: number;
4
6
  }) => string;
5
7
  export declare const DEV_CHANGE_CATEGORIES: readonly ["source", "test", "docs", "dependency", "workflow", "config", "other"];
6
8
  export type DevChangeCategory = (typeof DEV_CHANGE_CATEGORIES)[number];
@@ -20,6 +22,7 @@ export interface DevCommitSuggestion {
20
22
  body: string[];
21
23
  }
22
24
  export interface DevReviewFinding {
25
+ origin?: 'ai' | 'echo';
23
26
  severity: 'info' | 'warning';
24
27
  priority: 'low' | 'medium' | 'high';
25
28
  category: 'summary' | 'test' | 'dependency' | 'quality' | 'performance' | 'execution' | 'filesystem' | 'network' | 'security' | 'git';
@@ -29,7 +32,9 @@ export interface DevReviewFinding {
29
32
  hunkHeader?: string;
30
33
  line?: number;
31
34
  }
35
+ export type DevAnalysisMethod = 'heuristic' | 'ai-assisted' | 'echo';
32
36
  export interface DevCommitResult {
37
+ method?: DevAnalysisMethod;
33
38
  schemaVersion: 1;
34
39
  status: 'ok';
35
40
  source: 'staged';
@@ -62,6 +67,7 @@ export interface DevDiffHunk {
62
67
  endLine: number;
63
68
  }
64
69
  export interface DevReviewResult {
70
+ method?: DevAnalysisMethod;
65
71
  schemaVersion: 1;
66
72
  status: 'ok';
67
73
  source: 'staged' | 'working-tree';
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,QAAQ;IACR,MAAM;IACN,MAAM;IACN,YAAY;IACZ,UAAU;IACV,QAAQ;IACR,OAAO;CACC,CAAC;AAgEX,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAyC,EAAE,CAC5F,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,SAAS,CAAC;AAC1C,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAyC,EAAE,CAC5F,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,MAAM,CAAC;AAC5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAyC,EAAE,CAC5F;IACE,SAAS;IACT,MAAM;IACN,YAAY;IACZ,SAAS;IACT,aAAa;IACb,WAAW;IACX,YAAY;IACZ,SAAS;IACT,UAAU;IACV,KAAK;CACN,CAAC,QAAQ,CAAC,KAAe,CAAC,CAAC"}
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,QAAQ;IACR,MAAM;IACN,MAAM;IACN,YAAY;IACZ,UAAU;IACV,QAAQ;IACR,OAAO;CACC,CAAC;AAoEX,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAyC,EAAE,CAC5F,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,SAAS,CAAC;AAC1C,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAyC,EAAE,CAC5F,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,MAAM,CAAC;AAC5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAyC,EAAE,CAC5F;IACE,SAAS;IACT,MAAM;IACN,YAAY;IACZ,SAAS;IACT,aAAa;IACb,WAAW;IACX,YAAY;IACZ,SAAS;IACT,UAAU;IACV,KAAK;CACN,CAAC,QAAQ,CAAC,KAAe,CAAC,CAAC"}
package/dist/diff.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ import type { DevDiffHunk } from './contracts.js';
2
+ export interface ParsedDiffHunk extends DevDiffHunk {
3
+ addedText: string[];
4
+ addedLineNumbers: number[];
5
+ }
6
+ export declare const parseDiffHunks: (diff: string) => ParsedDiffHunk[];
7
+ //# sourceMappingURL=diff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../src/diff.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B;AAqCD,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,cAAc,EAoE3D,CAAC"}
package/dist/diff.js ADDED
@@ -0,0 +1,96 @@
1
+ const stripDiffPath = (value) => {
2
+ let decoded = value;
3
+ if (value.startsWith('"') && value.endsWith('"')) {
4
+ const bytes = [];
5
+ const raw = value.slice(1, -1);
6
+ for (let index = 0; index < raw.length;) {
7
+ if (raw[index] === '\\') {
8
+ const octal = /^[0-7]{1,3}/.exec(raw.slice(index + 1));
9
+ if (octal) {
10
+ bytes.push(Number.parseInt(octal[0], 8));
11
+ index += octal[0].length + 1;
12
+ continue;
13
+ }
14
+ const escapes = {
15
+ n: '\n',
16
+ t: '\t',
17
+ r: '\r',
18
+ b: '\b',
19
+ f: '\f',
20
+ v: '\v',
21
+ a: '\x07',
22
+ };
23
+ bytes.push(...Buffer.from(escapes[raw[index + 1]] ?? raw[index + 1] ?? ''));
24
+ index += 2;
25
+ }
26
+ else {
27
+ const character = String.fromCodePoint(raw.codePointAt(index));
28
+ bytes.push(...Buffer.from(character));
29
+ index += character.length;
30
+ }
31
+ }
32
+ decoded = Buffer.from(bytes).toString('utf8');
33
+ }
34
+ return decoded.replace(/^[ab]\//, '');
35
+ };
36
+ export const parseDiffHunks = (diff) => {
37
+ const hunks = [];
38
+ let currentFile = '';
39
+ let currentHunk;
40
+ let currentNewLine = 0;
41
+ for (const line of diff.split(/\r?\n/)) {
42
+ if (line.startsWith('diff --git ')) {
43
+ const fileMatch = /^diff --git a\/(.+?) b\/(.+)$/.exec(line);
44
+ currentFile = fileMatch ? stripDiffPath(fileMatch[2]) : '';
45
+ currentHunk = undefined;
46
+ currentNewLine = 0;
47
+ continue;
48
+ }
49
+ if (!currentHunk && line.startsWith('+++ ') && line.slice(4) !== '/dev/null') {
50
+ currentFile = stripDiffPath(line.slice(4).replace(/\t$/, ''));
51
+ continue;
52
+ }
53
+ if (!currentHunk && line.startsWith('--- ') && line.slice(4) !== '/dev/null') {
54
+ currentFile = stripDiffPath(line.slice(4).replace(/\t$/, ''));
55
+ continue;
56
+ }
57
+ const hunkMatch = /^@@\s+-(?:\d+)(?:,\d+)?\s+\+(\d+)(?:,(\d+))?\s+@@/.exec(line);
58
+ if (hunkMatch && currentFile) {
59
+ const startLine = Number.parseInt(hunkMatch[1], 10);
60
+ const lineCount = Number.parseInt(hunkMatch[2] ?? '1', 10);
61
+ currentNewLine = startLine;
62
+ currentHunk = {
63
+ filePath: currentFile,
64
+ header: hunkMatch[0],
65
+ addedLines: 0,
66
+ removedLines: 0,
67
+ startLine,
68
+ endLine: Math.max(startLine, startLine + lineCount - 1),
69
+ addedText: [],
70
+ addedLineNumbers: [],
71
+ };
72
+ hunks.push(currentHunk);
73
+ continue;
74
+ }
75
+ if (!currentHunk) {
76
+ continue;
77
+ }
78
+ if (line.startsWith('\')) {
79
+ continue;
80
+ }
81
+ if (line.startsWith('+')) {
82
+ currentHunk.addedLines += 1;
83
+ currentHunk.addedText.push(line.slice(1));
84
+ currentHunk.addedLineNumbers.push(currentNewLine);
85
+ currentNewLine += 1;
86
+ continue;
87
+ }
88
+ if (line.startsWith('-')) {
89
+ currentHunk.removedLines += 1;
90
+ continue;
91
+ }
92
+ currentNewLine += 1;
93
+ }
94
+ return hunks;
95
+ };
96
+ //# sourceMappingURL=diff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../src/diff.ts"],"names":[],"mappings":"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"}
package/dist/git.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD;;;GAGG;AACH,eAAO,MAAM,MAAM,GACjB,eAAe,gBAAgB,EAC/B,MAAM,SAAS,MAAM,EAAE,EACvB,MAAM,MAAM,KACX,MAWF,CAAC"}
1
+ {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD;;;GAGG;AACH,eAAO,MAAM,MAAM,GACjB,eAAe,gBAAgB,EAC/B,MAAM,SAAS,MAAM,EAAE,EACvB,MAAM,MAAM,KACX,MAwBF,CAAC"}
package/dist/git.js CHANGED
@@ -5,14 +5,24 @@ import { ZaoWuError } from '@zaowu-labs/core';
5
5
  */
6
6
  export const runGit = (commandRunner, args, cwd) => {
7
7
  try {
8
- return commandRunner('git', args, { cwd });
8
+ const safeArgs = args[0] === 'diff'
9
+ ? [
10
+ ...args,
11
+ ...['--no-ext-diff', '--no-textconv', '--no-color'].filter((flag) => !args.includes(flag)),
12
+ ]
13
+ : args;
14
+ return commandRunner('git', safeArgs, {
15
+ cwd,
16
+ env: { ...process.env, GIT_OPTIONAL_LOCKS: '0' },
17
+ timeout: 10_000,
18
+ });
9
19
  }
10
20
  catch {
11
21
  throw new ZaoWuError({
12
22
  code: 'GIT_COMMAND_FAILED',
13
23
  message: 'Git command failed.',
14
24
  why: `ZaoWu tried to run \`git ${args.join(' ')}\`, but Git returned an error.`,
15
- fix: 'Run this command inside a Git repository and make sure Git is available on PATH.',
25
+ fix: 'Run this command inside a Git repository and make sure Git is available on PATH. For large changes, stage a smaller set of files.',
16
26
  });
17
27
  }
18
28
  };
package/dist/git.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"git.js","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CACpB,aAA+B,EAC/B,IAAuB,EACvB,GAAY,EACJ,EAAE;IACV,IAAI,CAAC;QACH,OAAO,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,UAAU,CAAC;YACnB,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,qBAAqB;YAC9B,GAAG,EAAE,4BAA4B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,gCAAgC;YAC/E,GAAG,EAAE,kFAAkF;SACxF,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"git.js","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CACpB,aAA+B,EAC/B,IAAuB,EACvB,GAAY,EACJ,EAAE;IACV,IAAI,CAAC;QACH,MAAM,QAAQ,GACZ,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM;YAChB,CAAC,CAAC;gBACE,GAAG,IAAI;gBACP,GAAG,CAAC,eAAe,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC,MAAM,CACxD,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAC/B;aACF;YACH,CAAC,CAAC,IAAI,CAAC;QACX,OAAO,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE;YACpC,GAAG;YACH,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,kBAAkB,EAAE,GAAG,EAAE;YAChD,OAAO,EAAE,MAAM;SAChB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,UAAU,CAAC;YACnB,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,qBAAqB;YAC9B,GAAG,EAAE,4BAA4B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,gCAAgC;YAC/E,GAAG,EAAE,mIAAmI;SACzI,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -14,4 +14,9 @@ export declare const reviewDevChanges: (commandRunner: DevCommandRunner, options
14
14
  mode?: DevReviewMode;
15
15
  }) => DevReviewResult;
16
16
  export declare const syncDevRepo: (commandRunner: DevCommandRunner, options?: DevSyncOptions) => DevSyncResult;
17
+ /** Exact read-only diff used by CLI composition; errors must not become empty prompts. */
18
+ export declare const readDevDiff: (commandRunner: DevCommandRunner, options: {
19
+ cwd?: string;
20
+ source: DevReviewResult["source"];
21
+ }) => string;
17
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAIL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EAIpB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,aAAa,EAEnB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAErE,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AA2wB/B,eAAO,MAAM,gBAAgB,GAC3B,eAAe,gBAAgB,EAC/B,UAAS;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAO,KAC7B,eA4BF,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,eAAe,gBAAgB,EAC/B,UAAS;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAO,KAC7B,eAuDF,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,eAAe,gBAAgB,EAC/B,UAAS;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,aAAa,CAAA;CAAO,KACnD,eA+CF,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,eAAe,gBAAgB,EAC/B,UAAS,cAAmB,KAC3B,aAA0E,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAIL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EAIpB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,aAAa,EAEnB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAErE,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AA+rB/B,eAAO,MAAM,gBAAgB,GAC3B,eAAe,gBAAgB,EAC/B,UAAS;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAO,KAC7B,eA6BF,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,eAAe,gBAAgB,EAC/B,UAAS;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAO,KAC7B,eA2DF,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,eAAe,gBAAgB,EAC/B,UAAS;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,aAAa,CAAA;CAAO,KACnD,eAgDF,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,eAAe,gBAAgB,EAC/B,UAAS,cAAmB,KAC3B,aAA0E,CAAC;AAE9E,0FAA0F;AAC1F,eAAO,MAAM,WAAW,GACtB,eAAe,gBAAgB,EAC/B,SAAS;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAA;CAAE,KAC3D,MACgG,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import path from 'node:path';
2
+ import { parseDiffHunks } from './diff.js';
2
3
  import { ZaoWuError } from '@zaowu-labs/core';
3
4
  export { DEV_DOMAIN } from './domain.js';
4
5
  import { DEV_CHANGE_CATEGORIES, } from './contracts.js';
@@ -11,7 +12,7 @@ const DEV_COMMIT_SCHEMA_VERSION = 1;
11
12
  const DEV_STATUS_SCHEMA_VERSION = 1;
12
13
  const createEmptyCategories = () => Object.fromEntries(DEV_CHANGE_CATEGORIES.map((cat) => [cat, 0]));
13
14
  const normalizePath = (filePath) => filePath.replaceAll('\\', '/');
14
- const isTestFile = (filePath) => filePath.includes('.test.') || filePath.includes('.spec.');
15
+ const isTestFile = (filePath) => /(?:^|\/)(?:tests?|__tests__)\/|(?:\.test|\.spec|_test)\.[^/]+$/.test(normalizePath(filePath));
15
16
  const isPackageManifestPath = (filePath) => {
16
17
  const file = normalizePath(filePath);
17
18
  return file === 'package.json' || file.endsWith('/package.json');
@@ -36,7 +37,7 @@ const getFileCategory = (filePath) => {
36
37
  if (file.startsWith('docs/') || file.endsWith('.md')) {
37
38
  return 'docs';
38
39
  }
39
- if (file.startsWith('packages/') && (file.includes('/src/') || file.endsWith('/src/index.ts'))) {
40
+ if (/\.(?:[cm]?[jt]sx?|py|go|rs|java|kt|rb|c|cpp|h|cs)$/.test(file)) {
40
41
  return 'source';
41
42
  }
42
43
  if (file === 'tsconfig.json' ||
@@ -58,13 +59,17 @@ const parseNumstat = (output, files, untrackedFiles = []) => {
58
59
  let additions = 0;
59
60
  let deletions = 0;
60
61
  const allFiles = [...new Set([...files, ...untrackedFiles])];
61
- for (const line of output.split(/\r?\n/)) {
62
- if (!line.trim()) {
62
+ const nulSeparated = output.includes('\0');
63
+ const entries = output.split(nulSeparated ? '\0' : /\r?\n/);
64
+ for (let index = 0; index < entries.length; index++) {
65
+ const match = /^(\d+|-)\t(\d+|-)\t(.*)$/s.exec(entries[index]);
66
+ if (!match)
63
67
  continue;
64
- }
65
- const [added, deleted] = line.split(/\s+/);
66
- additions += Number.parseInt(added, 10) || 0;
67
- deletions += Number.parseInt(deleted, 10) || 0;
68
+ additions += Number.parseInt(match[1], 10) || 0;
69
+ deletions += Number.parseInt(match[2], 10) || 0;
70
+ // NUL-formatted renames carry two path records after an empty path slot.
71
+ if (nulSeparated && !match[3])
72
+ index += 2;
68
73
  }
69
74
  return {
70
75
  files: allFiles,
@@ -74,10 +79,10 @@ const parseNumstat = (output, files, untrackedFiles = []) => {
74
79
  categories: summarizeCategories(allFiles),
75
80
  };
76
81
  };
77
- const getChangedFiles = (commandRunner, args, cwd) => runGit(commandRunner, args, cwd)
78
- .split(/\r?\n/)
79
- .map((line) => line.trim())
80
- .filter(Boolean);
82
+ const getChangedFiles = (commandRunner, args, cwd) => {
83
+ const output = runGit(commandRunner, args, cwd);
84
+ return output.split(output.includes('\0') ? '\0' : /\r?\n/).filter(Boolean);
85
+ };
81
86
  const getSummary = (commandRunner, nameArgs, numstatArgs, cwd) => {
82
87
  const files = getChangedFiles(commandRunner, nameArgs, cwd);
83
88
  if (files.length === 0) {
@@ -91,67 +96,8 @@ const getSummary = (commandRunner, nameArgs, numstatArgs, cwd) => {
91
96
  }
92
97
  return parseNumstat(runGit(commandRunner, numstatArgs, cwd), files);
93
98
  };
94
- const getStagedSummary = (commandRunner, cwd) => getSummary(commandRunner, ['diff', '--cached', '--name-only'], ['diff', '--cached', '--numstat'], cwd);
95
- const getWorkingTreeSummary = (commandRunner, cwd) => parseNumstat(runGit(commandRunner, ['diff', '--numstat'], cwd), getChangedFiles(commandRunner, ['diff', '--name-only'], cwd), getChangedFiles(commandRunner, ['ls-files', '--others', '--exclude-standard'], cwd));
96
- const stripDiffPath = (value) => {
97
- let cleaned = value.replace(/^[ab]\//, '');
98
- if (cleaned.startsWith('"') && cleaned.endsWith('"')) {
99
- cleaned = cleaned.slice(1, -1);
100
- }
101
- return cleaned;
102
- };
103
- const parseDiffHunks = (diff) => {
104
- const hunks = [];
105
- let currentFile = '';
106
- let currentHunk;
107
- let currentNewLine = 0;
108
- for (const line of diff.split(/\r?\n/)) {
109
- const fileMatch = /^diff --git a\/(.+?) b\/(.+)$/.exec(line);
110
- if (fileMatch) {
111
- currentFile = stripDiffPath(fileMatch[2]);
112
- currentHunk = undefined;
113
- currentNewLine = 0;
114
- continue;
115
- }
116
- const hunkMatch = /^@@\s+-(?:\d+)(?:,\d+)?\s+\+(\d+)(?:,(\d+))?\s+@@/.exec(line);
117
- if (hunkMatch && currentFile) {
118
- const startLine = Number.parseInt(hunkMatch[1], 10);
119
- const lineCount = Number.parseInt(hunkMatch[2] ?? '1', 10);
120
- currentNewLine = startLine;
121
- currentHunk = {
122
- filePath: currentFile,
123
- header: hunkMatch[0],
124
- addedLines: 0,
125
- removedLines: 0,
126
- startLine,
127
- endLine: Math.max(startLine, startLine + lineCount - 1),
128
- addedText: [],
129
- addedLineNumbers: [],
130
- };
131
- hunks.push(currentHunk);
132
- continue;
133
- }
134
- if (!currentHunk) {
135
- continue;
136
- }
137
- if (line.startsWith('\')) {
138
- continue;
139
- }
140
- if (line.startsWith('+')) {
141
- currentHunk.addedLines += 1;
142
- currentHunk.addedText.push(line.slice(1));
143
- currentHunk.addedLineNumbers.push(currentNewLine);
144
- currentNewLine += 1;
145
- continue;
146
- }
147
- if (line.startsWith('-')) {
148
- currentHunk.removedLines += 1;
149
- continue;
150
- }
151
- currentNewLine += 1;
152
- }
153
- return hunks;
154
- };
99
+ const getStagedSummary = (commandRunner, cwd) => getSummary(commandRunner, ['diff', '--cached', '--name-only', '-z'], ['diff', '--cached', '--numstat', '-z'], cwd);
100
+ const getWorkingTreeSummary = (commandRunner, cwd) => parseNumstat(runGit(commandRunner, ['diff', '--numstat', '-z'], cwd), getChangedFiles(commandRunner, ['diff', '--name-only', '-z'], cwd), getChangedFiles(commandRunner, ['ls-files', '--others', '--exclude-standard', '-z'], cwd));
155
101
  const toPublicDiffHunks = (hunks) => hunks.map(({ filePath, header, addedLines, removedLines, startLine, endLine }) => ({
156
102
  filePath,
157
103
  header,
@@ -182,9 +128,10 @@ const inferCommitType = (files) => {
182
128
  return 'chore';
183
129
  };
184
130
  const inferScope = (files) => {
185
- const packageMatch = files
186
- .map((file) => /^packages\/([^/]+)/.exec(file)?.[1])
187
- .find((scope) => Boolean(scope));
131
+ const scopes = new Set(files.map((file) => /^packages\/([^/]+)/.exec(file)?.[1]).filter(Boolean));
132
+ const packageMatch = scopes.size === 1 ? [...scopes][0] : undefined;
133
+ if (scopes.size > 1)
134
+ return 'project';
188
135
  if (packageMatch) {
189
136
  return packageMatch;
190
137
  }
@@ -211,7 +158,9 @@ const normalizeCommitScope = (scope) => scope
211
158
  .replace(/^-+|-+$/g, '') || 'project';
212
159
  const inferCommitSubject = (summary, scope) => {
213
160
  if (summary.categories.dependency > 0) {
214
- return 'update dependency metadata';
161
+ return summary.categories.source > 0
162
+ ? `update ${scope} sources and dependencies`
163
+ : 'update dependency metadata';
215
164
  }
216
165
  if (summary.categories.docs > 0 &&
217
166
  summary.files.every((file) => getFileCategory(file) === 'docs')) {
@@ -563,6 +512,7 @@ export const previewDevCommit = (commandRunner, options = {}) => {
563
512
  schemaVersion: DEV_COMMIT_SCHEMA_VERSION,
564
513
  status: 'ok',
565
514
  source: 'staged',
515
+ method: 'heuristic',
566
516
  summary,
567
517
  suggestion,
568
518
  message: suggestion.title,
@@ -574,8 +524,9 @@ export const previewDevCommit = (commandRunner, options = {}) => {
574
524
  };
575
525
  };
576
526
  export const getDevStatus = (commandRunner, options = {}) => {
577
- const output = runGit(commandRunner, ['status', '--short', '--branch'], options.cwd);
578
- const lines = output.split(/\r?\n/).filter(Boolean);
527
+ const output = runGit(commandRunner, ['status', '--short', '--branch', '-z'], options.cwd);
528
+ const nulSeparated = output.includes('\0');
529
+ const lines = output.split(nulSeparated ? '\0' : /\r?\n/).filter(Boolean);
579
530
  const firstLine = lines[0] ?? '';
580
531
  const branch = /^##\s+(.+?)(?:\.{3}.+)?$/.exec(firstLine)?.[1].replace(/\s+\[.+\]$/, '') ?? 'unknown';
581
532
  const ahead = Number.parseInt(/\bahead\s+(\d+)/.exec(firstLine)?.[1] ?? '0', 10) || 0;
@@ -583,15 +534,19 @@ export const getDevStatus = (commandRunner, options = {}) => {
583
534
  const staged = [];
584
535
  const unstaged = [];
585
536
  const untracked = [];
586
- for (const line of lines.slice(firstLine.startsWith('##') ? 1 : 0)) {
537
+ const entries = lines.slice(firstLine.startsWith('##') ? 1 : 0);
538
+ for (let index = 0; index < entries.length; index++) {
539
+ const line = entries[index];
587
540
  const indexStatus = line[0] ?? ' ';
588
541
  const worktreeStatus = line[1] ?? ' ';
589
- let file = line.slice(3).trim();
590
- if (file.includes(' -> ')) {
542
+ let file = nulSeparated ? line.slice(3) : line.slice(3).trim();
543
+ if (nulSeparated && /[RC]/.test(indexStatus + worktreeStatus))
544
+ index++;
545
+ if (!nulSeparated && file.includes(' -> ')) {
591
546
  const parts = file.split(' -> ');
592
547
  file = parts[parts.length - 1].trim();
593
548
  }
594
- if (file.startsWith('"') && file.endsWith('"')) {
549
+ if (!nulSeparated && file.startsWith('"') && file.endsWith('"')) {
595
550
  file = file.slice(1, -1);
596
551
  }
597
552
  if (!file) {
@@ -654,6 +609,7 @@ export const reviewDevChanges = (commandRunner, options = {}) => {
654
609
  schemaVersion: DEV_REVIEW_SCHEMA_VERSION,
655
610
  status: 'ok',
656
611
  source,
612
+ method: 'heuristic',
657
613
  summary,
658
614
  diffHunks: toPublicDiffHunks(diffHunks),
659
615
  findings,
@@ -661,4 +617,6 @@ export const reviewDevChanges = (commandRunner, options = {}) => {
661
617
  };
662
618
  };
663
619
  export const syncDevRepo = (commandRunner, options = {}) => syncDevRepoInternal(commandRunner, options, getDevStatus);
620
+ /** Exact read-only diff used by CLI composition; errors must not become empty prompts. */
621
+ export const readDevDiff = (commandRunner, options) => runGit(commandRunner, options.source === 'staged' ? ['diff', '--cached'] : ['diff'], options.cwd);
664
622
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zaowu-labs/dev",
3
- "version": "1.0.5",
3
+ "version": "1.1.0",
4
4
  "description": "ZaoWu developer workflows",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -20,7 +20,7 @@
20
20
  }
21
21
  },
22
22
  "dependencies": {
23
- "@zaowu-labs/core": "1.0.5"
23
+ "@zaowu-labs/core": "1.1.0"
24
24
  },
25
25
  "keywords": [
26
26
  "zaowu",