MCPcopy Create free account
hub / github.com/modem-dev/hunk / metadataFingerprint

Function metadataFingerprint

src/ui/diff/useHighlightedDiff.ts:50–66  ·  view source on GitHub ↗

Build a fallback fingerprint from parsed metadata when raw patch text is unavailable.

(file: DiffFile)

Source from the content-addressed store, hash-verified

48
49/** Build a fallback fingerprint from parsed metadata when raw patch text is unavailable. */
50function metadataFingerprint(file: DiffFile) {
51 const hunkSummary = file.metadata.hunks
52 .map(
53 (hunk) =>
54 `${hunk.hunkSpecs ?? ""}:${hunk.deletionStart}:${hunk.deletionCount}:${hunk.additionStart}:${hunk.additionCount}:${hunk.hunkContent.length}`,
55 )
56 .join("|");
57
58 return [
59 file.metadata.name,
60 file.metadata.prevName ?? "",
61 file.metadata.type,
62 lineSetFingerprint(file.metadata.deletionLines),
63 lineSetFingerprint(file.metadata.additionLines),
64 hunkSummary,
65 ].join(":");
66}
67
68/** Content fingerprint from the diff patch. Changes whenever the underlying diff
69 * changes, allowing per-file cache invalidation without a global flush. */

Callers 1

patchFingerprintFunction · 0.85

Calls 1

lineSetFingerprintFunction · 0.85

Tested by

no test coverage detected