Skip to content

Research: local-AI typed-fact engine — repo_facts substrate + verifiable facts #121

@skakri

Description

@skakri

Research. Use local models to manufacture higher-order typed repo facts, with the discipline that makes it safe.

The inversion: the generator is commodity; the verifier and the eval are the moat. Promotion ladder: model_proposed → verifier_confirmed → human_confirmed. Build downstream of the model, not the model.

The cut — build verifiable facts, label judgment facts advisory:

  • Verifiable (model proposes, determinism disposes): effects (vs call graph), contracts (vs attributes/schema), test→symbol map (vs coverage/reachability), conformance rules (prose memory → grep/graph fitness function — strongest item), failure→fix linkage (diff is ground truth). Each ships with its verifier + a precision number from the commit-replay eval (Spike: commit-replay retrieval eval harness (measure-first foundation) #120).
  • Judgment (no oracle — advisory only, never promote/block): symbol-profile "edit risks", patch archetypes, semantic-diff narration, plans, terminology. Useful as drive-by hints; never leave model_proposed.

repo_facts = generalize the existing substrate, don't green-field it. rag-rat already ships the pattern three times: source-anchored memories with confidence+status + self-healing anchors (query/memory/resolve.rs); the edge_oracle side-table (verdict never mutates the heuristic row, staleness-keyed by (file_sha, tool, tool_version)); embedding reconcile keyed by input_hash. Reuse binding+relocation+validation + the content-addressed drift gate; model_proposed/verifier_confirmed are new STATUS values, not a new schema. Facts are dynamic artifacts lagging HEAD → async background reconcile, never the git-hook hot path.

Positioning: a "private maintainer simulator" of recall of documented consequences (verifiable facts), NOT of judgment (where it confidently misleads). Keep the lanes visibly separate.

Depends on #120. Ref: docs/plans/2026-06-14-agent-value-strategy.md §4d.

Metadata

Metadata

Assignees

No one assigned

    Labels

    researchInvestigation / landscape / design study

    Type

    No type
    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