@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.
- package/dist/agentblame.js +3500 -0
- package/dist/blame.d.ts +4 -1
- package/dist/blame.js +280 -78
- package/dist/blame.js.map +1 -1
- package/dist/capture.d.ts +4 -7
- package/dist/capture.js +465 -467
- package/dist/capture.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +334 -72
- package/dist/index.js.map +1 -1
- package/dist/lib/analytics.d.ts +179 -0
- package/dist/lib/analytics.js +833 -0
- package/dist/lib/analytics.js.map +1 -0
- package/dist/lib/attribution.d.ts +54 -0
- package/dist/lib/attribution.js +266 -0
- package/dist/lib/attribution.js.map +1 -0
- package/dist/lib/checkpoint.d.ts +97 -0
- package/dist/lib/checkpoint.js +441 -0
- package/dist/lib/checkpoint.js.map +1 -0
- package/dist/lib/config.d.ts +46 -0
- package/dist/lib/config.js +123 -0
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/database.d.ts +115 -85
- package/dist/lib/database.js +306 -323
- package/dist/lib/database.js.map +1 -1
- package/dist/lib/delta.d.ts +78 -0
- package/dist/lib/delta.js +309 -0
- package/dist/lib/delta.js.map +1 -0
- package/dist/lib/git/gitBlame.js +9 -4
- package/dist/lib/git/gitBlame.js.map +1 -1
- package/dist/lib/git/gitConfig.d.ts +5 -3
- package/dist/lib/git/gitConfig.js +41 -6
- package/dist/lib/git/gitConfig.js.map +1 -1
- package/dist/lib/git/gitDiff.d.ts +13 -1
- package/dist/lib/git/gitDiff.js +39 -7
- package/dist/lib/git/gitDiff.js.map +1 -1
- package/dist/lib/git/gitNotes.d.ts +30 -4
- package/dist/lib/git/gitNotes.js +140 -24
- package/dist/lib/git/gitNotes.js.map +1 -1
- package/dist/lib/hooks.d.ts +1 -0
- package/dist/lib/hooks.js +148 -27
- package/dist/lib/hooks.js.map +1 -1
- package/dist/lib/index.d.ts +7 -0
- package/dist/lib/index.js +13 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/storage.d.ts +163 -0
- package/dist/lib/storage.js +823 -0
- package/dist/lib/storage.js.map +1 -0
- package/dist/lib/trace.d.ts +118 -0
- package/dist/lib/trace.js +499 -0
- package/dist/lib/trace.js.map +1 -0
- package/dist/lib/types.d.ts +322 -114
- package/dist/lib/types.js +2 -1
- package/dist/lib/types.js.map +1 -1
- package/dist/lib/util.d.ts +8 -8
- package/dist/lib/util.js +18 -22
- package/dist/lib/util.js.map +1 -1
- package/dist/lib/watcher.d.ts +104 -0
- package/dist/lib/watcher.js +398 -0
- package/dist/lib/watcher.js.map +1 -0
- package/dist/post-merge.js +460 -421
- package/dist/post-merge.js.map +1 -1
- package/dist/process.d.ts +6 -5
- package/dist/process.js +182 -158
- package/dist/process.js.map +1 -1
- package/dist/sync.js +172 -131
- package/dist/sync.js.map +1 -1
- package/package.json +3 -2
package/dist/lib/database.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/lib/database.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/lib/database.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Delta Module v3
|
|
3
|
+
*
|
|
4
|
+
* Handles diff computation and delta storage for attribution tracking.
|
|
5
|
+
* Uses unified diff format for computing what changed between edits.
|
|
6
|
+
*
|
|
7
|
+
* Storage: .git/agentblame/working/{base_sha}/deltas.jsonl
|
|
8
|
+
*/
|
|
9
|
+
import type { DeltaHunk, EditDelta } from "./types";
|
|
10
|
+
/**
|
|
11
|
+
* Get the deltas.jsonl path for a base SHA
|
|
12
|
+
*/
|
|
13
|
+
export declare function getDeltasPath(repoRoot: string, baseSha: string): string;
|
|
14
|
+
/**
|
|
15
|
+
* Compute unified diff hunks between two strings
|
|
16
|
+
* Returns array of DeltaHunk describing what changed
|
|
17
|
+
*/
|
|
18
|
+
export declare function computeDiff(before: string, after: string): DeltaHunk[];
|
|
19
|
+
/**
|
|
20
|
+
* Compute diff and return detailed line information
|
|
21
|
+
* Useful for debugging and testing
|
|
22
|
+
*/
|
|
23
|
+
export declare function computeDiffDetailed(before: string, after: string): {
|
|
24
|
+
hunks: DeltaHunk[];
|
|
25
|
+
additions: number;
|
|
26
|
+
deletions: number;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Append a delta to the working log
|
|
30
|
+
* Deltas are stored in JSONL format for append-only writes
|
|
31
|
+
*/
|
|
32
|
+
export declare function appendDelta(repoRoot: string, baseSha: string, delta: EditDelta): void;
|
|
33
|
+
/**
|
|
34
|
+
* Read all deltas for a base SHA
|
|
35
|
+
* Optionally filter by file path
|
|
36
|
+
*/
|
|
37
|
+
export declare function readDeltas(repoRoot: string, baseSha: string, file?: string): EditDelta[];
|
|
38
|
+
/**
|
|
39
|
+
* Read deltas for a specific file (more efficient than filtering all)
|
|
40
|
+
*/
|
|
41
|
+
export declare function readDeltasForFile(repoRoot: string, baseSha: string, filePath: string): EditDelta[];
|
|
42
|
+
/**
|
|
43
|
+
* Get all unique files that have deltas
|
|
44
|
+
*/
|
|
45
|
+
export declare function getFilesWithDeltas(repoRoot: string, baseSha: string): string[];
|
|
46
|
+
/**
|
|
47
|
+
* Get the most recent AI delta for a file (if any)
|
|
48
|
+
* Used to detect if another AI tool recently edited a file
|
|
49
|
+
*/
|
|
50
|
+
export declare function getLastAIDeltaForFile(repoRoot: string, baseSha: string, filePath: string): EditDelta | null;
|
|
51
|
+
/**
|
|
52
|
+
* Get the most recent delta for a file (AI or human)
|
|
53
|
+
* Used to get the latest known state of a file
|
|
54
|
+
*/
|
|
55
|
+
export declare function getLastDeltaForFile(repoRoot: string, baseSha: string, filePath: string): EditDelta | null;
|
|
56
|
+
/**
|
|
57
|
+
* Clear deltas for a base SHA (after commit)
|
|
58
|
+
*/
|
|
59
|
+
export declare function clearDeltas(repoRoot: string, baseSha: string): void;
|
|
60
|
+
/**
|
|
61
|
+
* Get delta statistics for a base SHA
|
|
62
|
+
*/
|
|
63
|
+
export declare function getDeltaStats(repoRoot: string, baseSha: string): {
|
|
64
|
+
totalDeltas: number;
|
|
65
|
+
aiDeltas: number;
|
|
66
|
+
humanDeltas: number;
|
|
67
|
+
files: number;
|
|
68
|
+
totalAdditions: number;
|
|
69
|
+
totalDeletions: number;
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* Create an AI edit delta
|
|
73
|
+
*/
|
|
74
|
+
export declare function createAIDelta(file: string, sessionId: string, promptId: number | null, hunks: DeltaHunk[], afterBlob?: string): EditDelta;
|
|
75
|
+
/**
|
|
76
|
+
* Create a human edit delta
|
|
77
|
+
*/
|
|
78
|
+
export declare function createHumanDelta(file: string, hunks: DeltaHunk[], afterBlob?: string): EditDelta;
|
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Delta Module v3
|
|
4
|
+
*
|
|
5
|
+
* Handles diff computation and delta storage for attribution tracking.
|
|
6
|
+
* Uses unified diff format for computing what changed between edits.
|
|
7
|
+
*
|
|
8
|
+
* Storage: .git/agentblame/working/{base_sha}/deltas.jsonl
|
|
9
|
+
*/
|
|
10
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
13
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
14
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
15
|
+
}
|
|
16
|
+
Object.defineProperty(o, k2, desc);
|
|
17
|
+
}) : (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
o[k2] = m[k];
|
|
20
|
+
}));
|
|
21
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
22
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
23
|
+
}) : function(o, v) {
|
|
24
|
+
o["default"] = v;
|
|
25
|
+
});
|
|
26
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
27
|
+
var ownKeys = function(o) {
|
|
28
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
29
|
+
var ar = [];
|
|
30
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
31
|
+
return ar;
|
|
32
|
+
};
|
|
33
|
+
return ownKeys(o);
|
|
34
|
+
};
|
|
35
|
+
return function (mod) {
|
|
36
|
+
if (mod && mod.__esModule) return mod;
|
|
37
|
+
var result = {};
|
|
38
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
39
|
+
__setModuleDefault(result, mod);
|
|
40
|
+
return result;
|
|
41
|
+
};
|
|
42
|
+
})();
|
|
43
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
44
|
+
exports.getDeltasPath = getDeltasPath;
|
|
45
|
+
exports.computeDiff = computeDiff;
|
|
46
|
+
exports.computeDiffDetailed = computeDiffDetailed;
|
|
47
|
+
exports.appendDelta = appendDelta;
|
|
48
|
+
exports.readDeltas = readDeltas;
|
|
49
|
+
exports.readDeltasForFile = readDeltasForFile;
|
|
50
|
+
exports.getFilesWithDeltas = getFilesWithDeltas;
|
|
51
|
+
exports.getLastAIDeltaForFile = getLastAIDeltaForFile;
|
|
52
|
+
exports.getLastDeltaForFile = getLastDeltaForFile;
|
|
53
|
+
exports.clearDeltas = clearDeltas;
|
|
54
|
+
exports.getDeltaStats = getDeltaStats;
|
|
55
|
+
exports.createAIDelta = createAIDelta;
|
|
56
|
+
exports.createHumanDelta = createHumanDelta;
|
|
57
|
+
const fs = __importStar(require("node:fs"));
|
|
58
|
+
const path = __importStar(require("node:path"));
|
|
59
|
+
const diff_1 = require("diff");
|
|
60
|
+
const storage_1 = require("./storage");
|
|
61
|
+
// =============================================================================
|
|
62
|
+
// Path Helpers
|
|
63
|
+
// =============================================================================
|
|
64
|
+
/**
|
|
65
|
+
* Get the deltas.jsonl path for a base SHA
|
|
66
|
+
*/
|
|
67
|
+
function getDeltasPath(repoRoot, baseSha) {
|
|
68
|
+
return path.join((0, storage_1.getAgentBlameGitDir)(repoRoot), "working", baseSha, "deltas.jsonl");
|
|
69
|
+
}
|
|
70
|
+
// =============================================================================
|
|
71
|
+
// Diff Computation
|
|
72
|
+
// =============================================================================
|
|
73
|
+
/**
|
|
74
|
+
* Compute unified diff hunks between two strings
|
|
75
|
+
* Returns array of DeltaHunk describing what changed
|
|
76
|
+
*/
|
|
77
|
+
function computeDiff(before, after) {
|
|
78
|
+
// Handle edge cases
|
|
79
|
+
if (before === after) {
|
|
80
|
+
return [];
|
|
81
|
+
}
|
|
82
|
+
// Use structuredPatch from 'diff' library
|
|
83
|
+
const patch = (0, diff_1.structuredPatch)("file", "file", before, after, "", "", {
|
|
84
|
+
context: 0, // No context lines needed
|
|
85
|
+
});
|
|
86
|
+
return patch.hunks.map((hunk) => ({
|
|
87
|
+
oldStart: hunk.oldStart,
|
|
88
|
+
oldCount: hunk.oldLines,
|
|
89
|
+
newStart: hunk.newStart,
|
|
90
|
+
newCount: hunk.newLines,
|
|
91
|
+
}));
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Compute diff and return detailed line information
|
|
95
|
+
* Useful for debugging and testing
|
|
96
|
+
*/
|
|
97
|
+
function computeDiffDetailed(before, after) {
|
|
98
|
+
const hunks = computeDiff(before, after);
|
|
99
|
+
let additions = 0;
|
|
100
|
+
let deletions = 0;
|
|
101
|
+
for (const hunk of hunks) {
|
|
102
|
+
additions += hunk.newCount;
|
|
103
|
+
deletions += hunk.oldCount;
|
|
104
|
+
}
|
|
105
|
+
return { hunks, additions, deletions };
|
|
106
|
+
}
|
|
107
|
+
// =============================================================================
|
|
108
|
+
// Delta Storage (Append-Only)
|
|
109
|
+
// =============================================================================
|
|
110
|
+
/**
|
|
111
|
+
* Append a delta to the working log
|
|
112
|
+
* Deltas are stored in JSONL format for append-only writes
|
|
113
|
+
*/
|
|
114
|
+
function appendDelta(repoRoot, baseSha, delta) {
|
|
115
|
+
(0, storage_1.ensureWorkingDir)(repoRoot, baseSha);
|
|
116
|
+
const deltasPath = getDeltasPath(repoRoot, baseSha);
|
|
117
|
+
const line = JSON.stringify(delta) + "\n";
|
|
118
|
+
fs.appendFileSync(deltasPath, line, "utf8");
|
|
119
|
+
if (process.env.AGENTBLAME_DEBUG) {
|
|
120
|
+
const author = delta.sessionId ? `AI:${delta.sessionId.slice(0, 8)}` : "human";
|
|
121
|
+
console.error(`[agentblame] Delta appended: ${delta.file} by ${author} (${delta.hunks.length} hunks)`);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Read all deltas for a base SHA
|
|
126
|
+
* Optionally filter by file path
|
|
127
|
+
*/
|
|
128
|
+
function readDeltas(repoRoot, baseSha, file) {
|
|
129
|
+
const deltasPath = getDeltasPath(repoRoot, baseSha);
|
|
130
|
+
if (!fs.existsSync(deltasPath)) {
|
|
131
|
+
return [];
|
|
132
|
+
}
|
|
133
|
+
const content = fs.readFileSync(deltasPath, "utf8");
|
|
134
|
+
const lines = content.trim().split("\n").filter(Boolean);
|
|
135
|
+
const deltas = [];
|
|
136
|
+
for (const line of lines) {
|
|
137
|
+
try {
|
|
138
|
+
const delta = JSON.parse(line);
|
|
139
|
+
// Filter by file if specified
|
|
140
|
+
if (file && delta.file !== file) {
|
|
141
|
+
continue;
|
|
142
|
+
}
|
|
143
|
+
deltas.push(delta);
|
|
144
|
+
}
|
|
145
|
+
catch {
|
|
146
|
+
// Skip malformed lines
|
|
147
|
+
if (process.env.AGENTBLAME_DEBUG) {
|
|
148
|
+
console.error(`[agentblame] Skipping malformed delta line: ${line}`);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
return deltas;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Read deltas for a specific file (more efficient than filtering all)
|
|
156
|
+
*/
|
|
157
|
+
function readDeltasForFile(repoRoot, baseSha, filePath) {
|
|
158
|
+
const deltasPath = getDeltasPath(repoRoot, baseSha);
|
|
159
|
+
if (!fs.existsSync(deltasPath)) {
|
|
160
|
+
if (process.env.AGENTBLAME_DEBUG) {
|
|
161
|
+
console.error(`[agentblame] readDeltasForFile: no deltas file at ${deltasPath}`);
|
|
162
|
+
}
|
|
163
|
+
return [];
|
|
164
|
+
}
|
|
165
|
+
const content = fs.readFileSync(deltasPath, "utf8");
|
|
166
|
+
const results = [];
|
|
167
|
+
// Quick string check before JSON parse
|
|
168
|
+
const filePattern = `"file":"${filePath}"`;
|
|
169
|
+
if (process.env.AGENTBLAME_DEBUG) {
|
|
170
|
+
console.error(`[agentblame] readDeltasForFile: searching for "${filePath}"`);
|
|
171
|
+
console.error(`[agentblame] pattern: ${filePattern}`);
|
|
172
|
+
}
|
|
173
|
+
for (const line of content.split("\n")) {
|
|
174
|
+
if (!line)
|
|
175
|
+
continue;
|
|
176
|
+
// Fast rejection: skip lines that don't contain the file path
|
|
177
|
+
if (!line.includes(filePattern)) {
|
|
178
|
+
if (process.env.AGENTBLAME_DEBUG && line.includes(filePath.split("/").pop() || "")) {
|
|
179
|
+
// Log if we're missing due to path format difference
|
|
180
|
+
try {
|
|
181
|
+
const delta = JSON.parse(line);
|
|
182
|
+
console.error(`[agentblame] MISMATCH: delta has "${delta.file}", looking for "${filePath}"`);
|
|
183
|
+
}
|
|
184
|
+
catch { }
|
|
185
|
+
}
|
|
186
|
+
continue;
|
|
187
|
+
}
|
|
188
|
+
try {
|
|
189
|
+
const delta = JSON.parse(line);
|
|
190
|
+
if (delta.file === filePath) {
|
|
191
|
+
results.push(delta);
|
|
192
|
+
if (process.env.AGENTBLAME_DEBUG) {
|
|
193
|
+
console.error(`[agentblame] FOUND: ${delta.sessionId?.slice(0, 8)} ${delta.file}`);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
catch {
|
|
198
|
+
// Skip malformed lines
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
if (process.env.AGENTBLAME_DEBUG) {
|
|
202
|
+
console.error(`[agentblame] total found: ${results.length}`);
|
|
203
|
+
}
|
|
204
|
+
return results;
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Get all unique files that have deltas
|
|
208
|
+
*/
|
|
209
|
+
function getFilesWithDeltas(repoRoot, baseSha) {
|
|
210
|
+
const deltas = readDeltas(repoRoot, baseSha);
|
|
211
|
+
const files = new Set();
|
|
212
|
+
for (const delta of deltas) {
|
|
213
|
+
files.add(delta.file);
|
|
214
|
+
}
|
|
215
|
+
return Array.from(files);
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Get the most recent AI delta for a file (if any)
|
|
219
|
+
* Used to detect if another AI tool recently edited a file
|
|
220
|
+
*/
|
|
221
|
+
function getLastAIDeltaForFile(repoRoot, baseSha, filePath) {
|
|
222
|
+
const deltas = readDeltasForFile(repoRoot, baseSha, filePath);
|
|
223
|
+
// Find the most recent AI delta (has sessionId)
|
|
224
|
+
for (let i = deltas.length - 1; i >= 0; i--) {
|
|
225
|
+
if (deltas[i].sessionId !== null) {
|
|
226
|
+
return deltas[i];
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
return null;
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Get the most recent delta for a file (AI or human)
|
|
233
|
+
* Used to get the latest known state of a file
|
|
234
|
+
*/
|
|
235
|
+
function getLastDeltaForFile(repoRoot, baseSha, filePath) {
|
|
236
|
+
const deltas = readDeltasForFile(repoRoot, baseSha, filePath);
|
|
237
|
+
return deltas.length > 0 ? deltas[deltas.length - 1] : null;
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Clear deltas for a base SHA (after commit)
|
|
241
|
+
*/
|
|
242
|
+
function clearDeltas(repoRoot, baseSha) {
|
|
243
|
+
const deltasPath = getDeltasPath(repoRoot, baseSha);
|
|
244
|
+
if (fs.existsSync(deltasPath)) {
|
|
245
|
+
fs.unlinkSync(deltasPath);
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Get delta statistics for a base SHA
|
|
250
|
+
*/
|
|
251
|
+
function getDeltaStats(repoRoot, baseSha) {
|
|
252
|
+
const deltas = readDeltas(repoRoot, baseSha);
|
|
253
|
+
const files = new Set();
|
|
254
|
+
let aiDeltas = 0;
|
|
255
|
+
let humanDeltas = 0;
|
|
256
|
+
let totalAdditions = 0;
|
|
257
|
+
let totalDeletions = 0;
|
|
258
|
+
for (const delta of deltas) {
|
|
259
|
+
files.add(delta.file);
|
|
260
|
+
if (delta.sessionId) {
|
|
261
|
+
aiDeltas++;
|
|
262
|
+
}
|
|
263
|
+
else {
|
|
264
|
+
humanDeltas++;
|
|
265
|
+
}
|
|
266
|
+
for (const hunk of delta.hunks) {
|
|
267
|
+
totalAdditions += hunk.newCount;
|
|
268
|
+
totalDeletions += hunk.oldCount;
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
return {
|
|
272
|
+
totalDeltas: deltas.length,
|
|
273
|
+
aiDeltas,
|
|
274
|
+
humanDeltas,
|
|
275
|
+
files: files.size,
|
|
276
|
+
totalAdditions,
|
|
277
|
+
totalDeletions,
|
|
278
|
+
};
|
|
279
|
+
}
|
|
280
|
+
// =============================================================================
|
|
281
|
+
// Delta Creation Helpers
|
|
282
|
+
// =============================================================================
|
|
283
|
+
/**
|
|
284
|
+
* Create an AI edit delta
|
|
285
|
+
*/
|
|
286
|
+
function createAIDelta(file, sessionId, promptId, hunks, afterBlob) {
|
|
287
|
+
return {
|
|
288
|
+
ts: new Date().toISOString(),
|
|
289
|
+
file,
|
|
290
|
+
sessionId,
|
|
291
|
+
promptId,
|
|
292
|
+
hunks,
|
|
293
|
+
afterBlob,
|
|
294
|
+
};
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Create a human edit delta
|
|
298
|
+
*/
|
|
299
|
+
function createHumanDelta(file, hunks, afterBlob) {
|
|
300
|
+
return {
|
|
301
|
+
ts: new Date().toISOString(),
|
|
302
|
+
file,
|
|
303
|
+
sessionId: null,
|
|
304
|
+
promptId: null,
|
|
305
|
+
hunks,
|
|
306
|
+
afterBlob,
|
|
307
|
+
};
|
|
308
|
+
}
|
|
309
|
+
//# sourceMappingURL=delta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delta.js","sourceRoot":"","sources":["../../src/lib/delta.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/git/gitBlame.js
CHANGED
|
@@ -69,16 +69,21 @@ function parseBlameOutput(filePath, output) {
|
|
|
69
69
|
content = rawLines[i].slice(1);
|
|
70
70
|
i++;
|
|
71
71
|
}
|
|
72
|
-
// Store commit info
|
|
73
|
-
if (!commits.has(sha)) {
|
|
72
|
+
// Store commit info (only set on first occurrence of each SHA)
|
|
73
|
+
if (!commits.has(sha) && author) {
|
|
74
74
|
commits.set(sha, { author, time: authorTime });
|
|
75
75
|
}
|
|
76
|
+
// Use stored commit info if author wasn't in this block (git blame only includes
|
|
77
|
+
// author info the first time each SHA appears in porcelain output)
|
|
78
|
+
const commitInfo = commits.get(sha);
|
|
79
|
+
const finalAuthor = author || commitInfo?.author || "";
|
|
80
|
+
const finalTime = author ? authorTime : (commitInfo?.time || authorTime);
|
|
76
81
|
lines.push({
|
|
77
82
|
lineNumber,
|
|
78
83
|
origLine,
|
|
79
84
|
sha,
|
|
80
|
-
author,
|
|
81
|
-
authorTime,
|
|
85
|
+
author: finalAuthor,
|
|
86
|
+
authorTime: finalTime,
|
|
82
87
|
content,
|
|
83
88
|
});
|
|
84
89
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitBlame.js","sourceRoot":"","sources":["../../../src/lib/git/gitBlame.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAsBH,4BAgBC;AApCD,qCAAkC;AAiBlC;;GAEG;AACI,KAAK,UAAU,QAAQ,CAC5B,QAAgB,EAChB,QAAgB;IAEhB,8CAA8C;IAC9C,MAAM,MAAM,GAAG,MAAM,IAAA,eAAM,EACzB,QAAQ,EACR,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,EAClC,KAAK,CACN,CAAC;IAEF,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,qBAAqB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,gBAAgB,CAAC,QAAgB,EAAE,MAAc;IACxD,MAAM,KAAK,GAAgB,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAG,IAAI,GAAG,EAA0C,CAAC;IAElE,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;YACtD,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,6DAA6D;QAC7D,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACrB,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxC,UAAU,EAAE,CAAC;QAEb,gEAAgE;QAChE,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;QAC5B,CAAC,EAAE,CAAC;QAEJ,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC/B,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACzB,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC3C,UAAU,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;YAC7D,CAAC;YACD,CAAC,EAAE,CAAC;QACN,CAAC;QAED,sCAAsC;QACtC,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACxD,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC/B,CAAC,EAAE,CAAC;QACN,CAAC;QAED
|
|
1
|
+
{"version":3,"file":"gitBlame.js","sourceRoot":"","sources":["../../../src/lib/git/gitBlame.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,13 +3,15 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Notes are pushed explicitly by the post-commit hook after processing,
|
|
5
5
|
* rather than via push refspec (which fails if notes don't exist).
|
|
6
|
+
*
|
|
7
|
+
* Fetch refspec is configured so notes are automatically fetched on git fetch/pull.
|
|
6
8
|
*/
|
|
7
9
|
/**
|
|
8
10
|
* Configure notes sync for a repository.
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
+
* Sets up fetch refspec so notes are automatically fetched on git fetch/pull.
|
|
12
|
+
* Push is handled explicitly by the post-commit hook.
|
|
11
13
|
*/
|
|
12
|
-
export declare function configureNotesSync(
|
|
14
|
+
export declare function configureNotesSync(repoRoot: string): Promise<boolean>;
|
|
13
15
|
/**
|
|
14
16
|
* Check if notes sync is already configured (legacy - always returns false)
|
|
15
17
|
*/
|
|
@@ -4,21 +4,56 @@
|
|
|
4
4
|
*
|
|
5
5
|
* Notes are pushed explicitly by the post-commit hook after processing,
|
|
6
6
|
* rather than via push refspec (which fails if notes don't exist).
|
|
7
|
+
*
|
|
8
|
+
* Fetch refspec is configured so notes are automatically fetched on git fetch/pull.
|
|
7
9
|
*/
|
|
8
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
11
|
exports.configureNotesSync = configureNotesSync;
|
|
10
12
|
exports.isNotesSyncConfigured = isNotesSyncConfigured;
|
|
11
13
|
exports.removeNotesSync = removeNotesSync;
|
|
12
14
|
const gitCli_1 = require("./gitCli");
|
|
15
|
+
const NOTES_FETCH_REFSPEC = "+refs/notes/agentblame:refs/notes/agentblame";
|
|
16
|
+
const ANALYTICS_FETCH_REFSPEC = "+refs/notes/agentblame-analytics:refs/notes/agentblame-analytics";
|
|
13
17
|
/**
|
|
14
18
|
* Configure notes sync for a repository.
|
|
15
|
-
*
|
|
16
|
-
*
|
|
19
|
+
* Sets up fetch refspec so notes are automatically fetched on git fetch/pull.
|
|
20
|
+
* Push is handled explicitly by the post-commit hook.
|
|
17
21
|
*/
|
|
18
|
-
async function configureNotesSync(
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
+
async function configureNotesSync(repoRoot) {
|
|
23
|
+
try {
|
|
24
|
+
// Check if fetch refspec already exists
|
|
25
|
+
const existingConfig = await (0, gitCli_1.runGit)(repoRoot, [
|
|
26
|
+
"config",
|
|
27
|
+
"--local",
|
|
28
|
+
"--get-all",
|
|
29
|
+
"remote.origin.fetch",
|
|
30
|
+
]);
|
|
31
|
+
const existingRefspecs = existingConfig.stdout.trim().split("\n");
|
|
32
|
+
// Add notes fetch refspec if not already configured
|
|
33
|
+
if (!existingRefspecs.includes(NOTES_FETCH_REFSPEC)) {
|
|
34
|
+
await (0, gitCli_1.runGit)(repoRoot, [
|
|
35
|
+
"config",
|
|
36
|
+
"--local",
|
|
37
|
+
"--add",
|
|
38
|
+
"remote.origin.fetch",
|
|
39
|
+
NOTES_FETCH_REFSPEC,
|
|
40
|
+
]);
|
|
41
|
+
}
|
|
42
|
+
// Add analytics fetch refspec if not already configured
|
|
43
|
+
if (!existingRefspecs.includes(ANALYTICS_FETCH_REFSPEC)) {
|
|
44
|
+
await (0, gitCli_1.runGit)(repoRoot, [
|
|
45
|
+
"config",
|
|
46
|
+
"--local",
|
|
47
|
+
"--add",
|
|
48
|
+
"remote.origin.fetch",
|
|
49
|
+
ANALYTICS_FETCH_REFSPEC,
|
|
50
|
+
]);
|
|
51
|
+
}
|
|
52
|
+
return true;
|
|
53
|
+
}
|
|
54
|
+
catch {
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
22
57
|
}
|
|
23
58
|
/**
|
|
24
59
|
* Check if notes sync is already configured (legacy - always returns false)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitConfig.js","sourceRoot":"","sources":["../../../src/lib/git/gitConfig.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"gitConfig.js","sourceRoot":"","sources":["../../../src/lib/git/gitConfig.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AAYH,gDAsCC;AAKD,sDAIC;AAMD,0CAwBC;AAvFD,qCAAkC;AAElC,MAAM,mBAAmB,GAAG,8CAA8C,CAAC;AAC3E,MAAM,uBAAuB,GAAG,kEAAkE,CAAC;AAEnG;;;;GAIG;AACI,KAAK,UAAU,kBAAkB,CAAC,QAAgB;IACvD,IAAI,CAAC;QACH,wCAAwC;QACxC,MAAM,cAAc,GAAG,MAAM,IAAA,eAAM,EAAC,QAAQ,EAAE;YAC5C,QAAQ;YACR,SAAS;YACT,WAAW;YACX,qBAAqB;SACtB,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAElE,oDAAoD;QACpD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACpD,MAAM,IAAA,eAAM,EAAC,QAAQ,EAAE;gBACrB,QAAQ;gBACR,SAAS;gBACT,OAAO;gBACP,qBAAqB;gBACrB,mBAAmB;aACpB,CAAC,CAAC;QACL,CAAC;QAED,wDAAwD;QACxD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;YACxD,MAAM,IAAA,eAAM,EAAC,QAAQ,EAAE;gBACrB,QAAQ;gBACR,SAAS;gBACT,OAAO;gBACP,qBAAqB;gBACrB,uBAAuB;aACxB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,qBAAqB,CACzC,SAAiB;IAEjB,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,eAAe,CAAC,QAAgB;IACpD,IAAI,CAAC;QACH,yDAAyD;QACzD,MAAM,IAAA,eAAM,EAAC,QAAQ,EAAE;YACrB,QAAQ;YACR,SAAS;YACT,aAAa;YACb,oBAAoB;YACpB,uBAAuB;SACxB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,wBAAwB;QAE5C,yCAAyC;QACzC,MAAM,IAAA,eAAM,EAAC,QAAQ,EAAE;YACrB,QAAQ;YACR,SAAS;YACT,aAAa;YACb,qBAAqB;YACrB,uBAAuB;SACxB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,wBAAwB;QAE5C,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
|
|
@@ -5,10 +5,22 @@
|
|
|
5
5
|
* Includes line-level hashing and move detection.
|
|
6
6
|
*/
|
|
7
7
|
import type { DiffHunk, DeletedBlock, MoveMapping } from "../types";
|
|
8
|
+
export interface DiffFile {
|
|
9
|
+
path: string;
|
|
10
|
+
status: "added" | "modified" | "deleted";
|
|
11
|
+
}
|
|
12
|
+
export interface CommitDiff {
|
|
13
|
+
files: DiffFile[];
|
|
14
|
+
raw: string;
|
|
15
|
+
}
|
|
8
16
|
/**
|
|
9
17
|
* Get the diff for a specific commit (compared to its parent)
|
|
10
18
|
*/
|
|
11
|
-
export declare function getCommitDiff(repoRoot: string, sha: string): Promise<
|
|
19
|
+
export declare function getCommitDiff(repoRoot: string, sha: string): Promise<CommitDiff>;
|
|
20
|
+
/**
|
|
21
|
+
* Get raw diff string (legacy compatibility)
|
|
22
|
+
*/
|
|
23
|
+
export declare function getCommitDiffRaw(repoRoot: string, sha: string): Promise<string>;
|
|
12
24
|
/**
|
|
13
25
|
* Get full diff including both additions and deletions (for move detection)
|
|
14
26
|
*/
|