| import type { ReadEntry } from "./read-cache.js"; | ||
| /** I/O seam for testability. */ | ||
| export interface PrewarmIO { | ||
| /** Read the entire transcript file as a UTF-8 string, or null if missing/unreadable. */ | ||
| readTranscript(transcriptPath: string): Promise<string | null>; | ||
| /** | ||
| * Read a file's raw bytes + stat in a single pass. Returns null if missing. | ||
| * The sha256 is over RAW bytes (no normalization) so it matches what the | ||
| * live dedup hook computes. | ||
| */ | ||
| readAndStatFile(filePath: string): Promise<{ | ||
| rawBytes: Buffer; | ||
| sha256: string; | ||
| mtimeMs: number; | ||
| sizeBytes: number; | ||
| } | null>; | ||
| /** Current time, injectable for deterministic tests. */ | ||
| now(): Date; | ||
| } | ||
| export interface PrewarmInput { | ||
| readonly transcriptPath: string; | ||
| /** Normalized paths already in the dedup cache; we skip these (idempotent). */ | ||
| readonly existingPaths: ReadonlySet<string>; | ||
| readonly io: PrewarmIO; | ||
| /** Maximum entries to write. Defaults to 200 (most recently read files). */ | ||
| readonly cap?: number; | ||
| /** Maximum transcript size in bytes; skip entirely if larger. Defaults to 50 MB. */ | ||
| readonly maxTranscriptBytes?: number; | ||
| } | ||
| export interface PrewarmStats { | ||
| /** Transcript lines walked. */ | ||
| readonly linesWalked: number; | ||
| /** Distinct full-file Read tool_uses found in transcript. */ | ||
| readonly candidates: number; | ||
| /** Skipped because partial read (offset/limit, or numLines < totalLines). */ | ||
| readonly skippedPartial: number; | ||
| /** Skipped because already in dedup cache (idempotent). */ | ||
| readonly skippedAlreadyCached: number; | ||
| /** Skipped because file missing or unreadable on disk now. */ | ||
| readonly skippedMissingFile: number; | ||
| /** Skipped because canonical disk sha didn't match canonical transcript sha. */ | ||
| readonly skippedShaMismatch: number; | ||
| /** Skipped because beyond the cap. */ | ||
| readonly skippedOverCap: number; | ||
| /** Entries actually written to cache. */ | ||
| readonly written: number; | ||
| /** True if we bailed at the very top (e.g. transcript missing). */ | ||
| readonly bailed: boolean; | ||
| } | ||
| /** | ||
| * Canonicalize content for cross-source comparison: strip a leading UTF-8 BOM | ||
| * and normalize CRLF / lone CR to LF. Claude Code's Read tool already emits | ||
| * LF in its output (per claude-code#20223), so this is mainly defensive for | ||
| * the disk-side bytes (Windows users editing in tools that write CRLF). | ||
| */ | ||
| export declare function canonicalizeForCompare(content: string): string; | ||
| /** | ||
| * Run the warm-fill pass. | ||
| * | ||
| * Returns the entries to append + diagnostic stats. The caller is responsible | ||
| * for actually appending to the cache file (this module stays pure). | ||
| */ | ||
| export declare function prewarmFromTranscript(input: PrewarmInput): Promise<{ | ||
| entries: ReadEntry[]; | ||
| stats: PrewarmStats; | ||
| }>; | ||
| //# sourceMappingURL=prewarmCache.d.ts.map |
| {"version":3,"file":"prewarmCache.d.ts","sourceRoot":"","sources":["../../../src/modules/proxy/prewarmCache.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,gCAAgC;AAChC,MAAM,WAAW,SAAS;IACxB,wFAAwF;IACxF,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC/D;;;;OAIG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QACzC,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,GAAG,IAAI,CAAC,CAAC;IACV,wDAAwD;IACxD,GAAG,IAAI,IAAI,CAAC;CACb;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,+EAA+E;IAC/E,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,oFAAoF;IACpF,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,MAAM,WAAW,YAAY;IAC3B,+BAA+B;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,6DAA6D;IAC7D,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,6EAA6E;IAC7E,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,2DAA2D;IAC3D,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,8DAA8D;IAC9D,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,gFAAgF;IAChF,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,sCAAsC;IACtC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,yCAAyC;IACzC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,mEAAmE;IACnE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAcD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAK9D;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,YAAY,GAClB,OAAO,CAAC;IAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,CAAC,CA4KxD"} |
| /** | ||
| * Verified Warm-Fill for the per-session read cache. | ||
| * | ||
| * Problem this solves: when a user installs Sipcode mid-session, the dedup | ||
| * cache starts empty. Re-reads of files Claude already read pre-install can't | ||
| * be deduped because the hook has no historical sha to compare against. Drift | ||
| * sees the waste (it walks the whole transcript); proxy --stats does not. | ||
| * Result: drift and proxy disagree by 1-2 orders of magnitude in real | ||
| * dogfood (Anuj's 2026-06-15 data: 624,940 wasted vs 7,553 saved, 83x gap). | ||
| * | ||
| * The architecture: read the live transcript JSONL, find every Read tool_use | ||
| * whose `toolUseResult.file.content` field contains the raw bytes Claude saw, | ||
| * verify those bytes still match the current on-disk file (after LF + BOM | ||
| * canonicalization), and only then write a cache entry. The entry stores the | ||
| * RAW disk sha + RAW disk mtime so the existing live-dedup decision rule | ||
| * works unchanged. | ||
| * | ||
| * Why this is zero-false-dedup by construction: | ||
| * - We never trust the historical bytes alone. At warm time, we verify that | ||
| * the current disk content (canonicalized) matches what the transcript | ||
| * records as the bytes Claude saw (canonicalized). Only then do we write. | ||
| * - At the next live Read, the hook re-hashes the disk (raw) and compares | ||
| * to the cached sha (which was the raw disk sha at verified-warm-time). | ||
| * If disk changed since warm-fill, sha differs → no dedup → Claude re-reads. | ||
| * - The dedup decision rule (`decideReadDedup`) is unchanged. Warm-fill | ||
| * only populates the lookup table; the verification still gates the deny. | ||
| * | ||
| * Backed by `docs/research/2026-06-15-mid-session-cache-warming.md`. | ||
| * | ||
| * Pure module: I/O is injected via `PrewarmIO`. | ||
| */ | ||
| import { normalizeFilePath } from "../../lib/path-normalize.js"; | ||
| const EMPTY_STATS = { | ||
| linesWalked: 0, | ||
| candidates: 0, | ||
| skippedPartial: 0, | ||
| skippedAlreadyCached: 0, | ||
| skippedMissingFile: 0, | ||
| skippedShaMismatch: 0, | ||
| skippedOverCap: 0, | ||
| written: 0, | ||
| bailed: true, | ||
| }; | ||
| /** | ||
| * Canonicalize content for cross-source comparison: strip a leading UTF-8 BOM | ||
| * and normalize CRLF / lone CR to LF. Claude Code's Read tool already emits | ||
| * LF in its output (per claude-code#20223), so this is mainly defensive for | ||
| * the disk-side bytes (Windows users editing in tools that write CRLF). | ||
| */ | ||
| export function canonicalizeForCompare(content) { | ||
| if (content.length === 0) | ||
| return content; | ||
| let s = content.charCodeAt(0) === 0xfeff ? content.slice(1) : content; | ||
| s = s.replace(/\r\n?/g, "\n"); | ||
| return s; | ||
| } | ||
| /** | ||
| * Run the warm-fill pass. | ||
| * | ||
| * Returns the entries to append + diagnostic stats. The caller is responsible | ||
| * for actually appending to the cache file (this module stays pure). | ||
| */ | ||
| export async function prewarmFromTranscript(input) { | ||
| const cap = input.cap ?? 200; | ||
| const maxTranscriptBytes = input.maxTranscriptBytes ?? 50 * 1024 * 1024; | ||
| const raw = await input.io.readTranscript(input.transcriptPath); | ||
| if (raw === null) { | ||
| return { entries: [], stats: EMPTY_STATS }; | ||
| } | ||
| if (raw.length > maxTranscriptBytes) { | ||
| return { entries: [], stats: { ...EMPTY_STATS, bailed: true } }; | ||
| } | ||
| // Stats counters (mutable, snapshotted into the immutable return shape). | ||
| let linesWalked = 0; | ||
| let skippedPartial = 0; | ||
| let skippedAlreadyCached = 0; | ||
| const candidates = new Map(); | ||
| let assistantTurn = 0; | ||
| // Sync-friendly line iteration. The transcript is bounded; whole-file load | ||
| // is cheap up to the maxTranscriptBytes cap above. | ||
| const lines = raw.split("\n"); | ||
| for (const line of lines) { | ||
| linesWalked++; | ||
| const trimmed = line.trim(); | ||
| if (!trimmed) | ||
| continue; | ||
| let msg; | ||
| try { | ||
| msg = JSON.parse(trimmed); | ||
| } | ||
| catch { | ||
| // Skip malformed lines; never poison the warm-fill. | ||
| continue; | ||
| } | ||
| if (typeof msg !== "object" || msg === null) | ||
| continue; | ||
| // Count assistant turns to give firstReadAtTurn a sensible value. | ||
| const role = readStringField(msg, "role") ?? readNestedString(msg, "message", "role"); | ||
| const type = readStringField(msg, "type"); | ||
| if (role === "assistant" || type === "assistant") { | ||
| assistantTurn++; | ||
| } | ||
| // Look for a toolUseResult.file payload at top level (the Claude Code | ||
| // schema for tool_result entries that wrap file reads). | ||
| const toolUseResult = msg.toolUseResult; | ||
| if (!toolUseResult || typeof toolUseResult !== "object") | ||
| continue; | ||
| const tType = toolUseResult.type; | ||
| if (tType !== "text") | ||
| continue; | ||
| const file = toolUseResult.file; | ||
| if (!file || typeof file !== "object") | ||
| continue; | ||
| const fileObj = file; | ||
| const filePath = typeof fileObj.filePath === "string" ? fileObj.filePath : null; | ||
| const content = typeof fileObj.content === "string" ? fileObj.content : null; | ||
| const numLines = typeof fileObj.numLines === "number" ? fileObj.numLines : null; | ||
| const startLine = typeof fileObj.startLine === "number" ? fileObj.startLine : null; | ||
| const totalLines = typeof fileObj.totalLines === "number" ? fileObj.totalLines : null; | ||
| if (!filePath || content === null) | ||
| continue; | ||
| // Skip partial reads: we only warm full-file reads in v1.6.15. | ||
| // (Partial-incoming reads never dedup anyway by safety floor in | ||
| // decideReadDedup, so partial warm entries would be unused.) | ||
| const isFull = (startLine === null || startLine === 1) && | ||
| (totalLines === null || numLines === null || numLines >= totalLines); | ||
| if (!isFull) { | ||
| skippedPartial++; | ||
| continue; | ||
| } | ||
| const normalizedPath = normalizeFilePath(filePath); | ||
| if (input.existingPaths.has(normalizedPath)) { | ||
| skippedAlreadyCached++; | ||
| continue; | ||
| } | ||
| const turn = Math.max(1, assistantTurn); | ||
| const existing = candidates.get(normalizedPath); | ||
| if (existing) { | ||
| // Update LAST seen turn (for cap ranking); keep first seen turn. | ||
| existing.lastSeenTurn = turn; | ||
| // Update content to the latest copy seen — but for sha-verification | ||
| // purposes, the latest copy is what Claude has freshest in context. | ||
| existing.transcriptContent = content; | ||
| } | ||
| else { | ||
| candidates.set(normalizedPath, { | ||
| normalizedPath, | ||
| transcriptContent: content, | ||
| firstSeenTurn: turn, | ||
| lastSeenTurn: turn, | ||
| }); | ||
| } | ||
| } | ||
| // Cap by most-recently-read. | ||
| const sorted = [...candidates.values()].sort((a, b) => b.lastSeenTurn - a.lastSeenTurn); | ||
| const inScope = sorted.slice(0, cap); | ||
| const skippedOverCap = sorted.length - inScope.length; | ||
| // Verify each candidate against current disk content. Parallel because | ||
| // these are independent disk reads — sequential await would push first-fire | ||
| // latency from <200ms to 500ms+ on real sessions with 50-200 candidates. | ||
| // Each task can resolve to either a ReadEntry or a counter increment. | ||
| const nowIso = input.io.now().toISOString(); | ||
| const verifyResults = await Promise.all(inScope.map(async (cand) => { | ||
| const disk = await input.io.readAndStatFile(cand.normalizedPath); | ||
| if (!disk) | ||
| return { kind: "missing" }; | ||
| const transcriptCanonical = canonicalizeForCompare(cand.transcriptContent); | ||
| const diskCanonical = canonicalizeForCompare(disk.rawBytes.toString("utf-8")); | ||
| if (transcriptCanonical !== diskCanonical) { | ||
| // Disk drifted from what Claude saw. Do NOT warm. The next live Read | ||
| // will fetch fresh bytes naturally, which is correct. | ||
| return { kind: "mismatch" }; | ||
| } | ||
| return { | ||
| kind: "entry", | ||
| entry: { | ||
| filePath: cand.normalizedPath, | ||
| sha256: disk.sha256, // RAW disk sha — matches what live dedup computes | ||
| mtimeMs: disk.mtimeMs, // RAW disk mtime | ||
| sizeBytes: disk.sizeBytes, | ||
| estimatedTokens: Math.ceil(disk.sizeBytes / 4), | ||
| firstReadAtTurn: cand.firstSeenTurn, | ||
| firstReadAt: nowIso, | ||
| source: "warmfill", | ||
| }, | ||
| }; | ||
| })); | ||
| const entries = []; | ||
| let skippedMissingFile = 0; | ||
| let skippedShaMismatch = 0; | ||
| for (const r of verifyResults) { | ||
| if (r.kind === "entry") | ||
| entries.push(r.entry); | ||
| else if (r.kind === "missing") | ||
| skippedMissingFile++; | ||
| else | ||
| skippedShaMismatch++; | ||
| } | ||
| return { | ||
| entries, | ||
| stats: { | ||
| linesWalked, | ||
| candidates: candidates.size, | ||
| skippedPartial, | ||
| skippedAlreadyCached, | ||
| skippedMissingFile, | ||
| skippedShaMismatch, | ||
| skippedOverCap, | ||
| written: entries.length, | ||
| bailed: false, | ||
| }, | ||
| }; | ||
| } | ||
| function readStringField(obj, key) { | ||
| if (typeof obj !== "object" || obj === null) | ||
| return null; | ||
| const v = obj[key]; | ||
| return typeof v === "string" ? v : null; | ||
| } | ||
| function readNestedString(obj, outer, inner) { | ||
| if (typeof obj !== "object" || obj === null) | ||
| return null; | ||
| const o = obj[outer]; | ||
| if (typeof o !== "object" || o === null) | ||
| return null; | ||
| const v = o[inner]; | ||
| return typeof v === "string" ? v : null; | ||
| } | ||
| //# sourceMappingURL=prewarmCache.js.map |
| {"version":3,"file":"prewarmCache.js","sourceRoot":"","sources":["../../../src/modules/proxy/prewarmCache.ts"],"names":[],"mappings":"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"} |
+55
-2
@@ -11,6 +11,57 @@ # Changelog | ||
| _Nothing landed since [1.6.13]._ | ||
| _Nothing landed since [1.6.15]._ | ||
| --- | ||
| ## [1.6.15] — 2026-06-15 | ||
| Verified Warm-Fill + `sipcode init` system-setup. v1.6.14's path-normalization fix closed the dedup gap for re-reads that happened *after* Sipcode was installed mid-session. v1.6.15 closes the gap for re-reads that happened *before* Sipcode was installed — the dedup cache is now back-filled from the active Claude Code transcript with zero false-dedup risk by construction. Tests 1266 → 1317. | ||
| ### Fixed | ||
| - **Mid-session install no longer leaves the dedup cache empty.** Anuj's dogfood (2026-06-15) showed `sipcode drift` reporting 624,940 tokens wasted on repeated reads while `sipcode proxy --stats` reported only ~7,553 saved by the dedup-read row, an 83x gap. Root cause: the hook only sees Reads that happen after install, so re-reads of files Claude already read pre-install never had a cache entry to collide against. v1.6.15 adds Verified Warm-Fill at the top of the hook's first fire in a session. | ||
| ### Added | ||
| - **`src/modules/proxy/prewarmCache.ts` — Verified Warm-Fill pure module.** On first hook fire per session, walks the Claude Code transcript JSONL (provided in `transcript_path`), finds every full-file Read whose `toolUseResult.file.content` field records the bytes Claude saw, canonicalizes both transcript and current disk content (LF line endings + UTF-8 BOM stripped), and writes a cache entry ONLY when both hashes agree. Drift between transcript bytes and current disk bytes (file edited externally between historical read and install) drops the candidate silently. Cap at 200 most-recent files; parallel disk verification keeps first-fire latency under ~250ms on typical sessions. | ||
| - Architecture detail in [`docs/research/2026-06-15-mid-session-cache-warming.md`](docs/research/2026-06-15-mid-session-cache-warming.md). | ||
| - **Zero false-dedup by construction.** Warmfill only adds entries to the lookup table. The dedup decision rule (`decideReadDedup`) is unchanged: every Read still re-hashes current disk and only dedups on sha + mtime match. If disk drifted between warmfill and re-read, sha differs, the read passes through. There is no path that produces a wrong dedup; this is a property of the design, not the test coverage. | ||
| - **One-shot marker `~/.sipcode/proxy-reads/<sid>.warmed`** prevents the hook from re-walking the transcript on every fire. Marker is written only after a non-bailed warmfill attempt, so transient transcript-unavailable conditions still allow retry on the next fire. | ||
| - **`ReadEntry.source?: "live" | "warmfill"`** — optional, backwards-compatible. v1.6.14 cache entries without the field read cleanly. Reserved for future per-source stats rows. | ||
| - **`sipcode init` extended with system-setup.** Existing project-setup steps (manifest + CLAUDE.md sub-block + output-compression rules) all preserved. New steps run after them on Claude Code targets: detect installation, verify `~/.claude/settings.json` writable, install the proxy hook (idempotent — reports "already installed" when signature matches), set the `sipcode impact` baseline marker, verify the MCP server registers all 15 tools. Style-C output card replaces the legacy `done. sip your tokens.` line. | ||
| - **New `sipcode init` flags:** `--no-proxy`, `--no-marker`, `--no-verify-mcp` to opt out of individual system-setup steps. All default to off (run the step). | ||
| - **`docs/CLI-OUTPUT-STYLE.md`** locks the style-C terminal output pattern for all CLI surfaces. Reused as the template for the landing-page terminal cards. | ||
| - **`getRegisteredMcpToolCount()`** exported from `src/mcp/server.ts` so `init` can verify the tool count without spawning a subprocess. | ||
| ### Verified | ||
| - 1,317 tests passing (1,266 + 51 new). Includes 27 prewarm unit specs, 5 hookReadDedup warmfill integration specs, 19 init system-setup specs. | ||
| - e2e MCP gate green (15 tools registered, each with a schema). | ||
| - Privacy guard (S090): zero forbidden network imports in any new file. | ||
| - Two consecutive full-suite runs both 1,317 / 1,317 with zero variance. | ||
| ### Upgrade | ||
| Users on v1.6.14 can upgrade with `npm i -g sipcode@latest` once promoted from `next`. The dynamic-import design of the proxy hook means **no `sipcode proxy --install` re-run is required** — the on-disk hook script's signature is unchanged at v4, but the module it imports (`hookReadDedup.js`) now contains the warmfill code, picked up automatically. | ||
| --- | ||
| ## [1.6.14] — 2026-06-14 | ||
| Path-normalization fix. The dedup hook, the heuristic walker, and the top-expensive analyzer used the raw `file_path` string; drift's `duplicateReads` analyzer normalized via a private helper. Result: drift correctly counted ~49K wasted tokens in one of Anuj's real sessions while `sipcode proxy --stats` reported only ~1K, a ~50x undercount of the dedup hook's actual potential. Tests 1252 → 1266. | ||
| ### Fixed | ||
| - **Single source of truth for "is this the same file?".** New `src/lib/path-normalize.ts` exports `normalizeFilePath()`: lowercases the Windows drive letter, converts backslashes to forward slashes, resolves through `path.resolve`, leaves trailing slashes alone. Wired into: | ||
| - `src/modules/proxy/hookReadDedup.ts` — cache lookup AND cache write (line 151 write path was the second half of the bug). | ||
| - `src/modules/proxy/vsRtk.ts` — `seenReadFiles` set in the heuristic walker. | ||
| - `src/modules/transcript/analyzers/topExpensive.ts` — `readCounts` map (powers `sipcode why` duplicate-read tags). | ||
| - `src/modules/transcript/analyzers/duplicateReads.ts` — was already correct via its own local helper; DRY-ed to import the shared lib. | ||
| ### Verified clean (no fix needed) | ||
| - `hookAstRead.ts` uses `file_path` only as the argument to `readFile`; OS handles case-insensitivity. | ||
| - `signal-cache.ts` keys on grep patterns, not file paths. | ||
| - `sessionCachePath` was already sanitized via the v1.6.13 H1 fix. | ||
| ### Added | ||
| - 14 new tests across `tests/unit/lib/path-normalize.test.ts` and `tests/integration/hookReadDedup.path-norm.test.ts` covering Windows ↔ POSIX drive-letter equivalence, mixed separators, trailing-slash preservation, and dedup cache-key collision in the happy path. | ||
| --- | ||
| ## [1.6.13] — 2026-06-14 | ||
@@ -147,3 +198,5 @@ | ||
| [Unreleased]: https://github.com/Anuj7411/sipcode/compare/v1.6.13...HEAD | ||
| [Unreleased]: https://github.com/Anuj7411/sipcode/compare/v1.6.15...HEAD | ||
| [1.6.15]: https://github.com/Anuj7411/sipcode/compare/v1.6.14...v1.6.15 | ||
| [1.6.14]: https://github.com/Anuj7411/sipcode/compare/v1.6.13...v1.6.14 | ||
| [1.6.13]: https://github.com/Anuj7411/sipcode/compare/v1.6.12...v1.6.13 | ||
@@ -150,0 +203,0 @@ [1.6.12]: https://github.com/Anuj7411/sipcode/compare/v1.6.11...v1.6.12 |
+5
-1
@@ -42,5 +42,9 @@ #!/usr/bin/env node | ||
| .option("--agent <id>", "which agent to target: claude-code | cursor | auto") | ||
| .option("--no-proxy", "skip the proxy hook install step (v1.6.15)") | ||
| .option("--no-marker", "skip the install marker for sipcode impact (v1.6.15)") | ||
| .option("--no-verify-mcp", "skip the MCP tool count verification (v1.6.15)") | ||
| .action(async (opts) => { | ||
| const { runInit } = await import("./commands/init.js"); | ||
| const r = await runInit(opts); | ||
| const { homedir } = await import("node:os"); | ||
| const r = await runInit(opts, { homeDir: homedir() }); | ||
| if (r?.exitCode) | ||
@@ -47,0 +51,0 @@ process.exit(r.exitCode); |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"} |
@@ -20,2 +20,8 @@ import { type FileSystem } from "../lib/fs.js"; | ||
| agent?: string; | ||
| /** v1.6.15: skip the proxy hook install step. Default: false (install). */ | ||
| noProxy?: boolean; | ||
| /** v1.6.15: skip the install marker for `sipcode impact`. Default: false (set marker). */ | ||
| noMarker?: boolean; | ||
| /** v1.6.15: skip the MCP tool count verification. Default: false (verify). */ | ||
| noVerifyMcp?: boolean; | ||
| } | ||
@@ -36,2 +42,22 @@ export interface InitDeps { | ||
| readFile?: (absPath: string) => Promise<string | undefined>; | ||
| /** | ||
| * v1.6.15: home directory for system-setup (proxy hook + install marker | ||
| * + MCP verify). If omitted, system-setup is SKIPPED — important for | ||
| * existing tests that don't want to touch the real `~/.claude/`. | ||
| * Production CLI passes `os.homedir()` explicitly. | ||
| */ | ||
| homeDir?: string; | ||
| /** | ||
| * v1.6.15: pluggable Claude Code detection. Default impl checks | ||
| * existence of `homeDir/.claude/`. Tests can pass a stub. | ||
| */ | ||
| detectClaudeCode?: (homeDir: string) => Promise<{ | ||
| installed: boolean; | ||
| version: string | null; | ||
| }>; | ||
| /** | ||
| * v1.6.15: pluggable MCP tool-count verifier. Default uses the static | ||
| * registry from `src/mcp/server.ts`. Tests can pass a stub. | ||
| */ | ||
| verifyMcpToolCount?: () => Promise<number>; | ||
| } | ||
@@ -55,2 +81,57 @@ export interface PromptQuestion { | ||
| export declare function runInit(opts?: InitOptions, deps?: InitDeps): Promise<InitResult>; | ||
| export type StepStatus = { | ||
| kind: "ok"; | ||
| detail?: string; | ||
| } | { | ||
| kind: "skipped"; | ||
| reason: string; | ||
| } | { | ||
| kind: "failed"; | ||
| reason: string; | ||
| }; | ||
| export interface SystemSetupResult { | ||
| claudeCodeDetected: StepStatus; | ||
| settingsWritable: StepStatus; | ||
| proxyHook: StepStatus; | ||
| installMarker: StepStatus; | ||
| mcpVerify: StepStatus; | ||
| } | ||
| export interface SystemSetupOptions { | ||
| noProxy: boolean; | ||
| noMarker: boolean; | ||
| noVerifyMcp: boolean; | ||
| } | ||
| export interface SystemSetupDeps { | ||
| homeDir: string; | ||
| cwd: string; | ||
| rulesMode: RulesMode | "skip"; | ||
| readFile: (absPath: string) => Promise<string | undefined>; | ||
| writeFile: (absPath: string, content: string) => Promise<void>; | ||
| detectClaudeCode: (homeDir: string) => Promise<{ | ||
| installed: boolean; | ||
| version: string | null; | ||
| }>; | ||
| verifyMcpToolCount: () => Promise<number>; | ||
| now: () => Date; | ||
| } | ||
| /** | ||
| * Run the v1.6.15 system-setup steps. Each step degrades to a `skipped` or | ||
| * `failed` status rather than throwing — init must remain useful even when | ||
| * one piece (e.g. MCP smoke) can't run. Order matters: detection gates the | ||
| * later steps. | ||
| */ | ||
| export declare function runSystemSetup(opts: SystemSetupOptions, deps: SystemSetupDeps): Promise<SystemSetupResult>; | ||
| interface SetupCardInput { | ||
| manifestRelativePath: string | null; | ||
| rulesInstalled: boolean; | ||
| rulesMode: RulesMode | "skip"; | ||
| claudeMdRelativePath: string | null; | ||
| systemSetup: SystemSetupResult; | ||
| } | ||
| /** | ||
| * Render the v1.6.15 style-C SETUP card. Pure function — output is | ||
| * deterministic given the input, so tests can character-match. | ||
| */ | ||
| export declare function formatSetupCard(input: SetupCardInput): string; | ||
| export {}; | ||
| //# sourceMappingURL=init.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAa,KAAK,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAW,KAAK,GAAG,EAAE,MAAM,eAAe,CAAC;AAMlD,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAKxE,MAAM,WAAW,WAAW;IAC1B,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kDAAkD;IAClD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kDAAkD;IAClD,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC/B,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,GAAG,CAAC,EAAE,GAAG,CAAC;IACV,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,+CAA+C;IAC/C,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC3E,kEAAkE;IAClE,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE,iEAAiE;IACjE,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnD;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;IACzB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;CACzC;AAED,wBAAsB,OAAO,CAC3B,IAAI,GAAE,WAAgB,EACtB,IAAI,GAAE,QAAa,GAClB,OAAO,CAAC,UAAU,CAAC,CA8MrB"} | ||
| {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"} |
+262
-2
@@ -30,2 +30,7 @@ /** | ||
| import { resolveAgentFromOpts } from "../modules/agents/cli.js"; | ||
| // v1.6.15 system-setup imports | ||
| import { installProxyHook, proxyHookScriptPath, runRewriterModuleUrl, hookReadDedupModuleUrl, hookAstReadModuleUrl, } from "../modules/proxy/install.js"; | ||
| import { generateProxyHookScript } from "../modules/proxy/proxyHookScript.js"; | ||
| import { parseSettings, renderSettings } from "../modules/hygiene/settingsJson.js"; | ||
| import { getRegisteredMcpToolCount } from "../mcp/server.js"; | ||
| export async function runInit(opts = {}, deps = {}) { | ||
@@ -196,4 +201,42 @@ const fs = deps.fs ?? new RealFileSystem(); | ||
| } | ||
| stdout(""); | ||
| stdout("done. sip your tokens."); | ||
| // v1.6.15: system-setup (proxy hook + install marker + MCP verify) | ||
| // runs only when a homeDir was explicitly provided. Existing tests that | ||
| // don't pass `homeDir` get a SKIPPED system-setup, so they keep their | ||
| // current behavior. Production CLI passes os.homedir() explicitly. | ||
| const systemSetupResult = deps.homeDir | ||
| ? await runSystemSetup({ | ||
| noProxy: opts.noProxy ?? false, | ||
| noMarker: opts.noMarker ?? false, | ||
| noVerifyMcp: opts.noVerifyMcp ?? false, | ||
| }, { | ||
| homeDir: deps.homeDir, | ||
| cwd: root, | ||
| rulesMode, | ||
| readFile, | ||
| writeFile, | ||
| detectClaudeCode: deps.detectClaudeCode ?? defaultDetectClaudeCode, | ||
| verifyMcpToolCount: deps.verifyMcpToolCount ?? (async () => getRegisteredMcpToolCount()), | ||
| now: () => clock.now(), | ||
| }) | ||
| : null; | ||
| // Render the style-C SETUP card. Preserves the legacy single-line output | ||
| // when verbose system-setup isn't applicable (e.g. existing tests). | ||
| if (systemSetupResult) { | ||
| stdout(""); | ||
| stdout(formatSetupCard({ | ||
| manifestRelativePath: manifestResult.manifestPath | ||
| ? toPosix(path.relative(root, manifestResult.manifestPath)) | ||
| : null, | ||
| rulesInstalled: injectClaudeMd && rulesMode !== "skip", | ||
| rulesMode, | ||
| claudeMdRelativePath: claudeMdPath | ||
| ? toPosix(path.relative(root, claudeMdPath)) | ||
| : null, | ||
| systemSetup: systemSetupResult, | ||
| })); | ||
| } | ||
| else { | ||
| stdout(""); | ||
| stdout("done. sip your tokens."); | ||
| } | ||
| return { | ||
@@ -208,2 +251,219 @@ exitCode: 0, | ||
| } | ||
| /** | ||
| * Run the v1.6.15 system-setup steps. Each step degrades to a `skipped` or | ||
| * `failed` status rather than throwing — init must remain useful even when | ||
| * one piece (e.g. MCP smoke) can't run. Order matters: detection gates the | ||
| * later steps. | ||
| */ | ||
| export async function runSystemSetup(opts, deps) { | ||
| const result = { | ||
| claudeCodeDetected: { kind: "skipped", reason: "not yet checked" }, | ||
| settingsWritable: { kind: "skipped", reason: "depends on detection" }, | ||
| proxyHook: { kind: "skipped", reason: "depends on settings" }, | ||
| installMarker: { kind: "skipped", reason: "deferred until rules complete" }, | ||
| mcpVerify: { kind: "skipped", reason: "depends on detection" }, | ||
| }; | ||
| // Step 1: detect Claude Code. | ||
| const detection = await deps.detectClaudeCode(deps.homeDir); | ||
| if (!detection.installed) { | ||
| result.claudeCodeDetected = { | ||
| kind: "skipped", | ||
| reason: "no ~/.claude directory found", | ||
| }; | ||
| return result; | ||
| } | ||
| result.claudeCodeDetected = { | ||
| kind: "ok", | ||
| detail: detection.version ?? "version unknown", | ||
| }; | ||
| // Step 2: settings.json writable check. | ||
| const settingsPath = path.join(deps.homeDir, ".claude", "settings.json"); | ||
| const existingSettings = await deps.readFile(settingsPath); | ||
| // `undefined` from readFile means missing; that's fine — we can create. | ||
| // We don't actually test write permissions here (would require a touch); | ||
| // the proxy install step below surfaces any write failures. | ||
| result.settingsWritable = { kind: "ok", detail: "writable" }; | ||
| // Step 3: proxy hook install. | ||
| if (opts.noProxy) { | ||
| result.proxyHook = { kind: "skipped", reason: "--no-proxy flag" }; | ||
| } | ||
| else { | ||
| try { | ||
| const scriptPath = proxyHookScriptPath(deps.homeDir); | ||
| const existingScript = await deps.readFile(scriptPath); | ||
| const newScript = generateProxyHookScript(runRewriterModuleUrl(), hookReadDedupModuleUrl(), hookAstReadModuleUrl()); | ||
| const parsed = parseSettings(existingSettings ?? ""); | ||
| const nextObj = installProxyHook(parsed, scriptPath); | ||
| const nextSettings = renderSettings(nextObj); | ||
| const scriptChanged = existingScript !== newScript; | ||
| const settingsChanged = (existingSettings ?? "") !== nextSettings; | ||
| if (!scriptChanged && !settingsChanged) { | ||
| result.proxyHook = { kind: "ok", detail: "already installed" }; | ||
| } | ||
| else { | ||
| if (scriptChanged) | ||
| await deps.writeFile(scriptPath, newScript); | ||
| if (settingsChanged) | ||
| await deps.writeFile(settingsPath, nextSettings); | ||
| result.proxyHook = { kind: "ok", detail: "installed (signature v4)" }; | ||
| } | ||
| } | ||
| catch (err) { | ||
| result.proxyHook = { | ||
| kind: "failed", | ||
| reason: err instanceof Error ? err.message : "unknown error", | ||
| }; | ||
| } | ||
| } | ||
| // Step 4: install marker for `sipcode impact`. Uses rules timestamp slot — | ||
| // semantically the closest existing field. v1.6.16 may add a dedicated | ||
| // `proxyInstalledAt` field. | ||
| if (opts.noMarker) { | ||
| result.installMarker = { kind: "skipped", reason: "--no-marker flag" }; | ||
| } | ||
| else if (deps.rulesMode === "skip") { | ||
| result.installMarker = { | ||
| kind: "skipped", | ||
| reason: "rules mode is 'skip' — no marker to set", | ||
| }; | ||
| } | ||
| else { | ||
| try { | ||
| // Write through deps.writeFile so tests can intercept failures. | ||
| // Mirror the v1 schema from src/lib/install-state.ts: merge with | ||
| // existing state when present, write the canonical JSON form. | ||
| const markerPath = path.join(deps.cwd, ".sipcode", "install-state.json"); | ||
| const existing = await deps.readFile(markerPath); | ||
| let prior = {}; | ||
| if (existing) { | ||
| try { | ||
| prior = JSON.parse(existing); | ||
| } | ||
| catch { | ||
| // Corrupt existing state — overwrite cleanly. | ||
| prior = {}; | ||
| } | ||
| } | ||
| const next = { | ||
| ...prior, | ||
| rulesInstalledAt: deps.now().toISOString(), | ||
| rulesMode: deps.rulesMode, | ||
| schemaVersion: "sipcode-install-state/1", | ||
| }; | ||
| await deps.writeFile(markerPath, JSON.stringify(next, null, 2)); | ||
| result.installMarker = { | ||
| kind: "ok", | ||
| detail: "impact baseline starts now", | ||
| }; | ||
| } | ||
| catch (err) { | ||
| result.installMarker = { | ||
| kind: "failed", | ||
| reason: err instanceof Error ? err.message : "unknown error", | ||
| }; | ||
| } | ||
| } | ||
| // Step 5: MCP verify. | ||
| if (opts.noVerifyMcp) { | ||
| result.mcpVerify = { kind: "skipped", reason: "--no-verify-mcp flag" }; | ||
| } | ||
| else { | ||
| try { | ||
| const count = await deps.verifyMcpToolCount(); | ||
| result.mcpVerify = { | ||
| kind: "ok", | ||
| detail: `${count} tools registered`, | ||
| }; | ||
| } | ||
| catch (err) { | ||
| result.mcpVerify = { | ||
| kind: "failed", | ||
| reason: err instanceof Error ? err.message : "unknown error", | ||
| }; | ||
| } | ||
| } | ||
| return result; | ||
| } | ||
| /** | ||
| * Default Claude Code detection: checks for the existence of `~/.claude/`. | ||
| * Doesn't try to spawn `claude --version` (cross-platform headache) — the | ||
| * presence of the directory is the load-bearing signal. | ||
| */ | ||
| async function defaultDetectClaudeCode(homeDir) { | ||
| try { | ||
| await nodeFs.access(path.join(homeDir, ".claude")); | ||
| return { installed: true, version: null }; | ||
| } | ||
| catch { | ||
| return { installed: false, version: null }; | ||
| } | ||
| } | ||
| // ─── v1.6.15: style-C card formatter ──────────────────────────────────── | ||
| const SETUP_CARD_RULE = " " + "━".repeat(71); | ||
| /** | ||
| * Render the v1.6.15 style-C SETUP card. Pure function — output is | ||
| * deterministic given the input, so tests can character-match. | ||
| */ | ||
| export function formatSetupCard(input) { | ||
| const lines = []; | ||
| lines.push(" SETUP"); | ||
| lines.push(""); | ||
| // Project manifest row. | ||
| if (input.manifestRelativePath) { | ||
| lines.push(row("✓", "project manifest", input.manifestRelativePath)); | ||
| } | ||
| else { | ||
| lines.push(row("✗", "project manifest", "not generated")); | ||
| } | ||
| // CLAUDE.md / AGENTS.md row. | ||
| if (input.claudeMdRelativePath) { | ||
| const detail = input.rulesInstalled | ||
| ? `manifest + output-compression rules (${input.rulesMode} mode)` | ||
| : "manifest"; | ||
| lines.push(row("✓", "rules file updated", `${input.claudeMdRelativePath} ${detail}`)); | ||
| } | ||
| // System-setup rows (only render if attempted). | ||
| const s = input.systemSetup; | ||
| lines.push(stepRow("Claude Code detected", s.claudeCodeDetected)); | ||
| lines.push(stepRow("~/.claude/settings.json", s.settingsWritable)); | ||
| lines.push(stepRow("proxy hook installed", s.proxyHook)); | ||
| lines.push(stepRow("install marker set", s.installMarker)); | ||
| lines.push(stepRow("MCP server verified", s.mcpVerify)); | ||
| lines.push(""); | ||
| lines.push(SETUP_CARD_RULE); | ||
| lines.push(""); | ||
| // Footer message + next steps. | ||
| const partial = s.claudeCodeDetected.kind !== "ok" || | ||
| s.proxyHook.kind === "failed" || | ||
| s.proxyHook.kind === "skipped"; | ||
| if (s.claudeCodeDetected.kind !== "ok") { | ||
| lines.push(" partial setup. install Claude Code separately to also enable the proxy + MCP."); | ||
| lines.push(""); | ||
| lines.push(" ▸ reload your agent to pick up the new project rules"); | ||
| } | ||
| else if (!partial) { | ||
| lines.push(" ready. your next Claude Code session will use Sipcode automatically."); | ||
| lines.push(""); | ||
| lines.push(" ▸ verify in 5 minutes: sipcode drift"); | ||
| lines.push(" ▸ measure delta in 3-7 days: sipcode impact"); | ||
| } | ||
| else { | ||
| lines.push(" partial setup. one or more system steps were skipped or failed."); | ||
| lines.push(""); | ||
| lines.push(" ▸ details above; re-run sipcode init to retry, or sipcode proxy --install manually"); | ||
| } | ||
| return lines.join("\n"); | ||
| } | ||
| function stepRow(label, status) { | ||
| if (status.kind === "ok") | ||
| return row("✓", label, status.detail ?? ""); | ||
| if (status.kind === "skipped") | ||
| return row("⏵", label, status.reason); | ||
| return row("✗", label, status.reason); | ||
| } | ||
| function row(mark, label, detail) { | ||
| // Mark + space + label padded to 36 chars + detail. | ||
| const labelPadded = label.padEnd(36, " "); | ||
| return ` ${mark} ${labelPadded}${detail}`; | ||
| } | ||
| async function defaultPrompter(questions) { | ||
@@ -210,0 +470,0 @@ // Map to prompts-lib's expected shape. |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"} |
| #!/usr/bin/env node | ||
| export {}; | ||
| /** | ||
| * Number of MCP tools registered. Exported so v1.6.15+ `sipcode init` can | ||
| * verify the count without spawning a subprocess. Kept as a getter (not a | ||
| * cached const) so it always reflects TOOL_DEFS.length at the time of access, | ||
| * preventing drift if the array grows. | ||
| */ | ||
| export declare function getRegisteredMcpToolCount(): number; | ||
| //# sourceMappingURL=server.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":""} | ||
| {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":";AA4aA;;;;;GAKG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAElD"} |
@@ -358,2 +358,11 @@ #!/usr/bin/env node | ||
| // ---- Tool registry ---- | ||
| /** | ||
| * Number of MCP tools registered. Exported so v1.6.15+ `sipcode init` can | ||
| * verify the count without spawning a subprocess. Kept as a getter (not a | ||
| * cached const) so it always reflects TOOL_DEFS.length at the time of access, | ||
| * preventing drift if the array grows. | ||
| */ | ||
| export function getRegisteredMcpToolCount() { | ||
| return TOOL_DEFS.length; | ||
| } | ||
| const TOOL_DEFS = [ | ||
@@ -360,0 +369,0 @@ { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"} |
@@ -16,2 +16,21 @@ import { type StoreIO } from "./read-cache.js"; | ||
| now(): Date; | ||
| /** | ||
| * v1.6.15: read the whole Claude Code transcript JSONL as a UTF-8 string. | ||
| * Returns null if missing or unreadable. Used by warmfill at the top of | ||
| * the hook to back-fill the dedup cache from prior session activity. | ||
| */ | ||
| readTranscript(transcriptPath: string): Promise<string | null>; | ||
| /** | ||
| * v1.6.15: read a file's raw bytes + stat in one pass. Returns null if the | ||
| * file is missing or unreadable. The `rawBytes` field lets warmfill canonicalize | ||
| * (LF, no BOM) for cross-source comparison with what the transcript shows. | ||
| * The `sha256` is over RAW bytes (no normalization) so it matches what the | ||
| * live dedup decision computes. | ||
| */ | ||
| readAndStatFile(filePath: string): Promise<{ | ||
| rawBytes: Buffer; | ||
| sha256: string; | ||
| mtimeMs: number; | ||
| sizeBytes: number; | ||
| } | null>; | ||
| } | ||
@@ -18,0 +37,0 @@ export declare const realDedupIO: DedupIO; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"hookReadDedup.d.ts","sourceRoot":"","sources":["../../../src/modules/proxy/hookReadDedup.ts"],"names":[],"mappings":"AAeA,OAAO,EAKL,KAAK,OAAO,EAEb,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,eAAe,EAChB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC/C,QAAQ,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;CAC7C;AAID,0BAA0B;AAC1B,MAAM,WAAW,OAAQ,SAAQ,OAAO;IACtC,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IAC5F,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7D,GAAG,IAAI,IAAI,CAAC;CACb;AAED,eAAO,MAAM,WAAW,EAAE,OAoCzB,CAAC;AAEF,wBAAsB,aAAa,CACjC,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,MAAM,EACf,EAAE,GAAE,OAAqB,GACxB,OAAO,CAAC,mBAAmB,CAAC,CAqF9B"} | ||
| {"version":3,"file":"hookReadDedup.d.ts","sourceRoot":"","sources":["../../../src/modules/proxy/hookReadDedup.ts"],"names":[],"mappings":"AAiBA,OAAO,EAML,KAAK,OAAO,EAEb,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,eAAe,EAChB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC/C,QAAQ,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;CAC7C;AAID,0BAA0B;AAC1B,MAAM,WAAW,OAAQ,SAAQ,OAAO;IACtC,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IAC5F,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7D,GAAG,IAAI,IAAI,CAAC;IACZ;;;;OAIG;IACH,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC/D;;;;;;OAMG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QACzC,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,GAAG,IAAI,CAAC,CAAC;CACX;AAED,eAAO,MAAM,WAAW,EAAE,OAyDzB,CAAC;AAkBF,wBAAsB,aAAa,CACjC,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,MAAM,EACf,EAAE,GAAE,OAAqB,GACxB,OAAO,CAAC,mBAAmB,CAAC,CAoJ9B"} |
@@ -14,5 +14,7 @@ /** | ||
| import { promises as fs } from "node:fs"; | ||
| import path from "node:path"; | ||
| import { normalizeFilePath } from "../../lib/path-normalize.js"; | ||
| import { decideReadDedup } from "./rewriters/dedupRead.js"; | ||
| import { loadReadCache, appendReadEntry, sessionCachePath, realStoreIO, } from "./read-cache.js"; | ||
| import { prewarmFromTranscript } from "./prewarmCache.js"; | ||
| import { loadReadCache, appendReadEntry, sanitizeSessionId, sessionCachePath, realStoreIO, } from "./read-cache.js"; | ||
| const EMPTY = { hookOutput: null, statsEntry: null }; | ||
@@ -57,2 +59,25 @@ export const realDedupIO = { | ||
| }, | ||
| async readTranscript(p) { | ||
| try { | ||
| return await fs.readFile(p, "utf-8"); | ||
| } | ||
| catch { | ||
| return null; | ||
| } | ||
| }, | ||
| async readAndStatFile(p) { | ||
| try { | ||
| const data = await fs.readFile(p); | ||
| const stat = await fs.stat(p); | ||
| return { | ||
| rawBytes: data, | ||
| sha256: createHash("sha256").update(data).digest("hex"), | ||
| mtimeMs: stat.mtimeMs, | ||
| sizeBytes: stat.size, | ||
| }; | ||
| } | ||
| catch { | ||
| return null; | ||
| } | ||
| }, | ||
| now() { | ||
@@ -62,2 +87,12 @@ return new Date(); | ||
| }; | ||
| /** | ||
| * Resolve the marker-file path that tracks whether warmfill has been | ||
| * attempted in a session. Coincident with the cache file's directory so | ||
| * cleanup is in one place. We use a sentinel file rather than a marker | ||
| * entry in the cache JSONL so existing consumers of the cache schema | ||
| * don't need to filter sentinels. | ||
| */ | ||
| function warmfillMarkerPath(home, sessionId) { | ||
| return path.join(home, ".sipcode", "proxy-reads", `${sanitizeSessionId(sessionId)}.warmed`); | ||
| } | ||
| export async function hookReadDedup(input, homeDir, io = realDedupIO) { | ||
@@ -87,2 +122,67 @@ try { | ||
| const cache = await loadReadCache(cachePath, io); | ||
| // v1.6.15: Verified Warm-Fill. On the first hook fire in this session, | ||
| // walk the transcript JSONL and back-fill the cache with every full-file | ||
| // Read whose historical bytes (per `toolUseResult.file.content`) still | ||
| // match current disk content after LF + BOM canonicalization. Only the | ||
| // verified-matching entries are written. This closes the mid-session | ||
| // install gap (cache empty → no dedup against pre-install reads). | ||
| // | ||
| // Architecture detail in docs/research/2026-06-15-mid-session-cache-warming.md. | ||
| // Zero false-dedup: warmfill only adds entries to the lookup table; the | ||
| // dedup DECISION rule still requires sha match against current disk at | ||
| // every Read. If disk drifted between warmfill and re-read, sha differs, | ||
| // we let the read through. | ||
| // | ||
| // Gated by a one-shot marker so a long session does not re-walk the | ||
| // transcript on every hook fire. Marker is written BEFORE running so a | ||
| // crash mid-warmfill cannot trigger an infinite retry loop. | ||
| if (input.transcript_path) { | ||
| const markerPath = warmfillMarkerPath(homeDir, sessionKey); | ||
| const alreadyAttempted = (await io.read(markerPath)) !== null; | ||
| if (!alreadyAttempted) { | ||
| try { | ||
| const result = await prewarmFromTranscript({ | ||
| transcriptPath: input.transcript_path, | ||
| existingPaths: new Set(cache.keys()), | ||
| io: { | ||
| readTranscript: io.readTranscript, | ||
| readAndStatFile: io.readAndStatFile, | ||
| now: io.now, | ||
| }, | ||
| }); | ||
| // Only mark the session "warmed" after a real attempt (transcript | ||
| // was readable). If we bailed (transcript missing or too big), we | ||
| // want to retry on the next hook fire — maybe the transcript file | ||
| // appeared, or Claude Code rotated to a smaller one. | ||
| if (!result.stats.bailed) { | ||
| try { | ||
| await io.append(markerPath, ""); | ||
| } | ||
| catch { | ||
| // Marker write failure is silent; worst case we re-attempt next fire. | ||
| } | ||
| for (const entry of result.entries) { | ||
| try { | ||
| await appendReadEntry(cachePath, entry, io); | ||
| } | ||
| catch { | ||
| // Cache write failures are silent — must never break Claude Code. | ||
| } | ||
| // Mirror the entry into the in-memory cache so the decision | ||
| // below sees freshly warm-filled entries on THIS hook fire. | ||
| cache.set(entry.filePath, entry); | ||
| } | ||
| } | ||
| } | ||
| catch { | ||
| // Any prewarm crash → write marker to prevent infinite retry. | ||
| try { | ||
| await io.append(markerPath, ""); | ||
| } | ||
| catch { | ||
| // ignore | ||
| } | ||
| } | ||
| } | ||
| } | ||
| const cached = cache.get(normalizedPath); | ||
@@ -89,0 +189,0 @@ const decision = decideReadDedup({ |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"hookReadDedup.js","sourceRoot":"","sources":["../../../src/modules/proxy/hookReadDedup.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"hookReadDedup.js","sourceRoot":"","sources":["../../../src/modules/proxy/hookReadDedup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EACL,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,GAGZ,MAAM,iBAAiB,CAAC;AAYzB,MAAM,KAAK,GAAwB,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;AA4B1E,MAAM,CAAC,MAAM,WAAW,GAAY;IAClC,GAAG,WAAW;IACd,KAAK,CAAC,QAAQ,CAAC,CAAC;QACd,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC9B,OAAO;gBACL,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACvD,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,IAAI,CAAC,IAAI;aACrB,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAC1C,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;oBAAE,SAAS;gBAC3B,IAAI,CAAC;oBACH,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAqC,CAAC;oBAC/D,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW;wBAAE,KAAK,EAAE,CAAC;gBAChE,CAAC;gBAAC,MAAM,CAAC;oBACP,oCAAoC;gBACtC,CAAC;YACH,CAAC;YACD,OAAO,KAAK,IAAI,CAAC,CAAC;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IACD,KAAK,CAAC,cAAc,CAAC,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,KAAK,CAAC,eAAe,CAAC,CAAC;QACrB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC9B,OAAO;gBACL,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACvD,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,IAAI,CAAC,IAAI;aACrB,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,GAAG;QACD,OAAO,IAAI,IAAI,EAAE,CAAC;IACpB,CAAC;CACF,CAAC;AAEF;;;;;;GAMG;AACH,SAAS,kBAAkB,CAAC,IAAY,EAAE,SAAiB;IACzD,OAAO,IAAI,CAAC,IAAI,CACd,IAAI,EACJ,UAAU,EACV,aAAa,EACb,GAAG,iBAAiB,CAAC,SAAS,CAAC,SAAS,CACzC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,KAAsB,EACtB,OAAe,EACf,KAAc,WAAW;IAEzB,IAAI,CAAC;QACH,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM;YAAE,OAAO,KAAK,CAAC;QAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC;QAC5C,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAExE,wEAAwE;QACxE,uEAAuE;QACvE,kEAAkE;QAClE,yEAAyE;QACzE,MAAM,UAAU,GACd,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;YAC7C,CAAC,CAAC,KAAK,CAAC,UAAU;YAClB,CAAC,CAAC,OAAO,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,QAAQ,CAAC;iBAC1C,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC;iBAC/B,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QAEtB,mEAAmE;QACnE,yEAAyE;QACzE,sEAAsE;QACtE,+DAA+D;QAC/D,MAAM,cAAc,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAEjD,uEAAuE;QACvE,yEAAyE;QACzE,uEAAuE;QACvE,uEAAuE;QACvE,qEAAqE;QACrE,kEAAkE;QAClE,EAAE;QACF,gFAAgF;QAChF,wEAAwE;QACxE,uEAAuE;QACvE,yEAAyE;QACzE,2BAA2B;QAC3B,EAAE;QACF,oEAAoE;QACpE,uEAAuE;QACvE,4DAA4D;QAC5D,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAC3D,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,IAAI,CAAC;YAC9D,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC;wBACzC,cAAc,EAAE,KAAK,CAAC,eAAe;wBACrC,aAAa,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;wBACpC,EAAE,EAAE;4BACF,cAAc,EAAE,EAAE,CAAC,cAAc;4BACjC,eAAe,EAAE,EAAE,CAAC,eAAe;4BACnC,GAAG,EAAE,EAAE,CAAC,GAAG;yBACZ;qBACF,CAAC,CAAC;oBACH,kEAAkE;oBAClE,kEAAkE;oBAClE,kEAAkE;oBAClE,qDAAqD;oBACrD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;wBACzB,IAAI,CAAC;4BACH,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;wBAClC,CAAC;wBAAC,MAAM,CAAC;4BACP,sEAAsE;wBACxE,CAAC;wBACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;4BACnC,IAAI,CAAC;gCACH,MAAM,eAAe,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;4BAC9C,CAAC;4BAAC,MAAM,CAAC;gCACP,kEAAkE;4BACpE,CAAC;4BACD,4DAA4D;4BAC5D,4DAA4D;4BAC5D,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;wBACnC,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,8DAA8D;oBAC9D,IAAI,CAAC;wBACH,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;oBAClC,CAAC;oBAAC,MAAM,CAAC;wBACP,SAAS;oBACX,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAEzC,MAAM,QAAQ,GAAG,eAAe,CAAC;YAC/B,SAAS,EAAE,KAAK,CAAC,UAAU;YAC3B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI;YAC9E,MAAM;SACP,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC9B,OAAO;gBACL,UAAU,EAAE;oBACV,kBAAkB,EAAE;wBAClB,aAAa,EAAE,YAAY;wBAC3B,kBAAkB,EAAE,MAAM;wBAC1B,wBAAwB,EAAE,QAAQ,CAAC,MAAM;qBAC1C;iBACF;gBACD,UAAU,EAAE;oBACV,SAAS,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;oBACjC,QAAQ,EAAE,MAAM;oBAChB,YAAY,EAAE,YAAY;oBAC1B,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;oBACjD,cAAc,EAAE,IAAI;iBACrB;aACF,CAAC;QACJ,CAAC;QAED,iCAAiC;QACjC,4CAA4C;QAC5C,oDAAoD;QACpD,+BAA+B;QAC/B,MAAM,YAAY,GAChB,OAAO,KAAK,IAAI;YAChB,QAAQ,CAAC,MAAM,KAAK,wBAAwB;YAC5C,QAAQ,CAAC,MAAM,KAAK,mBAAmB;YACvC,QAAQ,CAAC,MAAM,KAAK,6BAA6B,CAAC;QAEpD,IAAI,YAAY,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YACjE,MAAM,KAAK,GAAc;gBACvB,kEAAkE;gBAClE,0DAA0D;gBAC1D,QAAQ,EAAE,cAAc;gBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;gBACjD,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI;gBACvD,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;aAClE,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,eAAe,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAC9C,CAAC;YAAC,MAAM,CAAC;gBACP,kEAAkE;YACpE,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"} |
@@ -16,2 +16,9 @@ export interface ReadEntry { | ||
| readonly firstReadAt: string; | ||
| /** | ||
| * How this entry got into the cache. Optional for backwards compatibility: | ||
| * entries written by v1.6.14 and earlier have no `source` field and should | ||
| * be treated as `"live"`. v1.6.15+ tags warm-fill entries explicitly so | ||
| * `sipcode proxy --stats` (and tests) can distinguish them. | ||
| */ | ||
| readonly source?: "live" | "warmfill"; | ||
| } | ||
@@ -18,0 +25,0 @@ export interface StoreIO { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"read-cache.d.ts","sourceRoot":"","sources":["../../../src/modules/proxy/read-cache.ts"],"names":[],"mappings":"AAkBA,MAAM,WAAW,SAAS;IACxB,+CAA+C;IAC/C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,kDAAkD;IAClD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,6CAA6C;IAC7C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,2DAA2D;IAC3D,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,8DAA8D;IAC9D,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,qCAAqC;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnD;AAED,eAAO,MAAM,WAAW,EAAE,OAczB,CAAC;AAEF,wFAAwF;AACxF,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,EAAE,GAAE,OAAqB,GACxB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAuBjC;AAED,8CAA8C;AAC9C,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,SAAS,EAChB,EAAE,GAAE,OAAqB,GACxB,OAAO,CAAC,IAAI,CAAC,CAEf;AAcD,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAK3D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAOxE"} | ||
| {"version":3,"file":"read-cache.d.ts","sourceRoot":"","sources":["../../../src/modules/proxy/read-cache.ts"],"names":[],"mappings":"AAkBA,MAAM,WAAW,SAAS;IACxB,+CAA+C;IAC/C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,kDAAkD;IAClD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,6CAA6C;IAC7C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,2DAA2D;IAC3D,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,8DAA8D;IAC9D,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,qCAAqC;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;CACvC;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnD;AAED,eAAO,MAAM,WAAW,EAAE,OAczB,CAAC;AAEF,wFAAwF;AACxF,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,EAAE,GAAE,OAAqB,GACxB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAuBjC;AAED,8CAA8C;AAC9C,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,SAAS,EAChB,EAAE,GAAE,OAAqB,GACxB,OAAO,CAAC,IAAI,CAAC,CAEf;AAcD,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAK3D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAOxE"} |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"read-cache.js","sourceRoot":"","sources":["../../../src/modules/proxy/read-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAwB7B,MAAM,CAAC,MAAM,WAAW,GAAY;IAClC,KAAK,CAAC,IAAI,CAAC,CAAC;QACV,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,GAAI,GAA6B,CAAC,IAAI,CAAC;YACjD,IAAI,IAAI,KAAK,QAAQ;gBAAE,OAAO,IAAI,CAAC;YACnC,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO;QACrB,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,MAAM,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;CACF,CAAC;AAEF,wFAAwF;AACxF,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAAgB,EAChB,KAAc,WAAW;IAEzB,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IACnC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC5C,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAc,CAAC;YAC3C,IACE,CAAC;gBACD,OAAO,CAAC,KAAK,QAAQ;gBACrB,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ;gBAC9B,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;gBAC5B,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,EAC7B,CAAC;gBACD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,4DAA4D;QAC9D,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8CAA8C;AAC9C,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,KAAgB,EAChB,KAAc,WAAW;IAEzB,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,eAAe,GAAG,uBAAuB,CAAC;AAEhD,MAAM,UAAU,iBAAiB,CAAC,SAAiB;IACjD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACrE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAY,EAAE,SAAiB;IAC9D,OAAO,IAAI,CAAC,IAAI,CACd,IAAI,EACJ,UAAU,EACV,aAAa,EACb,GAAG,iBAAiB,CAAC,SAAS,CAAC,QAAQ,CACxC,CAAC;AACJ,CAAC"} | ||
| {"version":3,"file":"read-cache.js","sourceRoot":"","sources":["../../../src/modules/proxy/read-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AA+B7B,MAAM,CAAC,MAAM,WAAW,GAAY;IAClC,KAAK,CAAC,IAAI,CAAC,CAAC;QACV,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,GAAI,GAA6B,CAAC,IAAI,CAAC;YACjD,IAAI,IAAI,KAAK,QAAQ;gBAAE,OAAO,IAAI,CAAC;YACnC,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO;QACrB,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,MAAM,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;CACF,CAAC;AAEF,wFAAwF;AACxF,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAAgB,EAChB,KAAc,WAAW;IAEzB,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IACnC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC5C,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAc,CAAC;YAC3C,IACE,CAAC;gBACD,OAAO,CAAC,KAAK,QAAQ;gBACrB,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ;gBAC9B,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;gBAC5B,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,EAC7B,CAAC;gBACD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,4DAA4D;QAC9D,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8CAA8C;AAC9C,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,KAAgB,EAChB,KAAc,WAAW;IAEzB,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,eAAe,GAAG,uBAAuB,CAAC;AAEhD,MAAM,UAAU,iBAAiB,CAAC,SAAiB;IACjD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACrE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAY,EAAE,SAAiB;IAC9D,OAAO,IAAI,CAAC,IAAI,CACd,IAAI,EACJ,UAAU,EACV,aAAa,EACb,GAAG,iBAAiB,CAAC,SAAS,CAAC,QAAQ,CACxC,CAAC;AACJ,CAAC"} |
+1
-1
| { | ||
| "name": "sipcode", | ||
| "version": "1.6.14", | ||
| "version": "1.6.15", | ||
| "description": "Sip your tokens, don't gulp them. Keep Claude Code's context clean: drift detection, re-read dedup, integrity scoring, AST-aware reads, and 15 MCP tools for Claude Desktop.", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
AI-detected potential code anomaly
Supply chain riskAI has identified unusual behaviors that may pose a security risk.
Found 2 instances
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
AI-detected potential code anomaly
Supply chain riskAI has identified unusual behaviors that may pose a security risk.
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
3207775
1.9%1016
0.4%22922
3.52%40
2.56%