Something I built led to a design decision I want to get feedback on.
LineageLens is a free VS Code extension that captures every AI code insertion and scores it for risk on a 0 100 scale. Works with Cursor, Copilot, ClaudeCode, Gemini CLI. Zero config on install just start using your AI tools and your insertions start showing up in the sidebar.
The scoring is deterministic rules: +28 for credential-like material, +24 for eval/exec patterns, +22 for subprocess calls, +14 for landing in an auth or payments file, and so on. Fully traceable. No ML, no black box.
The design decision that surprised me: missing prompt capture when the extension records a file insertion but has no record of what was asked adds +24 to the risk score. Same weight as detecting an eval() call.
Something that keeps coming up when I talk to teams about AI code governance: everyone focuses on capturing records, but almost nobody asks how confident they are in those records.
There are two very different things you can have. Record A: a file-watcher noticed 47 lines appeared in auth.py and Cursor was probably running. Record B:a proxy intercepted the Anthropic API call, matched it to the editor insertion via request UUID, measured 1.4 seconds between the API response and thecode appearing, and computed 0.81 trigram similarity between the model output and what landed in the file.
Both produce a row in your audit database. The second is dramatically more defensible but most governance tooling treats them identically.
In LineageLens, every record gets a confidence score from 0.0 to 1.0, broken into five independent evidence signals. Easy Mode captures (VS Code extension, no proxy) score around 0.27 honest about what you know. Power Mode captures (proxy running, full request interception) score up to 1.0. The score is not about whether the record is useful. It is about how much you can defend it when someone asks.
I think most AI governance conversations stop too early.
Teams talk about dashboards, usage charts, and prompt capture. Those are useful, but they are not the same thing as a trustworthy record.
The harder problem is this: if someone asks you six months later whether a block of code was AI-generated, can you prove the record still means what it said when it was created?
That is why we added two things in LineageLens: a provenance hash chain and a signed AI BOM export.