Current rate counts closed coverage gaps as hits. First-pass performance remains visible below.
The rules were fixed before the score.
Disclosed CVEs across C, Python, JavaScript, and TypeScript whose vulnerable revision is buildable and whose bug class falls within the reader's modeled sink taxonomy.
Each case was analyzed at component scope (the affected functions/module). Absolute rank across a full repository is reported only for repo-scope runs, which are not yet included.
Blind
The tool is never told the bug, its family, or its location.
Whole taxonomy
Enumeration runs over the entire candidate taxonomy, every family.
Region matched
A HIT requires the enumerator to surface, unprompted, a candidate whose file:line falls in the CVE's fixed region.
Reproducible
The reader is open-source; per-case candidate output is publishable and re-runnable.
One score. Every denominator visible.
Breakdowns use the same certified cases as the headline rate.
First pass85.7%
Current85.7%
0 coverage gaps have closed without erasing the original miss.
By language
c5/5
python5/5
typescript1/3
javascript1/1
By vulnerability class
injection4/5
memory-safety5/5
path-traversal3/3
dos0/1
Patched-revision control armpending
Patched-revision control arm not yet run.
For cases with a patched-revision arm: the sink should disappear or drop sharply once patched.
Every result stays on the board.
Hits link to their evidence path. Misses remain visible with the recorded reason they were not found.
Unsafe deserialization: attacker-crafted JSON -> load()/loads() Reviver revives a {"lc":1,"type":"constructor"} node -> importlib.import_module on the deserialized namespace + reflective cls(**kwargs) instantiation, gated only by a namespace allowlist (CWE-502 -> CWE-94/95)
Coverage gaps stay public when they open and after they close.
2 open0 closed
Open gaps
What Lachesis does not catch yet
Gap openCVE-2025-25285
sink shape not modeled
MISS (sink SHAPE not modeled -- the catalogued ReDoS sink is tainted-pattern-into-RegExp; this CVE is a STATIC catastrophic regex literal with an attacker-controlled SUBJECT string via String.match, which has no enumerable constructor)
Gap openCVE-2025-64495
sink shape not modeled
MISS (sink SHAPE not modeled -- the CVE sink is a DOM property-write `element.innerHTML = html`; the XSS catalogue models only method-call sinks, so the property-assignment sink has no enumerable constructor)
Closed gaps
What changed, and when
No closed gaps are recorded in this artifact.
What this shows. And what it does not.
It shows
Whether blind enumeration surfaced a candidate inside each CVE's fixed region.
Scope varies
Each case was analyzed at component scope (the affected functions/module). Absolute rank across a full repository is reported only for repo-scope runs, which are not yet included.
The denominator
Sink classes the reader models. Temporal classes such as use-after-free and double-free are not represented as modeled sink families.