experiment log
Needle-Per-Turn Stressor — 2026-06-26
- File
2026-06-26_needle_per_turn_stressor.md- Size
- 2.0 KB
- SHA-256
747e9ded90085d16…
Primary source. This is the verbatim Oczy document. The analytical field notes on the research page interpret and summarize these sources.
Needle-Per-Turn Stressor — 2026-06-26
Question
Does the new IngestionPipeline retrieve a fact buried deep in a long turn
when the status-quo single-embed metabolism would truncate or lose it?
Method
Added src/oczy/experiments/tests/test_ingestion_needle.py with a mock-driver
CortexAgent and three slow tests:
- Baseline:
use_ingestion_pipeline=False, 512-token turn, needle at position 0.8. Expect ≤1 hippocampal trace and recall 0. - Pipeline:
use_ingestion_pipeline=True, fixed-window chunker (64 tokens), pass-through salience, same-LM embedder, stats aggregator. Expect multiple traces and recall 1. - Cost scaling: pipeline active, assert embedding calls match the fixed-window chunk count.
Mock driver returns deterministic but distinct hidden vectors correlated with text so the needle has its own retrievable representation.
Needle used: "The secret codeword is octarine."
Results
- All three slow tests pass in ~0.24s.
- Baseline: stores ≤1 trace, fails to retrieve the needle.
- Pipeline: stores multiple chunk traces, successfully retrieves the needle.
- Embedding calls scale with chunk count (perceive + one per surviving chunk).
bash autoresearch.shrun #80:code_qa_accuracy=1.0with the pipeline gated off by default.
Interpretation
Chunking + per-chunk storage is necessary for deep-needle recall when the overall turn length exceeds the useful single-embed context window. The salience filter will become the cost gate for expensive same-LM embedding.
Open questions
- What does the position sweep look like? Needle at 0.0, 0.25, 0.5, 0.75, 1.0.
- How does performance change with
salience=correction-markerculling non-needle chunks? - What is the cost-vs-recall curve as the salience top-K is reduced?
Artifacts
src/oczy/experiments/tests/test_ingestion_needle.pysrc/oczy/experiments/logs/SUMMARY.md
Commits
bbd3474— Add needle-per-turn stressor tests.7597e36— Update experiments/logs/SUMMARY.md with run #80 result.