@mesadev/agentblame 0.2.10 → 3.0.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 (68) hide show
  1. package/dist/agentblame.js +3500 -0
  2. package/dist/blame.d.ts +4 -1
  3. package/dist/blame.js +280 -78
  4. package/dist/blame.js.map +1 -1
  5. package/dist/capture.d.ts +4 -7
  6. package/dist/capture.js +465 -467
  7. package/dist/capture.js.map +1 -1
  8. package/dist/index.d.ts +1 -1
  9. package/dist/index.js +334 -72
  10. package/dist/index.js.map +1 -1
  11. package/dist/lib/analytics.d.ts +179 -0
  12. package/dist/lib/analytics.js +833 -0
  13. package/dist/lib/analytics.js.map +1 -0
  14. package/dist/lib/attribution.d.ts +54 -0
  15. package/dist/lib/attribution.js +266 -0
  16. package/dist/lib/attribution.js.map +1 -0
  17. package/dist/lib/checkpoint.d.ts +97 -0
  18. package/dist/lib/checkpoint.js +441 -0
  19. package/dist/lib/checkpoint.js.map +1 -0
  20. package/dist/lib/config.d.ts +46 -0
  21. package/dist/lib/config.js +123 -0
  22. package/dist/lib/config.js.map +1 -0
  23. package/dist/lib/database.d.ts +115 -85
  24. package/dist/lib/database.js +306 -323
  25. package/dist/lib/database.js.map +1 -1
  26. package/dist/lib/delta.d.ts +78 -0
  27. package/dist/lib/delta.js +309 -0
  28. package/dist/lib/delta.js.map +1 -0
  29. package/dist/lib/git/gitBlame.js +9 -4
  30. package/dist/lib/git/gitBlame.js.map +1 -1
  31. package/dist/lib/git/gitConfig.d.ts +5 -3
  32. package/dist/lib/git/gitConfig.js +41 -6
  33. package/dist/lib/git/gitConfig.js.map +1 -1
  34. package/dist/lib/git/gitDiff.d.ts +13 -1
  35. package/dist/lib/git/gitDiff.js +39 -7
  36. package/dist/lib/git/gitDiff.js.map +1 -1
  37. package/dist/lib/git/gitNotes.d.ts +30 -4
  38. package/dist/lib/git/gitNotes.js +140 -24
  39. package/dist/lib/git/gitNotes.js.map +1 -1
  40. package/dist/lib/hooks.d.ts +1 -0
  41. package/dist/lib/hooks.js +148 -27
  42. package/dist/lib/hooks.js.map +1 -1
  43. package/dist/lib/index.d.ts +7 -0
  44. package/dist/lib/index.js +13 -0
  45. package/dist/lib/index.js.map +1 -1
  46. package/dist/lib/storage.d.ts +163 -0
  47. package/dist/lib/storage.js +823 -0
  48. package/dist/lib/storage.js.map +1 -0
  49. package/dist/lib/trace.d.ts +118 -0
  50. package/dist/lib/trace.js +499 -0
  51. package/dist/lib/trace.js.map +1 -0
  52. package/dist/lib/types.d.ts +322 -114
  53. package/dist/lib/types.js +2 -1
  54. package/dist/lib/types.js.map +1 -1
  55. package/dist/lib/util.d.ts +8 -8
  56. package/dist/lib/util.js +18 -22
  57. package/dist/lib/util.js.map +1 -1
  58. package/dist/lib/watcher.d.ts +104 -0
  59. package/dist/lib/watcher.js +398 -0
  60. package/dist/lib/watcher.js.map +1 -0
  61. package/dist/post-merge.js +460 -421
  62. package/dist/post-merge.js.map +1 -1
  63. package/dist/process.d.ts +6 -5
  64. package/dist/process.js +182 -158
  65. package/dist/process.js.map +1 -1
  66. package/dist/sync.js +172 -131
  67. package/dist/sync.js.map +1 -1
  68. package/package.json +3 -2
@@ -7,6 +7,7 @@
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.getCommitDiff = getCommitDiff;
10
+ exports.getCommitDiffRaw = getCommitDiffRaw;
10
11
  exports.getFullCommitDiff = getFullCommitDiff;
11
12
  exports.parseDiff = parseDiff;
12
13
  exports.parseDeletedBlocks = parseDeletedBlocks;
@@ -16,19 +17,43 @@ exports.getCommitHunks = getCommitHunks;
16
17
  exports.getCommitMoves = getCommitMoves;
17
18
  const gitCli_1 = require("./gitCli");
18
19
  const util_1 = require("../util");
19
- // =============================================================================
20
- // Commit Diff
21
- // =============================================================================
22
20
  /**
23
21
  * Get the diff for a specific commit (compared to its parent)
24
22
  */
25
23
  async function getCommitDiff(repoRoot, sha) {
24
+ // Get list of changed files with status
25
+ const nameStatus = await (0, gitCli_1.runGit)(repoRoot, [
26
+ "diff-tree",
27
+ "--no-commit-id",
28
+ "--name-status",
29
+ "-r",
30
+ sha,
31
+ ]);
32
+ const files = [];
33
+ if (nameStatus.exitCode === 0) {
34
+ for (const line of nameStatus.stdout.split("\n")) {
35
+ if (!line.trim())
36
+ continue;
37
+ const [status, ...pathParts] = line.split("\t");
38
+ const path = pathParts.join("\t"); // Handle paths with tabs
39
+ if (!path)
40
+ continue;
41
+ let fileStatus = "modified";
42
+ if (status === "A")
43
+ fileStatus = "added";
44
+ else if (status === "D")
45
+ fileStatus = "deleted";
46
+ files.push({ path, status: fileStatus });
47
+ }
48
+ }
49
+ // Get raw diff
26
50
  const result = await (0, gitCli_1.runGit)(repoRoot, [
27
51
  "diff",
28
52
  `${sha}^`,
29
53
  sha,
30
54
  "--unified=0",
31
55
  ]);
56
+ let raw = result.stdout;
32
57
  if (result.exitCode !== 0) {
33
58
  // First commit has no parent, try diffing against empty tree
34
59
  const emptyTree = await (0, gitCli_1.runGit)(repoRoot, [
@@ -37,9 +62,16 @@ async function getCommitDiff(repoRoot, sha) {
37
62
  sha,
38
63
  "--unified=0",
39
64
  ]);
40
- return emptyTree.stdout;
65
+ raw = emptyTree.stdout;
41
66
  }
42
- return result.stdout;
67
+ return { files, raw };
68
+ }
69
+ /**
70
+ * Get raw diff string (legacy compatibility)
71
+ */
72
+ async function getCommitDiffRaw(repoRoot, sha) {
73
+ const diff = await getCommitDiff(repoRoot, sha);
74
+ return diff.raw;
43
75
  }
44
76
  /**
45
77
  * Get full diff including both additions and deletions (for move detection)
@@ -331,8 +363,8 @@ function buildMoveIndex(moves) {
331
363
  * Get parsed diff hunks for a commit with line-level data
332
364
  */
333
365
  async function getCommitHunks(repoRoot, sha) {
334
- const diffOutput = await getCommitDiff(repoRoot, sha);
335
- return parseDiff(diffOutput);
366
+ const diff = await getCommitDiff(repoRoot, sha);
367
+ return parseDiff(diff.raw);
336
368
  }
337
369
  /**
338
370
  * Get move mappings for a commit
@@ -1 +1 @@
1
- {"version":3,"file":"gitDiff.js","sourceRoot":"","sources":["../../../src/lib/git/gitDiff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitDiff.js","sourceRoot":"","sources":["../../../src/lib/git/gitDiff.ts"],"names":[],"mappings":"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"}
@@ -2,16 +2,27 @@
2
2
  * Git Notes Operations
3
3
  *
4
4
  * Attach and read attribution data from git notes (refs/notes/agentblame)
5
+ *
6
+ * Format:
7
+ * - Two-section format: attestation section (fast grep-able) + JSON metadata
8
+ */
9
+ import type { Attribution, SessionMetadata } from "../types";
10
+ /**
11
+ * Build note content as JSON
5
12
  */
6
- import type { GitNotesAttribution, RangeAttribution } from "../types";
13
+ export declare function buildNote(attribution: Attribution, sessions: Record<string, SessionMetadata>): string;
14
+ /**
15
+ * Parse a note (JSON format)
16
+ */
17
+ export declare function parseNote(content: string): Attribution | null;
7
18
  /**
8
19
  * Attach attribution data as a git note to a commit
9
20
  */
10
- export declare function attachNote(repoRoot: string, sha: string, attributions: RangeAttribution[]): Promise<boolean>;
21
+ export declare function attachNote(repoRoot: string, sha: string, attribution: Attribution, sessions: Record<string, SessionMetadata>): Promise<boolean>;
11
22
  /**
12
23
  * Read attribution note from a commit
13
24
  */
14
- export declare function readNote(repoRoot: string, sha: string): Promise<GitNotesAttribution | null>;
25
+ export declare function readNote(repoRoot: string, sha: string): Promise<Attribution | null>;
15
26
  /**
16
27
  * Push notes to remote
17
28
  */
@@ -22,10 +33,25 @@ export declare function pushNotes(repoRoot: string, remote?: string): Promise<bo
22
33
  export declare function fetchNotes(repoRoot: string, remote?: string): Promise<boolean>;
23
34
  /**
24
35
  * Fetch notes from remote, silently ignoring errors
25
- * Use this in CLI commands where notes may not exist on remote yet
26
36
  */
27
37
  export declare function fetchNotesQuiet(repoRoot: string, remote?: string, verbose?: boolean): Promise<boolean>;
38
+ /**
39
+ * Copy note from one commit to another (for squash/rebase)
40
+ */
41
+ export declare function copyNote(repoRoot: string, fromSha: string, toSha: string): Promise<boolean>;
42
+ /**
43
+ * Remove note from a commit
44
+ */
45
+ export declare function removeNote(repoRoot: string, sha: string): Promise<boolean>;
28
46
  /**
29
47
  * Get the notes ref name
30
48
  */
31
49
  export declare function getNotesRef(): string;
50
+ /**
51
+ * Check if a commit has an attribution note
52
+ */
53
+ export declare function hasNote(repoRoot: string, sha: string): Promise<boolean>;
54
+ /**
55
+ * List all commits that have attribution notes
56
+ */
57
+ export declare function listNotedCommits(repoRoot: string): Promise<string[]>;
@@ -3,53 +3,131 @@
3
3
  * Git Notes Operations
4
4
  *
5
5
  * Attach and read attribution data from git notes (refs/notes/agentblame)
6
+ *
7
+ * Format:
8
+ * - Two-section format: attestation section (fast grep-able) + JSON metadata
6
9
  */
7
10
  Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.buildNote = buildNote;
12
+ exports.parseNote = parseNote;
8
13
  exports.attachNote = attachNote;
9
14
  exports.readNote = readNote;
10
15
  exports.pushNotes = pushNotes;
11
16
  exports.fetchNotes = fetchNotes;
12
17
  exports.fetchNotesQuiet = fetchNotesQuiet;
18
+ exports.copyNote = copyNote;
19
+ exports.removeNote = removeNote;
13
20
  exports.getNotesRef = getNotesRef;
21
+ exports.hasNote = hasNote;
22
+ exports.listNotedCommits = listNotedCommits;
23
+ const trace_1 = require("../trace");
14
24
  const gitCli_1 = require("./gitCli");
15
25
  const NOTES_REF = "refs/notes/agentblame";
26
+ // =============================================================================
27
+ // Note Format
28
+ // =============================================================================
16
29
  /**
17
- * Attach attribution data as a git note to a commit
30
+ * Build note content as JSON
18
31
  */
19
- async function attachNote(repoRoot, sha, attributions) {
32
+ function buildNote(attribution, sessions) {
33
+ // Build files object with AI ranges
34
+ const files = {};
35
+ for (const [filePath, fileAttr] of Object.entries(attribution.files)) {
36
+ if (fileAttr.aiRanges.length === 0)
37
+ continue;
38
+ // Group ranges by session+prompt combination
39
+ const groupKey = (sessionId, promptId) => `${sessionId}:${promptId ?? "null"}`;
40
+ const groupedRanges = new Map();
41
+ for (const range of fileAttr.aiRanges) {
42
+ const key = groupKey(range.sessionId, range.promptId);
43
+ if (!groupedRanges.has(key)) {
44
+ groupedRanges.set(key, { sessionId: range.sessionId, promptId: range.promptId, ranges: [] });
45
+ }
46
+ groupedRanges.get(key).ranges.push([range.startLine, range.endLine]);
47
+ }
48
+ files[filePath] = [];
49
+ for (const { sessionId, promptId, ranges } of groupedRanges.values()) {
50
+ const rangeStr = (0, trace_1.formatRanges)(ranges.map(([start, end]) => ({ startLine: start, endLine: end })));
51
+ const entry = {
52
+ session: sessionId,
53
+ lines: rangeStr,
54
+ };
55
+ // Only include prompt if it's not null
56
+ if (promptId != null) {
57
+ entry.prompt = promptId;
58
+ }
59
+ files[filePath].push(entry);
60
+ }
61
+ }
20
62
  const note = {
21
- version: 2,
22
- timestamp: new Date().toISOString(),
23
- attributions: attributions.map((a) => ({
24
- path: a.path,
25
- startLine: a.startLine,
26
- endLine: a.endLine,
27
- category: "ai_generated",
28
- provider: a.provider,
29
- model: a.model,
30
- confidence: a.confidence,
31
- matchType: a.matchType,
32
- contentHash: a.contentHash,
33
- })),
63
+ version: 3,
64
+ timestamp: attribution.timestamp,
65
+ sessions,
66
+ files,
34
67
  };
35
- const noteJson = JSON.stringify(note);
36
- const result = await (0, gitCli_1.runGit)(repoRoot, ["notes", `--ref=${NOTES_REF}`, "add", "-f", "-m", noteJson, sha], 10000);
37
- return result.exitCode === 0;
68
+ return JSON.stringify(note);
38
69
  }
39
70
  /**
40
- * Read attribution note from a commit
71
+ * Parse a note (JSON format)
41
72
  */
42
- async function readNote(repoRoot, sha) {
43
- const result = await (0, gitCli_1.runGit)(repoRoot, ["notes", `--ref=${NOTES_REF}`, "show", sha], 5000);
44
- if (result.exitCode !== 0)
73
+ function parseNote(content) {
74
+ if (!content.trim())
45
75
  return null;
46
76
  try {
47
- return JSON.parse(result.stdout.trim());
77
+ const note = JSON.parse(content);
78
+ const attribution = {
79
+ version: 3,
80
+ timestamp: note.timestamp,
81
+ sessions: note.sessions,
82
+ files: {},
83
+ };
84
+ // Parse files
85
+ for (const [filePath, ranges] of Object.entries(note.files || {})) {
86
+ attribution.files[filePath] = {
87
+ aiRanges: [],
88
+ humanRanges: [],
89
+ };
90
+ for (const { session, prompt, lines } of ranges) {
91
+ const parsed = (0, trace_1.parseRanges)(lines);
92
+ for (const range of parsed) {
93
+ attribution.files[filePath].aiRanges.push({
94
+ sessionId: session,
95
+ promptId: prompt,
96
+ startLine: range.startLine,
97
+ endLine: range.endLine,
98
+ });
99
+ }
100
+ }
101
+ }
102
+ return attribution;
48
103
  }
49
104
  catch {
50
105
  return null;
51
106
  }
52
107
  }
108
+ // =============================================================================
109
+ // Note Read/Write Operations
110
+ // =============================================================================
111
+ /**
112
+ * Attach attribution data as a git note to a commit
113
+ */
114
+ async function attachNote(repoRoot, sha, attribution, sessions) {
115
+ const noteContent = buildNote(attribution, sessions);
116
+ const result = await (0, gitCli_1.runGit)(repoRoot, ["notes", `--ref=${NOTES_REF}`, "add", "-f", "-m", noteContent, sha], 10000);
117
+ return result.exitCode === 0;
118
+ }
119
+ /**
120
+ * Read attribution note from a commit
121
+ */
122
+ async function readNote(repoRoot, sha) {
123
+ const result = await (0, gitCli_1.runGit)(repoRoot, ["notes", `--ref=${NOTES_REF}`, "show", sha], 5000);
124
+ if (result.exitCode !== 0)
125
+ return null;
126
+ return parseNote(result.stdout.trim());
127
+ }
128
+ // =============================================================================
129
+ // Note Sync Operations
130
+ // =============================================================================
53
131
  /**
54
132
  * Push notes to remote
55
133
  */
@@ -66,7 +144,6 @@ async function fetchNotes(repoRoot, remote = "origin") {
66
144
  }
67
145
  /**
68
146
  * Fetch notes from remote, silently ignoring errors
69
- * Use this in CLI commands where notes may not exist on remote yet
70
147
  */
71
148
  async function fetchNotesQuiet(repoRoot, remote = "origin", verbose = false) {
72
149
  if (verbose) {
@@ -84,10 +161,49 @@ async function fetchNotesQuiet(repoRoot, remote = "origin", verbose = false) {
84
161
  }
85
162
  return false;
86
163
  }
164
+ /**
165
+ * Copy note from one commit to another (for squash/rebase)
166
+ */
167
+ async function copyNote(repoRoot, fromSha, toSha) {
168
+ const result = await (0, gitCli_1.runGit)(repoRoot, ["notes", `--ref=${NOTES_REF}`, "copy", fromSha, toSha], 5000);
169
+ return result.exitCode === 0;
170
+ }
171
+ /**
172
+ * Remove note from a commit
173
+ */
174
+ async function removeNote(repoRoot, sha) {
175
+ const result = await (0, gitCli_1.runGit)(repoRoot, ["notes", `--ref=${NOTES_REF}`, "remove", sha], 5000);
176
+ return result.exitCode === 0;
177
+ }
87
178
  /**
88
179
  * Get the notes ref name
89
180
  */
90
181
  function getNotesRef() {
91
182
  return NOTES_REF;
92
183
  }
184
+ /**
185
+ * Check if a commit has an attribution note
186
+ */
187
+ async function hasNote(repoRoot, sha) {
188
+ const result = await (0, gitCli_1.runGit)(repoRoot, ["notes", `--ref=${NOTES_REF}`, "show", sha], 5000);
189
+ return result.exitCode === 0;
190
+ }
191
+ /**
192
+ * List all commits that have attribution notes
193
+ */
194
+ async function listNotedCommits(repoRoot) {
195
+ const result = await (0, gitCli_1.runGit)(repoRoot, ["notes", `--ref=${NOTES_REF}`, "list"], 10000);
196
+ if (result.exitCode !== 0)
197
+ return [];
198
+ // Format: <note-sha> <commit-sha>
199
+ return result.stdout
200
+ .trim()
201
+ .split("\n")
202
+ .filter(Boolean)
203
+ .map((line) => {
204
+ const parts = line.split(" ");
205
+ return parts[1] || "";
206
+ })
207
+ .filter(Boolean);
208
+ }
93
209
  //# sourceMappingURL=gitNotes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gitNotes.js","sourceRoot":"","sources":["../../../src/lib/git/gitNotes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitNotes.js","sourceRoot":"","sources":["../../../src/lib/git/gitNotes.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,7 @@ export declare function getOpenCodePluginPath(repoRoot: string): string;
26
26
  export declare function installCursorHooks(repoRoot: string): Promise<boolean>;
27
27
  /**
28
28
  * Install the Claude Code hooks at repo-level (.claude/settings.json)
29
+ * BULLETPROOF: Uses both PreToolUse and PostToolUse for accurate before/after capture
29
30
  */
30
31
  export declare function installClaudeHooks(repoRoot: string): Promise<boolean>;
31
32
  /**