The record catches README claiming this repository is indexed into a knowledge base. Nothing indexed it, and since the cut-over there is nothing to index it into — the surface that answered is on the transport the mesh removed (issue 147). Noted where the record is, so the next reader does not go looking for a search that cannot exist.
172 lines
8.7 KiB
Markdown
172 lines
8.7 KiB
Markdown
---
|
|
status: located
|
|
opened: 2026-08-23
|
|
located-in: [hal, hq]
|
|
fixed-by:
|
|
amended-design: 02-DECISIONS/0025-the-design-record-is-read-not-copied.md
|
|
---
|
|
|
|
# 006 — This repository is not indexed into the knowledge base, and the claim that it is holds up a decision
|
|
|
|
## Symptom
|
|
|
|
[`README.md`](../../README.md) states, as the answer to the objection against creating this
|
|
repository:
|
|
|
|
> These documents are still indexed into the knowledge base, so `recall_search` returns them
|
|
> beside everything else. One source, many surfaces — which was always the actual requirement.
|
|
|
|
Searching the knowledge base for this repository's content returns nothing.
|
|
|
|
## Evidence
|
|
|
|
Verified 2026-08-23, two searches against the mesh's operational memory:
|
|
|
|
| Query | Result |
|
|
|---|---|
|
|
| The full title of a decision record in this repository | No results |
|
|
| A distinctive phrase from the decision ledger | No results |
|
|
|
|
No entry, no partial match, no stale copy. The indexing does not exist and appears never to
|
|
have existed.
|
|
|
|
## Why this is an issue and not a task
|
|
|
|
The claim is **load-bearing**. Decision 27 separates HQ into its own repository, and the
|
|
objection it answers was that a fourth knowledge system repeats the mistake the mesh's
|
|
knowledge consolidation was created to fix. The recorded answer is *"indexing, not location"* —
|
|
that the split is safe **because** these documents remain searchable alongside everything else.
|
|
|
|
Without the indexing, the objection stands unanswered and this repository is precisely the
|
|
fourth knowledge system it was argued not to be. Either the indexing is built, or decision 27's
|
|
reasoning is amended to something that is true.
|
|
|
|
It is also, exactly, the failure this repository names in its own rules: a document stating a
|
|
rule about the mesh must say how the rule is checked. This one stated a mechanism and nobody
|
|
checked it — including in the same commit that wrote the rule.
|
|
|
|
## Open questions
|
|
|
|
- Where would the indexing run? The operational memory is written through a mesh capability;
|
|
is this a periodic sync of a repository into it, or a search surface that reads the
|
|
repository directly?
|
|
- Which store — the flat symptom-indexed memory, the structured archive, or both? They have
|
|
different lifecycles ([`03-DESIGN/00-as-is/07-knowledge.md`](../../03-DESIGN/00-as-is/07-knowledge.md)),
|
|
and this content is governed rather than incidental.
|
|
- Public repository, private mesh: the sync direction must not become a path for mesh-specific
|
|
content to arrive **into** these documents.
|
|
|
|
## Proposed direction — Nox is the search
|
|
|
|
*Added 2026-08-23.* Rather than syncing these documents into the knowledge base, **Nox
|
|
([ADR 0019](../../02-DECISIONS/0019-how-this-repository-works.md)) works from within this
|
|
repository and holds its knowledge directly.** Retrieval becomes an agent reading the source,
|
|
not a copy living in a second store.
|
|
|
|
This is a better answer than the one the README originally promised, on three counts:
|
|
|
|
- **No sync, so no drift.** The failure mode of a derived copy — the enforced copy winning
|
|
while the reasoned one quietly stops being true — cannot occur when there is no copy.
|
|
- **It dissolves the original objection properly.** The argument against a separate repository
|
|
was that it adds a fourth knowledge *system*. An agent with read access adds no store at all.
|
|
- **It is always current**, including for uncommitted work in progress.
|
|
|
|
**But it changes the promise, and that is worth stating rather than glossing.** ADR 0019's
|
|
answer was that these documents would be returned *beside everything else* in a symptom search.
|
|
An agent that must be **asked** is reachable; it is not surfacing. The two differ in exactly
|
|
the case the operational memory is designed for: someone debugging an error who has no reason
|
|
to think HQ knows anything about it.
|
|
|
|
So the open question narrows to one thing:
|
|
|
|
> When a symptom is searched and the answer happens to live in a design document or a decision
|
|
> record here, does the searcher find it without already suspecting it exists?
|
|
|
|
If Nox is the only path, the answer is no, and the reasoning in ADR 0019 needs amending rather
|
|
than satisfying. If Nox also contributes what it knows to a symptom search — or the search
|
|
consults Nox — the answer is yes and the original promise holds.
|
|
|
|
That is a design question for Nox, not a defect in this repository, and it should be settled
|
|
before ADR 0019 is treated as answered.
|
|
|
|
## Where this stands
|
|
|
|
*2026-08-31. Re-checked, and deliberately not closed.*
|
|
|
|
**The indexing still does not exist.** Two searches today, against both the symptom-indexed
|
|
memory and the structured archive, using a decision record's full title and a distinctive phrase
|
|
from a design document: no results, no partial match, no stale copy. The symptom in this report
|
|
is unchanged.
|
|
|
|
**But the part that made it an issue is gone.** This report's argument was that the claim was
|
|
*load-bearing* — that a decision rested on a mechanism nobody had checked. It no longer rests on
|
|
it. The README now names the gap in the place the claim used to sit, and says it is left standing
|
|
rather than quietly reworded. The decision record that separates this repository does not invoke
|
|
indexing at all; its reasoning is cadence, reviewers, and scope, none of which depend on it.
|
|
|
|
So what remains is not a false claim. It is an unbuilt capability and an open design question,
|
|
and those are different things.
|
|
|
|
### What was done
|
|
|
|
**A signpost, in the knowledge base, pointing here** — what lives in this repository, which
|
|
folders hold what, and when to come looking rather than search there. Explicitly a pointer and
|
|
not a copy: a derived copy drifts, and the enforced copy wins while the reasoned one quietly
|
|
stops being true.
|
|
|
|
**It was tested, and it half works.** A search for *design records, decisions, repository* returns
|
|
it. A search phrased the way somebody would actually ask — *why is the mesh built this way* —
|
|
returns nothing, because the store matches terms rather than meaning.
|
|
|
|
That is this report's own distinction, confirmed by measurement rather than argued: **a signpost
|
|
is reachable, it is not surfacing.** Someone who suspects the answer exists will now find it.
|
|
Someone debugging an error, with no reason to think this repository knows anything about their
|
|
symptom, still will not.
|
|
|
|
### Why it stays open
|
|
|
|
The question this report narrows to is unchanged and unanswered:
|
|
|
|
> When a symptom is searched and the answer happens to live in a design document or a decision
|
|
> record here, does the searcher find it without already suspecting it exists?
|
|
|
|
Today: **no.** Closing this means choosing between a one-way sync into the knowledge base and an
|
|
agent that reads this repository and contributes to a symptom search — and that is a decision
|
|
about how the knowledge system works, not a defect to be fixed quietly.
|
|
|
|
**Marking it resolved while the indexing does not exist would be the failure this repository was
|
|
created to name**, one folder away from where it names it.
|
|
|
|
## The direction is decided
|
|
|
|
*2026-08-31.* **The agent reads this repository; nothing is copied.** Recorded as
|
|
[ADR 0025](../../02-DECISIONS/0025-the-design-record-is-read-not-copied.md), which also amends
|
|
what [ADR 0019](../../02-DECISIONS/0019-how-this-repository-works.md) promised: these documents
|
|
will not be *indexed*, they will be *read*, and the search consults the agent so its answers
|
|
appear beside ordinary results.
|
|
|
|
A sync was the option that works with what exists today, and it was rejected on the one ground
|
|
this repository can least afford: it makes a second copy, and *the copy that is searched quietly
|
|
stops matching the copy that is edited*.
|
|
|
|
**So the open question above is answered, and this report stays open on the build.** What closes
|
|
it is the check ADR 0025 names — search the mesh's memory for a phrase that appears only in a
|
|
design document here, and get it back. That check fails today by design.
|
|
|
|
**What stands until then** is the signpost, and the honest description of it: reachable, not
|
|
surfacing.
|
|
|
|
## Where this stands, 2026-09-29
|
|
|
|
*Added in a grooming pass.* The knowledge base this record is about is the **predecessor's**, and it
|
|
is no longer reachable from anything: the surface that answered `recall_search` speaks the transport
|
|
the mesh removed at the cut-over
|
|
([issue 147](../147-the-operators-tools-still-dial-the-bus-that-was-removed/00-report.md)).
|
|
|
|
So the sentence in `README.md` that this record catches — *these documents are still indexed into
|
|
the knowledge base* — is now wrong twice over: nothing indexed them, and there is nothing to index
|
|
them into. The record stays open, and its answer is no longer "index this repository somewhere"; it
|
|
is whatever the mesh grows as its own knowledge surface, if it grows one. Until then the honest fix
|
|
is the README, which should stop claiming a property nothing provides.
|
|
|