Skip to content

feat(docs): grounded NLQA + support surface + auto-generated docs index - #273

Merged
mdheller merged 1 commit into
mainfrom
feat/grounded-docs-nlqa
Aug 3, 2026
Merged

feat(docs): grounded NLQA + support surface + auto-generated docs index#273
mdheller merged 1 commit into
mainfrom
feat/grounded-docs-nlqa

Conversation

@mdheller

@mdheller mdheller commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Links documentation ↔ NLQA ↔ support in a grounded, self-updating way (the capstone of the surfaces work).

  • tools/build_docs_index.py — auto-generates the grounded corpus (docs/surfaces/data/docs-index.json, 43 docs) from the source specs. A doc is a witness of source.
  • docs/surfaces/docs-support.html — the grounded NLQA + support surface. Answers come only from the index, extractive + cited (no hallucination); grounding is graded GROUNDED / PARTIAL / ABSTAINED, and an ungrounded question abstains — 'I won't answer what I can't cite' — opening support and logging the doc gap instead of guessing. Routes lampstand → sherlock (IR) → InferenceGateway; receipted.
  • .github/workflows/docs-index.yml — drift-guard: regenerates the index and fails if the committed one drifted from source, so 'auto-generated' is a guarantee, not a hope.

Try 'what is the capital of France?' — it abstains, because it isn't in the docs. That refusal is the feature.

Docs are auto-generated from the source specs (build_docs_index.py → docs-index.json,
43 docs) — a doc is a witness of source. The Docs & Support surface answers ONLY from
that grounded corpus, cites every source, and abstains to support when a question isn't
covered (fail-closed grounding — no answer without a citation). CI drift-guard
(docs-index-fresh) regenerates + fails if the committed index drifted from source.
@mdheller
mdheller merged commit b48d0cd into main Aug 3, 2026
9 checks passed
@mdheller
mdheller deleted the feat/grounded-docs-nlqa branch August 3, 2026 10:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant