Skip to content

Wire extract into recall (Move 1: consume SynaptExtraction IL in consolidation) #865

Description

@laynepenney

Move 1 (keystone) of the synapt "shape": make recall consume synapt-extract. Makes "we dogfood our own stack" true (Conversa runs on extract; we don't) and replaces recall's heuristic extraction with schema-validated, versioned, hash-anchored packets.

Smallest coherent version (this issue): one ingestion slot, opt-in + reversible. Recommended: consolidation (consolidate.py).

  1. Add synapt-extract as a recall dependency.
  2. Behind a SYNAPT_USE_EXTRACT=1 flag: produce a SynaptExtraction packet (extract Stage 1 → finalize_extraction()), build the KnowledgeNode from the packet's typed fields, drop the garbage-detection heuristics on that path.
  3. Legacy path fully intact when the flag is off.

Out of scope (later): enrich.py; the write-path hook returning intelligence_packet_hash (the 2026-05-08 reframe ambition).

TDD: schema-valid + hash-anchored packet; KnowledgeNode fields match the packet; legacy path unchanged when off; CI green. Contract-read to #dev before implementation.

Boundary: OSS (core ingestion). Owner: Apollo.

Full spec: config/design/move-1-extract-into-recall-2026-07-12.md. Rationale: config/business/synapt-the-shape-2026-07-12.md.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions