Measured

How many extra tokens, and is the knowledge right.

The same tasks, run once with FULI and once without. Each number names its method, model, client and date.

In short

  • FULI still adds input tokens: the latest run used 1.53× the input of no FULI, down from 2.50×.
  • On tasks that need project knowledge, 18 of 18 runs succeeded with FULI and 3 of 18 without.
  • On 32 held-out prompts the entry found 25; on 8 that should find nothing, it hit 2.

All on synthetic projects with small samples: read them as trends.

Tokens in a multi-turn session

A 6-turn coding session: how many times the input with FULI is the input without it.

Input, on / off
1.53×Before the fix 2.50×
Cost, on / off
1.42×Before the fix 1.51×
Entry over 6 turns
24.3 KBBefore the fix 48.2 KB

The fix: within a session the entry sends only what changed, and fixed notes at the end of a prompt no longer steer recall. Merged; ships in 0.23.1.

Turn by turn

TurnStepEntry bytesExtra input share
1Read8297 → 79699.2% → 19.3%
2Change8281 → 282536.4% → 15.0%
3Test8259 → 348144.8% → 34.1%
4Change8297 → 261457.4% → 21.6%
5Correct8337 → 434578.0% → 63.6%
6Change6750 → 309677.4% → 17.8%

Extra input share = the input FULI added over no FULI, as a share of the input with FULI. Before the fix on the left, after on the right.

How it was measured
  • Client: Claude Code 2.1.301, headless. Turn 1 starts a session and each later turn resumes it.
  • Model: claude-haiku-5-5. Date: 2026-11-06, one run before the fix and one after.
  • Task: a 6-turn session on a small synthetic project: read the code, make three changes, run the tests, correct once.
  • Scale: 2 sessions with FULI and 2 without. The FULI side uses a separate test instance with synthetic data only.
  • Input = uncached input, cache reads and cache writes of every model request. Cost is the list price Claude Code reports.
Caveats
  • The no-FULI side ran longer in one measurement than the other, so compare ratios and shares, not raw totals.
  • Most of the extra input is cache reads, so cost rises less than input.
  • Turn 5 is still high: the model loaded tools once more and made one more closing call.
  • Neither side finished a whole session successfully, so there is no cost per successful task yet.

Is the delivered knowledge right

FULI searches once on every prompt. This checks whether it found the knowledge the task needed.

In the multi-turn sessions

CheckBeforeAfter
Right knowledge delivered on the three change turns0/64/6
Turns that delivered unrelated items10/120/12
Final checks passed at session end (with FULI)0/63/6

Held-out prompts

VersionFoundOld one tooFalse hits
Before the entry recall change12/326/322/8
After25/3213/322/8

Both false hits gave titles only, no knowledge content. Choosing between an old and a new statement is left to the model.

How it was measured
  • Held-out set: a different synthetic project, 40 prompts in Chinese and English. 32 each have one fact to find; 8 should find nothing. The prompts were written before reading the recall code.
  • Only FULI's task entry runs, with no model, once per prompt. Dates: 2026-11-05 before the change, 2026-11-06 after.
  • The multi-turn rows come from the same sessions as the token numbers above, counted by what the model actually saw.
Caveats
  • The error-code fact was missed both times: a ranking gap, not fixed yet.
  • A bare "continue" with no topic is missed by every search method.

With the knowledge delivered, did the task get done

Each of 6 tasks needs one project fact the repository lacks or states in an old form. Hidden checks judge the result.

SetupDoneMedian tokens
No FULI3/1843k
With FULI18/1863k
Right fact written into the prompt (reference)18/1839k

With FULI matched being handed the answer, but used 47% more tokens than no FULI. The 3 successes without FULI were all the task whose answer the code reveals.

How it was measured
  • Client: OpenCode. Model: Claude Opus 5.5. Date: 2026-11-04.
  • Scale: 6 tasks, 3 runs per task per setup, 54 runs; failed runs count.
  • Earlier that day, before the entry recall fix, with DeepSeek flash: 6% without FULI, 72% with FULI, 100% with the fact given.
  • Remembering a new decision: 6 of 6 became current knowledge (awaiting your confirmation). Revising an old fact: 6 of 6 replaced the old version with a new one.

Is Tonborg's review accurate

Before knowledge is kept, Tonborg reviews it: keep, drop, or ask you. This checks whether its calls match human labels.

Measured

A local qwen3.5:4b on 48 held-out synthetic cases agreed with human labels on 29 of 48 (60.4%), against an 85% bar. 2026-10-22.

Strong-model re-run

A re-run on gpt-5.6-sol is in progress. Its result and method will be added here.

This is agreement on synthetic cases, not a result from real reviews.

Earlier measurements

In the early rounds FULI usually added tokens, and the knowledge often did not arrive. The numbers above were taken after those fixes.

Claude Code on a Mac, the same three-turn maintenance task
FULI versionDateExtra with FULI
0.20.0-beta.122026-10-25+215%
0.20.0-beta.152026-10-25+15%
0.21.0-beta.12026-10-26+33%
0.21.0-beta.22026-10-27+15%
0.21.0-beta.32026-10-27+46%

Claude Code 2.1.280, model claude-opus-5. Input plus output tokens as the client reports them. One run per version, so the spread is wide.

Two other rounds
  • 2026-11-01 · OpenCode + Claude Opus 5.5 · 6 small tasks, 2 runs each, empty knowledge base: 17% more tokens with FULI, 11/12 done versus 12/12 without.
  • 2026-10-25 · OpenCode + DeepSeek v4.1 flash · 11 merged changes redone, 66 runs: 19/33 done with FULI, 16/33 without; the knowledge barely arrived.

Not measured yet