Bring Codemine's TQB worker recall to parity with the laptop/VPS CC-NG
pattern-completion build (PRD 2026-07-06-codemine-pattern-completion-recall).
- surface_resolver.py (new): resolve_surface_content() ported verbatim from
the sibling CC-NG build — substrate-first content resolution, her
_forest_content over the vdb shard, degenerate fragments dropped.
- worker_ng.py: filter_recall_results(), surfacing_context(),
gate_repeat_recall() — filter/compose/gate helpers.
- app.py: agent_loop() (per-turn) and execute_tool() (per-tool-call, gated
by a module-level TTL dedup cache) rewired to filter + compose recency and
pattern-completion signals.
- orchestrator.py: _recall() rewired; recency prepended as a synthetic
list[dict] entry so downstream consumers (persona_client, risk_authority)
keep their contract.
- tests/: 34 tests on real NeuroGraphMemory fixtures (no mocks).
Three recall thresholds (0.30/0.40/0.35) left untouched per site. Fail-soft
at every new path. Vendored …