Skip to content

Asking the Base

VVG-web edited this page Oct 13, 2026 · 2 revisions

Asking the base

Wiki home · related: Trust · The agent · Assistants, MCP and skills

There are three ways to get an answer out of the base, from most to least automatic.

Way Use when Result
Ask section / agent:ask you want an answer in your own words an answer from the cards only, a link on every claim, checked by Momus
ctx:context <topic> you will paste verified context into any prompt or tool a selection of cards with trust headers and bases
the MCP server an assistant should search the base itself while it works search, read a card, assemble a pack — read-only

Ask

In the panel's Ask section type a question as you would to a colleague. The engine assembles context from cards; the model answers from them only and puts a link on each claim; Momus then checks the answer: a claim is either supported by a quote or marked "no support". The conversation is kept in AuroraKnowledgeDB/meta/ask/ as plain Markdown and goes to git with the base — what the team asked and what the base answered is shared knowledge. A conversation that exposed a gap in the base is a reason to write a card.

  • Follow up without losing context: agent:ask --thread <id> (the panel continues the open conversation).
  • Choose the model: --backend N asks one gateway from the ring (1 is the primary).
  • Choose what counts: modes — trusted only; everything including drafts; meetings only; trusted plus meetings. A statement made at a meeting does not pass into "trusted only": a meeting is not a signed document.
  • Do not journal: --no-journal skips the conversation file (this is what the MCP server uses: it only reads).
  • "Why did we choose X? Why not Y?" — ctx:ask <question> answers with quotes, including rejected and replaced Decision Records.

Context packs

ctx:context <topic> selects cards and prints them with a trust header and a basis each — not "draft" but "PRJ-123 in progress". Useful flags: --mode generate|review|ask|evaluate|meetings|trusted_meetings, --max-cards, --budget, --save (to Artifacts/drafts/). In generate mode trusted knowledge and accepted Decision Records go in (and, while the base is young — bootstrap — labelled drafts too) — build requirements only on the trusted ones; ask adds rejected and replaced ones.

The rule for any manual path: assemble the context first, do not feed an assistant Confluence pages as truth. The difference between "a card with status knowledge and a basis" and "a page from the wiki" is the difference between a fact and a rumour.

When the base does not know

The engine decides this itself, without calling a model. It counts how many of the question's words (weighted by rarity) the best five trusted cards find together — an absolute figure, not a share of the best hit:

  • Enough — a normal pack.
  • Partly — the pack opens with "Weak basis" and names the words the base does not have; answer only from what was found and say what is missing (kb:question). agent:ask also marks the answer weak_basis and prints a "Weak basis" line in the report.
  • Almost nothing, no match by meaning or by exact ID — no pack: "the base does not have this", with the missing words. Long task statements are not judged this way; only questions, and agent:make and the bot context call the search with abstain=0: they need a pack of the partly matching cards. A pack of the abbreviations glossary alone does not count as a result.

If the best candidates were hidden by the trust filter (a draft card in generate mode), the pack or the refusal says so: how many, their statuses and the best name — never the body. Repeat in evaluate to read them. Thresholds are the weak and abstain keys of RETRIEVAL (abstain=0 turns the refusal off); ops:search-quality --compare reports what share of misses is the status or release filter rather than the search itself.

A document built by agent:make that cites an unverified card (young base, bootstrap) stays status: draft, with basis_unverified in the header and a line under "Assumptions".

How the search works

Search combines words with meaning: the semantic index (kb:embed) holds a vector per card and lives outside git (rebuilt on demand). Stubs (placeholder) and the archive are excluded. Related and backlinked neighbours can join a hop; a collapsed neighbour carries its gist, not its body.

Two watchdogs keep the ranking honest:

Command Measures
ops:retrieval which cards come first for the analysts' real questions, and what changed since the last run
ops:search-quality does the base find itself: a card's thesis as a question, the right answer known by construction — R@1, R@5, MRR

What to believe in an answer

An answer is only as good as its basis: read the header (knowledge or draft, and why), prefer claims with a quote, and treat "no support" as a to-do for a human, not as a fact. → Trust


This wiki is generated from the wiki/ folder of the repository — edit the pages there, changes made here are overwritten. · RU-Home

Clone this wiki locally