From fcf62fda0a230537ce3d3aff324a077b2d66a8e2 Mon Sep 17 00:00:00 2001 From: Jimmy Wesley Date: Wed, 26 Aug 2026 23:31:57 -0300 Subject: [PATCH 1/9] The retrieval is done long before the reply is (spec v0.65) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A hosted `answer` is two costs three orders of magnitude apart. The sweep's retrieval is milliseconds — 19 on the 82-node fixture, 448 on a 1,902-node forest cold — and the provider round trip is seconds. J.10.11 already keeps the model off a reader lane and J.10.6 already publishes the two halves apart, but the Station still answers ONCE: the bundle exists as a value in the host at millisecond 19 and leaves the building at second 10. The Ask console spent that gap on a spinner. J.5.15 is the panel that spends it on the truth instead. The console runs the sweep's retrieval itself, in parallel with the answer, through the ordinary `harvest` — same question, same k, same entry ranker, read-only and deterministic — so what it draws is what the answer will see rather than a guess at it, and it deposits no pheromone, because heat is the whisper's at the close of an answer and never a read's. The map is the J.11 graph projection Explore already reads, already scoped and already filtered. Two of its rules exist because the honest version and the flattering version differ, and the difference is exactly the kind a demo hides. On a sweep, `evidence` is every id in the bundle — the reply is prose and names nothing — so there is no "the model chose these" stage to draw, and drawing one would show a selection that never happened. On a walk the entry `locate` marks nothing, because J.10.4 keeps only what carries text: the stage reads zero, which is true, instead of being filled from `sources` to look complete. The panel states its own speed for the same reason. The reveal takes seconds and the thing it depicts took milliseconds, so the real figure rides beside it off the Part D trace — a console whose subject is that retrieval is cheap must not leave an audience reading the animation's duration as the measurement. Not here: the walk's hops arriving one at a time, live. That needs the host to push, which is a contract, and this version does not add one. Signed-off-by: Jimmy Wesley --- CLAUDE.md | 28 +- docs/monkeyllm-spec-v0.65.md | 11330 +++++++++++++++++++++++++++++++++ 2 files changed, 11357 insertions(+), 1 deletion(-) create mode 100644 docs/monkeyllm-spec-v0.65.md diff --git a/CLAUDE.md b/CLAUDE.md index be375e3..0ae798f 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1,7 +1,7 @@ # MonkeyLLM agent guide Knowledge forest navigable by an SLM: markdown + indexes, traversed through -**Vine**'s MCP primitives. `docs/monkeyllm-spec-v0.64.md` is normative +**Vine**'s MCP primitives. `docs/monkeyllm-spec-v0.65.md` is normative (earlier versions are archived) **the spec is the truth**; any contract change requires a new spec version before code. @@ -77,6 +77,32 @@ Local models (llama.cpp on the 3090): see `docs/local-inference.md`. ## Conventions and pitfalls +- **The retrieval is done long before the reply is (spec J.5.15, v0.65)**: + a hosted `answer` is two costs three orders of magnitude apart — 19 ms of + sweep on the fixture against 10 s of provider — and since the Station + answers ONCE, the bundle sat in the host from millisecond 19 and left at + second 10, so the Ask console spent the gap on a spinner. The path panel + draws it instead: the console runs the sweep's retrieval ITSELF in + parallel through the ordinary `harvest` (same question, same `k`, same + ranker, so it is what the answer will see, and it forges no heat — + pheromone is the whisper's at the close of an answer, never a read's), + over the J.11 `graph` projection Explore already reads. Its switch is + SEPARATE from `hops` on purpose: a walk costs one model call per hop and + the drawing costs none, and one control over both teaches an operator + that the picture is what made the answer slow. Two rules are where the + honest version and the flattering one part: on a **sweep** `evidence` is + the whole bundle (the reply is prose and names nothing), so there is no + `cited` stage to draw and inventing one shows a selection that never + happened; and on a walk the entry `locate` marks nothing, because J.10.4 + keeps only what carries text — the stage reads zero, which is true, + instead of being filled from `sources` to look complete. The trail + follows `parent` (already scope-filtered by J.11) and carries its OWN + colour token: a `discovered-shortcut` is a fact the forest holds, a trail + is what one question did to it. And the panel prints the real millisecond + figure off the Part D trace beside a reveal that takes seconds — on a + console whose subject is how cheap retrieval is, an audience must not + read the animation's own duration as the measurement. Live hops are NOT + here: that needs the host to push, which is a contract. - **A transport method is not a capability, and 404 is not a refusal (spec J.1.2 rule 4 + J.1.4, v0.64)**: J.1.2 rule 4 withholds what nothing is registered behind, and the implementation withheld one name more than the diff --git a/docs/monkeyllm-spec-v0.65.md b/docs/monkeyllm-spec-v0.65.md new file mode 100644 index 0000000..2300b1c --- /dev/null +++ b/docs/monkeyllm-spec-v0.65.md @@ -0,0 +1,11330 @@ +# MonkeyLLM Technical Specification v0.65 (Phase 0/1/2 + host layer) + +**Audience:** development team. +**Scope:** normative specification of the forest dialect (`schema.md`), the I/O contracts of the Vine protocol's primitives (MCP), the host layer that serves them to many principals (Part J), and the Phase 0 acceptance criteria. +**Companion document:** `monkeyllm-arquitetura.md` (architectural view). +**Convention:** the words MUST, MUST NOT, MAY follow the spirit of RFC 2119. + +> Language note: as of the T02 translation pass (2026-07-02) the entire +> document is English. As of v0.5 every **contract token** (type/rel/enum +> values, parsed section headings) is English regardless of prose language. + +**Changelog v0.64 → v0.65 the retrieval is done long before the reply is.** + +A hosted `answer` is two costs that differ by three orders of magnitude. +The sweep's retrieval is milliseconds — 19 on the 82-node fixture, 448 on a +1,902-node forest cold — and the provider round trip is seconds. J.10.11 +already separates them so the model does not hold a reader lane, and J.10.6 +already publishes them apart so a console can say which half was slow. What +neither of them changed is that the Station answers **once**: the bundle +exists as a value in the host at 19 ms and leaves the building at 10 s. + +So the Ask console spent that gap on a spinner. It has always been able to +say WHAT was read — J.10.4 assembles the sweep's bundle and the walk's hops +into one shape for exactly that — but only as a list, only afterwards, and +never as a place. A forest is a graph (J.5.4 draws it), and a question that +reached three nodes in one branch out of nine reached them somewhere. + +J.5.15 is that panel, and it is bounded by what can be known without a new +contract. The console runs the sweep's retrieval ITSELF, in parallel with +the answer, through the ordinary `harvest` primitive: same question, same +`k`, same entry ranker, deterministic and read-only, so what it draws is +what the answer will see rather than a guess at it — and it deposits no +pheromone, because heat is the whisper's at the close of an answer (J.10.7) +and never a read's. The map is the J.11 `graph` projection, already scoped, +already filtered, and already what Explore reads. + +Two rules in J.5.15 exist because the honest version and the flattering +version differ. On a **sweep** `evidence` is every id in the bundle — the +reply is prose and names nothing — so there is no "the model chose these" +stage to draw, and drawing one would show a selection that never happened; +`cited` is a walk's stage, where `answer_nodes` is a real choice filtered to +what was actually opened (J.10.5). And on a walk the entry `locate` marks +nothing, because J.10.4 keeps only what carries text: the stage reads zero, +which is true, rather than being filled from `sources` to look complete. + +The panel also states its own speed. The reveal takes seconds and the thing +it depicts took milliseconds, so the real figure rides beside it off the +Part D trace. A console whose subject is that retrieval is cheap must not +leave an audience believing the animation is the measurement. + +What is NOT here: the walk's hops arriving one at a time, live. That needs +the host to push, which is a contract, and this version does not add one. + +**Changelog v0.63 → v0.64 a transport method is not a capability.** + +J.1.2 rule 4 says an announced capability with nothing behind it is an +instruction to every connecting client to spend a round trip learning +"empty", and the implementation applied it by deleting handlers from the +SDK's registry. It deleted one more than the rule names. Beside `prompts/*` +and `resources/*` it deleted **`subscriptions/listen`**, which at the +2026-07-28 era is not a feature of the resources family at all: it is the +only server-to-client channel there is, the replacement for the standing GET +stream of every earlier era. + +What that costs is not a wasted round trip. The Station answers +`server/discover` at 2026-07-28 with a 200, which tells the client this era +is spoken; the client then opens its `subscriptions/listen` stream, and the +SDK answers an unregistered method with **HTTP 404**. In streamable HTTP a +404 has a meaning of its own (2.5.3: the server MAY terminate a session, and +must then answer 404 to requests carrying its id), so a conforming client +reads it as *your session is gone* and tears the connection down. The next +call dies with it. Measured against a released client (Antigravity, on the +Go SDK), the whole surface reported **0 tools**, and the error it printed +named a session id that was never issued rather than the method that was +never served. + +Two facts follow, and they are separable. The first is that the deletion +went past the rule and is withdrawn. The second is that serving the method +changes one announced bit: at 2026-07-28 the SDK derives every list-changed +flag from whether the listen handler is served, so `tools.listChanged` +becomes `true` while this Station still publishes no such event. Under rule +4's own reasoning that is an empty promise — but the cost rule 4 was written +against does not exist here. A client that subscribes at this era opens one +stream that stays quiet; it spends no round trip listing anything, and the +alternative is not silence but a fatal 404. The earlier eras are unchanged to +the bit: `tools.listChanged` stays `false` at 2025-06-18 and 2025-11-25, +because there the flag is derived from notification options and not from the +handler. + +- **A transport method is never withheld as an empty capability (amends + J.1.2 rule 4).** +- **A refusal MUST NOT be spelled 404 on this transport (new J.1.4).** +- Acceptance: **F.135 - F.136**. + +**Changelog v0.62 → v0.63 the budget nobody chose is still a budget.** + +Every model binding shipped at `max_tokens` 600, and J.10.8 stated the cap in +the prompt only when a caller set `reply_tokens`. Both halves were sized for a +reply that is prose. The `answer` turn is not prose: it is a JSON object +carrying the answer text AND `answer_nodes`, so the budget pays for the +citation apparatus before it pays for a sentence, and a client that also asks +for a verbatim proof pays for that too. + +Measured on the 18-question suite, a local 12B scored **16/18** at 600, and +neither miss was a navigation failure. One had already run `SELECT region, +SUM(amount) ... GROUP BY region` against the right dataset and was cut +mid-object. The other reached the right node in a single hop and held the +right sentence, then lost it when the truncated `proof` failed its audit. At +1500 both pass, and the wall time falls with them (139 s to 15 s, 149 s to +11 s) because the rejected retries stop happening. What kept this invisible is +the shape of the symptom: **a cut answer scores as a wrong answer**, never as +a cut. The console blames the model, the operator tunes the model, and the +model was right. + +Raising the default repairs nobody on its own. A binding is a stored row, so +every deployment already on 600 stays there until somebody edits it by hand. +Hence a one-time data repair, and hence a stamp on it: the property that +matters is not that the repair runs but that it runs **once**. An operator who +chooses 600 after the upgrade must keep it, and a deliberate 600 is +byte-identical to the shipped one, so nothing but a version stamp can tell the +two apart. + +The third rule is the one that would have made the first two unnecessary. A +cap the model is never told about can only be discovered by being hit, and +J.10.8 told it only when a caller had set `reply_tokens`, which is to say it +fell silent in exactly the case where nobody had chosen and the shipped number +was deciding alone. + +- **The `answer` role is bound at 1500 (amends J.10).** +- **A shipped default is repaired once, and stamped (amends J.10).** +- **The cap is said whatever chose it (amends J.10.8).** +- Acceptance: **F.132 - F.134**. + +**Changelog v0.61 → v0.62 the cold scan was never the corpus.** + +C.6b.1's memo made a repeated `sniff` proportional to its matches and left +the first one alone. A term the forest has never been asked for is scanned +against every body in scope and no memo can help, because the fact it would +remember is the one being computed. That cost was reported against v0.59, +assumed to be the corpus, and deferred **on a condition** that it be +measured before a fix was designed, because the fix on the table was a +trigram index over bodies in `_derived/` a second search engine, to be +kept honest against C.6b's literal semantics forever. + +The measurement is in, and it does not say what the deferral assumed. On a +1,902-node forest holding 11.9 MB of markdown, a cold `sniff` for a term +that matches nothing cost **629 ms of CPU**, of which reading all 1,902 +files was **31**. The other 598 were two things this document had never +looked at: + +- The **fold** lowercase and strip diacritics, which is C.6b's matching + rule and therefore normative was a Python loop over every character of + every body, with a dict lookup and a list append per character: **387 ms**, + 62% of the call. +- The **`content:` marker**, which decides whether a body is inline or lives + elsewhere (G.7), was matched with a MULTILINE regex over the whole file + to find a line that can only ever appear in the frontmatter: **71 ms**, + another 11%. + +Nearly three quarters of a "full corpus scan" was spent not reading the +corpus. Both are now what they should have been the fold is one +`str.translate` against a table built on first use, and the marker is +looked for in the frontmatter and the same call costs **133 ms**. The +sweep behind `answer` went from 933 ms to 448. Nothing about any answer +changed: these are cost rules under C.6b.1's first rule, and the fold's +identity to its own definition is verified over every code point Python can +represent, not over a sample. + +The trigram index is **not** in this version, and its case is weaker than +it looked. It was proposed to remove a corpus read that turns out to be 5% +of the call it was blamed for. What remains true, and is stated here rather +than implied, is the shape: a cold `sniff` is still proportional to the +corpus and a warm one to its matches (the v0.59 rules below). A future +version that wants to change the first of those now has an honest baseline +to beat. + +- **The fold is a table, not a loop (amends C.6b.1).** +- **A frontmatter marker is read in the frontmatter (amends C.6b.1/G.7).** +- **What a cold scan costs, measured (amends C.6b.1).** +- Acceptance: **F.129 – F.131**. + +**Changelog v0.60 → v0.61 the write means what it said.** + +Two rounds of outside verification (2026-08-21 and 2026-08-22) tested this +Station against its own promises. The read side came back untouched: the +grounded answer stayed faithful, the `min_score` floor kept refusing the +question whose evidence does not clear it, and the trace measured the +product's own regressions. Every finding that landed, landed on the other +half — **whether a write means what it said afterwards.** + +`prune` removed a node, reported `pruned: true`, and the next upload to +the same branch **replanted it**, with a fresh timestamp and an edge into +the new material. The remover was told the removal happened; the forest +disagreed a day later, in silence. In a memory that is worse than a write +that fails: a failed write is retried, a resurrected one reintroduces +material somebody decided to withdraw. Beside it, a dataset whose payload +had gone missing took the whole `look` with it, so a node visible to +`scan` was unreadable through the primitive that reads passports and the +passport had nothing to do with the missing file. + +The rest of this version is the backlog those rounds left open — six items +reported against v0.59 and still open in v0.60, which is the first time in +the series the report-today-shipped-tomorrow cycle broke. Three of them +turned out not to be what they looked like, and that is stated here rather +than buried: `origin` on an upload was working as specified and undocumented +(J.8 rule: an upload's origin is the `source_url` it declares, and nothing +taught anyone to declare it); `supersedes` was in the engine's default +dialect since v0.58 and absent from the deployed forests' own +`_meta/schema.md`, which is A.2 working as designed with a refusal that +failed to say so; and of the five reads said to ignore the waymark, four +already honoured it and `pick` did not. + +- **An upload is a courier, not a mirror (new J.8.3, amends J.9).** The + bug reported was a `prune` that undid itself on somebody else's next + upload. Underneath it sat an assumption nobody had written down: that the + upload staging area is a source tree this forest *mirrors*. From that one + assumption came all of it — `adopt` recorded the staging path as the + forest's `source_root`, so **one upload repointed a forest that really + did mirror a folder** and the operator's Sync then described the courier; + the refresh walked the whole directory, so a file whose node had been + pruned was read as a new document and planted again; the report said + `sync` to a caller that had said `upload`; and nothing could ever be + removed from the area, so it accumulated where nobody could see it. + Uploaded bytes are now what they always were: how a document reaches a + Station, scoped to the entries of that request, recording nothing, + removed as they become nodes (`consumed`), kept when they fail, never + backing a `reference` body, and — for what legitimately remains — + countable and clearable through **J.13.7** instead of a shell. +- **A missing payload is a fact about the payload (new C.2.2).** `look` + built a dataset's `query_manual` and `sample_rows` by opening the `.db`, + and an absent file raised `E_NOT_FOUND` for the entire digest. The + passport title, summary, tags, edges, notes never depended on that + file. The digest now degrades: the passport is returned, the two + payload-derived fields are omitted, and `payload_missing: true` says + which. `coverage` counts the same condition per root, so an operator + reads the damage in one call instead of discovering it one + `E_NOT_FOUND` at a time. +- **A branch is addressed by its id (amends G.3/J.8).** `dest` was the + one place in the whole surface where a branch may **not** be named the + way every other place names it: `scan("tasks/_index")`, `parent: + "notes/_index"`, `coverage`'s roots all take the canonical form, and + `dest: "notes/_index"` produced `notes/_index/_index` and a refusal + whose "expected parent" was the exact string the caller had sent. The + advice was to do what had just been done. `dest` now accepts both + forms, and the skill teaches the canonical one. +- **Every read by id answers the waymark (amends C.15 rule 4).** Stated + in v0.58, implemented in `look`, `move`, `history`, `view` and `query`, + and missing from `pick` the read an agent holding a written-down id + actually makes. Half a redirect is not a redirect. +- **A derived alias is a name, not a leading digit (amends G.2.6).** The + number a file's stem starts with is derived as an alias, and the test + for "starts with digits" did not require the digits to END. A document + named `9router-free-ai-router.md` derived the alias `9`, which enters + the one index searched by metadata alone and ranks. The number must be + a whole leading segment, followed by a separator or by nothing. +- **An unknown token names the set that would be accepted (amends + A.2/C.7/C.8).** A forest's dialect is its own file and a rel the engine + ships may be absent from it that is A.2 working. What is not working + is `E_SCHEMA: unknown rel 'supersedes'` with no `hint`, in the exact + case where naming the forest's declared rels answers the question + completely. C.12's envelope says every refusal carries an actionable + hint; this one did not. +- **What ingest derives can be re-derived (new J.13.6, amends G.2.6 + rule 4).** Aliases derive from the source path and the title, both + recorded in the passport so the repair for a forest ingested before + a derivation rule existed needs no source tree, no converter and no + model. It was nevertheless reachable only through `sync`, which needs + the recorded host root and `admin` over it. A maintenance pass now + re-derives from the forest's own passports and reports what changed; + a forest of 1,877 nodes stops being a forest where the delivered + feature is absent in practice. +- **The floor says which half refused (amends J.10.10).** `min_evidence` + counts items that clear `min_score`, so with a threshold that means + anything the pair `(2, 0.02)` refuses questions the forest answers + well and the refusal reported `evidence_count: 1` without saying that + two further items were dropped by the threshold. `below_min_score` + names them, and the skill states the pairing that works. +- **The skill names its forest, its origin and its useful floor (amends + J.5.12).** One skill per forest collided on `name:`; the saving block + taught the `dest` form the server refuses and never mentioned + `source_url`, the only way an uploaded document gets an `origin`. +- Acceptance: **F.117 – F.128**. + +**Changelog v0.59 → v0.60 the skill fits the agent.** + +Every version that touched the Skills console made the file it hands out +better and bigger. v0.49 gave a person a skill instead of asking them to +write one; v0.56 taught it to state its age; v0.57 taught the anatomy of +a node because a first-session agent would otherwise plant nodes nobody +could find; v0.58 added the document's past; v0.59 added `coverage` and +`min_score` — 471 tokens in one release, to a file that had reached +3,921. + +None of those were wrong, and the sum is: an agent that fires this skill +pays for all of it, once per session, forever. A key paired with J.2.6's +default `{read, ingest}` carries about 1,400 tokens of `plant` anatomy it +is not allowed to execute, and an agent asked only to read pays for the +whole write surface. The product spent five versions teaching the model +to ask narrower and never applied the lesson to its own instructions. + +The second half is smaller and worse. Every primitive here takes +`forest` as its first argument. The generated skill contained twenty-three +call examples and **not one of them passed it**: the forest's id lived in +the title, in the `description` and in no call the model was ever shown. +The console that exists so documentation cannot drift from its +deployment was teaching a call shape the deployment does not have. + +- **A skill is a folder (amends J.5.12).** `SKILL.md` carries what every + agent needs; `references/{saving,writing,time,datasets,sharing}.md` + carry what only some do, each named in the core with the condition that + sends an agent to read it. A reference that is not read costs nothing, + which is the whole point: the runtime holds only the `description` in + context and loads the body on trigger, so the number to shrink is what + a firing costs. The core alone is a complete skill and never a teaser; + no instruction exists in two blocks; and several *installed* skills is + explicitly not the split — each would cost its `description` in every + session, and the runtime rather than the core would decide which one + loads, which a model about to make its first write cannot know in + advance. +- **The key chooses the blocks (amends J.5.12).** The default selection + is the capabilities of the key on the selected forests — the console + already renders under that grant. A block may be included deliberately + for a capability the key lacks (a skill prepared for a colleague), and + then it names the capability it requires in its first line, which is + v0.49's conditional-teaching correction kept honest rather than + discarded. The same selection can be assembled as one inlined file for + runtimes that take no folder, and the two assemblies teach the same + surface. +- **An example is a call (amends J.5.12).** Every example in every + generated file carries the forest argument in the shape the tool takes. +- **The skill is for the forests it names (amends J.5.12).** The console + offers the forests the key reaches, the open one pre-selected, so an + agent configured for two forests is handed one skill. A baked id is + intent, never authority: `forests()` is taught as the first call + because capabilities, roots, `locked` and `station` are only true at + the moment of use, and a forest whose grant has lapsed answers + `E_NOT_FOUND` like anything else outside a key — the ordinary shape of + a narrowed key, not a defect to work around. More than one forest + carries a routing table (id, largest roots, capabilities held at + generation) built from C.17 `coverage`, because a model given several + forests and no map either sweeps them all or picks one in silence. One + forest carries no table: there `coverage()` is a single live call, and + a written-down copy of a forest's shape can only drift from it. +- **The address is the way back (amends J.5.12/J.5.8).** Blocks, forests and + assembly ride the query, so the generated file can name the one link that + rebuilds itself against a newer Station — the repair for the staleness the + v0.56 stamp only detects. Installing stays the operator's act: a skill + outlives the connection that delivered it, which is exactly what a tool + description does not, so the Station gains neither an endpoint nor a + `skill()` tool for it. +- Acceptance: **F.111 – F.116**. + +**Changelog v0.58 → v0.59 the forest says what it holds.** + +Every read in this product says what it did not do. `locate` returning +nothing reports `searched` and names `sniff`; `look` names the field it +clipped; `scan` returns `total` beside `returned`; the sweep counts what +it suppressed. The discipline is mature and it is the reason the tool can +be trusted by something that is not reading carefully. + +It had never reached the outermost layer. A consumer agent asked this +forest for a mandatory rule, got a faithful answer citing a real +document, and the answer was wrong about the thing it was asked — not +because retrieval failed, but because the branch holding the rule had +never been ingested, and **nothing on the surface could say so**. The +partial answer arrives in the exact shape of the trustworthy one: with a +citation, with a source, with a trace. That is the most expensive silence +a memory can keep, and it is the last one left. + +v0.59 closes it, and pays a debt the load measurements made undeniable +along the way. + +- **A forest can say what it holds (new C.17 `coverage`).** One cheap + call, answered from the catalog alone with no file opened and every + count grouped in SQLite: the roots the caller may start from, how many + nodes sit under each, where that material came from (`origin` as the + exact prefix `scan` takes) and how much of it carries no origin at all, + the dates it spans, and the totals by type and by source. Scoped like + every read — under a policy the roots are the principal's own roots and + every count is filtered by the policy's own prefixes as SQL (C.13.3's + rule, for the same reason: a global count here is a finer size oracle + than `locate` could ever be). It states what is present and never + guesses what is absent; seeing that a root is not there is the caller's + conclusion to draw, and the point is that they can now draw it in one + call instead of needing the source tree on disk. +- **The document's own name resolves (amends G.2.6).** Alias derivation + required the operator to declare a folder→prefix map, and without one + ingest wrote no aliases at all — so in a forest where every document + has a canonical code, 1,877 of 1,877 nodes lacked the name they are + called by, and the most common access in the forest fell through to the + path that measured **~100× slower**. Ingest now derives from what the + source already states about itself: a code in the shape `LETTERS-DIGITS` + present in the title or the H1, the leading number of the file's stem, + the path form, and — when the containing folder's name is itself + compound — its initials as a prefix. None of that is content vocabulary + entering the engine: the engine invents no words, it reads back the ones + the document and the path already carry. The `aliases:` map keeps the + job only an operator can do — declaring a convention the material does + not state — and a hand-written alias still outranks every derived one. +- **What came from a tree is listable (amends C.6).** `scan` gains the + filter key `origin_prefix`, matching a prefix of the node's `origin` + URI; the exact-match `origin` key stays, because "which node is this + file?" and "what came from that directory?" are different questions. + `coverage` publishes the prefix that `scan` takes, so there is no + arithmetic between finding a source and listing it — the same + contract C.13.3 gives windows. +- **A floor that counts evidence, not items (amends J.10.10).** The + `min_evidence` floor counted retrieved items, and the sweep returns `k` + items whatever their score, so the floor was reached almost always and + the protection it advertises almost never fired: it guarded against an + empty forest, not against weak evidence. `answer` gains `min_score`, + applied before the count, and the refusal names both numbers. The + specification states plainly what the score is — an RRF rank artifact, + comparable within a deployment and not across corpora — so the lever is + tuned rather than believed. +- **A citation carries its scope (amends J.10.4/J.10.5).** `sources[]` + carried `id`, `title`, `summary`, `type` while the `harvest` beside it + carried each item's `trail` — so the field designed to be read was the + one that lost the material's place in the forest. In a multi-product + forest, which is the normal case and not the exception, the trail is + what makes "according to `findleads/back-end`…" visible at a glance. + The data was already computed; it now crosses the last layer. +- **A rehearsal names every problem (amends C.7.3).** `dry_run` exists to + turn trial-and-error into one call, and it validated in a chain — first + problem, stop — so it stayed trial-and-error, merely cheap. A failing + rehearsal now reports every problem it could determine, and a failing + batch rehearsal reports them for **every** node rather than up to the + first. The envelope's own code, message and hint are unchanged to the + byte; the full list rides in its `data`. +- **The share link is one address with two representations (amends + J.17).** `/s/` was a console route, served only to a request that + accepts HTML, so the first thing anybody does to debug a share — curl it + — answered 404 while the browser worked. It now content-negotiates: + a browser gets the reader page, everything else gets exactly what + `GET /v1/share/{token}` serves, from the same handler, with the same + authority re-read and the same byte-identical 404 for every dead state. +- **A remembered non-match is a count, not a row (amends C.6b.1).** The + memoized scan removed the file I/O and left everything else: on a + 1,911-node forest a warm `sniff` carried a row out of SQLite for **every + node in the forest**, deserialized and recombined each one, and only then + discovered that ~95% of them matched nothing — after loading every + catalog row too, and asking SQLite for heat **one node at a time**, and + rendering snippet windows for thousands of lines of which at most fifteen + are ever returned. Measured: 94 ms of a 103 ms sweep, and throughput that + **falls** as concurrency rises, because the work is CPU-bound and the + reader pool of J.6.2 cannot multiply what the GIL serializes. Four cost + rules now bind the memo — the matching lines and the *uncovered* nodes + are what a read asks for (everything else in scope is one count), the + catalog rows loaded are the candidates', heat for them is one statement, + and a snippet is rendered only for a result that is answered. A warm + `sniff` for a term living in a handful of bodies went from 10.9 ms to + **1.5 ms** on that forest; a term living in most of the corpus stays + proportional to its matches, which is the honest floor and is stated as + one. The answer is byte-identical to the direct scan throughout; + C.6b.1's first rule was never in question and is not relaxed. +- Acceptance: **F.103 – F.110**. + +**Changelog v0.57 → v0.58 the document has a past.** + +v0.56 made the forest replace the file; v0.57 made it serve a hundred +readers. What remains is the knot every earlier changelog deferred by +name: a document that cannot move, does not remember, and arrives one at +a time. The pieces were always one design — moving a node needs a +waymark, a waymark needs history to stay honest, history needs an +author, and the author has been riding every write since J.4 stamped the +`station-principal:` trailer. This version unties the knot, and closes +the one regression v0.57 would otherwise have shipped: with the model +calls parallel, identical concurrent misses each paid for a generation +the first of them was already buying. + +- **A node can move, and the old address says where (new C.15 + `transplant`).** The consumer team's words: "se eu errar a branch de + um documento, refazer é a única saída" — misplacement was permanent. + `transplant(id, new_id)` moves ONE leaf node: passport rewritten under + the new id in the same commit that removes the old file (git's rename + detection keeps `--follow` history whole), every backlink rewritten to + the new address (prune-force's discipline: refused when an anchor lies + outside the caller's scope), both parent indexes and coverages + refreshed, a local payload moved beside it. The old id becomes a + **waymark**: recorded as `moved_from` on the new passport (files are + the truth — a reindex rebuilds the redirect map from them) and joined + to `aliases`, so `locate` still finds the old name; a read of the + exact old id answers **`E_MOVED`** naming `moved_to` — unless the new + address lies outside the reader's scope, in which case the answer is + the byte-identical `E_NOT_FOUND` of a node that never existed (a + waymark must not be a periscope). Branches do not transplant (move + the leaves, one audited decision at a time — C.14's rule); root and + `_meta/` never; `graft`'s `set_parent` stays refused (an address is + not a field). +- **A document remembers who did what, and when (new C.16 `history`).** + Every write was already a commit and the acting principal already rode + it (J.4, v0.57); nothing could read them back — the team accumulated + ten commits in one session and called git better at this than the + product. `history(id)` lists the node's commits, newest first, through + renames (`--follow`): full **timestamp** (day-precision frontmatter + finally has an intraday answer — D-01b closes here), the `action` (the + commit subject's own prefix: plant, graft, tend, transplant, gardener, + ranger…), and `by` — the attribution trailer's value when the commit + carries one. Read-capability, scoped like every read, budgeted like + every read. +- **A batch is one plant (new C.7.4).** The team planted eight documents + in eight calls; two died mid-batch and left a graph half-built that + only `if_absent` retries could heal. `plant` now accepts a **list** (≤ + 20): every node validated BEFORE anything is written — in order, so a + branch and its children may share one batch — and the whole batch + lands in **one commit** or none of it lands (`E_SCHEMA` names the + failing node). One commit is also one writer-lane occupation, which is + the write ceiling the load report measured, attacked from the other + flank. `if_absent` and `dry_run` compose with the list. +- **A replacement suppresses what it replaced (amends A.2, new + C.6c.4).** The dialect gains `supersedes`/`superseded-by` — distinct + from `succeeds`, which orders moments without judging them. The sweep + now EXCLUDES a result that a live node supersedes, refills the seat, + and **counts what it hid** (`superseded_excluded` names id and + successor — nothing is silent); `include_superseded: true` restores + the history view. Navigation (`locate`, `sniff`, `move`, `scan`) shows + the forest as it is: suppression is a retrieval-for-answering rule, + never a map rule. Existing forests opt in by declaring the rel in + their own `_meta/schema` (A.2's rule since Phase 0). +- **The Gardener records where it came from (new G.2.7).** v0.57 gave + the passport `origin` and only agents wrote it. Ingest now fills it: + the source file's URI on adopt and refresh, the upload's `source_url` + when one was declared (J.8) — and **only when absent**, because an + operator's hand-written origin outranks a derived one (G.2.6's union + rule, applied to one scalar). Staged uploads without a URL get none: a + path inside `_derived/` is a fact about plumbing. +- **Identical questions in flight share one generation (amends + J.10.7).** v0.57 made misses parallel, which un-made an accident of + the old serialisation: queued identical misses used to hit the store + the leader had just filled. Now deliberately: concurrent sweep misses + with the same store key **coalesce** — followers await the leader, + then re-consult the store under their own reading fingerprint. A + follower whose reading matches is served the stored reply + (`cached: true`, the plain truth); one whose reading differs runs its + own model call, exactly as J.10.7 always ruled. `cache: false` opts + out of coalescing along with everything else. +- `transplant` joins the J.16 events (`node.transplanted`, identity + only), the signature table, both MCP surfaces (20 tools; the J.1.2 + parity test counts them) and the skill. +- Deferred, named: branch transplant (move the leaves first), + reading a document *at* a historical commit (history lists; Part I + restores), `P-04` queue position (awaiting the load re-test's + numbers), and `sniff`'s scaling (same). +- Acceptance: **F.95 – F.102**. + +**Changelog v0.56 → v0.57 the forest serves a hundred readers.** + +Two sources, one version. The first is an incident: the first production +deployment under real agent load locked up — not when a model answered, +but when an agent **planted**. The host serialises every touch of a forest +on one thread (J.9), so a write's git ceremony (measured at 69× a +`locate`, before container filesystems multiply it) and the Gardener's +curation model call each held that thread while every read of the forest +queued behind them. C.9 has promised "one writer, N readers: reads never +block" since Phase 0 — the engine honours it (WAL), the host did not. The +second source is the consumer team's seventh report, the first written +after they stopped testing the product and started **using** it as memory +— eight real documents, planted, linked and consulted — which surfaced +the failures only real use can: a digest that drops its edges in silence, +an answer that mixes rounds of the truth, and a write surface whose shape +is documented nowhere an agent looks. + +- **Reads scale (new J.6.2; C.9 finally held by the host).** Each open + forest gains a **reader pool**: K read-only engine instances, each + confined to its own thread, serving every read primitive and the + sweep's retrieval. Writes, ingest steps and admin repairs keep the + single writer lane. Readers take no lock (C.9's lock is possession of + the *write*), deposit pheromone exactly as any read does, and see every + write that committed before their transaction began (WAL snapshot). A + read never again waits for a plant, a batch, or a model call. + `MONKEYLLM_STATION_READERS` sizes the pool (default 4; `0` restores the + single lane). Concurrent pheromone writers make SQLite contention real, + so the derived-layer tuning gains `busy_timeout` — a writer waits its + turn instead of failing with "database is locked". +- **The provider is not a lane (new J.10.11).** The sweep `answer` held + its forest thread through the model round trip — seconds during which + a 0.2 ms read could not run. The consumer team's load report measured + it precisely: cold-cache throughput pinned at 0.3 req/s at every + concurrency, latency linear in the queue, and a cache hit the server + served in 104 ms arriving in 6.6 s because it waited behind + generations. It now runs in three phases: *prepare* on + a reader lane (retrieval, floor, store consult — and the trace slice is + captured there, so a concurrent call on the same lane cannot leak into + this call's `trace`), the *model call* on no lane at all, *settle* back + on the same reader lane (store deposit, whisper). Concurrent model + calls are admitted under `MONKEYLLM_STATION_MODEL_CONCURRENCY` + (default 8) — parallel because the lane hold is gone, bounded because + the provider is metered — and `/v1/health` publishes + `concurrency: {readers, model}`, so an agent can read the deployment's + shape instead of discovering it by experiment. The walk (`hops`) and + `recurate` stay lane-bound and say so: a walk interleaves reads with + model turns by design, and it is opt-in per call. +- **The batch owns the writer lane, and only that (J.9 note).** The + Gardener's curation call runs inside an ingest step, on the writer + lane. With J.6.2 that is now the correct cost: during a batch, *writes* + queue behind the current document — reads and answers flow on the + reader pool. Splitting the curation call out of the step is deliberately + NOT done: G.10.1 stands (a step is a whole document), and the reader + pool removes the only starvation that was observed. +- **The principal is stamped, never amended (amends J.4).** The host + attributed writes by amending the engine's commit — every write paid + for two commits and a log read. The engine now accepts **commit + trailers** for the host to set (`Vine.commit_trailers`, a J.0-style + public seam like `embedder`): the trailer rides the original commit. + The amend path remains only as fallback for engines older than the + host. +- **The repo is tended too (new H.8).** Forest git repos accumulate loose + objects at one-commit-per-write; on overlay filesystems every git + operation slows with them. The Ranger's `run()` now finishes with + `git gc --auto` — git's own thresholds decide, the Ranger only asks; + reported in the run's report, never a commit. +- **`look` never drops a field in silence (amends C.2).** Found by the + team in real use, and the response contradicted itself: `edges_out: []` + beside `stats.degree: 2`. The budget shrink took the edges — the small, + structural field — while a 28-item `outline` (the big, re-derivable + one) stayed. In a product whose philosophy is "a read says what it did + not do", this was the one silent omission left in the hot path. Now: + the budget clips in declared order — `outline` first (big, and + re-derivable through `pick`), then `children`, then + `edges_in`/`edges_out`, a dataset's `sample_rows` last — and **every + field the budget touched is named in `truncated_fields`**. +- **The answer knows what time it is (amends C.6c, J.10.7).** Asked + "what is still open?", the hosted answer merged a two-rounds-old report + with the current one and reported as open what the newer document says + was fixed — while the `succeeds` edges stating the order sat unused in + the graph. A memory that treats every version of the truth as the same + present gets *less* reliable as it grows. Three changes, none of them a + new model call: every sweep item now carries `created`/`updated` + (read off the catalog row already in hand); equal-relevance fusion + breaks ties toward the more recently updated node; and when one + selected item `succeeds` another, both are annotated + (`supersedes`/`superseded_by`) so the model — instructed by the host's + prompt — reads the older one as history, not as the present. The + annotations and dates join the J.10.7 reading fingerprint: material + re-dated is material re-read. +- **A write rehearsed (new C.7.3).** Two of the team's eight plants died + on a 61-token summary — after 33 KB of body crossed the network. + `plant(node, dry_run=true)` runs every validation the real plant runs + — id/parent chain, declared types and rels, summary ceiling, alias + bounds, dataset schema — writes nothing, commits nothing, and answers + `{valid: true, id}` or the exact error the real call would raise. +- **A document says where it came from (amends A.3, C.2, C.6).** The + team stored documents that exist as files in a repository and had no + field to say so. Optional frontmatter `origin`: one free-form URI + (path, URL, commit — ≤ 2048 chars, no whitespace/control characters), + mutable, returned by `look` whenever present, filterable in `scan`. + The engine never dereferences it; it is provenance for reconciliation, + not a fetch instruction. +- **A section answers by name (amends C.4.1).** `pick(section=[...])` + items each carry `header` — the header line that actually matched — + because prefix matching means the section served is not always the + string asked, and a list result identified only by order is a result + the caller re-derives. +- **The subtree export exists, and the flag is never swallowed (amends + J.14.1).** `export?recursive=true` was accepted with `200` and + ignored — the exact defect C.8 just fixed for `graft`, on the route + beside it. `recursive=true` on a branch now returns a **zip** of the + subtree (every in-scope node, each member the byte-identical single + export, named by node id); an unknown query parameter on this route is + `E_SCHEMA`, never silence. +- **The skill teaches writing (amends J.5.12).** The team planted + well-formed nodes only because they had read the source in earlier + rounds; the skill documents reading thoroughly and writing almost not + at all — and the `plant` tool's `node` parameter had an empty + description. The generated skill gains the **anatomy of a node**: the + node shape, `aliases` presented as the findability lever it is, the + 60-token summary ceiling, the id-determines-parent rule, reading + `_meta/schema` before the first write in an unknown forest, `fields` + as the paging lever in `look`/`scan` — and one footnote naming the + REST surfaces an agent will want the moment it writes: `export` and + share links (the team probed for A-01 by guessing URLs and filed as + missing a feature v0.56 had shipped; a surface the skill does not name + does not exist). +- Deferred, named: rename/move and per-node history (the v0.58 knot, + unchanged), batch `plant` with atomicity (F-01), a `supersedes` rel + that suppresses its predecessor from retrieval by default (N-02's + fullest form — the annotation ships now, the suppression needs the + history design), and Gardener auto-fill of `origin` at adopt. +- Acceptance: **F.87 – F.94**. + +**Changelog v0.55 → v0.56 the forest replaces the file.** + +The consumer team's sixth report opens with an inventory: six rounds of +testing produced six reports, and every one lives as a `.md` on a disk the +forest will never see. The storing half already held — a 19,420-character +report plants, round-trips byte-identical, outlines into 28 sections, and +every read finds it — so what keeps knowledge on the disk is the +**surroundings** of the document: hand it to a person, reread it whole, +take it back, and know who said it. As long as any of those four is +missing, the rational agent writes to the disk — where `rm`, `cat` and a +shareable path exist — and only promotes to the forest what is already +finished, which is exactly the habit the product exists to end. This +version is the surroundings. Underneath the findings sat one more: half of +what the team asked for already existed, and the skill they navigated by +was too old to say so — a stale skill is a stale map of the product, and +nothing told them. + +- **A document is read back whole, in pages (amends C.4).** `pick` on an + over-budget body answered an empty body and a hint. The protection was + right; the dead end was not: the team's reports are all above the + ceiling, and rereading your own document in 28 `section=` calls is why + the local copy survives. `pick` now pages — paragraph blocks, each page + a byte-exact substring, an `after` cursor in `scan`'s idiom (`next`, + `returned`, `total`) — and pages concatenated in order reproduce the + body **to the byte**. A single block wider than the whole budget arrives + alone and cut, flagged, with the cursor still advancing: progress is + guaranteed, and so is the flag. `section` also accepts a list now: + `pick` already batched ids, and refusing two sections of one document in + one call while serving five documents was asymmetry, not protection. +- **An unknown patch key is refused, never absorbed (amends C.8).** + `graft` with `{"regenerate_summary": true, "append_section": …}` + answered `200` and silently dropped the key it did not know — the caller + walks away believing the summary was regenerated. A patch key is a + claim about what the write does; an unknown one is now `E_SCHEMA`, + naming the key and listing the operations that exist (the same + discipline v0.54 gave unknown REST parameters). +- **The passport says who and when (amends C.2).** `source`, `created` + and `aliases` were in every passport and in the indexed catalog — the + team probed for them and concluded the product could not answer "what + did I write here?". `look` now returns them, and `scan` takes + `source=` as a filter, which makes that question one enumeration. +- **The metaphor stays in the prose (amends C.1/C.6).** The team's first + call of the session failed because documentation taught vocabulary the + wire does not speak — and then the wire spoke `"kind": "banana"` back. + Charm aimed at a human reader, in a field only machines read, is + friction both ways. Every wire emission of `kind` now says + `note`/`branch`; `locate`'s scope word is `notes` (`bananas` accepted, + deprecated, for one minor version). Prose, docs and index headings keep + the metaphor — it was always for people. +- **A write you can take back (new C.14 `prune`).** The team left three + probe nodes as permanent garbage in a production forest, tagged + `delete-me` because that was the most deletion the product offered. + Their sentence stands: *an agent that cannot undo should not write + alone* — and its consequence is agents writing to disk, where `rm` + exists. `prune(id, force=false)` removes one node: passport removed + through git (history keeps it — recovery is an operator act, Part I), + parent index entry and coverage refreshed, catalog row gone, local + payload moved to `_derived/graveyard/`. A node with `edges_in` is + refused with **the list of what points at it** (`E_ANCHORED`) unless + `force: true`, which also strips those backlinks in the same commit. A + branch with children is never prunable — prune the children first; no + recursive deletion exists. A pruned id is free again: ids are immutable + while they exist. +- **The document is a human surface (new J.14.1, J.5.14, J.17).** The #1 + reason the team still writes `.md`: the only way to hand a forest + document to a person was to rebuild it outside the forest. Three + pieces, one per audience. `GET /v1/forests/{f}/export/{node}` returns + the document as `text/markdown` — no token budget, it is a download, + J.14's discipline verbatim (read cap, contained, byte-identical + `E_NOT_FOUND`). The Studio **reading console** (`/f/{forest}/read`) + renders a node for reading — full body via export, outline as a + navigable sidebar, media through the viewer's own credential (J.10.9), + copy and download of the raw markdown. And a **share link** (J.17) + hands one document to somebody with no account: a share is a key with + one room — one node, read-only, expiring, revocable, re-checked at + every serve against its issuer's own current reach (J.16's lesson: a + lapsed grant suspends what it issued). +- **The skill states its age (amends J.1.2, J.5.11).** The team operated + a round without `scan` and filed a feature request for a thing that + existed: their downloaded skill predated it, and nothing anywhere said + so. The `forests()` reply — the first call every skill teaches — now + carries `station: ""`; the generated skill stamps the version + it was built against and teaches the comparison: server newer than + skill → tell the operator to re-download it from the Skills console. + The server cannot push a skill; it can make staleness visible in the + first reply of every session. +- **The alias map refresh follows the config (amends G.2.6).** `sync`'s + fast-path skips unchanged sources, so adding an `aliases:` map to + `gardener.yaml` changed nothing already ingested — a config edit was + invisible exactly where it was aimed. The fast-path now still skips the + conversion but recomputes derived aliases and refreshes the passport + when they differ. +- `prune` joins the J.16 webhook events (identity only, like every + event) and the MCP surface (17 tools; the J.1.2 parity test enforces + the instructions naming it). +- Deferred, named: rename/move (`set_parent`) — an id is a path, so a + move rewrites every edge, trail and cache key that names it; and + per-node history with the writing principal as commit author — both + need the author design first (next version's work, with C-01's + graveyard as prior art). +- Acceptance: **F.79 – F.86**. + +**Changelog v0.54 → v0.55 a lock is possession, not a file.** + +The 0.54.0 upgrade killed the container the way every upgrade kills a +container, and the Station that came up could open nothing: two forests, +every primitive, both surfaces, `E_LOCKED` — while `/v1/health` said `ok`, +`writable: true`, and `forests()` listed both forests with full +capabilities. The consumer team's fifth report is one incident wearing two +findings, and both are contract defects, not operations mistakes. + +- **The lock is held, never merely present (amends C.9).** `.vine.lock` + used to be `O_EXCL`: the FILE was the lock, so a process that died + without deleting it — which is how processes die — left the forest + refusing every open forever, repaired only by shell access. Possession + is now the kernel's advisory lock on the open file, which the OS + releases when the holder exits, however it exits. The file's content + becomes the holder's card — pid, host, since — for the refusal to + quote; an orphan file (present, unheld) is reclaimed silently at the + next open. `E_LOCKED` now means what it says: a live writer exists, + named in the message. A filesystem that cannot hold the kernel lock + keeps the v0.54 existence semantics, stated rather than guessed. +- **The lock is inspectable and an orphan is releasable over HTTP (new + J.13.5).** `GET /v1/admin/locks?forest=` answers free / orphan / held + (with the card); `POST /v1/admin/unlock {forest}` removes an orphan + file and REFUSES a held one — an endpoint must not be able to break a + live writer's lock, because two writers is the corruption C.9 exists + to prevent. Audited under J.4.1. The old hint — "remove the file + manually" — addressed a shell the caller of an API does not have; the + Studio Health console now shows the lock card and offers the release, + admin-gated, which is the button the incident asked for. +- **The door tells the truth about the rooms (new J.1.3, the team's + S-20).** `/v1/health` carries `forests: {served, locked}` — counts, + never ids: health is unauthenticated and forest ids are J.3's to + disclose — and its `status` degrades to `"degraded"` when any forest + is held by a foreign writer. `forests()` and `GET /v1/forests` mark + each entry the key may see with `locked: true` when it cannot + currently serve, so the first call the instructions prescribe stops + sending agents into rooms that do not open. This is J.1.1's lesson + applied one level down: v0.52 taught health to report the MCP door, + and the next outage was behind the next door. +- **The instructions name every tool (amends J.1.2, the team's S-06).** + The `instructions` served at `initialize` described 8 of 16 tools, and + an agent that trusts them uses half the product — the team operated a + whole round without `scan` while asking for exactly what `scan` does. + Every tool the surface registers MUST be named in the instructions, + and the two lists are compared mechanically in the suite (C.12's rule: + two descriptions of one contract agree only where somebody compared + them). +- Acceptance: **F.75 – F.78**. + +**Changelog v0.53 → v0.54 the wire is for machines.** + +A team that consumes this product entirely through MCP and REST — the +consumer is an LLM harness, never a person — measured four rounds against a +served Station and reported where the contract still assumes a human is +reading. Almost every finding is the same finding: a response that a person +would understand and a machine cannot act on. Indentation a model pays for +and never reads; an error flag that disagrees with the envelope; an invalid +enum answered with an empty list; a truncation nobody was told about; a +forest that cannot be enumerated by the surface that lists it. This version +closes those, and the rule they share is C.12's, extended to its last +consequences: **everything a response knows about itself, it says on the +wire.** + +- **The block is for the model, so it is compact (new J.1.2).** Every MCP + tool result's text block is serialized with no indentation and no + formatting whitespace — measured waste was 15–30% of every read's budget. + Same keys, same values, same order; a console that wants pretty JSON + renders it client-side. The same rule sets `isError` whenever the result + carries the C.12 envelope: the protocol's flag and the envelope are two + spellings of one fact and MUST agree. The body of the refusal is + unchanged — `{code, message, hint}` remains the contract. +- **An enum refuses what it does not accept (C.12 rule 7).** + `move(direction=…)` takes `out | in | both` and answers `E_SCHEMA` — + naming the parameter, the value and the accepted set — for anything else; + it MUST NOT answer an empty neighbour list, which is indistinguishable + from an isolated node. `locate(scope=…)` and `scan(fields=…)` follow the + same rule with their own sets. A parameter that silently falls back to a + default turns a typo into a wrong answer with a clean conscience. +- **Size travels with every discovery (amends C.6, C.6b, C.6c).** + `body_tokens` — already on `locate` results since v0.52 — now rides + `sniff` results, `harvest` items and `scan`'s default fields, read off + the catalog row the search already loaded. The cost of opening a node is + known wherever a node is offered. +- **The forest is enumerable (amends C.6).** `scan` takes `after` — an id + cursor: results in id order, strictly after the cursor, `toward`/ + `gauntlet` refused beside it because an enumeration has one order. Every + `scan` response carries `total` (what the requested scope holds) and + `returned`; a cursored page that left something behind carries `next`. + `truncated: true` stops being a dead end — it now names the way to the + rest. The 800-token budget and the ≤ 50 item cap are stated in the + contract instead of discovered by binary search. +- **The demotion is visible (amends C.6b).** An index hit carries + `demoted: true` beside its unadjusted `score`, so a client that fuses or + re-sorts by score can preserve the order the contract promised. The score + itself still never lies (v0.52 rule). +- **The system node says so (amends C.6).** A `scan` item under `_meta/` + carries `system: true` — the one honest answer to "why does `scan` count + one more child than `look`". +- **A write that outdates the scent says so (amends C.8).** `graft` that + changed the body without touching `summary` returns + `summary_stale: true`: the navigation layer is built on summaries, and + v0.52 taught callers to trust `locate` — so the layer the caller trusts + must not age silently. The repair was always one call — + `set_frontmatter: {summary}` — and is now stated in the contract. + `aliases` joins the mutable frontmatter set (≤ 16 entries, each a + non-empty string ≤ 80 chars), so a curated name can be taught after the + fact. +- **The team's own name for a document resolves (new G.2.6).** Every project + has a vocabulary (`BE-291`) that is in no title and no body — it is in + the tree structure plus a convention. The Gardener derives `aliases` from + the operator's folder → prefix map in `gardener.yaml`; `locate` has + indexed aliases at weight 3 since the column existed. Without the map, + nothing is derived: the engine stays forest-agnostic, the convention is + the operator's to declare. +- **An undescribed media node is counted (amends H.3).** The G.5.1 stub is + the floor, not the goal: `health` lists `needs_description`, so "media + nobody can find by content" is a number on a report instead of a + discovery in production. +- **The provider's cut is reported (amends J.10.8).** The premise that "a + provider's cut carries no flag" was wrong for the OpenAI-compatible + surface this host speaks: `finish_reason` is right there, and is now + read. A reply the provider cut carries `truncated: true` and its + `finish_reason`; a truncated reply never enters the J.10.7 store (the + guard existed and nothing ever armed it); the response echoes the + effective `reply_tokens`, so a clamped request learns it was clamped. +- **A citation carries the title (amends J.10.9).** The prompt teaches + `Title [id]`, because `[chatgpt--chatgpt-com-202608200332]` means nothing + to the person reading the answer — the id stays, machine-resolvable, and + the title makes it prose. +- **Coverage is data (amends C.1/C.2).** `locate` and `look` report a + branch's coverage as `{notes, branches}` — counts, not the sentence + "4 bananas, 0 sub-branches", which forced every consumer to parse prose + and guess what a banana is. The metaphor keeps the index bodies and the + docs; machine fields carry numbers. +- **The server states its version (amends J.1).** `serverInfo.version` is + the installed package's version — an integrator debugging against a + deployment must be able to ask which build answered, and a whole report + cycle was once spent against a build nobody could identify. `/v1/health` + carries the same `version`. MCP capabilities with nothing behind them + (`resources`, `prompts`) are not announced: an advertised capability is + a promise, and every client pays a round trip to discover an empty one. +- Acceptance: **F.68 – F.74**. + +**Changelog v0.52 → v0.53 the forest can say something first.** + +One section is new. Part J has been a pull surface since it existed: a +principal arrives, is scoped, and reads. Nothing in it can tell anybody +that something happened, so a forest cannot take part in the automation +built around it — the operator who wants a message when a contract lands, +a rebuild when the corpus changes, or a page when the answer model starts +refusing, has to ask again, and asking again is what this project's +economics are against. + +**J.16 Webhooks** is the outbound half, and it is shaped by one fact: +a delivery leaves the Station's authority behind. Inside, a read is +scoped, budgeted and audited; once bytes are POSTed to a URL, whoever +holds that URL reads them, under no scope, and a grant revoked afterwards +reaches none of it. So the body of a webhook is an audit row with a +destination — what happened, to what, by whom, when — and never content. + +- **The payload carries identity, never content (new J.16.1).** Ids, + types, counts, states, job ids, commit shas, error codes, costs. Never + a body, a snippet, a question, a reply, SQL, a dataset row or a + dataset's `## Notes`. One per-webhook opt-in adds `title` and + `summary` — the two fields `locate` already returns — and it never + widens further and never causes a read: it states what the act already + knew, so `plant` can carry a title and `graft` cannot. +- **A scope is a ceiling, not a filter (new J.16.2).** A webhook belongs + to a forest, administered by that forest's admin, or to the deployment, + managed by whoever governs the deployment under J.10.2's reach rule. + A forest webhook cannot subscribe to a deployment event however its + list is written. Authority is re-read at **delivery**, so a webhook + whose owner's authority lapsed is suspended and says so, rather than + continuing to fire on a grant that is gone. +- **A closed, served catalogue (new J.16.3).** Twenty-five events across + content, ingest, answer, access, config and maintenance, named as + contract tokens in English and returned by the API so no console + hard-codes them. Only events the Station can actually emit are named; + reads are deliberately absent, because a webhook per read would put an + outbound request on the path of the tightest budget in the system. +- **The event never fails the act (new J.16.4).** Emission is + non-blocking, never on a forest lane, and O(1) when nothing subscribes. + One body across every attempt so a receiver deduplicates by `id`; + bounded backed-off retries that stop; a bounded queue that counts what + it drops; suspension after stated consecutive failure; a recorded, + redeliverable attempt log. Signed HMAC-SHA256 over + `.`, destination validated exactly as a provider's + (J.10.2), headers write-only, and the whole lifecycle audited under + J.4.1 by id and destination host. +- **Webhooks is a console in Build (amends J.5.1).** The group becomes + the three directions a forest moves in: what comes in, who reads it, + what goes out. +- Acceptance: **F.65, F.66, F.67**. + +**Changelog v0.51 → v0.52 a read says what it did not do.** + +An agent read a served forest end to end and wrote down every place it had +to guess. Almost nothing it found was a wrong answer; nearly all of it was +an answer that did not say enough about itself. + +`locate` returning `[]` is byte-identical whether the forest has nothing on +the subject or has eight paragraphs about it under a summary that never +mentions the word so the model that follows the documented order concludes +the forest does not know, and answers from its own memory. That is the one +failure this project exists to prevent, and it was reached by doing exactly +what the documentation says. A malformed argument came back as `500 +Internal Server Error` with no code and no hint, which is indistinguishable +from a forest that broke, and the three reactions those two situations +demand are opposite ones. An auto-generated index outranked the note it +points at, because `heat` was the only term separating them. A technical +question lost `MCP`, `RAG` and `421` on the way in, because they are short. +And a `421` from the MCP mount named neither the host it refused, nor the +hosts it accepts, nor the variable that decides so a deployment whose +every health signal was green had its main surface dark, and the operator's +only clue was `Failed to connect`. + +Everything below is that class of defect: **the system knew, and did not +say.** No primitive changes what it searches, no budget is loosened, and no +guard is weakened. + +- **An empty read carries what it looked at (amended C.1).** `locate` + returns `body_tokens` on every result the number `look` already + reports, delivered at the one moment it changes a decision and takes + `include: ["outline"]` for the section list, both read from the catalog + row the search already loaded. When the result list is empty, and only + then, it carries `searched` and a `hint` naming the search it did not + perform. `harvest` says the same when both of its legs come back empty. +- **A batch is one call, so it has one budget (new C.11).** `look` and + `pick` accept a list of ids. The saving is round trips, never tokens: the + batch is sized by one budget, whole items drop from the tail, and every + id the caller sent comes back accounted for in `nodes`, `missing` or + `dropped`. +- **A pointer never outranks what it points at (amended C.6b).** + `match_count` enters the score instead of only breaking its ties, and an + index node ranks below every content node in the same result set. An + index carries the summary of every child, so it matches nearly any term + and accumulates heat by being the way through; its matches are evidence + about a child. +- **Short is not the same as noise (amended C.6c).** Derived terms keep any + token that looks like code (a digit, all caps, `-`/`_`/`.`/`/`) whatever + its length, and order those first so the cap drops grammar before signal. + The four-character floor stays for ordinary words. +- **Every exit is an envelope (new C.12).** One signature table, declared in + the engine, checkable against the MCP tool schemas mechanically; argument + shape is `E_SCHEMA` naming the parameter, what arrived and what was + expected; `null` is a missing parameter, never the string `"None"`; the + last resort is `E_INTERNAL` in the envelope shape rather than a bare 500; + and a missing parameter is refused as one, never as a denial. +- **A write you can repeat (new C.7.2).** `plant(node, if_absent: true)` + answers `created: false` for an id already taken, writing nothing and + comparing nothing. The default is unchanged: a duplicate id is still a + refusal, because silently overwriting a node is the one failure a + knowledge base does not recover from. +- **The dark surface says so (new J.1.1).** The MCP mount's `421` wears the + envelope and names the refused host and the variable that admits it; a + Station serving MCP with no explicit allow-list warns at boot; and + `/v1/health` reports `mcp.host_allowed` for **this request's own host**, + so the curl that reaches the domain answers the question about the + domain. The check itself is untouched, and the list is never disclosed. +- **Where the material sits in time (new C.13).** `locate`, `sniff`, `scan` + and `harvest` take optional `since`/`until`/`date_field`, and `calendar` + reports which periods hold anything, so a window is a choice rather than + a guess. The window is decided from the catalog row before any body is + opened, which makes it the cheapest filter in the system; it is never a + default; a malformed bound is refused rather than ignored; and an empty + windowed read says whether the WINDOW was the reason, which is a + different mistake from a question that matched nothing. +- **The answer it should not give (new J.10.10).** `answer(question, + min_evidence: n)` counts the sweep's material before the model call and, + below the floor, returns `answer: null` with the retrieval attached. Off + by default. A refusal decided before the provider is called is never + billed and never stored. +- Acceptance: **F.56 - F.64**. + +**Changelog v0.50 → v0.51 a page is what a page is, not what fits on the screen.** + +One section moves. The Clipper's page capture (J.15) is the whole +scrollable document rather than the viewport that happened to be showing. + +The reason is what a screenshot is *for* here. It is not a picture kept for +its own sake: it is read once, at ingest, by the G.5.1 describer, and what +that describer writes is the only thing `locate` and `sniff` will ever see +of it. A capture bounded by the window therefore does not merely lose the +bottom of the page it decides how much of that page is findable at all, +by where somebody's scroll bar happened to rest. + +- **Capture offers the whole page and a dragged region (amended J.15).** + The page capture scrolls the document to its end, shooting each viewport, + and composes them into one image. Three constraints are normative because + each of them is a way the naive loop misleads: the page is re-measured at + every step (scrolling is what makes a lazily-loaded page grow, so its + height before the first move is not its height); viewport-fixed elements + are hidden after the first slice (they travel with the scroll and would + otherwise be stamped down the length of the image, over the content they + cover); and the person's scroll position is restored when it ends. + The capture is **bounded** by an explicit slice count, and a page that + does not advance ends the walk rather than repeating itself. The region + picker is unchanged, and remains a crop of the visible view — it is a + rectangle a person drew on what they were looking at. +- No other section changes. `upload` still receives one entry, the media + node's body is still the server's to write, and the two-nodes shape of a + page-plus-screenshot clip is what it was. +- Acceptance: **F.55**. + +**Changelog v0.49 → v0.50 the boundaries the system describes are the ones it enforces.** + +A consolidation release. No primitive gains a parameter an agent can +reach, no budget moves, no console gains a page. What changes is that +several boundaries this document already draws are now drawn by the +component that can actually hold them, and that a few of them are stated +here for the first time instead of being left to implementation. + +Three ideas run through all of it. **Decisions belong to whoever resolves +the thing being decided** if a rule is about what a SQL statement +touches, SQLite decides it, because a second reader of the same text +agrees only where somebody thought to compare them. **Authority has to +match reach** configuration shared by every forest is answerable to +whoever answers for every forest, and a credential belongs to the address +it was stored against. **What cannot be checked at the door has to be +declared up front** the console's page is where untrusted text is +rendered, and the browser is the only party present when it loads. + +- **The table allow-list is decided by the database (amended C.5, new + C.5.3; amended C.10).** J.3 already required it to be checked "against + the parsed statement"; C.5.3 now says how, and extends it to the write + path, reads included a scope that governs one direction and not the + other is not a scope. Schema-describing table-valued functions join the + refusal list beside the keyword they do not share a spelling with, and a + not-found hint under a scope names only permitted tables. +- **An authorizer refusal is the guard's, not SQLite's (amended C.5.2).** + It keeps `E_QUERY_FORBIDDEN` / **403**, and it does not name what it + stopped at. +- **Deployment-wide configuration answers to deployment-wide authority + (amended J.3.2).** Reading the provider list stays open to any + administrator; editing or testing one requires authority over every + forest. Expressed as reach, not as the owner bit, so break-glass (J.2.1) + and single-forest deployments are untouched. A stored provider + credential does not follow a changed endpoint and is never sent to a + caller-supplied destination, and a connection test validates where it is + about to connect. +- **Governance leaves a trail (new J.4.1).** The mutations that decide who + may read and write grants, keys, passwords, providers, bindings, + forests, sign-in are recorded on the terms Part D already uses: the + act, never the secret. Rows belonging to no forest are the owner's to + read. +- **The console declares what its page may load (new J.5.13).** A + content-security policy and the baseline response headers, served with + every response. The exfiltration path this closes never reaches the + Station, so no server-side check could be the control. +- **Efficiency, unchanged semantics:** a table scope is now enforced + during statement preparation rather than by scanning text before it, and + the snapshot restore path validates sidecar members before extracting + rather than after writing them. +- **New deployment variables:** `MONKEYLLM_STATION_PROVIDER_ALLOW_PRIVATE` + (J.10.2) and a default for `MONKEYLLM_STATION_IMPORT_MAX_MB` (J.13.2). +- Acceptance: **F.54**. + +**Changelog v0.48 → v0.49 the door names what it opens, and the first minute says what this is.** + +Nothing below moves a primitive, a budget or a guard. This version is +about what a person *believes* after their first ten minutes: that the +Studio is the product, when it is a window into it. The product is a +knowledge forest that external agents feed and read through MCP; the +console exists so people can watch, govern and teach that brain. Three +presentation contracts make the point unmissable, and a companion +handbook writes it down. + +- **The integration manual's door names its surfaces (amended J.5.1).** + The console entry once labelled "Integrations" MUST be labelled + **MCP / API / Integrations**. A menu is read by somebody deciding what + the product *is*, and a vague noun at the bottom of the govern group + reads as an appendix when the thing behind it is the entire point. + The J.5.1 table now also names every console the Studio actually + ships, which it had quietly outgrown. +- **The first minute is a contract (new J.5.11).** The console gains a + one-time, client-side presentation shown after the first sign-in: what + a forest is, that agents connect and feed it through MCP, where to + start. Presentation only it MUST NOT spend a model call, MUST NOT + write anything server-side, MUST NOT enter the address (J.5.8), and + MUST NOT exist before identity does: J.2.4's setup window and J.5.6's + gate are untouched. +- **A skill is handed, not hunted (new J.5.12).** A Skills console — + self-service, `read`-gated, never admin-gated generates the + instruction file an agent runtime (Claude Code and its kin) installs + to use this Station as persistent memory: recall before answering, + save what is learned, cite node ids. Generated client-side with this + Station's own origin and the open forest baked in (Integrations' own + copy-ready rule), delivered by copy or file download: the Station + gains no endpoint, the skill teaches no write path the MCP surface + does not already publish (J.15's rule for every client). +- **Companion, non-normative:** `docs/guide/` the operator handbook + (install, first access, using, feeding, connecting an AI, managing), + with screenshots, in the three console languages of J.5.3. +- Acceptance: **F.52, F.53**. + +**Changelog v0.47 → v0.48 the browser is a source, and a key that narrows needs nobody's permission.** + +A browser extension the Clipper (J.15) turns the page a person is +reading into an ingest source: the selection or the readable article as +markdown through `compose`, a screenshot as a `media` node through +`upload`. Everything it needs from the host is the three contracts this +version adds plus one static artifact, the shared build the Station +serves at `GET /clipper.zip` (J.15) so the console can offer the +extension to everyone who may pair. No primitive's semantics, budget or +guard moves. + +- **Pairing (new J.2.6).** The Clipper must hold a credential, and both + existing ones are wrong for it: a session is the principal's *whole* + authority with a short life (it dies mid-week in a toolbar), and an + admin-minted key makes an administrator the gatekeeper of every + browser. `POST /v1/auth/pair` turns a password into a key that carries + a **capability mask** effective authority is grants ∩ mask, `{read, + ingest}` by default enforced wherever the requesting principal's + authority is read, REST and MCP alike, the admin and owner bits + included. It needs no admin gate because it can only narrow: the key + reaches nothing the password could not already reach. A pair key MUST + expire, and `login`/`pair` MUST be rate-limited they are reachable + from every browser now, not only from the console. +- **An image is never `unsupported` (new G.5.1).** The Gardener gains a + built-in stub converter: image and audio sources plant as `media` + nodes the original as payload, a stub body naming what is known — + instead of falling out of the report. A forest with a bound `vision` + model (new J.10 role) turns that body into a real description through + a host-injected converter, and a describer that fails falls back to + the stub: a broken model never aborts ingest. The stub is what makes + a screenshot land; the describer is what makes it findable. +- **An upload's staging is not a durable source (amended G.7, in + G.5.1).** `archive: never` rightly keeps durable originals at the + source but an uploaded source lives under `_derived/`, which is + disposable by contract, so a node referencing it would outlive its + own bytes. Media adopted from inside the forest's `_derived/` MUST be + archived into `_assets/` regardless of the archive policy: the + payload is the only copy there is. +- **Payload bytes get a read surface (new J.14).** `GET + /v1/forests/{forest}/payload/{node}` serves the payload file of an + in-scope node read capability, byte-identical `E_NOT_FOUND` for + out-of-scope and absent alike, resolved path contained in the forest + root, local payloads only. Until now a screenshot the Clipper + ingested was a node whose image no console could show. +- **A multimodal client may view what it found (new C.6d; amended + G.5, J.14).** G.5 named serving payload bytes over MCP as a possible + future; it is now the `view` tool: the image payload of an in-scope + `media` node, returned as MCP image content beside a small JSON + header same resolution rules as J.14 (byte-identical `E_NOT_FOUND`, + local-only, contained), images only, bounded at the describer's own + 6 MiB. The line J.14 drew is *sharpened*, not crossed: material the + host assembles for a model still never carries bytes `view` is the + caller's model fetching the image deliberately, into its own context, + under its own budget, exactly as G.5 always intended a "multimodal + client that wants full fidelity" to do. +- **The answer can show what it read (new J.10.9).** A media node's + body is a describer's prose about pixels the reader cannot see. The + answering model may now embed the image itself: a markdown image whose + address is `media:`, allowed only for ids present in its + material. The host neither fetches nor rewrites anything the console + resolves the reference through J.14, where scope is enforced, so an + invented id renders as its caption and nothing else. Evidence of type + `media` is rendered with its image beside the prose, and exports carry + what the reader saw. +- **The reply has a stated size (new J.10.8; amended J.10.7).** + The only reply-length control was the binding's `max_tokens` per + forest, operator-set, and silent: a model that overran it was cut + mid-sentence. `answer` now accepts `reply_tokens` per call, clamped + to [64, 4000]; the effective value caps the model call AND is stated + in the prompt, so the model shapes the reply instead of being + truncated by it. It joins the J.10.7 key a short answer and a long + answer to one question are two entries and the console offers it as + a slider kept as the person's own preference, client-side, never in + the address. +- **The fingerprint reads everything the model reads (amended + J.10.7).** v0.47 made a dataset's `notes` ride in every bundle; + the reading fingerprint was still hashing the six original fields, so + an operator editing the teaching did not invalidate the stored answer + built without it a stale hit, exactly what the fingerprint exists to + make impossible. The rule was always "the sweep fingerprints what it + would hand the model"; the `notes` now enter the hash like any other + handed field. +- Acceptance: **F.47, F.48, F.49, F.50, F.51**. + +**Changelog v0.46 → v0.47 a wrong name is not a locked door, and a result is material like any other.** + +A walk was run against a 141-column export and cost 168k input tokens, +37 seconds and 33× the sweep, to produce an answer whose *set* of rows was +right and whose *order* was invented. Every step of that is a defect this +version names, and none of them is the model being bad at SQL. + +- **`query` gets a token budget (amended C.5).** It was the only read + primitive without one: a row cap of 200 and no ceiling, so `SELECT *` + on that table measured **86,929 tokens for 15 rows** and 429,397 for + all 129. Every other read is bounded look 500, move 600, + locate/scan/sniff 800, pick 4000, harvest 4000 because a primitive + that can return unbounded text cannot be composed into anything. Rows + drop from the tail with `truncated: true`; `columns` **survives whole**, + because the names of the columns are exactly what a caller needs to ask + again, narrower. The bound is not only a cost control: an agent learns + to project from being told, in one hop, that it did not. +- **A name that is not there is not a forbidden operation (amended C.5, + C.10; new `E_QUERY_INVALID`).** `no such table` came back as + `E_QUERY_FORBIDDEN` the code for attempting a write so a typo was + indistinguishable from a policy refusal, in the console and in the + audit. Refusal is what the guard decides; invalidity is what SQLite + decides. HTTP 400, not 403: the caller asked wrong, they were not + denied. +- **A dataset's notes travel with the dataset, on every path (amended + C.2.1, J.10.5).** v0.46 put them in `look` and in `harvest`. The walk + enters through `locate`, and a model that goes straight to `query` + never sees them which is what happened. The rule is now the general + one: any material a host assembles for a model carries the notes of + every dataset in it. Otherwise teaching the agent depends on the agent + choosing to be taught. +- **A hop's refusal reports what it was (amended J.10.5).** The loop + already feeds the whole error envelope back to the model; it kept only + the code for the console. The reader saw `E_QUERY_FORBIDDEN` twice and + could not tell that the engine had already answered both. +- **The manual states the width (amended G.2.3).** A wide table's manual + says how many columns it has and that `SELECT *` will not fit. This is + arithmetic, not curation: the Gardener still MUST NOT decide which + columns matter that is meaning, and meaning is `## Notes`. +- Acceptance: **F.46**. + +**Changelog v0.45 → v0.46 the map says what is there, a person says what it means.** + +Everything about a dataset that this system knows, it inferred. The map +(G.2.3) reads structure and three rows; curation (G.4.6) reads the map. +Nothing anywhere carries the one thing that decides whether generated SQL +is *right*: that this column is USD and that one is BRL, that `status` is +a one-letter code, that direct imports are the null-`arrendatario` rows. +An agent without that writes a query that runs and answers wrongly, which +is the worst failure available to it indistinguishable from success. + +- **`## Notes`, and `look` returns it (new C.2.1).** A dataset passport + may carry a section the operator writes and nothing else touches. It + comes back in the digest, bounded to 200 tokens and truncated out loud, + because the path an agent takes to a dataset is `look` then `query` — + a note reachable only through `pick` is a note nobody reads. +- **The console has a place to write it (amended J.5.10).** A **Notes** + tab beside Rows, Structure and SQL, composing ONE `graft`. No second + write path, no side store: the teaching is part of the node, versioned + and attributed like its summary. +- **Source is coloured wherever it is typed, not only SQL (amended + J.5.10).** The markdown body editor is the surface an operator falls + back to whenever a body holds a table which every dataset's does so + it was the plainest text in the console at exactly the moment structure + mattered most. +- Acceptance: **F.45**. + +**Changelog v0.44 → v0.45 the map is the scent, and the wait has a name.** + +v0.44 put a bounded map of every dataset into its body and then did not +read it. The Curator skips `type: dataset` by an older rule datasets had +nothing but a column list to summarise, so a factual template was the +honest answer and the consequence is a 10,000-row dataset whose scent is +still *"Adopted from source; pending curation"*, which is the text an agent +weighs when deciding whether this dataset can answer the question. The map +fixed the input; this reads it. + +Two reporting failures travel with it. A batch that legitimately needed no +model all datasets, or all `unchanged` produced zero LLM summaries with +a model bound, and the console has no state for that, so it accused the +model of answering and being rejected **zero times**. And a batch of one +document is one G.10 step, so the progress bar stands at 0 until it is 1: +the operator watching a large file is watching something indistinguishable +from a hang. + +- **The dataset's scent comes from its map (new G.4.6).** The Curator + curates a dataset from the G.2.3 map structure and three rows per + table and never from the payload or the source. Bounded by + construction: a 5 MB CSV and a 5 GB database cost the model the same few + hundred tokens. The G.4.1 template stays the fallback, so ingest still + never blocks on a model. +- **A stage is reported, never yielded (new G.10.1).** G.10's step + boundary is untouched a document is still one step, and nothing + suspends mid-document, which is exactly what v0.32 refused. What is new + is that the Gardener *names the phase it is in* through an observer, and + J.9's job record carries it beside `current`. Naming a phase suspends + nothing; that was never the objection. +- **A count limit is a guard against invention, not a verdict on data + (new G.2.5).** C.7.1's ≤10 tables and ≤50 columns exist so a model + cannot declare nonsense DDL. They were also refusing a 141-column ERP + export the operator already owns the tool telling somebody their + spreadsheet is wrong. Adoption by the Gardener is exempt from the two + counts and from nothing else. The bound that actually matters moved to + where the cost is: the G.2.3 map now caps sampled **columns** too. +- **A workbook's declared extent is not evidence (amended G.2.4).** + openpyxl in read-only mode trusts the file's `` record, and + files written by anything other than Excel routinely declare `A1:A1`. + A real 130-row sheet arrived as one row and was reported as a workbook + with no data. The extent is now inferred from the rows that are there. +- **The report distinguishes "rejected" from "nothing to do" (amended + J.8).** Curation stats gain `skipped`. Bound, zero calls, zero retries + and something skipped is a batch that needed no model and the fix for + that is nothing, while the fix for a rejection is a different model, + prompt or budget. A console that shows one as the other sends the + operator to tune a model that was never asked anything. +- Acceptance: **F.44**. + +**Changelog v0.43 → v0.44 a database is a source, and a table is a map.** + +A `.db` is the one file format this project already speaks natively and +the only one the Gardener could not ingest. Worse, the tabular converters +it *did* have produced datasets an agent cannot navigate: the passport's +body carried a column list and nothing else, so `sniff` which searches +bodies and only bodies (C.6b) could tell you a table has a `status` +column and never that the values in it are `open` and `closed`. The map +described the container and left out the contents. + +- **A SQLite file is adopted, not rebuilt (new G.2.2).** `.db`/`.sqlite`/ + `.sqlite3` convert to a **payload** conversion: the file IS the dataset's + payload, copied into place beside its passport. Reading every row into + memory to re-`INSERT` it through C.7.1 would be unbounded in the source's + size and lossy in its types, and the destination of that round trip is + byte-for-byte what the source already was. +- **Every dataset passport carries a sample map (new G.2.3).** The body + gets `## Query manual` as today followed by `## Sample rows`: per + table, the columns with their types and the **first 3 rows**, rendered as + a pipe table. Bounded by construction (3 rows, cells clipped, a stated + table cap), deterministic, no model involved. This is the surface `sniff` + reads, and it is what makes a dataset findable by what is *in* it. +- **A workbook is multi-table (new G.2.4).** `.xlsx` (openpyxl) and the new + `.xls` (xlrd, BSD) convert **every** sheet to a table, not the first one + silently. Over the C.7.1 table limit the file is refused by name. +- **The map follows the data (amended G.3).** A `sync` that rebuilds a + dataset payload rewrites the two map sections and leaves every other + section of the body alone a stale sample is a lie with a commit behind + it. +- **C.7.1 rule 4 amended**: the auto manual includes the sample map when + the node is born with `rows`. +- **J.5.10 (new)**: the Data console gains the three things a database + client is expected to have datasets **born** through one `plant`, + files **imported** through the J.8 upload surface (never a second write + path), and a connection that can be **left**. Its SQL editor is coloured + like every other source surface in the console. +- Acceptance: **F.43**. + +**Changelog v0.42 → v0.43 the whole note in one commit.** + +The Explore console's editor works at the section's grain because that +was the only grain C.8 offered: `replace_section`, one commit each. For +a person, the note is the unit of thought an edit that touches three +sections is one edit, and asking for three commits invites the +half-applied note the section grain was meant to prevent. C.8 gains one +operation and two refusals: + +- **`replace_body: string`** replaces the entire body, atomically, in + the same one-commit transaction as the rest of the patch. Combinable + with `set_frontmatter` and the link operations; the empty string is a + valid body (clearing a note is an edit, not an error). +- **Not combinable with the section operations.** A patch carrying + `replace_body` alongside `replace_section` or `append_section` states + two truths about one body refused as `E_SCHEMA`, never resolved by + precedence. +- **Index bodies are the engine's.** A branch index's body is rendered + by the indexer and parsed by contract headings; `replace_body` on an + index node is refused (`E_SCHEMA`). Section surgery on indexes stays + exactly as it was. +- **The write validates before it commits**: the serialized node must + re-parse, so a body that would poison the next read is refused while + the file on disk is still the old one. +- **J.5.4 (editing)**: a console MAY offer whole-note editing through + `replace_body`, and MUST NOT compose one from a truncated `pick` — + a body over the pick budget is edited at the section grain, because + writing back less than was read is how notes lose their tails. + +**Changelog v0.41 → v0.42 nobody's question pays for somebody's ingest.** + +`locate` carries a 100 ms p95 budget (F.6) and, with the dense layer on, +two unbounded network operations. One is by contract the query must be +embedded (K.2). The other is not: **lazy re-embedding ran inside the read +path**, so every node an ingest marked stale was embedded by whichever +question happened to arrive next. Ingest two hundred documents and the +next person to ask anything pays for two hundred embeddings, inside a +primitive whose entire budget is a tenth of a second. Measured on a live +forest: one `locate`, 2.67 seconds. The vector scan was never the cost — +a dot product over dim-1024 vectors is 0.044 ms each, so the whole +wide-forest index searches in 11 ms. + +- **The read path never embeds a node (amended K.2, C.6).** `locate` and + the Gauntlet's goal embed **the query** and nothing else. Refreshing + the dense layer is maintenance, and this specification already has a + shape for maintenance the operator triggers and the console shows + (J.13.3). A node planted a second ago is found by BM25 immediately — + the catalog upsert is synchronous so the layer's debt costs recall + in the dense half, never findability. +- **The debt is visible (amended K.4).** `canopy_status` gains `stale`: + how many nodes are waiting to be embedded. It is the number that + predicts what a refresh will cost, and an operator who cannot see it + cannot choose when to pay it. +- **Refresh is an explicit act (new J.13.4).** `POST /v1/admin/canopy` + accepts `{refresh: true}`: embed the stale ones, leave the rest. It is + the cheap sibling of a full build, and it is offered beside the + catalog rebuild in the console's Optimize tab content, index, dense + layer, one errand told three times. +- **Embedding one text is memoized (new K.6).** `embed(model, text)` is + a pure function, so the query half is cacheable exactly as the literal + scan is (C.6b.1): `_derived/`, keyed by model and normalized text, + disposable, bounded. A forest that is asked the same question twice + stops paying the round trip twice. +- Acceptance: **F.42**. + +**Changelog v0.40 → v0.41 the repair is on the console.** + +`reindex` is the repair the whole derived layer is designed around: the +files are the truth, `_derived/` is disposable, and every divergence +anywhere in this document ends with "the files win and the catalog +rebuilds". The console says so out loud Files prints *"no entry yet, +reindex to rebuild it"* and then offers no way to do it. A hosted +operator has a browser, not a shell (the premise J.13 already states and +J.13.2 acted on), so the one instruction the console gives most often +was the one thing it could not carry out. v0.40 sharpened the point: a +forest imported over J.13.2, or one written by an earlier version, +carries no `body_hash` and pays the direct scan on every ask until +somebody opens a terminal. + +- **Rebuild (new J.13.3).** `POST /v1/admin/reindex` rebuilds one + forest's catalog from its files and answers with the node count. It + writes only `_derived/`: no commit, no model call, no pheromone so + it is offered even by a read-only Station, which would otherwise have + a permanently degraded index and no way back. +- **It is offered where the operator already goes to keep a forest + current.** The ingest console's refresh tab becomes **Optimize**: keep + the content fresh (`sync`, Part G) and keep the indexes fast + (`reindex`, C.6.1) are the same errand told twice, and splitting them + across two consoles teaches nobody which one they needed. +- Acceptance: **F.41**. + +**Changelog v0.39 → v0.40 the scan remembers what it read.** + +`sniff` was specified as a direct file scan on every call, and the +implementation was faithful: one `open`+`read`+`close` per node, per +call, forever. Measured on a 246-node forest, two thirds of a global +sniff is the operating system opening files while `locate`, which +lives in SQLite, answers the same query in half a millisecond. The cost +is linear in the size of the forest and it is paid by every ask, +including the ones the answer store (J.10.7) serves without a model, +because the reading fingerprint needs a fresh reading before it can +decide. A forest that grows by ingest therefore gets slower at +answering, forever, which is the opposite of what a curated map is for. + +The scan is a **pure function** of a body and a folded term, so it is +memoizable without touching semantics: + +- **The memo (new C.6b.1).** A Vine MAY cache the per-line result of the + literal scan in the derived layer, keyed by (folded term, node), valid + while the node's stored **body hash** matches. Output MUST be identical + to the direct scan, byte for byte this is memoization of the scan, + never its replacement by a tokenized index, so the C.6b split with + `locate` and the literal-substring contract are untouched. Rows record + **non-matches too**: without them the 95% of nodes that never match are + rescanned on every call and the memo buys nothing. +- **Line granularity is normative, not an implementation taste.** The + scan emits one match per *line*, centred on the leftmost term that hit + it, so the union of two per-term memos is not the two-term result. A + memo MUST store enough per line to reproduce the combined snippet. +- **Hash, not timestamp.** Validity is decided by content, so a + `reindex`, a `git pull` that changed nothing, or an edit reverted to + its original text do not invalidate what did not change. `mtime` is + coarse, platform-dependent and can move backwards. +- **The catalog carries the hash (C.6.1).** One more column, written on + every upsert, rebuilt by `reindex` the disposable layer's usual + posture: if it diverges from the files, the files win. +- **Only bodies the hash covers** (`content: inline`). A `reference` + body changes at its source and a `cached` body lives in + `_derived/bodies`, both with no write to the `.md` the hash digests — + they keep the direct scan. +- Acceptance: **F.40**. + +**Changelog v0.38 → v0.39 the snapshot travels.** + +J.13 could take a snapshot and name it, and there it ended: the bundle +was born on the Station's volume and stayed there, reachable only by +the shell the hosted operator does not have. A forest came *back* the +same way `vine snapshot restore` at a terminal. Part I's own use +cases backup, distribution, the team that pulls the whole map in one +small download were promised to exactly the people the host layer +exists to serve, and the host layer did not serve them. Two additions +to J.13, both owner-only: + +- **Download (J.13.1).** `GET /v1/admin/snapshots/{forest}/{file}` + streams a bundle or payload sidecar the J.13 listing already names. + A snapshot is the whole forest with its whole history every branch + scope a grant table enforces collapses the moment the bytes leave — + so the only principal a download cannot over-serve is the one whose + authority already spans everything: the owner bit. Contained after + resolution, audited, and it touches no forest no lane, no trace, + no pheromone, no commit. +- **Import (J.13.2).** `POST /v1/admin/snapshots/import` accepts the + bundle (and optional sidecar) in the request body and restores it + into a forest id that does not exist yet J.7's name validation, + J.7's refuse-if-existing, J.7's grant-to-creator. The J.13 objection + to exposing restore was never restore itself: it was the live-forest + destination and the host path taken from a caller, and import has + neither. The imported forest arrives servable (`reindex` included) + and arrives cold: no model call, no curation, no canopy a bundle + is already forest and enters as-is, which is exactly why the door is + owner-only. +- Part I gains the pointer: a hosted Station moves snapshots over HTTP + under J.13's rules. Restore into an *existing* forest stays a shell + act, as before. Acceptance: **F.39**. + +**Changelog v0.37 → v0.38 the map settles, groups, and replays.** + +The graph mode of J.5.4 drew a thousand-node forest as one trembling +blob: every cluster collapsed onto every other, and a deliberate drift +kept the picture moving forever, so the one console built to show the +shape of the forest was the one console where the shape could not be +seen. The encoding rules gain teeth, and J.11 carries one more passport +fact: + +- **The layout must come to rest (J.5.4).** A map at rest holds still; + motion is spent only on change new data, the operator's hand, or an + explicit reorganize. A forest cannot be pointed at while it trembles, + and "pointing at it" is what a map is for. Distinct regions must read + as distinct: a layout that piles unrelated branches into one heap is + not a presentation choice, it is a map that answers the operator + wrongly. +- **Colour is a choice between facts (J.5.4).** Colour MAY encode the + node's type (the dialect) or its home branch (the id) both are facts + the forest holds. A console MUST NOT colour by a category the forest + does not hold, and whichever fact colour encodes, the legend names it. +- **View tuning belongs to the operator (J.5.4).** Filters, grouping, + label visibility, node scale, link width, force strengths all + presentation, all local. Tuning MAY persist in browser storage per + forest; it MUST NOT enter the address (J.5.8: the address carries the + selection, not the taste) and it MUST NOT spend a call or a write. +- **Growth replay (J.5.4).** A console MAY replay the region in + `created` order: nodes appear as they were planted, trails appear when + both ends exist. Replay is presentation over the projection already in + hand no second call, no write, and under reduced motion it is a + scrubber, not an animation. +- **`created` joins the projection (J.11).** The passport has always + held it and the projection already carries `updated`; a replay of the + forest's growth is a shape question, and shape questions are what J.11 + exists to answer in one call. + +**Changelog v0.36 → v0.37 the batch is visible from every console.** + +v0.36 stopped the ingest console from forgetting a running batch; every +other console still could not say one existed. The operator J.9 freed to +look elsewhere had to come back to know their 1800 documents were still +landing presence was the price of awareness. New section **J.9.3**: + +- **A small indicator on every console of the forest** announces the + running batch and the waiting queue, expanding on demand into the job + record's progress done over total, the document in hand, errors so + far with the cancel and the way to the ingest console. +- **It reads the job board and nothing else.** No browser-storage copy + of a record the host already keeps: a stored id goes stale in both + directions it survives the restart that forgot the record, and it + misses the batch another principal started. Entering a forest asks the + board once; everything after is the watch. +- **One watcher per forest, its cadence following the attention**: the + order of a minute collapsed, the order of seconds expanded or with the + ingest console open, settle-detection pace while a queue waits. + Watching is free in every ledger (J.9), but free is not a licence to + be noisy. + +**Changelog v0.35 → v0.36 the console keeps sight of the batch.** + +J.9.1 put the running job in the address so a reload could not lose it — +and then the operator moved to another console, whose address the query +does not follow, and came back to an empty form while 1800 documents +ingested on. The record was on the board the whole time; only the console +stopped looking. And under that running batch, the submit button told the +operator with the next folder already in hand to come back later a wait +the console could have held for them. Two amendments, both console-side; +the host's contract (one batch per forest, refusal over queueing, J.9) +does not move: + +- **Returning rediscovers the running job (J.9.1).** Entering the ingest + console with no `?job=` reads the job list a record, never a call — + and puts a running job's id back in the address, replacing. What the + operator started is on screen whenever they stand where it runs. +- **The next batch waits in the console, never in the host (new J.9.2).** + The console may stage batches while one runs and submit each as an + ordinary batch POST when the board frees, first in first out. The queue + is tab memory: visible where it waits, never in the address, dead with + the tab which is exactly why it does not reopen the door J.9 closed, + whose danger was *invisible* work that *outlives* its asker. A cancel + holds the queue (stop means everything); a refusal other than + `E_LOCKED` holds it too, shown; `E_LOCKED` means another client won + the race, and the queue simply waits for the job the refusal names. + +**Changelog v0.34 → v0.35 the second hash: the reading decides the +model.** + +v0.33 keyed every answer-store entry by the forest's HEAD, and HEAD is a +hammer. Every write moves it a `tend` in a sales table emptied the +stored answer about architecture, one Ranger promotion emptied the whole +store so on a forest that is actually alive, the store spent its life +empty. The invalidation was never wrong. It was indiscriminate, and +indiscriminate is expensive at exactly the scale the store exists for. + +The fix restates what the store is for. What must never go stale is not +"the forest as of a commit" it is **the model's reading**: the material +the sweep put in front of the provider. The retrieval that assembles that +material is the cheap half by five orders of magnitude, so the sweep now +runs it on **every** ask, hit or miss, and the store fronts the model and +never the search. Two digests, two jobs: the first the question under +its configuration finds the entry; the second the **reading +fingerprint** decides whether the model owes a fresh pass. + +- **The sweep's key loses HEAD; the entry gains the reading fingerprint.** + A digest over the material as a set keyed by id types, titles, + summaries, matches, bodies, the truncation flag and nothing volatile: + not score, not heat, not the serving order, which pheromone reshuffles + on every use. A result that enters or leaves the set is a change of + reading; a reshuffle is not. +- **A hit runs the forest and skips only the bill.** The sweep's + primitives really run, so a hit's trace is its own retrieval's and + the whisper of Part D now closes every hosted answer: heat on the + evidence, hit and miss alike (v0.33 whispered only on hits, telling + the Ranger that bought answers did not matter). The response says + which half is which retrieval fields fresh, model fields the record, + `cached: true` with the time the reply was bought. +- **A reading that changed is a miss, exactly.** A `graft` on a node the + question reads invalidates it; a `plant` in a branch it never touches + invalidates nothing; a `tend` that changes rows but not prose changes no + reading. Heat that pushes a result out of the set or a new one in — + changes the reading and is honestly a miss; the worst case is a bought + run, never a stale answer. +- **The walk stays v0.33.** A forager's path cannot be re-walked without + paying the model per hop, so walk entries keep HEAD in their key, are + served as received, and deposit heat through the trails store. +- **C.6c.2 stops refining index nodes.** Building the fingerprint exposed + a harvest bug: `sniff` resolves an index id to its subtree, so refining + an index result grepped the forest under it children's snippets + attributed to the index, chosen by heat rank, different on every read + (and `pick` then failed to open those foreign sections for content). + An index result now keeps the global sniff's within-body matches. +- Criterion **F.37** rewritten for the reading check. + +**Changelog v0.33 → v0.34 the cap the operator sets.** + +C.6c capped `k` at five because the bundle is spent twice: once by the +engine, in milliseconds, and once by whoever reads it prompt tokens, +prefill, a context window that may not hold twenty thousand tokens of +evidence. That second bill is the deployment's, not the dialect's: a +Station bound to a wide-window model wastes nothing at eight bananas, +and a thin client on a four-thousand-token window chokes on six. One +compiled number cannot be right in both rooms, and until now it was +compiled in. + +- **C.6c: the harvest cap moves to the environment.** + `MONKEYLLM_HARVEST_MAX_K` (an integer >= 1) sets it; unset means **5**, + exactly as before, so no deployment changes behaviour by upgrading. A + value that does not parse, or parses below 1, is refused (`E_SCHEMA`, + naming the variable) never silently corrected, per the project's + reject-early rule. The response budget is untouched and remains the + outer wall: a raised cap buys more items only until the budget + truncates, explicitly, as ever. +- **J.10.7: the key holds the effective `k`.** The cap shapes the + sweep's answer, so the capped value is what names it. A cap raised + between restarts therefore misses cleanly instead of serving + five-banana answers under a ten-banana promise and two callers + asking past the cap stop minting distinct keys for one identical + answer. The walk's `k` (J.10.5) was never capped and keys as given. +- New acceptance criterion **F.38**; F.37's miss list now says the + effective `k`. + +**Changelog v0.32 → v0.33 the answer already bought.** + +The cost of this product has two halves that differ by five orders of +magnitude. Retrieval is a fraction of a millisecond J.10.6 exists because +that fact is invisible from outside and the provider round trip behind an +`answer` is seconds, and the only line on the bill. A deployment in front of +real traffic does not receive an even spread of novel questions; it receives +the same handful all day. Every repetition re-ran the model over the same +harvest of the same forest under the same binding and the same scope, and +paid full price for an answer the deployment had already bought. Nothing in +the call was new. Only the bill was. + +v0.31 ruled that the host keeps no model output (J.5.9), and that ruling +stands unrevised. A *run* is one operator's private working note about an +evaluation kept where it was made, dead with the credential, shareable +with nobody by construction. What v0.33 adds is a different object: an entry +in a per-forest store, named by everything that shaped the call, served only +to callers whose call is the same call, and invalidated by the forest itself +moving. The host still keeps no history of what models said; it keeps the +answer this deployment already paid for, under a key that states exactly +what was paid for. + +- **J.10.7 The answer already given.** `answer` and `answer` alone is + fronted by a bounded per-forest store in `_derived/`. The key is a closed + list: the normalised question, the effective terms, `k`, the hops budget, + the resolved binding, the caller's scope, and the forest's HEAD. Anything + that could change the answer is part of the name of the answer. +- **The forest's own clock is the invalidation.** Every write is already a + commit and HEAD is in the key, so every entry made before a write misses + after it there is no invalidation code to be wrong. A TTL is hygiene, + never correctness. +- **Nothing empty and nothing broken is kept.** A retrieval that found + nothing, an errored or truncated response, a turn that wrote none of + them enter the store. +- **A hit says so, and still heats the forest.** The response is labelled a + record, not a bill; heat lands on the entry's stored trail through the + trails store, never through a primitive. J.6.1's warming rule in mirror: + warming through `locate` would forge evidence of use, and serving from a + store without depositing would hide it. +- **J.10.6 gains `cache`**, present when the store was consulted; on a hit + `model` is absent, because no provider ran. **J.4 records a hit as a + hit**, with the entry's digest, so a served answer still reconstructs. +- **The near question is an opt-in with a disclosure.** Serving on + similarity instead of equality exists only where a Canopy index and an + embedder already do, is off by default, and names the stored question it + answered. +- New acceptance criterion **F.37**. + +**Changelog v0.31 → v0.32 a batch is not a request.** + +Adopting a folder is minutes of work: a converter pass, a model round trip +and a commit *per document*. The Station ran all of it inside the HTTP +request that asked for it, on the one worker thread every forest shares — +an acknowledged simplification, and this is the release that pays it off. +The consequences arrived together, as they always do: the gateway timed the +request out at its own limit and answered 524 while the work kept running, +unwatchable; every console froze, because a `look` on an untouched forest +was queued behind somebody else's ingest; and the operator, shown a dead +spinner over a working batch, learned nothing a progress bar would not have +told them. Three failures, three rules: + +- **Work that outlives a request must not answer as one.** The batch modes + of J.8 `adopt`, `sync`, `upload` now validate synchronously and answer + **202 with a job**: identity, progress, and, when it finishes, the same + unabridged `IngestReport` as before. `compose` is one document and a + review conversation, and stays in place. New section **J.9**. +- **One forest's work must not delay another's.** Isolation between forests + is now normative, not an implementation aspiration: a call on one forest + MUST NOT wait on another forest's work (J.9). The SQLite thread-affinity + discipline was always per forest; the single lane never was. +- **A batch must not starve the forest it is filling.** `adopt` and `sync` + become drainable step iterators in Part G one document per step, the + report as the final value so a host can let reads through between + steps and count progress without a second pipeline. New section + **G.10**; the recorded source root moves to *before* the first step, + which is what makes an interrupted batch completable by `sync` instead + of restartable from zero. + +Progress is watched, not streamed: a job is a host record, reading one +touches no forest, and the console follows it by the address (`?job=`, +J.5.8 discipline restoring a page never spends a call). A second batch on +a busy forest is refused with the running job named, a restart forgets +records but never work, and the MCP `ingest` tool waits by default because +an agent's poll loop is context spent on plumbing. + +- New acceptance criterion **F.36**. + +**Changelog v0.30 → v0.31 judging a forest is a comparison, and the +console kept nothing to compare.** + +Ask is where this product is judged. Somebody types a question, reads the +answer, and then does what everybody does next: asks it again after an +ingest, with the walk turned on, against a model that has since been +rebound. Each of those destroyed the one before it. The console held exactly +one result, in application state, and a reload held none. + +What was lost is not the prose. `answer` comes back with the evidence, the +material the model was actually given, the walk it took, the host's three +clocks and the token cost (J.10.4, J.10.5, J.10.6) the whole apparatus +that turns an answer into something checkable rather than something to +believe. The only way to keep any of it was the markdown download, which +keeps the prose and drops all of it. + +So the console keeps the runs it made, and keeps them **in the browser**. A +run is not a fact about the forest: the forest's own record of that call is +already written the audit row of J.4 and the pheromone of Part D, both at +the moment it ran. What a model said is not curated, not indexed, not +versioned and not reproducible, so a host that stored it would be keeping +model output where forest content lives; and a synced history would copy a +grant's worth of node bodies onto a second machine to make a convenience +work. + +- **J.5.9 The runs already made.** Question, parameters as sent and response + as received, kept by the browser, keyed by principal and forest, discarded + with the credential. +- **A restored run is a record, not a call.** J.5.8's rule one level in: it + says when it was made and which model made it, and asking again is a + deliberate act that leaves a new run beside the old one. +- **A run has no address.** J.5.8 made the console's places linkable; a run + exists only in the browser that made it, so a URL naming one would work + for its author and be broken for everyone else. +- **The bound is stated, never silent** the truncation rule of C.6 applied + to a store instead of a response. +- New acceptance criterion **F.35**. + +**Changelog v0.29 → v0.30 the console gets an address.** + +Every screen of Studio lived at `/`. Which forest was open, which console +was showing and which node was selected were React state and nothing else, +so the address bar said the same eight characters from sign-in to sign-out. +Three consequences, each of them a thing an operator does daily: + +- **a reload lost the place.** F5 is not an exotic gesture it is what a + person does when a panel looks stale and it returned them to the first + forest of their list and the default console. For someone working in the + third forest that is a silent relocation into somebody else's data, and + the console said nothing about having moved them; +- **nothing could be sent to anybody.** "Look at this node" was a sentence + containing directions rather than a link, in a product whose entire + subject is addressable knowledge; +- **Back left the product.** The console had never written a history entry, + so the browser's back button went to whatever preceded the Station. + +The forest is the scope of every request on the page, and the operator +picked it deliberately. It is the one piece of state a console must never +choose again on the operator's behalf. + +- **J.5.8 The address bar.** `/f/{forest}/{console}`, with what the console + has selected in the query. The URL is the console's state, not a + decoration of it: moving writes a history entry, adjusting replaces one, + and rendering never writes at all. +- **A forest that cannot be shown is named, not swapped.** Following a link + into a forest this principal has no grant on MUST say so. Redirecting to a + forest they *can* see is how a person comes to believe they are looking at + a forest they are not. +- **Restoring a place restores a page, never a call.** The address carries + what is being looked at. It MUST NOT carry a model call, a write, or + anything else that spends money or changes the forest on arrival. +- **The host answers the console's addresses.** A deep link is a GET of a + path the API does not own, so the Station serves the shell for it for + *document* requests only, so a missing asset stays a 404 instead of + becoming an HTML page with a JavaScript MIME type. +- New acceptance criterion **F.34**. + +**Changelog v0.28 → v0.29 a client stopwatch is not a measurement of the +engine.** + +The whole claim of this project is a number: navigation is cheap. A +`locate` costs a fraction of a millisecond, and that is the difference +between an agent that may look around and one that must be given everything +up front. The console that exists to show a caller exactly what an agent +sees the Playground was reporting that call at **29 ms**. + +Nothing was slow. The console had no other number to show. It timed the +`fetch` with `performance.now()`, so what it displayed was TLS, the +internet, HTTP, JSON and a React render, with the primitive somewhere inside +it measured in process, that same `locate` is 0.226 ms of engine and +0.58 ms of host. The console printed the transport and labelled it the +call, in accent colour, as the headline of the panel. + +The engine has timed every primitive since Part D. J.10.4 already carries +those numbers out to a caller but only for `answer` and `harvest`, on the +reasoning that "a single primitive already reports its own latency to +whoever invoked it". That is true of a library caller and false of an HTTP +one: over the wire, `elapsed_ms` never leaves the process. Every REST client +of this host has been in the same position as the Playground, with no way to +tell a slow forest from a slow network. + +The fix is not to put a `trace` on every primitive. A response body is the +agent's context window and it is budgeted in tokens (C.6); charging every +`locate` for a diagnostic no agent reads would be paying for the console's +instruments out of the model's pocket. + +- **J.10.6 The host's own clocks.** Every primitive response carries + `Server-Timing` `vine`, `host`, and `model` when a provider ran. It is a + header, so the body is byte-identical and the token budget is untouched; + it is the standard header, so a browser's network panel already draws it. +- **The engine number is the headline, and transport is an aside.** A + console that shows latency MUST lead with the engine's own figure and MUST + NOT present a client-side round trip as the cost of a call. What is being + judged is retrieval; the rest of the span is the reader's own network and + host. It is still stated once, quietly, named as infrastructure because + a small number with no account of the gap is read as a claim. +- **Never a second instrumentation.** `vine` is the sum of the tracer events + the call appended, the same slice J.10.4 already reports. `host` is what + is left of the host's own span after the engine and the provider: policy, + audit, serialisation. Three clocks that add up to the span, or the header + is wrong. +- New acceptance criterion **F.32**. + +**And then the number was measured, which is the point of reporting it.** +With the engine's own clock finally visible, the first call of a fresh +process turned out to cost around ten milliseconds of host against a third +of one from the second call on none of it the corpus, all of it SQLite +waking up. Reporting a number honestly is what makes it worth improving. + +- **C.6.1 amended: derived storage is tuned for reads.** Every read + primitive deposits pheromone, so every read is also a commit; `_derived/` + databases open in WAL with `synchronous=NORMAL`. The durability given up + is durability the derived layer never had the files are the truth and + `reindex` is the repair and it buys roughly a fifth off the median + `locate` and a third off p95. +- **C.6.1 amended: `warm()`.** Storage only, never through a primitive: a + server that warmed itself through `locate` would be forging the pheromone + the Ranger reads as evidence of where callers went. +- **J.6.1 Boot opens the forests.** Default on, off for registries too large + to hold open, best effort so one locked forest cannot stop a Station. + Opening costs what it always cost; this only decides who waits for it, and + the answer should not be "whoever arrives first". +- New acceptance criterion **F.33**. + +**Changelog v0.27 → v0.28 the first minute of a deployment, said out +loud.** + +v0.25 gave a Station with nobody in it a way to acquire somebody. What it +did not do was tell anybody. The first minute of every deployment happens in +a terminal `docker compose up`, a stream of log lines and the product +said nothing there about how to get in, while a convenience left over from +before the owner existed quietly made sure that nothing worked. + +`station serve` minted an `admin` API key on any registry that held no key, +and printed it. Three consequences, each of which alone is a locked door: + +- the key was granted `admin` **per forest**, and a fresh volume has no + forests, so it authenticated as a principal with no authority at all — + `admin: false`, and the first forest refused with `E_FORBIDDEN`. That is + the v0.25 deadlock exactly, re-entered through a door v0.25 did not look + at; +- an API key **is a credential**, so minting one closed the J.2.4 setup + route before the first HTTP request arrived. The setup screen, the + documented first door, could never appear in the shipped image; +- it was printed to a block-buffered standard output, so on the occasions it + would have mattered it did not reach `docker logs` at all. + +The correction is not a bigger banner. It is that **starting a server is not +an act of administration**: a Station MUST NOT acquire a credential by being +switched on, and what it says on first run must describe the door that is +actually open. + +- **J.2.5 The first-run announcement.** On a Station nobody can yet sign in + to, the console output MUST say how to get in: the URL, and which of the + three states the deployment is in. It is keyed on the registry, not on a + flag file, so it appears exactly while it is true and stays quiet on every + later restart. +- **Starting mints nothing.** The registry a Station starts on is exactly as + authoritative after boot as before it. J.2.4's window closes when a person + closes it, never as a side effect of a restart. +- **The bootstrap key is break-glass, and it is asked for.** An operator with + no browser MUST still be able in, so `--bootstrap-key` mints the first key + explicitly, once, and **carrying the owner bit**, because a first + credential that cannot create the first forest is the deadlock with extra + steps. It consumes the same one-shot window as the setup screen, and the + announcement says so: two doors to the same first identity, never open at + the same time. +- **The environment password is never printed.** Echoing a value the + operator already holds adds no way in and adds one copy in every log + aggregator downstream. +- **J.6 amended: the announcement is unbuffered.** A first-run instruction + that arrives when a 8 KiB buffer happens to fill was not delivered. This is + a deployment detail and it is normative, because the feature is worth + nothing without it. +- New acceptance criterion **F.31**. + +**Changelog v0.26 → v0.27 the console can shape the forest it serves.** + +A forest created through the console has exactly one branch: its master +index. Nothing in the console could add a second. The only branch-maker in +the whole product was `adopt`, which does not invent structure it mirrors +a source directory tree so a forest that did not arrive as a folder tree +could only ever be a flat pile at the root, and the operator's one shaping +tool was to go and reorganise a folder on some other machine first, then +ingest it. The Ingest console asked "where do these go?" and offered only +the branches that a past adopt happened to create. + +Nothing in the engine was missing. `plant` already accepts `type: branch`, +already refuses an id that does not live under its parent, already refuses +a duplicate, already grafts the entry into the parent index and commits +both files atomically, and `ScopedVine` already refuses a write outside the +grant. The gap was entirely a console that never called it which is the +best kind of gap, because closing it adds no second way to write. + +- **J.5.7 Shaping the forest.** The console creates a branch through + `plant` and through nothing else. The operator names it; the console + derives the id and never lets anyone type one, because ids are immutable + (C.7) and a typo would be permanent. +- **The destination picker creates.** "Where do these go?" is exactly the + moment the missing branch is discovered, so the branch can be made from + there the same call, not a second one, and not a trip to another + console and back. +- **The boundary is stated, not implied.** There is no move, no rename and + no delete: ids are immutable, a node's id encodes its branch, and no + primitive relocates one. The console can create structure and curate it. + It is not a file manager, and this is written down so nothing is designed + against one that does not exist. +- New acceptance criterion **F.30**. + +**Changelog v0.25 → v0.26 ingest grows a perimeter: every source is +named, vetted, and contained.** + +A forest created through the console and then refreshed from it ingested +the Station's own installation tree. The chain had three links, each +defensible alone: `sync` defaults to the source root a prior `adopt` +recorded (G.3); a forest that has never adopted has no such root; and an +absent root was read as the empty path, which every filesystem API resolves +to *the working directory of the process*. So the one mode J.8 exempts from +the `admin` requirement exempt precisely because its directory was vetted +at adopt time became the one mode that walked a directory nobody had ever +vetted, on behalf of a principal who was never asked for `admin`. + +Three more escapes of the same shape were open beside it. The walk had no +notion of a forest, so a source placed above the registry would have +adopted every neighbouring forest's passports as documents, across the +tenant boundary. A targeted `sync` joined its caller's path onto the source +root and checked containment with `relative_to`, which is lexical: `../../x` +survived the join and came back out as a "relative" path, so the file was +read and planted. And `content: reference` resolved `source_root/source_path` +without checking the result stayed underneath it, which turned `pick` a +*read* primitive into a reader for any file the host process could open. + +None of the four was a missing check inside a feature. They were the same +absent idea, four times: **an ingest source is a boundary, and a boundary +has to be stated somewhere.** This version states it. + +- **G.3 amended: an ingest source is always a named, contained directory.** + The empty source is a caller error, never a fallback to the working + directory. A source MUST NOT be, contain, or sit inside the forest, and + any directory that is itself a forest is pruned from every walk. +- **G.8 amended: a targeted `sync` path is contained after resolution**, + not by string inspection `..` collapses and symlinks are followed + before the comparison, because the lexical check is the bug. +- **G.7 amended: a `reference` body MUST resolve underneath the source + root.** `source_path` is ordinary frontmatter that anything able to + `plant` can set, so this is containment, not trust. +- **J.8.2 Ingest roots, deny-by-default.** The host names the directories + it will read on a caller's behalf, and an unconfigured Station names + none: it accepts `upload` and `compose`, which carry their own bytes, and + refuses every host path. A control that must be switched *on* protects + only the deployments that already knew; a control that must be switched + *off* protects the rest. This is the one rule here that is a default + rather than a check, and it is the one that matters most, because the + operator who most needs it is the one who never reads this document. +- **The registry root is never an ingest source**, listed or not: one + forest reading the volume that holds every forest is the tenant boundary + failing in the only direction that counts. +- **J.6 amended**: a Station's working directory MUST NOT be its own + install tree defence in depth, so that the next path bug lands + somewhere empty. +- **J.8 amended**: a console MUST NOT offer a refresh without naming the + directory it will re-read. A blind button is how this shipped. +- New acceptance criterion **F.29**. + +**Changelog v0.24 → v0.25 the first boot: a deployment that has nobody +yet must still be able to acquire somebody.** + +Every version so far assumed the registry already had an administrator. It +does not on the day it is installed. A Station started on an empty volume +grants the environment super-admin `admin` on every forest *in the registry* +— of which there are none so it authenticates and governs nothing, and +J.7 then refuses it the first forest because creating one requires `admin` +on a forest that already exists. The two rules are individually sound and +jointly a deadlock: the product cannot be reached through its own front +door on the one occasion every deployment goes through. + +The fix is not a wider grant. It is recognising that **the authority to +start a forest cannot itself be derived from a forest**, and giving that +authority somewhere to live. + +- **J.2.4 First-run setup.** While the registry holds no credential, the + Station offers exactly one unauthenticated route that creates the + **owner** and it closes permanently, in the same transaction that + creates them. This is the one place a second authentication path could + hide, so its closing condition is normative and its race is specified, + not left to implementation. +- **The owner is a property of the principal, not a sum of grants.** An + owner holds `admin` on every forest **present and future**, including on + none. Re-granting at boot was the alternative and it is wrong for the + same reason the deadlock exists: it derives authority from the very + thing the owner is needed to create. +- **J.7 amended.** Creating a forest requires `admin` on an existing forest + **or** the owner bit. An unprivileged principal still never can. +- **J.2.1 amended.** The environment super-admin is demoted to what it was + always described as: break-glass. It is no longer the documented way in, + and while it is configured the setup route does not exist one door at a + time, so the two can never race for the same first identity. +- **J.5.6 The setup screen**, pre-identity like the Gate, and the optional + seeded forest that makes an empty console teach something. The seed is + never shipped as content: it is generated, outside the engine, by code + that only calls public primitives. +- New acceptance criterion **F.28**. + +**Changelog v0.23 → v0.24 composing with review: the author sees the +passport before the forest keeps it.** + +`compose` (v0.22) let a person post prose and have the Curator make a node +of it. It planted first and reported afterwards, so the summary that becomes +the scent every later hop navigates by, and the link proposals that become +the Ranger's working set, were facts before anyone had read them. Undoing +them meant editing a node that already existed. + +- **J.8.1 Two-phase compose.** `stage: true` runs the whole pipeline — + converter, curation, G.4.2.1 candidate proposals and stops at the + plant, returning the draft. A second call carrying `draft` accepts it. + Nothing is planted, grafted or committed by the staging call. +- **Accepting re-runs the same pipeline, with the approval pinned.** The + approved passport enters as an `on_curate` hook, so the plant, the commit + and the content policy are the ones every adopted file gets. The model is + not asked twice: it would answer differently, and what shipped would not + be what was approved. +- **The reviewer's edits are re-validated, not trusted.** A returned draft + is a client payload: summaries are re-clipped to the A.4 budget, tags + re-cleaned and capped, and every link re-checked against the closed- + candidate rules of G.4.2.1 `related-to` only, existing and in-scope + targets, never a branch, never self or parent, capped at 3, and pinned at + confidence 0.3 whoever kept it. +- **Staging is not planting, and dry-run is a property of the Gardener.** + `Gardener(dry_run=True)` cannot write: no plant, no graft, no body cache, + no archived bytes, no config. The flag lives on the object rather than on + a call so no path can forget it. +- New acceptance criterion **F.27**. + +**Changelog v0.22 → v0.23 the maintenance surface: the Ranger reports to +somebody.** + +Part H gave the forest a Ranger and Part I gave it snapshots, and both have +been reachable only from a shell. The operator who most needs to know a +branch has grown too wide, or that a hundred link proposals are waiting, is +the one running a hosted Station and they have a browser. + +- **J.13 Maintenance surface.** `GET /v1/admin/health` returns the Ranger's + H.3 report unchanged; snapshots can be created and listed over REST. + Neither is a primitive and neither invents a number: the report is what + `Ranger.health()` already computes. +- **Health is an owner's view, and says so.** The report counts and names + things across the WHOLE forest lint errors, fat nodes, stale passports — + so it requires `admin` *and* an unrestricted scope. A scoped principal is + refused with the reason rather than handed a filtered half-report whose + numbers would quietly describe a forest they cannot see. +- **Restore stays on the command line, deliberately.** Part I restores a + bundle into an *empty* destination; there is no in-place restore to offer, + and a console button that always answers "target is not empty" would be a + worse answer than no button. Disaster recovery is not a web workflow. +- New acceptance criterion **F.26**. + +**Changelog v0.21 → v0.22 Forest Views: the map becomes visible.** + +Everything the Station serves has been legible to an agent and illegible to +a person. `look` returns a digest, `scan` returns a page, and neither ever +shows the shape of the thing being navigated. A forest is a graph with +heat on it; a console that can only render lists is describing a map by +reading out street names. + +- **J.11 Map projections.** Two read-only endpoints `GET /graph` and + `GET /trails` that project the Catalog (C.6.1) and the pheromone layer + (Part D/H.1) as whole-of-region payloads. They add no primitive and no + engine capability: everything they return is already reachable one node + at a time through `look`/`move`/`scan`, and they are subject to the same + J.3 filtering, including the recomputation of every derived count. +- **J.5.4 Forest Views.** The Explore console gains modes over one + selection graph, tree, files and the file view renders each file as + what it is: markdown rendered by default with the stored source one click + away, a dataset payload as a browsable table, an HTML body as a page. + Presentation only: no request, response or permission changes. +- **J.8's fourth mode, `compose`.** A person writes prose in the console + and it enters the forest through the ingest pipeline that already exists + same converters, same curation, same commits rather than through a + second, unaudited door. +- **Editing is a write, not a save.** A console MAY offer rich editing of a + node, and MUST express the result as `graft`/`tend` operations. Writing + a node file directly is forbidden to every surface, the console included. +- New acceptance criterion **F.25** (a map projection discloses nothing a + node-by-node walk would not). + +**Changelog v0.20 → v0.21 the Gauntlet: the vector layer moves from the +entry to the hand:** + +Measurement (2026-08-08, bge-m3 on a local Ollama) established where the +dense layer helps and where it hurts, and the two answers are opposite: + +| Corpus | BM25 R@1 | Hybrid R@1 | +|---|---|---| +| bench-forest, 18 v2 queries | 0.778 | **0.889** | +| forest-fixture, 10 demo queries | **1.000** | **0.400** | + +RRF rewards *agreement*, not correctness. Fusing a fuzzy ranker into one +that is already right can only pull the answer away from rank 1 on the +fixture it dropped `block-loop` from 1st to 4th while the vector list +surfaced the topically-adjacent `speculative-decoding`. So the published +hybrid row does not survive scent-weighted BM25, and v0.19's own +`{{TODO: hybrid re-run}}` is answered in the negative. + +The same rule points at where the layer *does* pay. Entry search already +has a strong query-dependent ranker. **Navigation has none**: `look` orders +edges by heat (past usefulness), `scan` by degree (connectivity), `move` +not at all every one of them blind to what is being hunted right now. +Adding a query-dependent signal there is not fusion; it is the first such +signal, with nothing to dilute. + +- **Part K the Gauntlet.** The forager carries the query vector and the + *frontier* is ordered by proximity to it: which neighbours `look` shows + within its edge cap, which children `scan` returns under its budget, + which way `move` points. Cost is one query embedding per hunt, reused + across every hop; per hop it is a dot product over vectors already in the + Canopy no HTTP, **no tokens**. +- **Strictly optional, and identical when absent.** No embedder, or no + index, or a stale index ⇒ every primitive behaves exactly as in v0.20. + Not degraded: identical. The Gauntlet MUST NOT become a dependency of + navigation. +- **K.4 The mismatch guard**, a defect this work uncovered: the Canopy + records the model that built it and *nothing compared it*. An index built + with `bge-m3` queried by a `gemma4:12b` embedder reported `hybrid = True` + and silently compared vectors from two different spaces. Now a mismatch + disables the dense layer and says so. +- New acceptance criterion **F.24** (absent/stale embedder is byte-identical + to v0.20; conditioning is visible in the response; mismatch disables and + reports). + +**Also in v0.21 J.10.1, the provider the deployment already declared:** + +A Station started with `MONKEYLLM_LLM_ENDPOINT` and its key has already +been told everything the console's provider form would ask for. Asking +again makes an operator copy a secret out of the place that governs it — +the environment, which the deployment rotates and never backs up into a +place that does not. + +- **J.10.1 Environment-declared providers.** They appear configured at + boot, marked `origin: "env"`. The key is resolved from the environment at + call time and **MUST NOT be written to the registry**. The console MUST + refuse to edit or remove one accepting would be undone by the next + restart. A row whose declaration is withdrawn becomes an ordinary console + row rather than being deleted with its bindings. + +**Changelog v0.19 → v0.20 one person, several forests, one decision:** + +v0.19 made the *person* the unit of administration but left the grant step +naming a single forest, so a registry hosting six forests turned "give this +service read access to everything" into six visits to the same form six +requests, six chances to stop halfway, and a token whose real reach was +never visible in one place. The person was one thought; their access was +still shaped like one row of the grants table. + +- **J.2.3 `grant` and `revoke_access` take one forest or several.** `grant` + MAY carry `forests: [, …]` instead of `forest: `, and + `revoke_access` MAY carry a list. The scalar forms remain valid and mean a + one-element list, so every existing client keeps working. +- **A list is not a relaxation.** Each named forest is authorised on its + own (`admin` on *that* forest), applied on its own, and refused on its + own a refusal names the forest and MUST NOT discard the forests the + caller was entitled to grant. This is J.2.3's partial-application rule + applied within a step rather than only between steps. +- **Scope prefixes are forest-local.** `allow`/`deny` apply to every forest + named in the same grant, because a grant is one policy. Branch names are + not portable between forests, so the console offers the branch picker only + when exactly one forest is selected and grants the whole forest otherwise + (J.5.5) the API does not second-guess a caller that knows better. +- **What did NOT change:** the escalation rule (J.2.2). A key still + authenticates a principal, so minting one still requires `admin` on + **every** forest that principal holds which is precisely why the grant + step has to be able to say "these forests" in one request that the + administrator of all of them can make. +- Criterion **F.23** extended: a multi-forest grant lands on every forest + the caller administers, refuses the ones it does not by name, and the + resulting token reads in each granted forest. + +**Changelog v0.18 → v0.19 governance is organised around people:** + +The host grew three governance objects grants, passwords, API keys and +the console grew one screen per object. That is the storage model wearing a +navigation bar. Nobody administers a *grant*; they onboard a **person**, and +onboarding is one thought: this is who they are, this is what they may see, +here is how they sign in, here is a token for their script. Splitting that +across three destinations made the operator hold the model in their head +instead of the interface holding it for them. + +- **J.2.3 `POST /v1/admin/people`** one call applies any combination of + grant, revoke-access, password and token changes to one person, so the + console can offer onboarding as a single form. It is a **composite, not a + new authority**: each part re-checks the rule that already governed it, + and the parts apply in an order that makes a first-time grant usable + (grant first, so a brand-new principal becomes administrable and can then + receive a password and a key in the same request). +- **`GET /v1/admin/people`** the person-shaped read the console needs: + identity, grants, password presence, tokens and last-seen in one object, + filtered by J.3.2. Assembling this client-side from three endpoints made + the console's shape depend on the registry's. +- **J.5.5 The People console** replaces the separate Access and Tokens + screens: a list of people, a detail view per person carrying everything + about them, and a credential-shaped tab for the operator who wants to + audit tokens rather than people. +- **What did NOT change:** every enforcement rule. `admin` on the forest to + grant, `administers_fully` to touch a credential, the environment account + refusing a stored password, per-forest filtering on read. A convenience + endpoint that relaxed any of them would be a new way in wearing the + clothes of a better form. +- New acceptance criterion **F.23** (the composite performs each part under + its own rule and refuses the parts it may not do without abandoning the + parts it may; onboarding in one call yields a working sign-in and a + working token). + +**Changelog v0.17 → v0.18 administration stops being global:** + +Asking "should the console hide what a person cannot do?" turned into an +audit of every host route, and the audit found the real defect. Every +`/v1/admin/*` route correctly refuses a non-administrator but it treated +`admin` **on any forest** as a licence to read **every** forest's +governance data. An administrator of one forest could list every principal +in the registry with their exact branch prefixes, and read the complete +audit log of forests they cannot open. J.2.2 already closed this shape for +API keys; the same reasoning was never carried to the rest. + +- **J.3.2 Administration is per forest.** Holding `admin` somewhere admits + a caller to a host route; it never entitles them to rows about forests + they do not administer. Every host route MUST filter its result to those + forests, and a route that cannot be filtered MUST require admin + everywhere instead. +- **J.5.1 revised** a console the principal cannot use is now **omitted + from navigation** rather than shown with an explanation. Corporate + operators read a menu as a list of what they may do, and an entry that + only ever refuses teaches nothing that a support conversation would not + teach better. +- **Hiding is presentation and MUST NOT be the control.** The view keeps + its own capability guard, and the API remains the authority: navigation + is a convenience over a decision the server already made and would make + again for a request the console never sent. +- New acceptance criterion **F.22** (every host route refused without the + capability; per-forest filtering proven with a two-forest registry and a + partial administrator; navigation contains exactly the permitted + consoles). + +**Changelog v0.16 → v0.17 credentials get a front door and a lifecycle:** + +v0.16 made the console usable; it left the credential that opens it with no +story at all. A key was minted by a CLI or hidden inside the grant form, +never listed, never expiring, never revocable, with no record of last use — +and the only way into the console was to paste one. That is the opposite of +governance: the object that grants access was the one object the governance +console could not govern. + +- **J.2.1 Two doors, one identity.** `POST /v1/auth/login` exchanges a + username and password for a **session token**, which is an ordinary API + key with a short lifetime. Machines keep pasting keys. Both arrive at the + same `authenticate()` and the same J.3 policy, so there is exactly one + authorization path no matter which door was used. +- **The environment super-admin** `MONKEYLLM_STATION_ADMIN` and + `MONKEYLLM_STATION_PASSWORD` is verified against the environment and + never stored: it is break-glass, and hashing a value that already sits in + the environment protects nothing while giving a rotation two places to go + wrong. +- **J.2.2 Token lifecycle** label, expiry, revocation, last use, and a + non-secret prefix so a token can be recognised in a list without being + disclosed. Expired and revoked keys MUST fail authentication, which is + where a lifecycle either exists or does not. +- **The escalation rule that makes delegated token issuance safe:** minting + or revoking a key for a principal requires `admin` on **every** forest + that principal holds a grant on not merely on one of them. +- **J.5.4 Tokens console**, and the explicit ruling that there is **no + second, super-admin panel**: one console over one API, with capabilities + deciding what appears. A second panel needs a second authentication path, + and a second authentication path is where the backdoor goes. +- New acceptance criterion **F.21** (login, session expiry, revocation, + last-use, prefix-only listing, and the cross-forest escalation refusal). + +**Changelog v0.15 → v0.16 the console becomes usable by someone who has +not read this document:** + +v0.14 and v0.15 gave the Station a front door and a choice of reader. Both +were specified from the storage model outward, and the console inherited +that: it asked an operator for capability sets and comma-separated branch +prefixes, offered no way to start a forest or put anything into one, and +spoke one language in one theme. A governed knowledge base that only its +own author can operate is not a product. v0.16 specifies the console as a +first-class contract rather than a rendering of the registry. + +- **J.5 rewritten** a normative information architecture (nine consoles + in three groups), the rule that **the console MUST address the operator + in the operator's vocabulary**, not the policy model's, and two + requirements the previous version left to taste: localisation + (English, Portuguese, Spanish) and both light and dark presentation. + The no-side-channel rule is unchanged and now explicitly covers strings: + a translation MUST NOT alter what a surface returns. +- **J.7 Forest lifecycle** `POST /v1/admin/forests`, so a deployment can + reach its second forest without shell access to the volume. Creation is + A.5 `init_forest` and nothing else; the id is validated against path + escape before it is a path, and the creator is granted the forest so a + newly created forest is never orphaned. +- **J.8 Ingest surface** the Gardener (Part G) reached over REST, with + `adopt`, `sync` and a **staged upload** for operators who have a browser + and no shell. Requires the `ingest` capability; the destination branch is + scope-checked, so ingest cannot be used to write where reads are denied. +- **The naming reuse, stated plainly:** J.7 named "out of scope for Part + J" in v0.14 and became J.11 in v0.15. In v0.16 the free slot is reused + for the forest lifecycle. Cite J.11 for the exclusions. +- New acceptance criterion **F.20** (console: every string localised in all + three languages, both themes, and the scoped principal's console shows a + scoped world; forest creation refuses path escape; ingest refuses to + write outside scope). + +**Changelog v0.14 → v0.15 J.10, per-forest inference (the forest picks its +own model):** + +Part J gave forests a front door; v0.15 lets each one choose who reads it. +A forest is not one workload: ingest wants a careful summariser whose output +every later hop navigates by, while answering wants a fast reader that +follows instructions. One global `MONKEYLLM_LLM_*` cannot express that, and +it cannot express "this corpus stays on a local endpoint while that one uses +a hosted model" either. + +- **J.10 Providers and role bindings** operators register any + OpenAI-compatible `/v1` (OpenRouter, LiteLLM, vLLM, local llama.cpp) in + the host registry, then bind a model per `(forest, role)` with + `role ∈ {ingest, answer, vision}`. Credentials are write-only across + every surface: the API accepts a key and reports only whether one is + set. +- **J.10.3 Model-backed composites** `answer` (retrieval + the forest's + answering model, returning a grounded reply with its evidence) and + `curate` (re-summarise a node through the ingest model, under the A.4 + scent rules). Both are host composites, not primitives: the engine gains + nothing. +- **The invariant that makes this safe:** the retrieval half runs through + `ScopedVine` *before* the model is called, so a bound model only ever + sees material the principal could already read. Binding a model MUST NOT + become a way around J.3. +- New acceptance criterion **F.19** (secrets never returned; bindings + refuse unknown providers/roles; the answering model receives only + in-scope material). + +**Changelog v0.13 → v0.14 Part J, the Station (the forest gets a front +door):** + +Everything up to v0.13 assumes one operator who owns the filesystem. +Corporate self-hosting needs the shape the database products converged on: +an untouched engine wrapped by a host that adds identity, policy, audit and +a friendly surface. Part J specifies that host and specifies it as a +**privileged client**, not an extension: the engine gains nothing, loses +nothing, and its test suite MUST pass unedited. + +- **J.1 The Station** one self-hostable service mounting a forest + registry (the `--root` resolution that already exists) and exposing + three surfaces REST, MCP, Studio over exactly one enforcement core. + No surface may reach an unscoped `Vine`. +- **J.2 Identity** principals (users and service tokens), per-forest + roles, API keys now and OIDC later. Identity and policy live in the + **host registry**, never inside a forest: forests are content. +- **J.3 Policy (`ScopedVine`)** deny-by-default grants over **branch + prefixes** plus a capability set, with one enforcement rule per + primitive. Two invariants make it trustworthy rather than merely + configured: scope filtering MUST precede budgeting (no truncation + oracle) and out-of-scope MUST be indistinguishable from absent (no + existence oracle) including through `move`'s edges, which would + otherwise leak a forbidden node's existence. +- **J.4 Audit** writes stay git commits, now stamped with the acting + principal; reads extend the Part D telemetry with principal identity. +- **J.5 Studio** the web console, itself a plain REST client with no + privileged side-channel. +- New acceptance criterion **F.18** (the leak suite: one test per + primitive per surface, plus the two oracle invariants). + +**Changelog v0.12 → v0.13 branch rollup + Landmarks (the map grows a +sense of place):** + +The branch hierarchy already occupies the position that graph-RAG systems +pay dearly to discover (hierarchical communities); what it lacked was +synthesized content at each level. Two additions, zero new primitives: + +- **G.4.4 Branch rollup** after adopt/sync curation, the Gardener MAY + synthesize branch (`_index.md`) frontmatter summaries bottom-up (deepest + branch first) from the children's entry lines. Scope is strictly + branches with `source: ingest` (hand-authored branch summaries are never + rewritten; an explicit `--all` override exists). A.4 summary rules apply + (validate-and-retry); LLM failure falls back to a deterministic composed + summary and never blocks (same posture as G.4.2). Writes go through the + C.8 `graft` path, so verbatim propagation into parent index entries and + `.md`-only commits are inherited, not reimplemented. Rollup cost is + O(branches), not O(nodes) the lazy end of the graph-RAG spectrum. +- **A.5 entry-sync rule tightened** when a summary change propagates + into a `## Sub-branches` entry, the entry's trailing coverage suffix + (`. N bananas, M sub-branches.`) MUST be preserved (previously it was + silently dropped by the sync rewrite). +- **A.5 `## Landmarks` implemented as a Ranger duty (H.7)** the master + `_index.md`'s Landmarks section (already normative since v0.5) is now + populated mechanically: top 10-20 highest-degree non-branch nodes from + the catalog's edges table, entry lines with summaries, idempotent + refresh through the audited `.md`-only path (`ranger(landmarks): …`). + Zero LLM involvement. +- New acceptance criterion **F.17** (rollup scope/fallback/propagation + + Landmarks idempotence). + +**Changelog v0.11 → v0.12 Gardener v2: native DOCX + edge proposals (the +forest starts weaving itself):** + +Two Gardener extensions, both strictly inside the edges-only surface (G.2): + +- **G.2.1 DOCX built-in converter** `.docx` joins the built-ins when + `python-docx` (MIT; lxml, BSD) is importable, mirroring the `openpyxl` + pattern. Single-pass `w:t` traversal in document order: body paragraphs + (style-mapped headings), tables (→ pipe tables), and text inside embedded + text boxes (`wps:txbx` / legacy `v:textbox`); fragmented runs merge + naturally by joining a paragraph's `w:t` descendants. Headers/footers are + EXCLUDED (page-number/letterhead boilerplate is scent noise). Technique + derived from the owner's pdf-replace project (MIT-clean reading side). + No `python-docx` → `.docx` files report `unsupported`, never a crash. +- **G.4.2.1 Edge proposals** LLM curation MAY now propose `related-to` + links from the adopted node to EXISTING nodes, each carrying link-level + `confidence: 0.3` (the C.8 ladder's bottom rung). Candidates come from + the catalog (BM25 over curated metadata); the model can only pick from + the offered list a hallucinated target is structurally impossible. + This closes the loop with Part H: the Gardener proposes, usage heats, + the Ranger promotes (0.8) or prunes. Entity EXTRACTION (creating new + `entity` nodes) stays deferred: it needs a placement policy and a + `same-as` dedup story first. +- New acceptance criterion **F.16** (DOCX fidelity + proposal guard rails). + +**Changelog v0.10 → v0.11 the map is not the territory (tiered storage, +big sources, S3-ready):** + +A 2 TB source must not require 4 TB locally. The forest splits into three +tiers SCENT (passports: summaries/outlines/links, ~0.1% of source size, +always local, in git), FLESH (converted full text, ~1-5%, local, git or +derived cache), BONE (raw binaries, 95%+, stay at the source / object +storage, fetched rarely). New normative items: + +- **G.7 Content & archive policies** per-adoption `content: + inline | cached | reference` and `archive: never (default) | always`. + Non-inline bodies are resolved lazily by `pick`/`sniff`; the map + (locate/look/scan, heat, curation) never needed the body and is + unaffected. `archive: never` kills the redundant `_assets/` copy when + the source is durable. +- **G.8 Targeted sync & triggers** `sync(path=...)` reprocesses a single + source file; an mtime+size fast-path avoids re-hashing unchanged trees. + Event sources (filesystem watchers, S3/Drive push notifications) are + EDGES that call targeted sync; **events trigger, the hash-diff + reconciler stays authoritative** (lost events are healed by the next + full sync). +- **G.9 Payload fetchers** `payload`/`source_path` MAY carry a scheme + (`file://` implicit; `s3://` via optional MIT extra). Remote payloads + download on first use into `_derived/payloads/` (hash-validated cache). + Dataset `.db` files are **local-first by design** (SQLite cannot be + queried remotely; hot knowledge bases need sub-ms reads) object + storage holds them only as backup/cold tiers. +- **H.6 Cache eviction** the Ranger evicts cold entries from + `_derived/payloads/` (LRU by last access; config `payload_cache_gb`). +- **Part I Snapshots**: `vine snapshot create|restore` packages the + forest as a `git bundle` (full commit history travels along) + + compression, optionally uploaded to object storage; payload sidecar + optional. The Ranger MAY schedule snapshots (backup policy). +- Informative (G.4 note): **progressive curation** adopt the skeleton + deterministically first (the engine answers immediately with weak + scent), then LLM-curate as a background queue prioritized by heat: the + pheromone tells the Gardener where to polish first. Querying an + UNMAPPED source per-question is the anti-pattern this project exists to + kill (O(corpus) per question vs O(corpus) once + O(hops) per question). +- New acceptance criterion **F.15** (policies + targeted sync; fetcher/ + snapshot coverage lands with their implementations). + +**Changelog v0.9 → v0.10 Part H: the Ranger (long-term maintenance the +forest forgets, confirms and warns):** + +The pheromone layer only compounds if it can also FORGET: without +evaporation every trail saturates at 1.0 and heat stops carrying signal; +without pruning, agent proposals (confidence 0.3/0.5) accumulate as noise. +New normative items: + +- **Part H (Ranger)** the maintenance daemon: heat evaporation with a + configurable half-life over `_derived/trails.db` (H.1); promotion and + pruning of uncertain links links born with link-level + `confidence < 1.0` are the ONLY Ranger-managed edges (H.2); a read-only + health report: `needs_split`, fat nodes, lint issues, stale passports, + low-confidence inventory (H.3); on-demand run + service loop (H.4). +- Ranger is **trusted infrastructure** (like the Gardener): evaporation + touches only the derived layer (no commits `_derived/` is disposable); + promotion/pruning write through the audited `.md`-only path with commit + messages `ranger(promote): …` / `ranger(prune): …`. +- The Ranger NEVER deletes nodes, never touches structural edges or any + link without a link-level confidence field, and never performs `same-as` + physical compaction (still human-approved, still out of scope). +- New acceptance criterion **F.14** (synthetic-clock evaporation, + promotion/pruning safety, health report). + +**Changelog v0.8 → v0.9 Part G: the Gardener (brownfield ingest, the +forest learns to grow itself):** + +The dominant real-world scenario is **adoption**: the engine is pointed at a +directory tree already full of documents ("mata alta") and must curate all +of it then notice when source files change. New normative items: + +- **Part G (Gardener)** the ingest pipeline: passport policy (G.1), + public converter contract with three discovery sources forest-config + command hooks, `monkeyllm.converters` entry points, built-ins (G.2); + `adopt` (mirror an existing tree: folders → branches, files → passports, + deterministic placement) and `sync` (hash-diff incremental update) (G.3); + curation stage with forest-level curation config and `on_curate` hooks — + the only LLM-dependent stage, always skippable (G.4); media via the same + converter contract: transcript/description is the body, the raw asset is + the payload (G.5). +- **C.7.1 extension: initial `rows` at birth** `plant` of a dataset MAY + carry `rows` per table, inserted **parameterized** (never SQL text) before + `payload_hash` is computed. Bulk loads bypass neither the schema + validation nor A.3.1 and avoid `tend`'s keyword scanner false-positives + on arbitrary data. +- **Extension surface is edges-only (normative)**: plugins exist for what + goes IN (converters, curation hooks). The primitives' semantics, budgets + and security guards are NOT extensible. UIs/automations (dashboards, + upload bots) are *clients* of the MCP server or the library they need + no plugin API. +- New acceptance criterion **F.13** (adopt/sync end-to-end). + +**Changelog v0.7 → v0.8 dataset birth: declarative schema in `plant` +(Phase 2, the living bank grows its own organs):** + +`tend` (C.10) writes rows into datasets that already exist; until now no +primitive could *create* a dataset the `.db` was born only in offline +generators. v0.8 closes the loop so an agent can collect data (web, PDFs, +conversations), give it a structured home, and fill it all through the +primitives. Normative items: + +- **C.7.1 Dataset planting** `plant` of a `type: dataset` node accepts an + optional **declarative `schema`** object (tables → columns → types). The + Vine generates the DDL itself (names regex-validated, types from an + allowlist), creates the SQLite payload, computes `payload_hash`, and + auto-generates the `## Query manual` body section from the schema. **No + raw DDL ever comes from the model** creation-time structure is data, + not SQL. +- **`tend` is unchanged**: DDL stays forbidden there forever. The separation + is temporal creation (rare, structured, validated whole) vs operation + (frequent, single-statement DML). `ALTER TABLE` after birth is out of + scope (plant a new dataset and migrate, or wait for the Gardener). +- A.3.1 holds with zero new machinery: the payload is created on the + filesystem, only the `.md` (with `payload` + `payload_hash`) is committed. +- New acceptance criterion **F.12** (schema validation, payload creation, + auto manual, atomic rollback covered by tests). + +**Changelog v0.6 → v0.7 `tend`: dataset writes (Phase 2 entry, the living +bank):** + +`query` stays read-only by design; agent writes to dataset payloads get +their own primitive with a hard guard rail. New normative items: + +- **C.10 `tend(id, sql)`** the 10th primitive: single-statement + INSERT/UPDATE/DELETE on a `type:dataset` node's SQLite payload, with an + audit commit of the node's `.md` (`payload_hash` refresh) the binary + still never enters git (A.3.1 unchanged). Full contract in C.10. +- **Lint: payload drift warning** `vine validate` MUST warn when a node's + `payload_hash` no longer matches the payload file's sha256 (completes the + A.3 drift-detection promise; `tend` keeps the hash fresh, out-of-band + edits become visible). +- New acceptance criterion **F.11** (tend guard rails + audit, covered by + tests). + +**Changelog v0.5 → v0.6 shout trigger measures the real trail (Part D):** + +The shout never fired in practice: 39 successful hunts across the fixture and +the bench forest produced zero shortcut suggestions. Root cause: the trigger +reused `hops-to-banana`, which counts only `look`+`move` calls before the +FIRST `pick`/`query` but agents traverse deep chains with **pick chains** +(`locate → pick → pick → pick`), so the counter stays at 0–2 even on long +winning trails. Normative changes: + +- New session metric **`trail_len`**: the number of traced read-primitive + calls (`locate`, `sniff`, `look`, `move`, `scan`, `pick`, `query`) made + strictly BEFORE the first harvest (`pick`/`query`) of a node listed in + `outcome.answer_nodes`. `null` when no answer node was harvested. +- `close_session` MUST suggest shortcuts (`suggest_shortcuts`) when + `trail_len >= 4` (threshold unchanged). The shout edge itself is still the + orchestrator's decision (C.8 reinforce-before-create applies). +- **`hops-to-banana` is unchanged** (look+move before the first harvest) — + it stays a Monkey Bench metric for longitudinal comparability; it is no + longer the shout trigger. + +**Changelog v0.4 → v0.5 canonical English vocabulary (normative):** + +The tool's vocabulary is English. Every contract token that was Portuguese +is renamed; the Portuguese tokens are **removed** (clean break, pre-release — +no alias layer). A forest MAY still declare extra types/rels of its own in +`_meta/schema.md` (the dialect stays data-driven), but everything the Vine +hardcodes, emits or parses now uses the English tokens below. + +| Kind | v0.4 (removed) | v0.5 (canonical) | +|---|---|---| +| node type | `galho` | `branch` | +| node type | `nota` | `note` | +| node type | `documento` | `document` | +| node type | `entidade` | `entity` | +| node type | `conceito` | `concept` | +| node type | `evento` | `event` | +| node type | `midia` | `media` | +| node type | `dataset` | `dataset` (unchanged) | +| rel | `parte-de` / `contem` | `part-of` / `contains` | +| rel | `relacionado-com` | `related-to` | +| rel | `mencionado-em` / `menciona` | `mentioned-in` / `mentions` | +| rel | `autor` / `autor-de` | `author` / `author-of` | +| rel | `comparado-com` | `compared-with` | +| rel | `derivado-de` / `origem-de` | `derived-from` / `origin-of` | +| rel | `same-as` | `same-as` (unchanged) | +| rel | `atalho-descoberto` | `discovered-shortcut` | +| rel | `sucede` / `precede` | `succeeds` / `precedes` | +| `entity_kind` | `pessoa`, `organizacao`, `produto`, `lugar`, `outro` | `person`, `organization`, `product`, `place`, `other` | +| `source` | `agente` | `agent` (`manual`, `ingest` unchanged) | +| A.5 heading | `## Sub-galhos` | `## Sub-branches` | +| A.5 heading | `## Bananas diretas` | `## Direct bananas` | +| A.5 heading | `## Trilhas cruzadas` | `## Cross trails` | +| A.5 heading | `## Landmarks` | `## Landmarks` (unchanged) | +| `coverage` format | `"N bananas, M sub-galhos"` | `"N bananas, M sub-branches"` | +| dataset body section | `## Manual de consulta` | `## Query manual` (source of C.2 `query_manual`) | +| A.4 anti-patterns | "este documento descreve", "arquivo contendo" | "this document describes", "file containing" | +| C.8 shout metadata | `discovered_by: agente` | `discovered_by: agent` | + +Test data remains Portuguese where it is content (fixture corpus prose, +titles, summaries, ids, tags, demo/bench questions and prompts); only the +structural tokens above change there. + +**Changelog v0.3 → v0.4:** + +- **C.0 Forest registry (multi-forest serving)**: one MCP server MAY host many + forests under a root directory (`vine serve --root DIR`). Every tool gains + an optional trailing `forest: string` parameter selecting the target forest; + a new `forests()` tool lists what the registry serves. Forests open lazily + on first touch (auto-index included). Single-forest mode (`--forest`) keeps + the previous behavior `forest` is optional there so v0.3 clients are + not broken. +- New acceptance criterion F.10 (registry: selection, lazy open, path safety, + single-forest backward compatibility). + +**Changelog v0.2 → v0.3:** + +- New composite MCP tool **C.6c `harvest`**: zero-LLM, one-shot retrieval for + clients that bring their own model. Fuses `locate` + `sniff` (RRF), returns + ranked bananas with full body or matched sections plus exact snippets. + It is an orchestration over existing primitives the nine primitive + contracts are untouched. +- Three integration modes documented (C.6c intro): direct navigation + (client LLM drives the primitives), harvest (one call, evidence back), + concierge (local SLM hunts and answers). Configuration picks the default; + the MCP client's LLM may choose per call. +- New acceptance criterion F.9 (harvest quality + budget). + +**Changelog v0.1 → v0.2:** + +- New read primitive **C.6b `sniff`** (the sniffer): literal search over node **bodies**, returning node + section + snippet. Complements `locate` (which stays restricted to curated metadata C.1 contract intact) covering the case "exact term buried in the body, invisible to summary/tags". +- **A.3.1 Binary payload policy**: binaries never enter the forest's Git Vine versions `.md` only (enforced at the commit layer); payloads are referenced by `payload` + `payload_hash` and excluded by the forest's `.gitignore`. +- Acceptance criterion F.1 updated to include C.6b; new criteria F.7 (sniff quality) and F.8 (payloads outside Git). +- Nothing else changes: every other contract is identical to v0.1 (which stays archived for history). + +--- + +## Part A The Forest Dialect (`_meta/schema.md`) + +`schema.md` is a living file inside the forest that declares the valid types. The Vine MUST validate every write (`plant`/`graft`) against it. The agent MAY read it via `look("_meta/schema")` to learn the dialect in 1 hop. + +### A.1 Node types (`type`) + +| `type` | Description | Payload | Harvest verb | +|---|---|---|---| +| `branch` | Index file (`_index.md`) of a folder | | `look` | +| `note` | Free-text knowledge (default banana) | | `pick` | +| `document` | Converted document (PDF/DOCX origin) | original in `_assets/` | `pick` | +| `dataset` | Tabular data | sibling SQLite (`.db`) | `query` | +| `entity` | Person, organization, product, place (subtype in `entity_kind`) | | `pick` | +| `concept` | Definition / technical term | | `pick` | +| `event` | Dated fact (meeting, decision, release) | | `pick` | +| `media` | Image/audio/video with description or transcript | original in `_assets/` | `pick` | + +Rules: +- New types MUST be added to `schema.md` before first use; the Vine rejects an unknown `type` (`E_SCHEMA` error). +- `entity` MUST have `entity_kind` ∈ {`person`, `organization`, `product`, `place`, `other`}. + +### A.2 Edge types (`rel`) + +Edges are directed, typed, and declared in the source node's frontmatter (`links:`). The derived layer materializes the inverses automatically. + +| `rel` | Inverse (derived) | Semantics | +|---|---|---| +| `part-of` | `contains` | Logical hierarchy (not the physical folder hierarchy) | +| `related-to` | `related-to` | Generic association (symmetric) | +| `mentioned-in` | `mentions` | Entity cited in a document | +| `author` | `author-of` | Authorship | +| `compared-with` | `compared-with` | Technical contrast (symmetric) | +| `derived-from` | `origin-of` | Provenance (note derived from document, dataset from export, etc.) | +| `same-as` | `same-as` | **Soft merge** of duplicate entities (symmetric) | +| `discovered-shortcut` | | The monkey's shout (created by `graft`, see Part C.8) | +| `succeeds` | `precedes` | Temporal order between events/versions | +| `supersedes` | `superseded-by` | Replacement (v0.58): the successor makes the predecessor history — the sweep suppresses the target by default (C.6c.4). `succeeds` orders moments without judging them; `supersedes` judges. | + +Rules: +- A `rel` outside this table → `E_SCHEMA` error (the table grows by editing `schema.md`, never ad-hoc). +- **The refusal names the set that WOULD be accepted (v0.61).** The table + above is the engine's default; the forest's own `_meta/schema.md` is the + authority at runtime, so a rel the engine ships may legitimately be + absent from a given forest a forest created before `supersedes` existed + declares nine rels and refuses the tenth, which is this rule working as + designed. What was not working is the refusal: `unknown rel + 'supersedes'`, with no `hint`, in the one case where listing the + forest's declared rels answers the question completely and costs a + sorted join. C.12's envelope requires an actionable hint on every + refusal; `E_SCHEMA` for an undeclared `type` or `rel` MUST therefore name + the forest's declared set (clipped, with the count, if it is long) and + say where it is declared. Applies to `plant`, `graft` and every other + path that validates against the dialect a caller must never have to + guess a vocabulary the forest can simply state. +- `same-as` MUST NOT delete nodes; physical merging is the Ranger's compaction alone (out of Phase 0 scope). +- Maximum of 50 `links` per node; above that the node is a candidate to become a branch (signal for the Ranger). + +### A.3 Normative frontmatter + +Fields required on **every** node: + +```yaml +id: string # stable slug, unique in the forest, = relative path without .md +type: string # one of the A.1 types +title: string # human title (mutable; id never changes) +summary: string # 1-3 sentences, <= 60 tokens. THE SCENT. See A.4. +created: date # ISO 8601 +updated: date # ISO 8601, refreshed on every graft +``` + +Optional fields: + +```yaml +tags: [string] # free vocabulary, lowercase, no accents +links: [{rel, target}] # typed edges (A.2) +confidence: float # 0.0-1.0; default 1.0; <1.0 = unconfirmed knowledge +source: enum # manual | ingest | agent +payload: string # sibling file name (datasets/media) +payload_type: enum # sqlite | pdf | docx | image | audio +payload_hash: string # sha256 of the payload (drift detection) +entity_kind: enum # only for type: entity +aliases: [string] # alternate names (used by lexical locate) +origin: string # where this document came from (v0.57): one URI + # (path, URL, commit ref) — free-form, <= 2048 + # chars, no whitespace or control characters +``` + +Rules: +- `id` is immutable. Renaming = creating a new node + `same-as` + tombstone (out of Phase 0 scope; renaming is forbidden in Phase 0). +- The parser MUST reject invalid frontmatter with `E_FRONTMATTER` and the field's path. +- `origin` (v0.57) is provenance toward the world outside the forest — + the complement of `derived-from`, which is node↔node. It is mutable + (`set_frontmatter`), returned by `look` whenever present, filterable in + `scan`. The engine MUST NOT dereference it: it is an address a person + or a reconciliation job follows, never a fetch instruction. One token: + whitespace or control characters are `E_SCHEMA` (the same rule as J.8's + `source_url`, for the same reason — an `origin` with a newline is prose + wearing a field). + +#### A.3.1 Binary payload policy (v0.2) + +Binaries **never enter the forest's Git**. Normative: + +1. The Vine MUST NOT version anything beyond `.md`: `plant`/`graft` stage only markdown files (hard guard at the commit layer, not convention). +2. The forest's `.gitignore` MUST exclude binary payloads (`*.db`, `*.sqlite`, `_assets/`), plus `_derived/` and `.vine.lock`. +3. The payload lives on the filesystem next to the node (or in external storage, in future phases) and the **node** versions only the reference: `payload` (name) + `payload_hash` (sha256). Binary drift is detected by hash, not diff. +4. Rationale: Git delta-compresses text, not binaries frequently updated payloads would blow up the repository. The versioned knowledge is the distilled layer (markdown); heavy data is referenced, not embedded. + +### A.4 The `summary` specification (the most critical component) + +The `summary` MUST let an SLM decide "does this node matter to me?" without opening the body. Normative format: + +1. **Sentence 1:** what it is (category + subject). +2. **Sentence 2:** the key content (concrete numbers, names, time scope). +3. **Sentence 3 (optional):** what is NOT here / where the complement lives. + +- Limit: 60 tokens (validated by the Vine at `plant`). +- FORBIDDEN: "This document describes...", "File containing..." (anti-patterns that spend tokens without scent). +- Good: `"Sales by region and SKU, Jan-Mar 2026, 14,302 rows with margin and channel. Does not include returns (see sales/returns-q1)."` + +### A.5 The `_index.md` specification (branch) + +Required structure, in this order: + +```markdown +--- +id: /_index +type: branch +coverage: "N bananas, M sub-branches" +updated: +--- + +# + +> <1-2 sentences: what lives here + where to go if not here> + +## Sub-branches +- [[]] . . + +## Direct bananas +- [[]] + +## Cross trails +- → [[]] +``` + +Rules: +- Entries replicate the child nodes' `summary` VERBATIM (the Gardener/Vine keeps sync; humans do not hand-edit these lines). +- Sync rewrites of a `## Sub-branches` entry MUST preserve the trailing coverage suffix (`. N bananas, M sub-branches.`) v0.13. +- A branch's frontmatter `summary` MAY be synthesized bottom-up by the Gardener from the children's entries (G.4.4) when the branch was born from ingest; hand-authored branch summaries are never rewritten. +- A branch with > 150 entries or > 3,000 tokens → `needs_split` flag for the Ranger. +- The master branch (`/_index.md`) MUST additionally contain a `## Landmarks` section (10-20 highest-degree nodes, with summary). The Ranger keeps it fresh mechanically (H.7, v0.13): top non-branch nodes by degree over the typed-edge table, idempotent, audited `.md`-only commit. + +--- + +## Part B Identity, Trail and Addressing + +- **Canonical ID:** path relative to the root, without extension. E.g.: `projects/mixerllm/architecture`. +- **Trail:** list of IDs from the root to the node. E.g.: `["_index", "projects/_index", "projects/mixerllm/_index", "projects/mixerllm/architecture"]`. +- Wikilinks in the body use `[[id]]` or `[[id|text]]`. The parser resolves `[[...]]` only against canonical IDs (no fuzzy match ambiguity is a Ranger lint error, not runtime guessing). + +--- + +## Part C Primitive Contracts (Vine server, MCP) + +Transport: MCP (stdio for dev; HTTP/SSE on Docker). All responses in JSON. Errors follow `{error: {code, message, hint}}` with codes `E_NOT_FOUND`, `E_SCHEMA`, `E_FRONTMATTER`, `E_READONLY`, `E_QUERY_FORBIDDEN`, `E_QUERY_INVALID` (v0.47, C.5.2), `E_TIMEOUT`, `E_LOCKED`, `E_ANCHORED` (v0.56, C.14), `E_MOVED` (v0.58, C.15 — HTTP 404, `data.moved_to` when the new address is in the reader's scope). + +### C.0 Forest registry multi-forest serving (v0.4) + +The product is filesystem-native: a folder is a forest, its `_index.md` is +the door. One server therefore serves N forests; the request picks one. + +Server modes: + +- **Single-forest** (`vine serve --forest DIR`): the v0.3 behavior. The + `forest` parameter is optional everywhere; when present it MUST match the + served forest's name (else `E_NOT_FOUND`). +- **Registry** (`vine serve --root DIR`): every subdirectory of `DIR` + containing an `_index.md` is a servable forest, identified by its path + relative to the root (nested ids like `clients/acme` are allowed). The + `forests()` tool lists direct children; `forest` is REQUIRED on every other + tool (`E_SCHEMA` with the available ids as hint when missing). + +Rules (normative): + +1. **Lazy open + auto-index**: a forest is opened on first touch; an empty + catalog triggers a full reindex (Vine's standard first-touch behavior). + Opened forests stay open for the server's lifetime; each has its own + catalog, trails, tracer session and (when writable) writer lock. +2. **Path safety**: the resolved forest path MUST stay inside the root — + `..`, absolute paths or symlink escapes are `E_NOT_FOUND`. A directory + without `_index.md` is not a forest (`E_NOT_FOUND`). +3. **Isolation**: pheromone, traces and indexes never leak across forests + (they live in each forest's own `_derived/`). +4. `forests()` → `{"forests": [{"id", "active"}], "mode": "registry"|"single"}` + where `active` means already opened in this server. + +```json +{"tool": "locate", "args": {"query": "...", "forest": "clients/acme"}} +``` + +Cross-cutting principle: **every response MUST fit the declared token budget**. The Vine truncates with an explicit `"truncated": true` marker never silently. + +### C.1 `locate(query: string, k: int = 5, scope: "all"|"branches"|"notes" = "all", type_filter?: string, include?: [string]) → LocateResult` + +The **helicopter**: a location engine that drops the monkey in the region closest to the target it never starts from the trunk. RRF fusion of vector search (over summaries) + BM25 (over title, aliases, tags, summary). In Phase 0, MAY be BM25-only (SQLite FTS5); the interface does not change once vectors land. + +The index covers **two levels**: bananas (leaves) and branches (regions every branch has its own summary, hence indexable). A branch result = **landing zone**: the monkey lands in the right region and navigates 1-2 hops with local context, instead of dropping onto a possibly wrong leaf. `scope: "branches"` is useful for broad questions ("what do we know about sales?"); `scope: "notes"` for pointed ones. + +```json +{ + "results": [ + { + "id": "sales/_index", + "kind": "branch", + "type": "branch", + "title": "Sales", + "summary": "...", + "trail": ["_index"], + "coverage": {"notes": 23, "branches": 4}, + "score": 0.91, + "heat": 0.40 + }, + { + "id": "projects/mixerllm/architecture", + "kind": "note", + "type": "document", + "title": "MixerLLM Architecture", + "summary": "...", + "trail": ["_index", "projects/_index", "projects/mixerllm/_index"], + "score": 0.82, + "heat": 0.31 + } + ], + "truncated": false +} +``` + +Budget: <= 800 tokens. Ordering: `score_final = rrf_score x (1 + alpha*heat)`, alpha default 0.3 (configurable; alpha=0 turns pheromone off). + +**`scope` is an enum (v0.54, C.12 rule 7):** a value outside +`all | branches | notes` is `E_SCHEMA` naming the parameter, the value +and the accepted set — never treated as `"all"`. A parameter that silently +falls back to a default turns a typo into a result the caller believes was +filtered. + +**The metaphor stays in the prose (v0.56).** The wire's leaf token is +`notes` for the scope and `"note"` for every emitted `kind` field — the +consumer team's first call of a session failed on vocabulary the docs +taught and the wire refused, and then the wire answered `"kind": "banana"` +back. Charm aimed at a person, in a field only machines read, is friction +in both directions. `scope: "bananas"` remains accepted as a **deprecated +alias** for one minor version (same filter, no warning field — the hint +lives in the docs); the catalog MAY keep any internal spelling it likes, +because storage is not the wire. Prose, guides and the index-body headings +(`## Direct bananas`, A.5) keep the metaphor — they address people, and +A.5 headings are forest format, not API payload. + +**`coverage` is counts (v0.54):** a branch result carries +`coverage: {"notes": n, "branches": m}` — machine fields carry numbers. +The prose rendering ("23 bananas, 4 sub-branches") remains what the index +*bodies* say (A.5); it does not cross into API payloads. + +#### C.1.1 What the entry list says about itself (v0.52) + +`locate` searches curated metadata and nothing else the split with +`sniff` is normative (C.6b) and stays exactly as it is. But that split is a +decision the caller cannot see, and its consequence is measurable: a term +present eight times in a body and absent from the summary returns +`{"results": [], "truncated": false}`, which is byte-identical to the answer +for a subject the forest has never heard of. An agent following the +documented order (`locate` → `look` → `pick`) reads that as "the forest does +not know" and answers from its own parameters, with the forest one call +away. The primitive was right and the caller was wrong for a reason the +primitive could have removed. + +Three additions. All three are facts the catalog row already holds, so none +of them opens a file or costs a search: + +1. **`body_tokens` on every result.** The same number `look` reports under + `stats`, delivered at the moment the agent is choosing what to open + which is the only moment it changes a decision. Chosen blind, the agent + discovers the size of what it opened after paying for it, and under a + tight budget takes the conservative wrong option: the small irrelevant + node instead of the large correct one. +2. **`include: ["outline"]`.** Optional; adds each result's section headers + from the same row. `look` remains the digest and nothing moves out of it; + what disappears is the hop whose only purpose was learning which section + to `pick`. The 800-token budget is unchanged and truncation stays + explicit, so asking for outlines costs results at the tail never + silence, and never a bigger response than the budget allows. +3. **`searched` and a `hint`, when and only when the list is empty.** An + empty result carries `searched` (how many nodes' scent the search ran + over) and a `hint` naming the search this primitive does **not** perform. + Computed only on the empty path, because a caller holding results has + already been told what it needed: the count answers "is there anything + here at all", and a non-empty list answers it better. + +`searched` is bounded by what the principal may see. Under a restricted +policy (J.3) it counts the nodes in scope the number they could reach by +walking never the forest's size, which would make an entry search a +size oracle for the region they were not granted. + +A `hint` MUST NOT name a node, a term or anything from the forest's +content: it says which primitive searches bodies, and stops there. + +**F.56 (acceptance).** Every `locate` result carries `body_tokens` equal to +what `look` reports for the same node under `stats`. `include: ["outline"]` +adds the section list without the response exceeding 800 tokens, and drops +results at the tail with `truncated: true` when it would. A query matching +nothing returns `searched` and a `hint` naming `sniff`; a query matching +something returns neither. Under a scoped policy, `searched` never exceeds +the number of nodes in scope. A term present in a body and absent from every +summary still returns no results the split with `sniff` is unchanged, and +the hint is what tells the caller so. Covered by tests. + +### C.2 `look(id: string, fields?: [string]) → Digest` + +The central operation. Hard budget: **<= 500 tokens**. + +`fields` (optional): list of desired fields (e.g. `["summary", "edges_out"]`). When present, the response contains ONLY those fields (+ `id`, always). Typical use: a monkey in scan mode asking only for `summary` of several nodes cost drops from ~400 to ~70 tokens per look. + +Response for a **banana** (`note`/`document`/`concept`/`entity`/`event`): + +```json +{ + "id": "projects/mixerllm/architecture", + "type": "document", + "title": "MixerLLM Architecture", + "summary": "...", + "tags": ["inference", "slm"], + "confidence": 1.0, + "created": "2026-05-02", + "updated": "2026-06-10", + "source": "ingest", + "outline": ["Overview", "Mixer-lang", "Block-loop", "Benchmarks"], + "edges_out": [ + {"rel": "part-of", "target": "projects/mixerllm/_index", "target_summary": "..."}, + {"rel": "compared-with", "target": "concepts/speculative-decoding", "target_summary": "..."} + ], + "edges_in": [ + {"rel": "mentions", "source": "people/jimmy-wesley"} + ], + "stats": {"body_tokens": 2840, "degree": 7, "heat": 0.45} +} +``` + +Response for a **branch**: replaces `outline` with `children` (sub-branches and direct bananas, each with `id` + `summary`), `cross_trails`, and `coverage` as `{"notes": n, "branches": m}` counts (v0.54 — same rule as C.1). + +Response for a **dataset**: includes `query_manual` (tables, key columns, 2-3 example_queries), `sample_rows` (<= 3 rows) and `notes` (C.2.1). + +Rules: +- `edges_out`/`edges_in` capped at 12 each, ordered by heat desc; surplus indicated in `stats.degree`. +- `target_summary` MUST come truncated to 25 tokens (it's a neighbor's scent, not a full digest). +- `body_tokens` lets the agent estimate a `pick`'s cost before making it. +- **The passport says who and when (v0.56):** `created` and `source` + are returned always, `aliases` whenever the node carries any, and + `origin` whenever the node carries one (v0.57). All three + were in every passport and in the indexed catalog since their birth; + `look` just never said them, so the consumer team probed for provenance + and concluded the product had none — and could not audit why an alias + search hit. A forest shared between people and agents owes its reader + "who asserted this, and when" for the same reason answers cite node + ids. (Time of day and the writing principal are deliberately NOT here + yet: frontmatter dates are day-precision, and the engine does not know + the principal — that design lands with per-node history, next + version.) +- **The budget clips in declared order, and it says so (v0.57).** Found + in real use: a node with a 28-item outline answered `edges_out: []`, + `edges_in: []` beside `stats.degree: 2` — the budget shrink emptied the + edge lists (small, structural, irreplaceable in this response) while + the outline (large, re-derivable via `pick`'s first page) stayed. The + caller concluded the node was isolated and never called `move`: the + graph, lost in silence, in the primitive the skill calls "where I read + the passport". Every other cut in the product announces itself + (`truncated`, `dropped`, `searched`); this one now does too. When the + digest exceeds `BUDGET_LOOK`, fields are clipped in this order — + `outline` first (big, and re-derivable through `pick`'s first page; + whole items from the tail), then `children`, then + `edges_in`/`edges_out`, and a dataset's `sample_rows` only as the last + resort (its digest exists to feed `query`) — and **every field the + budget touched is named in `truncated_fields`** beside the existing + `truncated: true`. A caller who sees `edges_out: []` WITHOUT + `"edges_out" in truncated_fields` may finally trust the emptiness; + `stats.degree` remains the arithmetic truth either way. `fields=` + remains the escape: a digest asked to carry less rarely clips at all. + +#### C.2.1 `## Notes` what a person teaches the agent (v0.46) + +A dataset is the one node type whose contents no text primitive can see: +`locate` reads curated metadata, `sniff` reads bodies, and the facts live +in a `.db`. G.2.3's map fixed *structure* the tables, the columns, three +rows. What it cannot supply is **meaning**: that `total_invoice` is in USD +while `exchange_value` is in BRL, that `status` uses one-letter codes, +that direct imports are the rows where `lessee` is null, or which join is +the one that answers the question people actually ask. Nor can it supply +*shape*: that `total_invoice` is TEXT holding `USD 54.607,56`, so +`SUM(total_invoice)` is `0.0` and looks like an answer. + +That knowledge exists only in somebody's head, and an agent writing SQL +without it writes SQL that runs and answers wrongly the worst failure +this system can produce, because it is indistinguishable from success. + +A dataset passport MAY therefore carry a **`## Notes`** section. + +Normative: + +1. **It is the operator's, and nothing else writes it.** The Gardener + rewrites the two generated sections and only those (G.2.3 rule 4), so + `## Notes` survives every `sync`, every re-adoption and every payload + replacement. Curation MUST NOT write it either: a model's guess about + what a column means is exactly what this section exists to correct. +2. **`look` MUST return it**, as `notes`, for `type: dataset`. This is the + whole point and not a convenience: the path an agent takes to a dataset + is `look` then `query` a note it can only reach through `pick` is a + note it will not read, and a teaching surface nobody reads is worse + than none, because somebody maintains it. +3. **Bounded, and truncated out loud.** `notes` carries its own budget + (200 tokens) inside `look`'s 500, clipped with the C.6 rule a + `truncated` marker, never a silent cut. It is clipped **before** the + digest's overall budget check, and it outranks `sample_rows` when the + digest still has to shed: three generated rows are cheaper to lose + than a sentence a person wrote on purpose. +4. **Written through `graft` like every other body edit** (C.8: + `replace_section`, or `append_section` the first time). There is no + second write path, no side file and no store it is part of the node, + so it is versioned, attributed and committed exactly as its summary is. +5. **Datasets only, for now.** On every other node type the body itself is + reachable through `pick` and searchable through `sniff`, so a section + promoted into `look` would spend the tightest budget in the system on + something already available. A `## Notes` heading on a note is an + ordinary section and stays one. +6. **The notes travel with the dataset, on every path (v0.47).** Stated + first for `harvest` (v0.46) and now as the general rule it always was: + **any material a host assembles for a model MUST carry the `notes` of + every dataset present in that material.** Not only `look`, which is one + primitive the model may or may not call. + + The failure this fixes was observed. The sweep is `locate` + `sniff` + + matched sections and never looks at anything, so v0.46 attached the + notes to its dataset items. The walk (J.10.5) enters through `locate`, + whose result is curated metadata and carries no body and a model that + goes from that entry straight to `query`, which is the natural move on a + dataset, never calls `look` and never sees a word the operator wrote. In + a measured run the mode with *more* freedom was the mode with *less* + information, which is the opposite of the intent, and the operator's + reasonable reading was that the agent had ignored them. + + The attachment is **unconditional**: whether the section happens to + share vocabulary with today's question is not a reason to withhold a + person's instructions about how to read the data. A teaching that + depends on the agent choosing to be taught is not a teaching surface, + and a third answer path added later inherits this rule rather than + rediscovering it. + +*Informative:* this is the human half of the same idea the map is the +machine half of. The map says what is there; the notes say what it means. + +#### C.2.2 A missing payload is a fact about the payload (v0.61) + +`look` builds a dataset's `query_manual` and `sample_rows` by opening the +`.db`, and an absent file raised `E_NOT_FOUND` for the **whole digest**. +Everything else in that digest title, summary, tags, `created`, +`origin`, the edges, `## Notes` comes from the passport and the catalog +and never depended on the payload. So a node that `scan` lists and +`locate` ranks was unreadable through the one primitive whose job is to +read passports, and the reader was told the *node* was not found. That is +the most confusing pair of answers the surface can give about one id, and +it was observed in the field on both datasets of a live forest. + +1. **The digest degrades; it does not vanish.** When a `type: dataset` + node's local payload is absent, `look` returns the passport as always, + OMITS `query_manual` and `sample_rows`, and carries + **`payload_missing: true`**. `notes` is unaffected: it is read from the + body, and what a person wrote about the data outlives the file. +2. **It is stated, never inferred.** A caller MUST be able to tell "this + dataset has no sample rows to show" from "this dataset's file is gone". + The flag is the difference, and its absence means the payload was + there. +3. **Every other primitive keeps refusing.** `query` and `tend` name the + missing payload with `E_NOT_FOUND` exactly as before: they cannot do + their work without the file, and inventing an empty result set would be + the silent-wrong-answer failure this document exists to prevent. + Degrading is for the digest, whose content is the passport. +4. **A remote payload is not this case.** G.9's fetch-on-first-use has its + own failures and its own errors; `payload_missing` is about a LOCAL + file the passport names and the filesystem does not have. +5. **The condition is countable in one call** `coverage` reports it per + root (C.17 rule 11), so an operator learns the size of the damage + without walking the forest one `E_NOT_FOUND` at a time. + +### C.3 `move(id: string, rel?: string, direction: "out"|"in"|"both" = "out") → [Neighbor]` + +```json +{ + "neighbors": [ + {"id": "...", "rel": "compared-with", "direction": "out", "type": "concept", "summary": "...", "heat": 0.1} + ], + "truncated": false +} +``` + +Without `rel`: all neighbors. Budget: <= 600 tokens. `move(id, "children")` is sugar for a branch's physical children. + +**`direction` is an enum (v0.54, C.12 rule 7):** a value outside +`out | in | both` is `E_SCHEMA` naming the parameter, the value and the +accepted set. It MUST NOT answer an empty neighbour list: on a node with +`degree > 0`, `{"neighbors": []}` for a mistyped direction is +byte-identical to an isolated node, and the observed mistake — +`direction="all"`, borrowed from `locate`'s `scope` vocabulary — is one +every integrator makes once. The refusal's hint names `both` as this +primitive's word for every direction. The MCP tool schema declares the +same enum, so the mistake dies at validation on that surface too. + +### C.4 `pick(id: string, section?: string | [string], after?: string) → Content` + +```json +{ + "id": "...", + "title": "...", + "section": "Mixer-lang", + "body": "", + "body_tokens": 612, + "truncated": false +} +``` + +- `section` matches against the `outline`'s headers (case-insensitive, exact match first, then prefix). +- A single `section` string returns the shape above, **to the byte** what it returned before v0.56. + +#### C.4.1 A document is read back whole, in pages (v0.56) + +`pick` on a body over 4,000 tokens used to return an empty body, the +outline and a hint. The ceiling was right — it exists so one call cannot +flood a walk — but the dead end was not: the consumer team measured their +own reports at 4,855 tokens and found that rereading a document they had +just planted cost 28 `section=` calls. While that is true, the local +`.md` copy is cheaper than the forest, and it survives. The body of one +large node is the same problem as one large forest, and it gets the same +answer the C.6.2 enumeration cursor got: pages, an `after` cursor, and +totals. + +Normative: + +1. **The page unit is the paragraph block.** The body is split at blank- + line boundaries into contiguous segments; every page is a + concatenation of whole segments and is a **byte-exact substring** of + the body. Pages fetched in order and concatenated reproduce the body + byte-identically — that is F.80, and it is the property that lets an + agent trust the reassembly. +2. **The cursor is `scan`'s idiom.** An over-budget read (no `section`) + returns the FIRST page within the 4,000-token budget plus + `truncated: true`, `next` (opaque cursor naming the last block + delivered), `returned` and `total` (block counts) and a hint teaching + `after=`. Passing `after` resumes; an unknown or malformed cursor is + `E_SCHEMA` naming it. A body within budget and no `after` returns the + pre-v0.56 shape unchanged. +3. **Progress is guaranteed, and so is the flag.** A single block wider + than the whole budget arrives alone, hard-cut, with `cut: true` beside + `truncated` — and `next` still advances past it. Without the advance + the cursor parks forever on the block; without the flag the cut is + silent, which C.6's rule forbids. +4. **`section` accepts a list** (≤ 10 names, one call, one 4,000-token + budget — C.11's rule, never per-item times count). The result carries + `sections: [{section, header, body, body_tokens}]` in request order — + `section` echoes the name as asked, `header` (v0.57) the header line + that actually matched, because matching is by prefix (C.4) and a + result identified only by order is a result the caller re-derives — + plus + `missing` (names no header matched — with the outline in the hint) and + `dropped` (names whose content did not fit; whole sections drop from + the tail and are named). Every requested name lands in exactly one of + the three. A one-element list returns a list; a bare string returns + the old single shape, to the byte. +5. **`after` and `section` never combine** — two addressing schemes in + one call is `E_SCHEMA`. `after` pages the whole body; `section` + addresses pieces of it by name. + +### C.5 `query(id: string, sql: string) → Rows` + +- Preconditions: node `type: dataset`, `payload_type: sqlite`. +- Validation: a single statement only; MUST start with `SELECT` or `WITH`; forbidden: `ATTACH`, `PRAGMA` in both its spellings the keyword and the `pragma_*` table-valued functions (v0.50) and `INSERT/UPDATE/DELETE/DROP/ALTER` → `E_QUERY_FORBIDDEN`. Connection opened read-only (`mode=ro`). +- Forced `LIMIT`: if absent, injects `LIMIT 200`. 2s timeout → `E_TIMEOUT`. +- **A name that is not there MUST say what is (v0.46).** `no such table` + and `no such column` are how generated SQL usually fails an agent that + has not `look`ed yet guesses the table from the node's id, which is a + reasonable guess and normally wrong. The error's `hint` therefore + carries the dataset's actual table names (or, for a column, the columns + of its tables). Without it the caller spends a whole extra hop, and a + model call, discovering something the failing call already had open. The + lookup is best effort: it runs while an error is being raised and MUST + NOT be able to replace it. + +```json +{ + "columns": ["region", "total"], + "rows": [["Southeast", 1250000.0], ["South", 740000.0]], + "row_count": 5, + "limited": false, + "elapsed_ms": 3 +} +``` + +Columnar format (`columns` + `rows` as arrays) not objects repeating the keys; saves ~40% of the tokens. + +##### C.5.1 The result is budgeted, and `columns` is not (normative, v0.47) + +`query` was the only read primitive with no token bound. It had a row cap +— the injected `LIMIT 200` and a row cap is not a token cap: width is +unbounded. Measured on a 141-column ERP export, `SELECT *` returned +**86,929 tokens for 15 rows** and **429,397 for all 129**. Fed to a model +that re-sends its history each turn, one such call was the whole cost of a +walk. + +1. **`BUDGET_QUERY` = 2000 tokens**, applied to the response the same way + every other budget is applied (A.4): whole items are dropped from the + tail and `truncated: true` is set. Never a sliced row, never a silent + cut. It sits below `pick`'s 4000 deliberately a body is read once, + while a result enters a loop that carries it forward. +2. **`columns` is never dropped.** It is the smallest useful thing in the + response and the only part that tells the caller how to ask again. A + result whose every row was dropped therefore still answers: *these are + the columns your statement produces, and none of the rows fit*. That is + a map back, and it costs a few hundred tokens against the tens of + thousands refused. +3. **`row_count` is what came back**, and `truncated` is what says more + existed. The two flags are not interchangeable and both may be true: + `limited` means the injected `LIMIT 200` was reached and the *query* + matched more; `truncated` means the token budget dropped rows the query + *returned*. A caller that cannot tell them apart cannot tell "narrow + your filter" from "narrow your projection". +4. **The hint names the way out.** When rows were dropped, the hint MUST + state the column count and say to name the columns needed. When *every* + row was dropped it is the entire useful payload, so it MUST also give + the per-row cost. Aggregates are unaffected by construction `SELECT + SUM(x)` is one short row which is the point: the bound bites exactly + the statements that should have been narrower, and the caller finds + that out in one hop instead of in a context window. +5. **Nothing here is a refusal.** The statement ran; the payload did not + fit. `truncated` is the same contract as everywhere else in this spec, + and a caller MUST NOT read it as absence the C.6/C.6b rule that + `truncated: true` never means "does not exist" applies unchanged. + +##### C.5.2 Invalid is not forbidden (normative, v0.47) + +Every SQLite failure surfaced as `E_QUERY_FORBIDDEN`, the code the guard +raises for attempting a write. So `no such table: report_2026` a +caller's typo, on a dataset they are allowed to read was reported with +the vocabulary of a policy denial, in the response, in the console and in +the audit trail. An operator reading a walk saw two locked doors where the +engine had in fact answered both questions. + +`E_QUERY_INVALID` is therefore its own code, for statements that pass the +guard and fail in SQLite: unknown table or column, syntax error, wrong +argument count. `E_QUERY_FORBIDDEN` keeps exactly what the guard decides — +not a dataset, not a single statement, wrong leading keyword, forbidden +keyword, `UPDATE`/`DELETE` without `WHERE` (C.10), a remote payload under +`tend` (G.9). The split applies to `query` and `tend` alike; one of the two +kept honest would be worse than neither, because then the code would mean +different things per primitive. + +Over HTTP (J.4) `E_QUERY_INVALID` is **400** and `E_QUERY_FORBIDDEN` stays +**403**. The distinction is the ordinary one and it is worth having: 403 +says the principal may not, 400 says the request was wrong. A client +retrying on 403 is confused; a client retrying on 400 with a corrected +statement is doing the right thing, and until now it could not tell which +it was holding. + +The C.5 name hint is unchanged and is now carried by `E_QUERY_INVALID`, +where it always belonged. + +**The one case where the two halves meet (v0.50).** A table allow-list is +enforced by SQLite (C.5.3), so its refusal is *noticed* by SQLite and +*decided* by the grant. It keeps `E_QUERY_FORBIDDEN` and **403**: the +principal may not, which is precisely what 403 says, and a client that +corrects the statement will be refused again. The message MUST state that +the statement reaches outside the allow-list and MUST NOT name the table +it stopped at otherwise the refusal answers "does this table exist?" +for everything the scope withholds, one guess at a time. + +##### C.5.3 The table allow-list is decided by the database (normative, v0.50) + +J.3 lets a grant narrow a dataset to some of its tables, and requires that +narrowing to be checked "against the parsed statement". This section says +what does the parsing: **SQLite itself**, through its authorizer, consulted +while the statement is prepared. + +The rule and its reason are the same sentence. Deciding what a statement +touches by reading its text means keeping a second parser, and two parsers +agree only where somebody thought to compare them; for SQL that comparison +has no natural end, and being wrong about it is silent. The authorizer is +asked once per table and column the statement **actually** touches, so a +subquery, a CTE, a view and a table-valued function are the same question, +answered by the component that resolves them. + +Normative consequences: + +1. When a grant carries a table allow-list for a dataset, `query` MUST + enforce it through the authorizer. An implementation MAY also pre-read + the statement to produce a friendlier message naming the offending + table it MUST NOT rely on that reading as the control. +2. `SQLITE_READ` on a table outside the list is a refusal, as are the + write actions. Both matter, and on the write path (C.10) the read + action is the one that matters most: a statement may write only where + it is permitted and still take its value from a table it may not read. + A scope that governs the destination and ignores the source is not a + scope. +3. Under an allow-list, the schema is not readable either. SQLite's own + internal tables and the `pragma_*` functions describe every table there + is, which is the map to exactly what the grant withholds. +4. The C.5 name hint MUST be filtered by the allow-list, and MUST be + omitted entirely when nothing permitted remains. A misspelling is not a + reason to answer with an inventory of what is being withheld. +5. The allow-list travels as a **host-supplied** argument. The engine + exposes it keyword-only and the scoped surface supplies it from the + grant; it MUST NOT be reachable from the wire, because a narrowing a + caller can set is a narrowing a caller can omit. (Same construction as + G.2.5's adoption flag.) + +Nothing here changes what a permitted statement returns, or its budget +(C.5.1), or its timeout. An ungoverned principal one whose grant carries +no table list is unaffected: no authorizer is installed for them. + +### C.6 `scan(parent_id: string, filter?: Filter, fields?: [string], recursive: bool = false, limit: int = 50, after?: string) → [PartialNode]` + +**Metadata** query over a branch's children, without opening any file. Served by the **Catalog** (see C.6.1). + +`Filter` supports equality and comparison over frontmatter fields: + +```json +{ + "parent_id": "projects/_index", + "filter": {"type": "dataset", "updated_after": "2026-03-01", "tags_any": ["sales"]}, + "fields": ["id", "summary", "payload_type"], + "recursive": true +} +``` + +Response: list of partial nodes (only the requested `fields`), ordered by `heat` desc. Budget: <= 800 tokens, with explicit `truncated`. Default `fields`: `id`, `type`, `summary`, `body_tokens` (v0.54 — the cost of opening a node is known wherever a node is offered, C.1.1's rule). + +Canonical use case: "I only want the sales datasets updated this quarter" → 1 call, ~3ms, ~200 tokens instead of descending the hierarchy opening indexes. + +**`fields` is a stated set (v0.54, C.12 rule 7).** The accepted names are +the catalog's caller-facing columns — `id`, `kind`, `type`, `title`, +`summary`, `tags`, `aliases`, `created`, `updated`, `confidence`, `source`, +`entity_kind`, `payload_type`, `parent`, `trail`, `coverage`, +`body_tokens`, `outline`, `heat` — and an unknown name is `E_SCHEMA` naming +it and the set. Before this, an unknown field was silently omitted from +every item, which reads exactly like "that field is empty on every node". +`payload`, `payload_hash` and the catalog's internal columns are not in the +set: a payload location is J.14's business, not a listing's. + +**Provenance is a filter (v0.56).** `filter` matches any caller-facing +catalog column by equality (plus the comparative keys above), and that +includes `source` — so "what did the agents write here?" is +`scan(_index, filter={"source": "agent"}, recursive=true)`, one +enumeration. This worked mechanically before v0.56; it is now stated, +taught by the skill, and covered by F.82, because a capability nobody can +discover is a capability the product does not have (the C.1.1 lesson, +applied to itself). + +**Where a node came from is a filter too (v0.59).** `origin` (A.3) is a +URI, and two different questions are asked of it: *which node is this +exact file?* and *what came out of that directory?* The first is the +equality match every catalog column already has. The second is +`origin_prefix`, matching when the node's `origin` starts with the given +string — the reconciliation filter the consumer team asked for, and the +one that makes a partial ingest visible +(`scan(_index, filter={"origin_prefix": "file:///srv/dump/tasks/"}, +recursive=true)`). Both keys stay: collapsing them into one prefix match +would delete the ability to ask about a single file, which is the finer +of the two questions. A node with no `origin` matches neither. The prefix +a caller passes is the one `coverage` publishes per root (C.17 rule 4) — +there is no arithmetic between finding a source and listing it. + +**`kind` speaks the wire's spelling (v0.56, C.1's rule).** Every emitted +`kind` is `note` or `branch`, and a `kind` filter takes those same +values — the filter MUST match what the field emits, whatever the catalog +stores internally. A filter that only matches the storage spelling would +make `filter={"kind": "note"}` silently empty, which is C.12's forbidden +lie. + +**A system node says so (v0.54).** An item whose id lives under `_meta/` +carries `system: true`. `_meta/schema.md` is a child of no branch, so it +appears in a recursive `scan` and in no `look` — two tools answering "what +is here" with different counts and no explanation. The marker is the +explanation; nothing is hidden, because a dialect an agent may read is not +a secret, only not content. + +#### C.6.2 The forest is enumerable (v0.54) + +`truncated: true` used to be a dead end: `limit` could only shrink the +page, the budget cut the rest, and nothing said what was dropped, how much +existed, or how to get it. On a real corpus (1,877 nodes) that made `scan` +constitutionally unable to answer "did the ingest complete?", "what is in +this forest?" — the questions an inventory exists for. `pick` batches +already solved this shape the right way (C.11 names what it drops); `scan` +now says what it left out and how to continue: + +1. **`total` and `returned`, on every response.** `total` is what the + requested scope holds — parent + `recursive` + `filter` + window, + counted before any cut; `returned` is what this response carries after + all of them. The two numbers are the size of what was NOT received, + which is the fact a caller cannot otherwise learn. +2. **`after` — an id cursor.** When present, results come in id order, + strictly after the cursor (`after: ""` starts at the beginning), and a + page that left something behind carries `next`: the last id returned, + which is exactly what the next call's `after` takes. Enumeration is + complete and duplicate-free over a stable forest; nodes planted behind + the cursor while a walk is in flight are the next walk's to find. +3. **One order per mode.** `after` selects id order; without it the heat + order of every previous version is byte-identical. `after` beside + `toward`/`gauntlet` is `E_SCHEMA`: an enumeration has one order, and a + ranked page cannot be resumed. +4. **The budget is part of the contract, stated where the caller reads:** + <= 800 tokens, <= 50 items per page, whichever cuts first — and neither + cut is silent anymore, because `total`/`returned`/`next` survive both. +5. **Under a policy, the counts are the principal's own (J.3).** The + scope's predicate is applied where candidates are chosen — same + construction as C.13.3 and `searched` — so `total` counts nodes in + scope, never the forest (a finer size oracle than `locate` could ever + be), and the cursor walks the principal's nodes without skipping what + a post-hoc trim would have dropped. + +#### C.6.1 The Catalog (`_derived/catalog.db`) + +SQLite in the derived layer with one row per forest node: every frontmatter field + trail + degree + heat. Rebuildable from scratch by a full scan (`vine reindex`); updated incrementally on every `plant`/`graft`. It's what serves `scan()` and `locate`'s lexical side (FTS5 over title/aliases/tags/summary in the same base). **Not the source of truth** if it diverges from the files, the files win and the catalog rebuilds. + +**The body hash (normative, v0.40).** Each row also carries +`body_hash`: the digest of the node's body **as `sniff` would scan it** +(the raw markdown body, frontmatter excluded), written on every upsert +and rebuilt by `reindex`. It exists so a memoized scan (C.6b.1) can +decide validity by content rather than by clock, and it is the same +disposable-layer bargain as the rest of this file: a divergence is +repaired by `reindex`, never by trusting the catalog over the files. A +row whose `body_hash` is absent (a catalog written before this version) +MUST behave as a cache miss, never as a match an empty hash that +compared equal would serve stale snippets forever. + +**Derived storage is tuned for reads, not for durability (normative, +v0.29).** Every read primitive deposits pheromone (Part D, E.2), so every +read is also a commit in SQLite's default rollback mode, a journal +created, fsynced and deleted per call. Databases under `_derived/` +(`catalog.db`, `trails.db`) MUST therefore open in WAL with +`synchronous=NORMAL`. + +The durability this trades away is durability the derived layer does not +have to begin with: the `.md` files are the source of truth, `_derived/` is +disposable by definition, and the repair for any inconsistency is already +`reindex`. A crash costs the tail the last few heat deposits, which +evaporate on a schedule anyway (H.1) and never the corpus. WAL remains +crash-safe; what is lost is recency, and recency is exactly what heat is +allowed to lose. + +Best effort, and that is normative too: a filesystem that cannot support +WAL (a network mount with no shared memory) MUST keep the mode it had and +keep working. A forest that refused to open because it could not be made +faster would have traded the whole feature for part of one. + +**Warming (normative, v0.29).** A Vine MUST expose `warm()`: fault in the +pages a search will want, through the storage layer only. It MUST NOT go +through a primitive that would append a trace event and deposit heat, and +a server that warmed itself through `locate` would be forging the pheromone +the Ranger later reads as evidence of where callers went. It MUST NOT read +bodies; that is the whole corpus off disk, which is a different trade and +not this one. Opening a forest warms it. + +### C.6b `sniff(terms: string | [string], scope?: string, k: int = 5, type_filter?: string) → SniffResult` + +The **sniffer**: **literal** search over nodes' markdown bodies, returning node + section + occurrence snippet. It complements `locate`: the helicopter flies over curated metadata (summary/tags/title); the sniffer goes down to ground level and follows the trail of an exact term error code, proper name, invoice number, identifier that nobody bothered (or was obligated) to lift into the summary. The contract split is normative: **`locate` MUST NOT index bodies; `sniff` MUST NOT query curated metadata** (except to display the result). + +Parameters: + +- `terms`: 1 to 8 **literal** terms (a single string is promoted to a 1-item list). Substring matching, case- and diacritic-insensitive (NFD, combining marks stripped). A term with a space = exact phrase. A normalized term with < 2 characters → `E_SCHEMA`. **Regex is NOT accepted** (Phase 0): SLMs write fragile regex, and arbitrary regex opens unpredictable cost; literal terms give 95% of the value with a simple contract. +- `scope` (optional): id of **any node**. A branch (`sales/_index` or `sales`) restricts the search to the matching physical subtree; a banana restricts it to that single node's body (grep-within-node the natural chaining after a `locate`/`look` that already found the target). Without `scope`, the whole forest. Nonexistent node → `E_NOT_FOUND`. +- `k`: max nodes in the result (default 5, cap 20). +- `type_filter`: as in `locate`. + +Search semantics: + +- Scans **only the body** of `.md` files (frontmatter excluded; `_derived`, `_assets` and binary payloads ignored). +- A node matches when **at least one** term occurs in the body; nodes matching **more distinct terms** rank first (AND-preferred, OR-tolerant). +- `match` = the occurrence's line, attributed to the section (H2/H3 header) containing it. Max of **3 matches per node** in the response (`match_count` reports the total; surplus flagged by `truncated_matches: true`). +- `snippet` = a window of the line centered on the first occurrence, truncated to ~25 tokens. + +Ordering (v0.52): `score = strength x density x (1 + alpha*heat)`, where +`strength = matched_terms/requested_terms` (unchanged) and +`density = 1 + beta*log2(match_count)`, beta default 0.15 so ten +occurrences of a term outweigh a maximal pheromone bonus, and a single +occurrence changes nothing. `match_count` MUST NOT be left as the tie-break +alone: across literal hits `strength` is frequently constant, which leaves +`heat` as the only term that separates them and makes the ranking of a body +search the ranking of the traversal that came before it. Measured on a +served forest, `sniff(["421", "Host"])` put a branch index holding **one** +occurrence above the note holding **ten**. + +**A pointer never outranks what it points at (v0.52).** An index node +(`_index`, `/_index`) carries the summary of every child, so it +matches nearly any term somebody asks about, and it accumulates heat by +being the way through to everything under it. A term found inside it is +evidence about a child. An index node therefore ranks **below every +non-index node in the same result set**, whatever its score. It is not +removed a match in an index is still a way in and its `score` is +reported unchanged, because a score adjusted to force an order is a number +that lies, while an order stated in the contract is one the caller can +read. This is the same judgement C.6c.2 already made when it refused to +refine an index node's matches. + +**The demotion is visible (v0.54).** A demoted hit carries +`demoted: true` beside its unadjusted `score`. An order stated only in the +contract is invisible on the wire: the natural move for any client that +fuses result sets is to re-sort by `score`, and doing so silently undid +the rule above — the response gave it no way to know a rule existed. The +marker says "this item's position is deliberate"; the score keeps telling +the truth. + +**`body_tokens` on every result (v0.54).** Same field, same source and +same reason as C.1.1 rule 1: the row is already in hand, and the caller +is choosing what to open. + +```json +{ + "results": [ + { + "id": "sales/exchange-policy", + "type": "note", + "title": "Exchange policy", + "trail": ["_index", "sales/_index"], + "score": 0.95, + "heat": 0.31, + "body_tokens": 612, + "match_count": 4, + "truncated_matches": true, + "matches": [ + {"section": "Deadlines", "line": 23, "snippet": "…return with invoice NF-4412 within 30 days…"} + ] + } + ], + "scanned_nodes": 82, + "truncated": false +} +``` + +Budget: <= 800 tokens, explicit truncation (`truncated: true`) dropping nodes off the end of the list. + +Canonical use (the monkey's decision, taught in the orchestrator's system prompt): + +1. Question contains an exact/rare term → `sniff` directly: lands in the right section and harvests with `pick(id, section)` cuts hops-to-banana. +2. Conceptual question → `locate` (unchanged). +3. Chained: `locate` finds the region, `sniff(terms, scope=branch)` hunts the snippet within it. + +Phase 0 implementation: direct file scan on every call (grep-like, no new index) always fresh by construction, no extra derived state. MAY gain an index (body FTS5 in a separate table) in a future phase **with no interface change**, as long as the contract split with `locate` holds. + +#### C.6b.1 The memoized scan (`_derived`, v0.40) + +`_sniff_body(body, term)` is a **pure function**: the same body and the +same folded term yield the same lines, always. A Vine therefore MAY +memoize it in the derived layer. The permission is narrow and the +following are normative. + +- **Identical output.** A memoized `sniff` MUST return exactly what the + direct scan returns same nodes, same sections, same line numbers, + same snippets, same `match_count` and `truncated_matches`, same + ordering. This is memoization of the scan, **not** its replacement by + an index: no tokenization, no stemming, no analyzer. C.6b's literal + substring semantics and the `locate`/`sniff` split are untouched, and + any divergence is a defect, not a tuning choice. +- **Validity is the body hash** (C.6.1). An entry is usable while the + node's current `body_hash` equals the hash recorded with the entry. + Absent hash on either side = miss. Timestamps MUST NOT be used for + this: `mtime` granularity is coarse and platform-dependent and clocks + move backwards. +- **Non-matches are recorded.** An entry MUST distinguish "this node was + scanned for this term and matched nothing" from "this node was never + scanned for this term". Without the negative, every non-matching node — + nearly the whole forest is rescanned on every call. +- **Line granularity.** The scan emits one match per *line*, whose + snippet is centred on the leftmost position among the terms that hit + that line. A per-term memo MUST therefore record, per matching line, + enough to rebuild that combined result (the line's number, its section, + the term's position in it, and the line's text) storing the rendered + snippet alone is wrong, because a second term in the same line moves + the window. Entries MUST record the **complete** line list: the + 3-matches-per-node cap of C.6b is applied when answering, and + `match_count`/`truncated_matches` are computed before it. +- **Scope-independent.** An entry is a fact about one node and one term, + so it is reusable by any later call whatever its `scope`, `k` or + `type_filter`, and a scoped scan populates entries a global scan can + later use. +- **Ranking is never memoized.** `heat`, `score` and ordering are + query-time state (Part D) and MUST be recomputed on every call. An + entry that froze the ranking would make the pheromone unobservable + through the primitive that reads it most. +- **A remembered non-match is a count, not a row (v0.59).** The memo + records non-matches precisely so the ~95% of a forest that holds none of + the terms costs nothing but a lookup — and the first implementation then + carried every one of those rows out of the database and deserialized it, + to discover the list was empty. The negative MUST still be recorded (the + rule above is unchanged; without it every non-matching node is rescanned + forever), but a read MUST NOT be proportional to it. What a call needs + from the memo is the matching lines and the set of nodes the memo does + **not** cover — the second being the cheap half to ask for, and empty on + a warm forest. Everything else in scope is covered and matched nothing, + which is one count. Concretely: the rows fetched, the records + deserialized and the catalog rows loaded are all proportional to the + MATCHES, while `scanned_nodes` keeps counting every node the scan + covered, because the honesty of that number is the reason it exists. + A node covered for a term and absent from its matches IS the empty + record, inferred rather than transferred; recombining empty line lists + produces the empty match list, which is the result the scan skips. +- **Heat for the candidates is one statement (v0.59).** Ranking is never + memoized — the rule above stands and is not weakened — but recomputing + it MUST NOT mean one SQLite round trip per node. A `sniff` whose terms + are common words matched most of a 1,911-node forest and asked for heat + **1,945 times**, which is the same mistake C.13.3 named for counting: + the work belongs in one query, not in a Python loop around one. +- **A snippet is rendered for a result that is answered (v0.59).** The + windowing rule of C.6b (centred on the leftmost hit in the line) is + unchanged, and `match_count`/`truncated_matches` are still computed + over the **complete** line list before any cap. What changes is when the + window is computed: a call that returns at most `k` nodes of at most 3 + matches each MUST NOT render thousands of snippet windows it will + discard. Rendering happens after the ranking and the cut. +- **What stays proportional to the matches, and what cannot (v0.59).** With + the three rules above, a warm `sniff` for a term that lives in a handful + of bodies touches a handful of bodies' worth of work, whatever the size + of the forest — measured on a 1,911-node corpus, 10.9 ms to **1.5 ms**. + A term that genuinely appears in most of the corpus is a different + question: every matching node must be counted and ranked, so that call is + proportional to the matches and there is no honest way around it. This + document states the distinction rather than promising a single number, + because a reader who benchmarks the second case and finds it unchanged + should know that is the contract and not a regression. +- **The fold is a table, not a loop (v0.62).** C.6b matches on a folded + form lowercased, diacritics stripped to the base character of the NFD + decomposition, length preserved so a position maps back to the original + line. That is a per-character mapping, and a per-character mapping + implemented as a Python loop over the text costs more than reading the + text from disk: measured, **387 ms to fold 11.9 MB against 31 ms to read + it**. The mapping MUST be applied in one pass by the runtime + (`str.translate` against a precomputed table; ASCII text folds by + `str.lower()`, which for ASCII *is* the definition). Two constraints + make this a memoization and not a change of meaning. The table MUST + cover every code point the fold can change **this is not the BMP**: + cased scripts live in the SMP (Deseret, Adlam, Osage, Vithkuqi, Warang + Citi, Medefaidrin) and CJK Compatibility Ideographs decompose as high as + U+2FA1D, so a BMP-sized table silently stops folding six living scripts. + And the limit MUST be pinned by a check against the Unicode version in + use, so a later version that raises it fails loudly rather than narrowing + the match in silence. The table MAY be built on first use it is state + no write primitive needs. +- **A frontmatter marker is read in the frontmatter (v0.62).** G.7's + `content: cached|reference` says where a node's FLESH lives. It is + frontmatter by definition, and looking for it in the whole file was a + scan of the corpus to answer a question about its first few lines: **71 + ms** of the 629 above, and 4 ms when asked of the frontmatter alone. The + scan MUST find the boundary between frontmatter and body once and ask + each half only what that half can answer. The old reading also treated a + body that merely *quotes* the marker as a node whose body lives + elsewhere; that was harmless (an inline node resolves to its own body) + and it is gone. +- **What a cold scan costs, and what it does not (v0.62).** A `sniff` for a + term no entry covers MUST scan every body in scope there is no honest + alternative inside a literal contract, and the memo cannot pre-compute an + answer to a question nobody has asked. What this document now records is + what that costs when the implementation is not wasteful, so a later + proposal is measured against it rather than against an artifact. + On 1,902 nodes / 11.9 MB, CPU time, medians of five interleaved runs: + + | cold `sniff` | before v0.62 | v0.62 | + |---|---|---| + | term matches nothing, ASCII bodies | 629 ms | **133 ms** | + | term matches nothing, accented bodies | 612 ms | **258 ms** | + | term matches, ASCII bodies | 726 ms | **244 ms** | + | term matches, accented bodies | 731 ms | **379 ms** | + | sweep (`harvest`), cold | 933 ms | **448 ms** | + + Accented bodies cost more and MUST be expected to: they cannot take the + ASCII path, so every character passes through the table. A warm `sniff` + is unchanged by all of this it never folds and the v0.59 rules above + continue to govern it. +- **These are cost rules, and the first rule governs them (v0.59).** Every + one of the three above is required to leave the answer byte-identical to + the direct scan — same nodes, same lines, same snippets, same counts, + same order. A cost rule that changed a result would not be a cost rule; + it would be a different search wearing the same name. Measured motive: + before them, a warm `sniff` on that forest cost 94 ms of a 103 ms sweep + and throughput **fell** as concurrency rose, because the work was + CPU-bound Python and the reader pool of J.6.2 cannot multiply what the + interpreter serializes. The pool fixed blocking; only this fixes cost. +- **Only bodies the hash actually covers.** `body_hash` digests the + node's own `.md` body, so the memo is confined to `content: inline` + nodes. A `reference` body resolves to a file outside the forest that + changes with no write the catalog observes; a `cached` body lives in + `_derived/bodies` and can change or go missing, which the direct + scan reports by skipping the node while the `.md` body, a stub, + stays byte-identical. Both MUST record an absent `body_hash` and keep + the direct scan. A later version MAY extend the memo to them by + hashing the *resolved* body instead; until then the narrower rule is + the honest one. +- **Disposable, and bounded.** The memo lives under `_derived/`, is + rebuilt by use (never by `reindex`, which only has to invalidate it), + and MUST be droppable at any moment with no effect other than latency. + A deployment MAY evict it least-recently-used by term is the + precedent (H.6) and eviction MUST NOT change any answer. + +**F.58 (acceptance).** A `sniff` where an index node and a content node +match the same terms ranks the content node first, whatever their `heat`, +and reports both scores unadjusted. Between two content nodes with equal +term coverage, the one with more occurrences ranks higher; with equal +occurrences, heat still decides. Covered by tests. + +### C.6c `harvest(query: string, terms?: [string], k: int = 3) → HarvestResult` + +**Composite tool, not a primitive**: a deterministic, zero-LLM orchestration +over C.1 `locate`, C.6b `sniff` and C.4 `pick`. It exists for the +bring-your-own-model integration: the caller's LLM (MCP client) gets ranked +evidence in one call and decides the next steps itself. + +The three integration modes (informative): + +1. **Direct navigation** the client's LLM drives the primitives itself. + Best when reasoning must happen *during* navigation. Token cost is bounded + by the per-primitive budgets; the real cost is round-trips. +2. **Harvest (this tool)** one call, evidence back, zero tokens spent on + the server side. Best default for capable client models. +3. **Concierge** a local SLM hunts and returns a synthesized answer + (orchestrator-side, e.g. `examples/demo/run_demo.py`); for thin clients. + +Parameters: + +- `query`: free text; feeds `locate` as-is. +- `terms` (optional): exact literal terms for `sniff`. When absent, terms are + derived from the query: words >= 4 characters, stopwords removed, max 8 — + **plus, since v0.52, any token that looks like code whatever its length**. + A token qualifies as code-shaped when it contains a digit, is written in + capitals, or carries `-`, `_`, `.` or `/`. The four-character floor was + discarding exactly the tokens a technical corpus is searched by (`RAG`, + `MCP`, `JWT`, `SSO`, `421`, `p95`), so "how do I fix the 421 from MCP" + reached `sniff` as `["corrigir"]` — a literal search for the question's + verb, against a forest where the answer was sitting under both discarded + tokens. The floor stays for ordinary words: a short common word is + grammar, and every junk term lowers the `strength` of a real hit (C.6b), + so widening the filter costs precision on every other query. Code-shaped + tokens are ordered **first**, so the 8-term cap drops grammar before it + drops signal. +- `k`: max bananas returned (default 3). The cap is the deployment's, + not the caller's: `MONKEYLLM_HARVEST_MAX_K`, an integer >= 1 read from + the environment, default **5** when unset. A value that does not parse + as an integer, or parses below 1, is refused with `E_SCHEMA` naming + the variable never silently corrected. The cap bounds the item + count only; the response budget (below) is unchanged and remains the + outer wall, with truncation explicit as ever. + +Semantics (normative): + +1. Candidates = RRF fusion of `locate(query, k*2)` and `sniff(terms, k*2)` + rankings (same RRF as C.1's hybrid mode). +2. Match refinement by **term scarcity**: per-term `sniff` scoped to each + selected node, rarest term first a rare exact term ("1045") MUST NOT be + drowned by common co-occurring terms under the per-node match cap. + **Never for an index node (v0.35)**: `sniff` resolves an index id to its + subtree, so "refining" one grepped the forest under it children's + snippets attributed to the index, chosen by heat rank and therefore + different on every read. An index result keeps the global sniff's + matches, which are found inside its own body; refinement MUST NOT cross + the node it refines. +3. Content policy per node: full body when <= 1200 tokens; otherwise the + matched sections (max 2) via `pick(section)`; otherwise outline + hint. +4. Response items carry: `id`, `title`, `type`, `trail`, `summary`, `score`, + `found_by` (locate/sniff), `matches` (section, line, snippet), + `body_tokens` (v0.54 — the whole body's size, C.1.1's rule, so a caller + deciding to `pick` past the excerpt knows the price) and `content`. The + caller can always continue with the primitives using `id`. +5. **An empty sweep says what it swept (v0.52).** When both legs come back + with nothing, the response carries `searched` and a `hint` on the same + terms as C.1.1 — the sweep is the one call a caller makes *instead of* + navigating, so an empty one with no coverage is the same silence C.1.1 + describes, arriving where there is no next primitive to try. The hint + points at the two moves that remain: narrowing the question, and passing + `terms` explicitly. The derived list is already in the response, and + when the sweep found nothing it is the first thing worth doubting. + +Budget: <= 4000 tokens total, explicit `truncated: true` dropping whole tail +results first (never silently slicing a body). + +```json +{ + "query": "...", "terms": ["..."], + "results": [ + { + "id": "projetos/mixerllm/log-experimentos", + "title": "...", "type": "note", + "trail": ["_index", "projetos/_index", "projetos/mixerllm/_index"], + "summary": "...", "score": 0.0328, "found_by": ["locate", "sniff"], + "body_tokens": 1832, + "matches": [{"section": "Experimento 45", "line": 141, "snippet": "…"}], + "content": [{"section": "Experimento 45", "body": "…", "body_tokens": 146}] + } + ], + "truncated": false +} +``` + +**F.59 (acceptance).** `harvest("how do I fix the 421 from MCP")` derives +terms including `421` and `MCP`. `RAG`, `JWT`, `p95` and `x-api-key` survive +derivation; `fix`, `the` and `como` do not. When the cap is reached, +code-shaped tokens are the ones kept. A sweep that finds nothing carries +`searched` and a `hint`; a sweep that finds something carries neither. +Covered by tests. + +#### C.6c.3 The sweep knows what time it is (v0.57) + +A knowledge base accumulates versions of the truth — that is what it is +*for* — and the consumer team proved the failure mode the day they used +it: asked "what is still open?", the hosted answer read a two-rounds-old +report and the current one as the same present, reporting as open what +the newer document says was fixed. The `succeeds` edges stating the order +sat in the graph, declared with the very rel `_meta/schema` defines for +temporal order, and nothing read them. A memory that weighs August and +October as equal witnesses gets less reliable the more it remembers. + +Three rules, none of which spends a model call: + +1. **Every item states its time.** Sweep items carry `created` and + `updated`, read off the catalog row the selection already loaded — + never a file open. What the model does with them is the host's + business (J.10 teaches it); the contract's business is that the + material is dated. +2. **Equal relevance prefers the newer.** The RRF fusion breaks score + ties toward the more recently `updated` node (then `created`, then id + for determinism). A tie-break, never a boost: recency MUST NOT outrank + relevance — a five-year-old architecture note that matches the + question still beats yesterday's standup that does not. +3. **A succession inside the result set is annotated.** When one selected + item `succeeds` another (directly, in the catalog's edges), the newer + carries `supersedes: [ids]` and the older `superseded_by: [ids]`. + Annotated, never suppressed: the older node stays in the material — + history is evidence too — but the model is no longer the only one who + could have discovered the order, because it never did. (A `supersedes` + rel that suppresses its predecessor from retrieval by default is the + fullest form of this fix and is deferred to the history design — + suppression without a way to see what was suppressed is how a forest + starts lying in the other direction.) + +The dates and the annotations enter the J.10.7 reading fingerprint: +material re-dated or re-ordered is material re-read, and a stored answer +built before the succession was declared MUST NOT be served after it. + +#### C.6c.4 A replacement suppresses what it replaced (v0.58) + +C.6c.3 annotated and deliberately did not suppress: suppression without +a way to see what was suppressed is how a forest starts lying in the +other direction. With `history` (C.16) and the graph both able to show +the past, the fullest form the consumer team asked for lands, scoped to +the one place it belongs: + +1. **The rel is `supersedes` (A.2), and it is a judgement.** `succeeds` + says "B came after A" — both remain the truth of their moments; a + round-4 report does not falsify round 3. `supersedes` says "B is what + A used to be" — the policy that replaced a policy, the spec that + absorbed a draft. Writers choose which claim they are making. +2. **The sweep excludes the superseded and refills the seat.** After + selection, a candidate that a LIVE node `supersedes` leaves the + result set and the next-ranked candidate takes its place — `k` is + still met. The successor competes on its own relevance and is never + smuggled in: a replacement that does not match the question is not + evidence for it. +3. **Nothing is hidden silently.** The response carries + `superseded_excluded: [{id, by}]` — the reader is told what was set + aside and by what, in the same breath. An empty sweep whose only + matches were superseded still says so, which is the difference + between "nothing matches" and "what matched has been replaced". +4. **`include_superseded: true` restores the history view** — the + excluded items return, carrying their C.6c.3 annotations. Off by + default; the flag enters the J.10.7 key (it changes the reading). +5. **Navigation never suppresses.** `locate`, `sniff`, `move`, `scan` + and the map projections show the forest as it is — suppression is a + rule about material assembled for ANSWERING, not about the map. An + agent walking the graph sees the superseded node, its edges, and its + history. +6. Scope is honest: the suppression edge is read from the catalog under + the caller's own view — a successor the caller cannot see cannot + suppress what they can (the same periscope rule as C.15's waymark). + +### C.6d `view(id: string) → media content` (v0.48) + +**MCP tool, not a REST primitive**: the image payload behind a `media` +node, handed to the *caller's* model as MCP image content. G.5 stated +the split text to find, binary to consume and named this tool as a +possible future; this section makes it normative. `harvest` finds the +screenshot by its describer prose; `view` is how a multimodal client +then reads the pixels themselves: a tutorial screenshot before acting +on it, a UI mock a person clipped as feedback, a whiteboard photo whose +arrows the describer could only gesture at. + +Semantics (normative): + +1. Resolution follows J.14 exactly: the node, its `payload` field + resolved relative to the node's directory, contained in the forest + root after resolution. Absent node, node without a `payload`, and a + `payload` whose file is missing all answer the **same** `E_NOT_FOUND` + envelope as a missing node and on a host, an out-of-scope node is + byte-identical to all of them (J.3's no-existence-oracle invariant). +2. A remote payload URI (G.9) is refused `E_SCHEMA` naming the scheme, + as on J.14: fetching inside a read hides a network dependency; + `vine prefetch` is how a remote region is warmed. +3. **Images only.** A payload whose type is not `image/*` is refused + `E_SCHEMA` naming the type: a dataset is read with `query`, audio + waits for a transcriber role (G.5.1), and raw bytes of arbitrary + kind remain the human surface's affair (J.14). +4. **Bounded at 6 MiB** the same number as the G.5.1 describer's own + refusal, because it is the same question ("too big to hand a + model?") and one project answers it once. Over the bound is + `E_SCHEMA` naming the size; the J.14 route serves bytes of any size + to people. +5. The result is two content blocks: a JSON header `id`, + `media_type`, `size`, `payload_hash` and the image content itself. + The token budgets of Part C do not apply to the image block: the + bytes land in the caller's context by the caller's explicit choice, + and the byte bound above is their ceiling. +6. Traced like any read (Part D) and it deposits pheromone: a model + that chose to open an image is the strongest evidence of usefulness + this node will ever receive. +7. On a host: requires the `read` capability, audited like a read with + the byte size (never the bytes), and **not** offered to the J.10.5 + walk its whitelist is unchanged, because the forest's own `answer` + binding is not presumed multimodal. A vision-capable walk is a + possible future, not this section. +8. On the REST surface this tool does not exist: `GET .../payload/{node}` + (J.14) is REST's byte route, and a JSON twin of it would only + disclose server paths. + +**F.50 (acceptance).** `view` on a media node returns image content +whose bytes equal the payload file and a header whose `payload_hash` +matches the passport. On a dataset it answers `E_SCHEMA` naming the +type; over 6 MiB, `E_SCHEMA` naming the size; on a remote URI, +`E_SCHEMA` naming the scheme. A scoped principal viewing an +out-of-scope media node receives the same envelope as for a missing +one, and a node without a payload the same. All covered by tests. + +### C.7 `plant(node: NodeSpec) → PlantResult` + +`NodeSpec` = full frontmatter + `body` + `parent` (destination branch id). + +Atomic operation (in this order; failure at any step = full rollback): +1. Validates frontmatter against the schema (A.3) and `summary` (A.4); +2. Checks `id` uniqueness; +3. Writes the file; +4. Inserts the entry into the parent `_index.md`'s `## Direct bananas` (or `## Sub-branches`); +5. `git commit` with the standardized message `plant(): [source=<source>]`; +6. Marks the node stale in the derived layer (lazy re-embedding). + +Returns: `{id, commit, trail}`. + +#### C.7.1 Dataset planting declarative schema (v0.8) + +A `NodeSpec` with `type: dataset` MAY carry a `schema` object describing the +payload to be **born** with the node: + +```json +{ + "type": "dataset", + "id": "clients/prospecting-2026", + "parent": "clients/_index", + "title": "Client prospecting 2026", + "summary": "...", + "schema": { + "clients": { + "columns": {"name": "TEXT", "site": "TEXT", "segment": "TEXT", + "collected_at": "TEXT"}, + "primary_key": ["name"] + } + } +} +``` + +Rules (normative): + +1. **The model never writes DDL.** The schema is data; the Vine generates + the `CREATE TABLE` statements itself. Validation, all `E_SCHEMA` on + failure: + - table and column names MUST match `^[a-z_][a-z0-9_]*$` (≤ 64 chars); + - column types MUST be one of `TEXT`, `INTEGER`, `REAL`, `BLOB`; + - `primary_key` (optional, per table) MUST reference declared columns; + - limits: ≤ 10 tables per dataset, ≤ 50 columns per table, ≥ 1 of each. +2. `schema` on a non-dataset `type` → `E_SCHEMA`. A dataset planted + WITHOUT `schema` keeps the v0.7 behavior (reference to a payload that + already exists on the filesystem). +3. **Payload birth**: `payload` defaults to `<leaf-of-id>.db`, + `payload_type` to `sqlite` (explicit values are honored; `payload` MUST + be a bare filename ending in `.db`). The target file MUST NOT already + exist (`E_SCHEMA` never silently overwrite a payload). The Vine + creates the SQLite file, applies the generated DDL, and computes + `payload_hash` (sha256) into the frontmatter. +4. **Auto manual**: when the body lacks a `## Query manual` section, the + Vine appends one generated from the schema each table with its column + list, plus example queries (`` `SELECT * FROM <t> LIMIT 5` ``, + `` `SELECT COUNT(*) FROM <t>` ``) so C.2 `look`'s `query_manual` + contract works from birth. **When the node is born with `rows` (rule 7) + the auto manual is followed by the `## Sample rows` map of G.2.3**, + taken from those rows: the body is the only place a value inside the + payload is ever visible to `sniff`, and a dataset born full and mapped + empty is findable by nothing it contains. A caller-provided manual is + kept verbatim, and suppresses both sections an author who wrote the + manual owns the body. +5. **Atomicity**: the C.7 rollback covers the payload any failure after + the `.db` is created MUST remove it along with the `.md`. A.3.1 intact: + the commit carries only markdown; one dataset node = one `.db` = one + database (several tables = several keys in `schema`; there is no + separate "create database" concept). +6. After birth, rows enter exclusively via `tend` (C.10) multi-row + `INSERT INTO t VALUES (...), (...)` is a single statement and therefore + already legal there. Schema evolution (`ALTER`) is NOT available to + agents in v0.8. +7. **Initial rows (v0.9)**: the `NodeSpec` MAY carry `rows`, a mapping + `table → list of rows` loaded at birth, after the DDL and BEFORE + `payload_hash` is computed. Normative: rows are inserted **parameterized** + (`executemany` with placeholders row values are data, never SQL text, + so no keyword scanning applies and injection is impossible by + construction); every `rows` table MUST exist in `schema` and every row + MUST have exactly the table's column count (`E_SCHEMA` otherwise); the + atomic rollback of C.7 covers loaded rows (the payload is removed whole). + This is the bulk-load path for the Gardener (G.3) and collector agents; + incremental writes after birth remain `tend`-only. + +Canonical uses (informative): an agent collecting external data plants the +dataset then fills it with `tend`, for later harvest by `query`/humans; an +agent finding a large markdown table in a `document` plants a dataset twin, +loads the rows, and `graft`s a `related-to` link from the document prose +stays as source, the data becomes filterable SQL. + +#### C.7.2 A write you can repeat (v0.52) + +`plant` refuses a duplicate `id` with `E_SCHEMA`, and that MUST remain the +default: a node silently overwritten because somebody reused an id is the +one failure a knowledge base does not recover from, and it is invisible +afterwards. The cost of that correctness is that **a write cannot be +retried**. An agent whose `plant` timed out does not know whether the node +exists; retrying may fail for a reason that reads like its own mistake, and +not retrying may drop the fact it was asked to keep. Unsupervised writing +needs one of the two to be safe. + +`plant(node, if_absent: true)` makes the call idempotent **by id**: + +1. Id free: the node is planted exactly as it is planted today validation, + index entry, commit, all of C.7 unchanged and the result carries + `created: true`. +2. Id taken: **nothing is written, nothing is committed**, and the result is + `{id, created: false, trail}` describing the node that is already there. +3. The submitted content is NOT compared to the existing node, NOT merged + and NOT applied. `if_absent` says "make sure this exists"; changing what + exists is `graft`'s job, and a flag that quietly edited would be the + silent overwrite this contract refuses. +4. Scope is unchanged. The destination parent is resolved and gated exactly + as ever, so the flag cannot be used to probe ids under a branch the + principal may not write to; an out-of-scope destination is refused before + the id is ever looked at. +5. `created` is present on **every** `plant` result, with or without the + flag it is `true` on the path that plants, so a client never has to + infer the outcome from the absence of a field. + +**F.61 (acceptance).** `plant(node)` on a free id returns `created: true` +and a commit; repeated, it returns `E_SCHEMA` and writes nothing. The same +call with `if_absent: true` returns `created: false`, no commit, the +existing node's trail, and leaves the existing node byte-identical even when +the submitted body differs. Two `if_absent` plants of the same id leave one +node and one commit in the forest's history. Covered by tests. + +#### C.7.3 A write rehearsed (v0.57) + +The 60-token summary ceiling is a good rule with an expensive messenger: +the refusal arrives *after* the whole node crossed the network — the +consumer team lost two of eight plants to summaries of 61 and 62 tokens, +each costing a 33 KB round trip to learn one number. The error message +was excellent and late. + +`plant(node, dry_run=true)` runs the rehearsal: + +1. **Every validation the real plant runs, in the real order** — id and + parent-chain rules, declared types and rels against `_meta/schema`, + the summary ceiling, alias bounds, link targets' existence wherever + the real plant checks it, dataset `schema` validation (C.7.1). Not a + parallel checker: the same code path up to the first write, because + two validators agree only where somebody compared them (the C.5.3 + lesson). +2. **Nothing is written, nothing is committed, nothing is indexed.** No + file, no catalog row, no pheromone, no `_derived` touch. A dry run + repeated forever leaves the forest byte-identical. +3. The success answer is `{id, valid: true, dry_run: true}` — and + `created` is absent, because nothing was. A failure is the exact + envelope the real call would have raised. +4. `dry_run` composes with `if_absent` (the rehearsal then also reports + `created: false` for a taken id instead of `E_SCHEMA`, mirroring + C.7.2's answer shape). +5. Scope and capability are checked as on the real path: the rehearsal + requires `write` and gates the destination — a dry run that a + read-only principal could call would be an oracle for what a write + *would* say. +6. **A failing rehearsal names every problem it can determine (v0.59).** + The point of this primitive is to replace trial-and-error with one + call, and validating in a chain — first problem, stop — left it + trial-and-error that merely costs less: the consumer team's node had a + 61-token summary *and* a non-existent parent, and learned about them in + two round trips. A dry run MUST run every check whose preconditions + hold and report the lot. Three constraints keep it honest: + - **The envelope is unchanged to the byte.** `code`, `message` and + `hint` remain those of the *first* problem in the real path's own + order, so a client that reads the code, and every test written + against v0.57, sees exactly what it saw before. The complete list + rides in the envelope's `data` as `errors: [{id, code, message, + hint}]` (C.12's `data` carrier, the shape C.14 already uses for + `anchors`), the first entry being the one the envelope repeats. + - **A check whose precondition failed is skipped, never guessed.** If + the parent does not exist, the rehearsal does not invent what its + kind would have been; the reported list is what could be + *determined*, and a second rehearsal after the fixes is a legitimate + step, not a failure of this rule. + - **A batch rehearses every node (C.7.4).** `dry_run` over a list runs + all of them and collects across all of them, each error carrying its + node's `id` and its `index` in the list — twenty nodes with twenty + problems is one correction, which is the whole reason the list form + exists. The real `plant` is unaffected: it refuses at the first + problem, because writes wait behind it and there is nothing to gain + from computing more. + +#### C.7.4 A batch is one plant (v0.58) + +The consumer team planted eight documents in eight calls; two failed on +their summaries and left a half-built graph — nodes present, links +aimed at absences — that only a second corrective pass healed. Their +sentence: the same batch principle `look`, `pick` and `scan` already +have on the read side, owed to the write side. And the load report adds +the other half of the motive: one plant is one writer-lane occupation +and one git commit, so one hundred nodes were one hundred commits. + +`plant` accepts a **list** in `node` (≤ 20 — `MAX_BATCH_PLANT`): + +1. **Everything is validated before anything is written.** Every node + runs C.7.3's rehearsal, in list order, against the forest PLUS the + batch's own earlier nodes — so a branch and its children may share + one batch. The first failure refuses the whole call with the exact + envelope the failing node would have raised alone, prefixed with its + id; nothing is written, nothing is committed. All-or-nothing, stated: + a partial batch is the half-built graph this rule exists to end. +2. **The batch lands in ONE commit** (`plant(batch): N nodes`), every + file and every parent-index refresh inside it. One commit is one + lane occupation and one git ceremony — the write ceiling, divided by + the batch size. +3. **The answer accounts for every id sent** (C.11's idiom): + `{created: [ids], existing: [ids], commit, count}` — `existing` is + `if_absent`'s per-node answer (an id already taken skips, writes + nothing, fails nothing); without `if_absent` a taken id fails the + batch as it fails a single plant. +4. **`dry_run` composes:** the whole batch rehearses, nothing lands, + and the answer is `{valid: true, count, dry_run: true}` — or the + first failure, exactly as rule 1. +5. A duplicate id INSIDE the batch is `E_SCHEMA` naming it — two nodes + cannot claim one address even transiently. +6. A single dict in `node` keeps the v0.57 shapes to the byte; a + one-element list answers the batch shape. Datasets (`schema`) are + refused in batches for now — a payload birth mid-batch has no + rollback story yet, and refusing is honest where restoring is not. + +### C.8 `graft(id: string, patch: GraftPatch) → GraftResult` + +`GraftPatch` supports four operations (combinable): +- `set_frontmatter: {field: value}` mutable fields only (`title`, `summary`, `tags`, `confidence`, and `aliases` as of v0.54 — a list of at most 16 non-empty strings of at most 80 chars each, anything else `E_SCHEMA`); `id`, `type`, `created` are immutable (`E_READONLY`); +- `add_links: [{rel, target}]` / `remove_links: [...]`; +- `append_section: {header, body}` or `replace_section: {header, body}`; +- `replace_body: string` (v0.43) the entire body at once, the note as + the unit of edit. The empty string is a valid body. NOT combinable + with the section operations (`E_SCHEMA`: one patch, one truth about + the body), and refused on index nodes (`E_SCHEMA`: an index's body is + the indexer's render, and a hand-written one would stop parsing as a + map). The serialized node MUST re-parse before the commit happens. + +Special rules: +- A `summary` change propagates to every `_index.md` that replicates it (same transaction). +- **A write that outdates the scent says so (v0.54).** A `graft` whose + patch changed the body (`replace_body`, `replace_section`, + `append_section`) without carrying a `summary` in the same patch returns + `summary_stale: true`. `locate` indexes title, aliases, tags and summary + and nothing else (C.6b split), so every body edit that leaves the summary + behind ages the exact layer navigation trusts — and v0.52's empty-read + hint *taught* callers to trust it. The flag is the caller's chance to + repair in the same turn, and the repair is one call: + `graft(id, {set_frontmatter: {summary: …}})` — which was always legal and + is now stated. The flag is absent (never `false`) on every other patch; + it is a signal, not a judgement of whether the summary still fits, which + only a reader of both can make. +- **An unknown patch key is refused, never absorbed (v0.56).** A key of + `patch` that names no operation above is `E_SCHEMA`, naming the key and + listing the operations that exist. Before this, an unknown key was + silently discarded: alone it read as an empty patch, but **beside a + legal operation the call answered `200` and did less than it was asked** + — `graft(id, {"regenerate_summary": true, "append_section": …})` + appended the section, dropped the flag, and the caller walked away + believing the summary was regenerated. A patch key is a claim about + what the write does; the write must refuse claims it does not + understand, which is the same discipline v0.54's rule 8 (C.12) applied + to unknown REST parameters. The refusal happens before anything is + written — a patch half-understood MUST NOT be half-applied. +- **Reinforce-before-create policy (shortcuts):** at the end of a successful hunt, the decision cascade is: (1) if a shortcut already covers the entry→banana connection on the trail, do NOT create one just increment the existing one's `heat` and `confidence` (fortification, no commit); (2) if none exists and the trail was >= 4 hops, `graft` a new `discovered-shortcut` with `confidence: 0.5` and `discovered_by: agent`; (3) new lateral connections the agent notices (`related-to` between the banana and semantic neighbors) enter as a **proposal** with `confidence: 0.3`, subject to confirmation or pruning by the Ranger. The Vine MUST implement step 1's check inside `graft` itself (shortcut idempotence): grafting a duplicate link automatically becomes fortification, never an error or a duplicate. +- Commit: `graft(<id>): <patch summary>`. + +### C.10 `tend(id: string, sql: string) → TendResult` (v0.7 Phase 2) + +The dataset-write primitive: the forest stops being a smart reader and +becomes memory that learns. `query` (C.5) remains read-only forever; `tend` +is the only sanctioned write path into a dataset payload. + +Preconditions: + +- Writable Vine (read-only server → `E_READONLY`). +- Node is `type: dataset` with `payload_type: sqlite` and an existing + payload file anything else → `E_QUERY_FORBIDDEN` / `E_NOT_FOUND`. + +Statement rules (normative, mirror of C.5's paranoia): + +- Exactly ONE statement, and it MUST start with `INSERT`, `UPDATE` or + `DELETE`. Reads belong to `query`; schema changes (CREATE/ALTER/DROP) + belong to the Gardener all rejected with `E_QUERY_FORBIDDEN`. +- Forbidden anywhere in the statement: `ATTACH`, `DETACH`, `PRAGMA` in + both spellings, the keyword and the `pragma_*` functions (v0.50) + `DROP`, `ALTER`, `CREATE`, `VACUUM`, `REINDEX`, `BEGIN`, `COMMIT`, + `TRANSACTION` → `E_QUERY_FORBIDDEN`. +- `UPDATE`/`DELETE` MUST carry a `WHERE` clause (mass-wipe guard): target + rows explicitly; full rewrites are the Gardener's job. +- **The table allow-list applies here too, reads included (v0.50).** When + the grant narrows the dataset (J.3), `tend` enforces it through the same + authorizer as `query` (C.5.3), refusing the write actions *and* + `SQLITE_READ` outside the list. Without the read action the scope would + hold only for the destination, and writing is a way of reading. +- Timeout 2s → `E_TIMEOUT`. SQL errors roll the transaction back and + surface as `E_QUERY_INVALID` (v0.47, C.5.2 the guard above decides + what is *forbidden*; SQLite decides what is *invalid*, and a `tend` + naming a column that does not exist is the second, on a dataset the + principal is allowed to write). The payload is untouched either way. + +Audit trail (A.3.1 compliant): + +1. The write commits in the payload SQLite. +2. The Vine refreshes the node's frontmatter: `payload_hash` = sha256 of + the payload file, `updated` = today. +3. `git commit` of ONLY the `.md`, message `tend(<id>): <VERB> <n> row(s)`. + The what/when history lives in the markdown commit stream; the binary + never enters git. +4. If step 2-3 fails after step 1 committed, the `.md` is restored and the + error surfaces the resulting hash drift is exactly what + `vine validate` now warns about (self-healing: the next successful + `tend` refreshes the hash). + +Response: + +```json +{"id": "vendas/pedidos-2026", "rows_affected": 1, + "payload_hash": "<sha256>", "commit": "<hash>", "elapsed_ms": 4.2} +``` + +### C.9 Concurrency and consistency (Phase 0) + +- **One writer, N readers:** `plant`/`graft` go through a single queue (global mutex in the Vine). Reads never block. +- Readers MAY see state up to 1 write behind (eventual consistency of seconds) acceptable by design. +- The `.vine.lock` file at the root prevents two writer Vines on the same forest (`E_LOCKED`). + +**The lock is possession, not existence (v0.55).** Until v0.54 the lock +was the file: created `O_EXCL`, holding nothing but a pid nobody ever read +back. A process that exits without deleting it — a kill, an OOM, a +container upgrade, which is how server processes actually end — left the +forest refusing every writable open forever, and since a host serves reads +through its one writable Vine, an orphan file was a total outage repaired +only by shell access. Measured in the field: one upgrade, two forests, +every primitive dead, health green. + +Four rules replace that: + +1. **Possession is the kernel's.** Acquiring the lock is taking the OS's + advisory lock (`flock`-class) on the open lock file, which the kernel + releases when the holding process exits, however it exits. The file's + existence decides nothing. +2. **The file is the holder's card.** On acquire it is rewritten with + `{pid, host, since}` — diagnostics for humans and for the refusal, + never the control. A card left by a dead process is an orphan: the + next open takes the kernel lock over it, rewrites the card, and + serves. Silently, because recovering from a crash is not an event the + caller needs to act on. +3. **`E_LOCKED` names the holder.** A refusal quotes the card — pid, + host, since — so "who has it" stops being a filesystem investigation. + The hint says the lock releases itself when its holder exits, instead + of prescribing a manual `rm` to callers who have an API and no shell. +4. **A filesystem that cannot hold the lock says so by behaving as + before.** Where the kernel lock is unsupported (some network mounts), + acquisition falls back to v0.54's existence semantics — refusing on a + present file — because guessing liveness without the kernel is how + two writers happen. The J.13.5 release endpoint is the operator's + path there. + +Reclaim races are closed by identity, not by luck: after taking the +kernel lock the holder verifies the path still names the inode it locked +(a release unlinks while holding, so a waiter that acquired on the +now-unlinked inode retries against the fresh file). Bounded retries; a +forest that stays contended answers `E_LOCKED` honestly. + +**N readers are real now (v0.57).** The lock is possession of the +*write*: a read-only Vine (`writable=False`) takes no lock and MAY be +opened in any number beside the writer, in the same process or another. +What makes that safe is WAL — a reader sees every write whose transaction +committed before its own began, which is exactly the "up to 1 write +behind" this section has promised since Phase 0. What makes it *practical* +is one more pragma: every read deposits pheromone, so N readers are N +occasional writers to the trails store, and SQLite's default answer to a +busy writer is an immediate "database is locked". The derived-layer +tuning (`tune_derived`) therefore sets `busy_timeout` alongside WAL: a +contended deposit waits its milliseconds instead of erroring. The host +layer's use of this property is J.6.2. + +--- + +### C.11 A batch is one call (v0.52) + +`look` and `pick` accept a **list** of ids where they accept one. The +minimum path to read a passage is three calls (`locate` → `look` → `pick`), +so reading five nodes cost eleven round trips, eleven tool results in the +caller's context window, and — measured against a served Station — about +six seconds of network for a forest of four nodes. Context is the resource +this product promises to save, and the shape of the surface was spending it +on plumbing. An agent that tried the obvious grouping, `pick(id=["a","b"])`, +got `500 Internal Server Error` (C.12). + +The saving is round trips. It is **not** tokens, and the contract says so: + +1. **One call, one budget.** A batch is sized by a single budget, not by the + per-item budget times the number of items: `look` ≤ 2000 tokens for the + whole response (BUDGET_LOOK stays 500 for a single digest and for each + digest inside a batch), `pick` ≤ 4000 — the same wall a single body + already meets. An agent that asks for five large bodies gets what fits + and is told the rest was dropped; nothing about a batch may deliver more + material into one turn than the primitive would deliver alone. +2. **Whole items drop, from the tail, in the caller's order.** Results are + returned in the order the ids were given ranking a list somebody + already chose would make which item is dropped unpredictable. Dropped + items are **named** in `dropped: [id, …]` with `truncated: true`; a body + is never sliced to make room. +3. **Every id comes back accounted for.** Each id in the request appears + exactly once in the response: in `nodes`, in `missing`, or in `dropped`. + A batch of ten with one bad id MUST NOT fail as a whole — the other nine + were valid questions and re-asking them is exactly the round trip this + removes. +4. **`missing` keeps J.3's rule.** An id that does not exist and an id the + principal may not see are both `missing`, byte-identical, exactly as + `E_NOT_FOUND` is for a single read. A batch MUST NOT become the surface + that distinguishes them. +5. **The shape follows the request, not the result.** A list in returns + `{nodes, missing, dropped, truncated}`; a string in returns the single + digest or content object of C.2/C.4, unchanged to the byte. A one-element + list is still a list: a client that built its request as a list must not + have to branch on how many ids it happened to hold. +6. **Bounded.** `look` accepts at most 10 ids, `pick` at most 5; more is + `E_SCHEMA` naming the cap. An empty list is `E_SCHEMA` too — it is not + a request for nothing, it is a caller with a bug. +7. Duplicates are collapsed, keeping first position. The same node read + twice in one call is a mistake with no meaning to preserve. + +Each item is built by the primitive itself: same fields, same per-node +budget, same `fields`/`section` argument applied to every id in the batch. +A batch is a transport shape, never a second semantics. + +**F.57 (acceptance).** `look` and `pick` with a list of ids answer +`{nodes, missing, dropped, truncated}` in the caller's order; with a string +they answer exactly the single-node shape they answered before. A batch +containing one absent id and one out-of-scope id reports both in `missing`, +byte-identically, and still returns the valid ones. A batch whose bodies +exceed the budget drops whole items from the tail, names them in `dropped`, +and never returns a sliced body. Ids over the cap, and an empty list, are +`E_SCHEMA`. For every accepted batch, the union of `nodes`, `missing` and +`dropped` is exactly the set of ids requested. Covered by tests. + +### C.12 Every exit is an envelope (v0.52) + +Part C says a failure is `{error: {code, message, hint}}`, and the project's +error text is one of the things a reader of this surface praises — because +the consumer is a model, and an error that teaches is the difference between +recovering in the next turn and giving up. The hole was never in the codes +it defines; it was in the paths that reach none of them. Seven malformed +calls against a served Station produced five different behaviours: + +| call | was | +|---|---| +| `pick(id=["a","b"])`, `look(id=["a"])`, `locate(query=["a"])` | `500`, body `Internal Server Error`, no envelope | +| `locate(query="x", k="three")` | `400 E_SCHEMA: "'>' not supported between instances of 'int' and 'str'"` | +| `look(id=null)` | `404 E_NOT_FOUND: node not found: None` | +| `sniff(terms=[123])` | `200 {"results": []}` | + +The last two are worse than the crashes, because they answer. A `null` id +was coerced into the string `"None"` and looked up; an integer term was +accepted and matched nothing, which is indistinguishable from "nothing in +this forest matches". A `500` with no code cannot even be classified: it +tells a model nothing about which of three opposite reactions is right +alert the operator, stop, or just fix the argument. + +Normative: + +1. **One signature table.** Every primitive's parameters name, accepted + types, default, whether required are declared **once, in the engine**, + and every surface that receives arguments from the wire enforces that + declaration either directly, before the primitive is reached, or + through a transport that already refuses on a schema of its own (MCP + validates a tool call against the tool's input schema). Where the second + is relied on, the two MUST be checked against each other mechanically: + two descriptions of one contract agree only where somebody compared them + (C.5.3's rule, applied to arguments rather than tables). A parameter an + MCP tool accepts and the table does not know is a defect in whichever is + wrong, and the comparison is what says so. +2. **Argument shape is `E_SCHEMA`/400**, and the message names the + parameter, what arrived, and what was expected. A Python exception's text + is not a message: `'>' not supported between instances of 'int' and + 'str'` is a stack trace wearing an envelope, and it names neither the + parameter nor the type. +3. **`null` is not a value.** A parameter given `null` is a parameter not + given: refused as missing when it is required, defaulted when it is + optional. Never coerced to a string and looked up. +4. **A list where a scalar belongs is refused as a list** unless the + primitive takes one (C.11) never iterated, never joined, never + silently taking the first element. +5. **The last resort is still an envelope.** Any exception no rule above + caught is answered `E_INTERNAL`/500 in the envelope shape, naming the + primitive and the exception's type and nothing more: no traceback, no + file path, no SQL. An unhandled path is a defect in the host; served as + a bare 500 it becomes the caller's defect too, because the caller cannot + tell it apart from its own bad argument. This applies to **every** route + the host serves, not only the primitives. +6. **A missing parameter is not a denial.** A route that requires + `?forest=` and did not get one answers `E_SCHEMA`/400 naming it. Measured: + `GET /v1/admin/health` with no `forest` told a key holding `admin` on + every forest it lacked `admin` on that forest sending an operator to + audit grants over a mistake that was in the URL. What was asked for is + resolved before who may have it, for every parameter whose absence is + not itself a secret; an id that may not exist keeps its existing + treatment (J.3), because "which forest" is a question about the request + and "may I" is a question about the principal. + +**F.60 (acceptance).** Each of the seven malformed calls tabled above is +answered with the envelope: `E_SCHEMA`/400 naming the parameter and the +types for the wrong-shape ones, `E_SCHEMA` for a `null` required parameter +and for `sniff(terms=[123])`. No route answers a bare `500`: an exception +raised inside a primitive arrives as `E_INTERNAL`/500 in the envelope shape, +naming the primitive and the exception type and carrying no traceback. +`GET /v1/admin/health` with no `forest` answers `E_SCHEMA`/400 to a key that +holds `admin`, and `E_FORBIDDEN`/403 to one that does not hold it on the +forest it named. A test compares the MCP tool schemas against the engine's +signature table and fails on any divergence. Covered by tests. + +### C.13 Where the material sits in time (v0.52) + +"Last week I wrote something about this" is how a person addresses their own +knowledge, and the forest already knows: every passport carries `created` +and `updated` (A.3), the Gardener stamps `created` when a document enters, +git versions both, and `reindex` rebuilds them identically. What was missing +was any way to **use** them. An agent asked about last week had to sweep the +whole forest and hope the ranking floated something recent — on a forest of +four nodes that is invisible, and on a forest of forty thousand it is the +difference between a search and a scan. + +A window is also the cheapest filter this system has: it is decided from the +catalog row, before a single body is opened. A `sniff` bounded to seven days +opens the files of those seven days and no others. + +Two additions, and the second is what makes the first safe. + +#### C.13.1 Windowed reads + +`locate`, `sniff`, `scan`, `harvest` and `answer` (J.10) take three +optional parameters: + +- `since`, `until` — inclusive bounds, accepted as `YYYY`, `YYYY-MM` or + `YYYY-MM-DD`. A partial bound expands to its own period: `since: + "2026-08"` is 2026-08-01, `until: "2026-08"` is 2026-08-31, `until: + "2026"` is 2026-12-31. Either may be given alone. +- `date_field` — `"created"` (default) or `"updated"`. + +Normative: + +1. **Optional, and absent means unchanged.** A call without them behaves + byte-for-byte as it did before this version: same candidates, same + ranking, same budget, same fields. Nothing about a window is ever a + default, because a default window is a forest that quietly shrank. +2. **A window narrows the candidates, never the ranking.** It is a + metadata filter (C.6b's split is untouched: `locate` still reads + curated metadata, `sniff` still reads bodies); `score` and `heat` mean + exactly what they meant. +3. **Applied where candidates are chosen, not after the cut.** Filtering a + ranked top-`k` after the fact returns fewer than `k` results while the + forest holds more that match — the caller then reads scarcity that the + implementation invented. The predicate belongs in the query that selects + candidates. +4. **An unparseable bound is `E_SCHEMA`**, naming the accepted forms. It + MUST NOT be ignored: a filter silently dropped is a lie about what was + searched, and it is told to a caller who will believe the result covers + only their window. Same for an unknown `date_field`, and for `since` + later than `until`. +5. **Undated nodes never match a window**, and the response says how many + were excluded that way (`undated_excluded`, present only when there are + any — a forest with complete passports should not spend a line of its + budget on a zero). A node whose passport carries no usable date is not + "recent" and is not "old"; dropping it silently is how a windowed search + loses material nobody suspects. Under a policy the number counts only + nodes in scope, like every other count a scoped caller reads (J.3). +6. **The response echoes the window it applied**, normalized — + `window: {since, until, date_field}`. The caller sent `2026-08`; what it + gets back is the two dates the search actually used, which are also the + two it can reuse. +7. **A bounded hunt is bounded at every hop.** When `answer` walks (J.10.5) + rather than sweeping, the window is forced onto every searching call the + model makes, not only onto the entry search, and the prompt states the + bound. A model that forgot its window on the second hop would produce an + answer labelled with a period it left — which is worse than no window, + because the label is what a reader trusts. +8. **A window names the answer it produced.** Unlike `min_evidence` + (J.10.10), a window on `answer` MUST enter the J.10.7 cache key: it + changes which nodes the retrieval could reach at all, so the same + question bounded to June and to July are two questions, and one entry + serving both would answer one with the other. It enters only when set, + so a call without it keys exactly as it did before this version. +9. **The derived layer is not a clock.** `date_field` names a passport + field and nothing else. "When it was indexed" MUST NOT become a third + option: `_derived/` is disposable and rebuilt on demand (`reindex`), so + a window over an indexing timestamp would mean one thing today and a + different thing after a rebuild, with no way for a caller to know which. + The date a document entered the forest is already `created`, written by + whoever planted or ingested it, versioned in git with the node. + +#### C.13.2 The empty window explains itself + +The risk of any filter is that it turns "nothing here" into "nothing +anywhere", and a window is the easiest filter in this system to get wrong: +a caller guessing at last week's dates, a forest whose material sits in a +different month, a `created` that never got written. C.1.1's rule therefore +applies with one addition — **when a windowed read comes back empty it says +whether the window was the reason.** + +An empty windowed read carries, beside C.1.1's `searched` and `hint`: + +- `matched_window` — how many nodes fall inside the window at all, + independent of the question. `0` means the window is the reason and the + question was never tested; a number above zero means the window held + material and the question did not match any of it. Those are different + mistakes with different repairs, and a caller cannot guess which it made. +- a `hint` naming the forest's actual date range and the nearest periods + that DO hold material, so the next call is a correction rather than + another guess. + +Both are computed only on the empty path, for C.1.1's reason: a caller +holding results has already been told what it needed. + +#### C.13.3 `calendar(scope?, date_field="created", granularity="month", since?, until?, limit=24) → Calendar` + +The map that makes a window a choice instead of a guess. It answers, from +the catalog alone and without opening a single body: **what periods hold +anything, and how much.** + +```json +{ + "date_field": "created", + "granularity": "month", + "range": {"first": "2026-01-03", "last": "2026-08-19", "nodes": 82}, + "buckets": [ + {"period": "2026-08", "since": "2026-08-01", "until": "2026-08-31", "nodes": 12}, + {"period": "2026-06", "since": "2026-06-01", "until": "2026-06-30", "nodes": 31} + ], + "undated": 3, + "truncated": false +} +``` + +- `granularity`: `day` | `week` | `month` | `year`. A week is ISO-8601 + (Monday-first, labelled `2026-W34`). +- **Most recent first.** The question that brings a caller here is almost + always about the recent end, and `limit` cuts the far end. +- **Empty periods are omitted.** A three-year gap costs nothing to report + and the buckets that exist are exactly the answer to "which weeks have + anything". +- **A bucket's `since`/`until` are the strings the reads take.** The map + hands back the query: there is no arithmetic for the caller to get wrong + between finding a period and searching it. +- `range` is the real first and last date in scope, so a caller that wants + a window nobody listed can still see the edges of what exists. +- `undated` is reported for C.13.1 rule 5's reason. +- Budget ≤ 800 tokens; over it, buckets drop from the far end with + `truncated: true`. `limit` is capped at 120. +- `scope` restricts to a branch's subtree, exactly as `sniff`'s does. +- Under a policy (J.3) every count covers **only nodes in scope**. A global + count here would be a size oracle, and a finer one than `locate` could + ever be: it would describe the shape of a region the principal was never + granted, period by period. + +Two implementation rules, normative because both are ways the obvious code +gives up the performance this section exists for: + +- **The window is a bare comparison on the column.** `created >= ?` uses + the catalog's index; `substr(created, 1, 10) >= ?` computes the same + answer and cannot, which on a forest large enough to want windows is the + whole difference. The upper bound is therefore held exclusive, one day + past the caller's inclusive `until`, so a column carrying a time still + falls inside its own last day. The catalog indexes both date columns. +- **The aggregation belongs to SQLite.** `calendar` MUST group in the + database and return one row per period, not one row per node folded in + the host: the counting is the part that scales with the forest, and it is + the part a database does in C. A scoped `calendar` (J.3) pushes the + policy's own prefixes into the same `WHERE`, so scoping stays a predicate + rather than a walk. Where the same fold exists in the host as well, the + two MUST be compared mechanically over a real corpus — C.5.3's rule + again: two spellings of one decision agree only where somebody checked. + +**F.64 (acceptance).** A `locate`, `sniff`, `scan`, `harvest` or `answer` +carrying `since`/`until` returns only nodes whose `date_field` falls inside the +inclusive window, with `k` still met when the window holds enough matches, +and echoes the normalized window. `since: "2026-08"` and `since: +"2026-08-01"` produce identical results. A malformed bound, an unknown +`date_field`, and `since` after `until` are each `E_SCHEMA`. A node with no +date is absent from every windowed result and counted in +`undated_excluded`. An empty windowed read carries `matched_window` and a +hint naming the nearest populated periods; the same read without a window +carries neither. `calendar` returns buckets most recent first, omits empty +periods, and each bucket's `since`/`until`, fed back into `locate`, return +that bucket's nodes. Two `answer` calls differing only in their window are +two store entries. Under a scoped policy no count — and no number quoted in +a hint — exceeds the nodes in scope. Covered by tests. + +### C.14 `prune(id: string, force: bool = false) → PruneResult` (v0.56) + +The write you can take back. Until v0.56 every `plant` was irreversible — +no primitive removed a node — and the consumer team measured the +consequence in their own behavior: three probe nodes left as permanent +garbage in a production forest, tagged `delete-me` because a tag was the +most deletion the product offered, and the stated conclusion that *an +agent that cannot undo should not write alone*. The rational strategy +under that constraint is to write on the local disk, where `rm` exists, +and promote only finished work — which is exactly the habit this product +exists to end. A removal primitive is therefore not a convenience; it is +what makes unsupervised writing rational. + +```json +{"id": "probes/size-probe-report", "pruned": true, + "backlinks_removed": 0, "payload_moved": null, "commit": "<hash>"} +``` + +Normative: + +1. **What it removes.** The node's `.md` leaves the working tree through + git (the deletion is staged and committed as `prune(<id>)` — history + keeps every byte, which is what makes this *soft*: recovery is an + operator act, `git revert` or a Part I snapshot, never a primitive). + The parent index loses the child's entry and its coverage counts are + refreshed, in the same commit (the reverse of C.7's planting, using + the same indexer). The catalog row is deleted synchronously, so no + read offers the node again. Derived remnants — heat, sniff memos, + embeddings — become unreachable the moment the row is gone and are + the derived layer's to evaporate; a `reindex` owes them nothing. +2. **A local payload moves to the graveyard, never dies with the call.** + A payload file inside the forest (a dataset's `.db`, an `_assets/` + media file) is MOVED to `_derived/graveyard/<node-id>/` — binaries + are not in git (A.3.1), so unlink would be the one truly + irreversible byte of a primitive that promises to be reversible. + The graveyard is `_derived/`: disposable, never a source of truth, + and the operator's to empty. A remote payload (G.9) is left where it + lives — the forest never owned it. + + **And so does a source staged inside the forest (v0.61).** When the + node's `source_path` resolves under the forest's OWN `_derived/` — + the upload staging area, disposable by the same construction — that + file moves to `_derived/graveyard/<node-id>/source/` and the result + says `staged_moved`. Leaving it behind is what let a later pass over + the staging area read the pruned document as *new* and plant it + again. A source tree on the host is never touched, by this or any + other primitive: deleting somebody's file is not a thing a removal + inside a forest may do (G.3), and the distinction is the containment + test, not a flag. +3. **What points at the node refuses the removal (`E_ANCHORED`, HTTP + 409).** A node with `edges_in` is refused, and the refusal carries + `anchors: [{source, rel}, …]` (capped at 20, `anchor_count` exact) — + the caller asked to remove something other nodes cite, and the list + is what it needs to decide. `force: true` overrides: the same commit + that removes the node also edits every pointing node's frontmatter, + dropping exactly the links whose target died — a forest MUST NOT be + left pointing at a hole it created on purpose. `backlinks_removed` + counts them. +4. **A branch with children is never prunable — `force` included.** The + refusal is `E_ANCHORED` naming the child count. Prune the children + first: recursive deletion is a loop the CALLER writes, one audited, + one-node decision at a time, not a flag that can erase a subtree in + one call. The forest root's `_index` is never prunable (it has no + parent to account for it). +5. **A pruned id is free.** `plant` of the same id afterwards is legal + and creates a NEW node — ids are immutable *while they exist* + (C.7.2's duplicate refusal protects living nodes, not ghosts). The + forest's git history distinguishes the generations. +6. **Scope and capability (J.3).** `ScopedVine.prune` gates the id + exactly as every read does — out of scope answers `E_NOT_FOUND` + byte-identical to absent — and rides the same write capability as + `plant`/`graft`: J.2.6's mask ceiling is a closed set, and a fourth + token would invalidate every issued key. Under `force`, a pointing + node OUTSIDE the caller's scope is not silently edited: the whole + call refuses (`E_ANCHORED`, the out-of-scope anchors reported only + as a count — J.3 forbids naming them), because a write the caller + cannot see is a write it cannot have authorized. +7. **Audited and emitted.** The audit row and the J.16 `prune` webhook + event carry the id, the type, `backlinks_removed` and the commit — + identity, never content, like every event. +8. **Answer-cache honesty is free.** A cached `answer` whose material + cited the pruned node re-runs its sweep on every ask (J.10.7); the + reading fingerprint no longer matches, so the stored reply is + replaced, never served stale. Stated, not new machinery. + +### C.15 `transplant(id: string, new_id: string) → TransplantResult` (v0.58) + +An id is a path, so misplacement was permanent: the consumer team put a +document under the wrong branch and the only remedy was rebuilding it by +hand — plant a copy, restring every link, prune the original, lose the +history. Every deferral of this feature named the same fear: a move +rewrites every edge, trail and cache key that names the node. The answer +is not to make the id mutable — it is to make the move ONE audited act +that leaves a waymark. + +1. **One leaf node, whole, in one commit.** The passport is rewritten + under `new_id` (frontmatter `id` updated, everything else preserved — + `created` included) and the old file removed in the same commit; the + change is small enough that git's rename detection keeps + `history --follow` unbroken. A local payload moves beside the new + passport. Branches refuse (`E_SCHEMA`): move the leaves, one audited + decision at a time — C.14's own rule against subtree operations in + one call. Root and `_meta/*` never move; `new_id` obeys every rule a + plant obeys (parent chain exists, id free, `expected_parent`). +2. **Every backlink is rewritten, or the call refuses.** The nodes that + point at `id` (catalog `edges_in`) are edited to point at `new_id`, + inside the same commit — and exactly as C.14 rule 6: an anchor + outside the caller's scope refuses the whole call with a count, + because a write the caller cannot see is a write it cannot have + authorized. There is no `force` here: a move that stripped links + instead of following them would be a prune wearing a move's name. +3. **The old address is a waymark.** `new_id`'s passport records + `moved_from: [old ids]` (appended across chained moves) and the old + id joins `aliases` (union, 16-cap, overflow counted) — so `locate` + finds the old name forever. The redirect map is DERIVED from + `moved_from` at indexing: the files are the truth, and a reindex + rebuilds it (nothing lives only in `_derived`). +4. **A read of the old id answers `E_MOVED`, naming `moved_to`** — a + read says what it did not do, and "it is not here" is half the + truth when the other half is known. **Every read by id (v0.61):** + `look`, `pick`, `move`, `history`, `view` and `query` alike. Stated + generally in v0.58 and implemented in five of the six `pick` read + the file directly and answered a bare `E_NOT_FOUND`, which is the + call an agent holding a written-down id actually makes, so the + waymark was missing from exactly the path it was built for. A + redirect honoured by half a surface teaches callers not to trust it. + HTTP 404 (it is not at this + address); the envelope's `data` carries `moved_to`. Under a policy, + the new address is disclosed ONLY when it lies in the reader's own + scope; otherwise the answer is the byte-identical `E_NOT_FOUND` of a + node that never existed — a waymark must not be a periscope into a + region nobody granted. +5. **Heat follows the node, best effort.** The trails store re-keys the + old id's heat to the new one; it is `_derived`, evaporation heals + whatever a crash loses, and the pheromone was earned by the content, + which did not change. +6. **Scope and capability:** `write`, gated on BOTH addresses — reading + rule on the source (out of scope answers `E_NOT_FOUND` as absent), + writing rule on the destination (`E_FORBIDDEN` naming the grant, + C.7's own asymmetry). Audited with both ids; J.16 emits + `node.transplanted` (identity only). +7. **The stores stay honest for free:** the sweep's reading fingerprint + keys material by id, so a moved node misses cleanly and the fresh + run reads the new address; the walk's HEAD key invalidates on the + commit. Stated, not new machinery. +8. `graft`'s `set_parent` remains a refused unknown key: an address is + not a field, and an edit that relocates is this primitive, audited + as itself. + +### C.16 `history(id: string, limit: int = 20) → History` (v0.58) + +Every write has been a commit since C.7, and since v0.57 the acting +principal rides the commit itself — yet nothing on the surface could +read any of it back. The consumer team accumulated ten commits in one +session and put it plainly: git answers "what changed and who changed +it" better than the forest does. This primitive is that answer, on the +forest's own surface. + +1. **The node's commits, newest first, through renames.** Backed by the + repo's own log with rename-following, so a transplanted document's + past does not begin at its move. `limit` ≤ 50, default 20; the + response says `total` is unknowable cheaply and instead carries + `truncated` + the oldest sha served — resuming deeper is Part I's + territory (the bundle has everything). +2. **Each entry carries:** `commit` (sha), `at` (ISO 8601 **with time + of day** — the intraday answer day-precision frontmatter could + never give; D-01b closes here), `action` (the commit subject's own + prefix: `plant`, `graft`, `tend`, `prune`, `transplant`, + `gardener(...)`, `ranger(...)`, `init`, or the subject verbatim when + it matches no convention), `message` (the subject line), and `by` — + the attribution trailer's value when the commit carries one + (`station-principal:`, the trailer J.4 defines; absent on engine-only + writes, honestly). +3. **Read semantics throughout:** `read` capability, scope-gated like + `look` (out of scope answers `E_NOT_FOUND` byte-identical to + absent), token-budgeted (`BUDGET_HISTORY` = 800, whole entries drop + from the tail with `truncated: true`), traced and heat-depositing + like any read. A pruned id has no history to ask for (`E_NOT_FOUND` + — recovery is Part I's, an operator act); a moved id answers + `E_MOVED` like every read of a waymark (C.15 rule 4). +4. **Listing, never time travel.** `history` says what happened; it + does not serve old bodies. Reading a document *at* a commit is + deferred with the restore design (Part I) — a listing that also + time-travelled would be two primitives wearing one name. + +### C.17 `coverage(scope?: string, date_field?: string) → Coverage` (v0.59) + +Every read in Part C says what it did not do. `locate` names the count it +searched; `look` names the field it clipped; `scan` returns `total` beside +`returned`; the sweep counts what it suppressed. None of that reaches the +question that comes *before* any of them: **what is in this forest at +all?** + +A consumer agent asked a faithful question, received a faithful answer +built from a real document, and the answer was wrong about the subject — +because the branch holding the material had never been ingested. Nothing +on the surface could have told it so. A partial corpus produces an answer +in the exact shape of a complete one: cited, sourced, traced. `coverage` +is the read that makes the shape of the corpus askable. + +1. **Metadata only, grouped in SQLite.** No file is opened, no body is + read, and no count is computed one node at a time — every aggregate is + one statement over the catalog, so a forest of forty thousand nodes + answers in the same shape as one of forty (C.13.3's rule, for the same + reason). +2. **A root is where the caller starts.** Unrestricted, the roots are the + branch children of the forest's root `_index`. Under a policy they are + the principal's own granted subtrees — the same list `forests()` + publishes, so the two surfaces cannot disagree about where a session + begins. +3. **Each root carries:** `id`, `title`, `nodes` (everything under its + prefix, the root index included), `branches`, `first`/`last` (the + oldest and newest date under it, in the requested `date_field` — + `created` by default, `updated` the other, and **never** an "indexed" + date, C.13's rule), `origin` when the material under it declares one, + and `without_origin` — how many of its nodes carry none. +4. **`origin` is reported as the prefix `scan` takes.** The value is the + longest common prefix of the origins under that root, ending at a + URI path boundary, and it is exactly the string + `scan(filter: {origin_prefix: …})` accepts (C.6). A caller must never + have to construct it: the map names the strings the reads take, which + is the contract C.13.3 gives windows. +5. **A partial origin is stated, never rounded.** `without_origin` exists + because a root where nine nodes in ten know their source and one does + not is not a root with an origin. A forest ingested before G.2.7 has + no origins at all, and `coverage` must say that rather than omit the + field and read as "no source". +6. **Totals beside the roots:** `total` (nodes in scope), `types` + (`{type: count}`), `sources` (`{source: count}` over the `source` + enum), `undated` (nodes with no date in the requested field, C.13.2's + count), `system` (the dialect's own `_meta/` files, which are the child + of no branch and therefore under no root), and `date_field`. A node + with no value in a grouped column falls in no bucket — a column with no + value is not a category — so a grouping need not sum to `total`, while + the roots plus the listing's own index plus `system` always do. +7. **Under a policy every number is the policy's own.** Roots are + `Policy.roots`; every aggregate is filtered by the policy's own + prefixes as SQL (`Policy.sql_scope`), keyword-only and host-supplied, + unreachable from the wire (G.2.5's construction). A global count here + would describe the size and shape of a region nobody granted — a finer + oracle than `locate`'s `searched`, which is already scoped for this + reason. +8. **It says what is there; it never guesses what is not.** No `missing` + list, no comparison against a source tree, no inference about what an + operator meant to ingest. The forest can only testify about itself. + What changes is that a caller reads the whole shape in one cheap call + and draws the conclusion — "there is no `docs` root here, so ask + somewhere else" — which previously required having the source tree + mounted on disk. +9. **Read semantics throughout:** `read` capability, traced like every + read, budgeted (`BUDGET_COVERAGE` = 800). Roots drop from the tail + with `truncated: true`; **the totals never drop** — they are the + answer's spine, and a coverage report whose total was clipped would be + the failure it exists to prevent. It deposits no pheromone: it chose + no node. +10. **`scope`** narrows the whole answer to one subtree — the roots + become that branch's own children, and every total counts inside it. + The same string `scan` and `sniff` take. +11. **A payload the forest names and does not have is counted (v0.61).** + Each root carries `payload_missing` how many of its nodes declare a + LOCAL payload that is not on disk and the totals carry the same + number for the scope. It is the one integrity fact this primitive can + establish without opening a file: the passport says the path, and the + filesystem answers. A forest that announces `dataset: 2` while + neither serves a query is announcing capacity it does not have, which + is precisely the class of silence C.17 was created to end; the + difference is that here the forest CAN testify, so it must. Remote + payloads (G.9) are not counted: their absence is a fetch away and is + not a fact the catalog holds. The count is filtered by the policy + like every other number here (rule 7). + +The field named `coverage` on a branch node (A.4) answers the same +question one level down — what this branch holds. The primitive is that +field for the forest. + +## Part D Telemetry (feeds the pheromone and the Monkey Bench) + +Every navigation session generates a trace in `_derived/traces/<session>.jsonl`, one event per primitive call: `{ts, session, primitive, id, tokens_in, tokens_out, elapsed_ms}`. + +At the end, the orchestrator MUST close the session with `outcome: {success: bool, answer_nodes: [ids]}`. This closing is what: +1. Increments `heat` along the whole winning trail (whisper); +2. Evaluates the shout (v0.6): when the session metric `trail_len` read + calls made before the first harvest of an answer node is `>= 4`, the + answer nodes come back in `suggest_shortcuts`, and the orchestrator MAY + `graft` a `discovered-shortcut` from the hunt's entry node (C.8 applies); +3. Feeds the Monkey Bench metrics: **hops-to-banana** = number of `look`+`move` calls before the answer's first `pick`/`query`; **tokens-to-banana** = sum of session tokens_out; **banana precision** = correct answer_nodes / harvested answer_nodes; **trail_len** (v0.6) = read calls before the first harvest of an answer_node. + +--- + +## Part E The Troop (Parallel Swarm Navigation) + +N monkeys (navigator SLM instances) hunt the same banana in parallel, coordinated by **intra-session stigmergy**: they never exchange messages they smell each other's trails. The Vine is already N-readers by design (C.9); the Troop is an **orchestrator**-side component (the MCP client side), not the bank. + +### E.1 Hunt protocol + +1. **Frontier partition:** `locate(query, k=N)` → each monkey gets a distinct entry point (top-N results). Without partitioning, everyone explores the same trail and the parallelism is wasted. +2. **Session pheromone:** each monkey, upon judging a node promising (the SLM's own call: "relevant to the question? yes/no"), deposits `session_heat` in the hunt's scope (`_derived/trails.db`, session namespace). `locate`/`look`/`scan` inside the session apply `score x (1 + beta*session_heat)` monkeys gravitate toward regions where others found signal. +3. **Shared visited set:** `look`/`scan` digests already made in the session land in a shared cache; a monkey that would touch an already-visited node gets the cached digest instead (zero cost), and the orchestrator redirects it to unexplored frontier. +4. **Stop:** the hunt ends when (a) a monkey harvests a banana with high confidence (self-assessment above threshold), (b) the troop's hop budget runs out, or (c) the frontier empties. A **judge** (may be the main model itself) aggregates the harvests and synthesizes the answer. +5. **Post-session:** only the winning trail(s) convert `session_heat` into persistent `heat` (Part D). Losing trails evaporate with the session the swarm does not pollute long-term pheromone. + +### E.2 Implementation notes + +- **Concurrency:** asyncio in the orchestrator; the monkeys spend ~95% of their time waiting on inference. On the 3090, serving the N monkeys through the same inference server with *continuous batching* (vLLM/llama.cpp parallel slots) makes N=3-5 cost nearly the same wall-clock as N=1. +- **Sizing:** N=3 is the default; above N~5 returns diminish (frontiers overlap in small forests). N is a Monkey Bench parameter, not a constant. +- **New metric:** *troop speedup* = wall-clock hops (parallel rounds) vs the solo monkey's total hops, and total token cost (the troop spends more tokens in aggregate the speed x cost trade-off MUST be measured, not assumed). +- **Phase:** Troop is Phase 1.5 requires the full Vine + telemetry (Part D) working. Nothing in Phase 0 changes, except ensuring `trails.db` supports session namespacing (already anticipated in the trace schema). + +## Part F Phase 0 Acceptance Criteria + +Deliverable: Vine (MCP, Python) + a manual test forest (~100 nodes, 10 branches, >=1 SQLite dataset) + test suite. + +1. All C.1-C.6b primitives functional with the exact contracts above (locate may be BM25-only), including `fields` in `look` and the Catalog serving `scan`. +2. `plant`/`graft` atomic with a Git commit and index update, verified by test. +3. Token budgets respected (tests with giant synthetic nodes verifying explicit truncation). +4. `query` rejects all write SQL (injection suite: `;DROP`, `ATTACH`, multi-statement, PRAGMA). +5. Demo: a local SLM (Qwen 7-14B Q4), given only the MCP tools and the master branch, answers 10 multi-hop questions about the test forest, with recorded traces and computed metrics. +6. Latency: p95 of `look`/`move`/`pick` < 10ms, `query` < 50ms, `locate` < 100ms, `sniff` < 100ms (local forest, NVMe). +7. `sniff`: finds a fact present ONLY in the body (invisible to `locate`), attributes the correct section, respects `scope`, normalizes case/diacritics, and rejects empty terms (`E_SCHEMA`) all covered by test. +8. Payloads outside Git (A.3.1): the Vine's commit ignores non-`.md` files even if requested, and the test forest's `git ls-files` contains no binary both verified by test. +9. `harvest` (C.6c): buried fact returns the right matched section under term-scarcity refinement; small bodies come whole; `k` and the 4000-token budget are honored with explicit truncation all covered by tests. +10. Forest registry (C.0): per-request forest selection works across two forests with isolated results; lazy first-touch open auto-indexes; path escape and non-forest directories are rejected; single-forest mode serves v0.3 clients unchanged all covered by tests. +11. `tend` (C.10): accepts only single-statement INSERT/UPDATE/DELETE (its own + injection suite: DDL, ATTACH/PRAGMA, multi-statement, WHERE-less + UPDATE/DELETE all rejected); refreshes `payload_hash` and commits only the + `.md`; read-only Vine rejected; failed SQL leaves the payload untouched; + `vine validate` warns on payload hash drift all covered by tests. +12. Dataset planting (C.7.1): declarative schema births a queryable payload + (`look` shows the auto query manual, `query`/`tend` work immediately); + name/type/limit validation rejects bad schemas (`E_SCHEMA`), including + injection attempts via table/column names; existing payload is never + overwritten; rollback removes the newborn `.db`; the commit carries only + the `.md` all covered by tests. +13. Gardener (Part G): `adopt` of a mixed source tree (markdown, text, + tabular) produces a forest that lints with zero errors folders + mirrored as branches, passports carrying `source_path` + `source_hash`, + non-text originals archived under `_assets/`, datasets born with rows + loaded, no binary in the forest git; `sync` classifies new / changed / + deleted sources by hash-diff with no false positives, updates changed + passports through the audited write path, and never deletes; converter + discovery honors the config-hook > entry-point > built-in order; an + external command hook converts a file end-to-end; an `on_curate` hook + can enrich a draft and a crashing hook does not abort the ingest all + covered by tests. +14. Ranger (Part H): under a synthetic clock, one half-life halves heat and + dust rows vanish; stale session scopes are cleared; promotion raises a + well-used proposal's link confidence with an audited commit; pruning + removes only cold, low-confidence links links with confidence 1.0 or + without a link-level confidence are NEVER touched; the health report + flags an oversized branch (`needs_split`), an over-linked node and a + stale passport; repeated runs are idempotent all covered by tests. +15. Tiered storage (G.7/G.8): a `cached` adoption keeps node `.md`s body- + free with the flesh in `_derived/bodies/` and OUT of git, while `pick` + and `sniff` resolve it transparently; a `reference` adoption reads the + source live; an unresolvable body fails with `E_NOT_FOUND` + hint + while `locate`/`look` keep working (degraded map); `archive: never` + creates no `_assets/` copies; `sync(path=...)` reconciles exactly one + file; the mtime+size fast-path skips hashing unchanged files all + covered by tests. (Fetcher cache, H.6 eviction and Part I snapshots + are covered by tests as their implementations land.) +16. Gardener v2 (G.2.1 + G.4.2.1): the DOCX built-in extracts headings, + plain paragraphs, pipe tables, fragmented runs (joined whole) and + text-box text from a real `.docx`, excludes headers/footers, and a + missing `python-docx` yields `unsupported` (never a crash) with a + command hook still able to claim `.docx`; edge proposals accept only + catalog-offered targets at link-level `confidence: 0.3` with `rel: + related-to` (hallucinated ids, self-links, duplicates and over-cap + picks are dropped; branches are never candidates), the planted node + carries the proposed links, and the Ranger's H.2 machinery manages + them (promotable, prunable) all covered by tests. +17. Rollup + Landmarks (G.4.4 + H.7): rollup replaces only `source: ingest` + branch summaries (hand-authored branches untouched unless `--all`), + runs deepest-first so parents see fresh child summaries, falls back + deterministically to an A.4-valid summary when the LLM fails, and + propagates the new summary into the parent's `## Sub-branches` entry + WITH the coverage suffix preserved; the Ranger populates the master + `## Landmarks` with top-degree non-branch nodes, a second run with an + unchanged graph produces no new commit, and degree-0 nodes never + appear all covered by tests. +18. Station + ScopedVine (Part J): a fresh deployment plus one API key + serves REST, MCP and Studio against a registry of two forests; the + **leak suite** proves a principal granted only `projects/` cannot + obtain the id, title, summary, body, edge or snippet of any node + outside `projects/` through ANY primitive on ANY surface one test + per primitive per surface, `harvest` and `move` included; an + out-of-scope `look`/`pick` is byte-identical to the genuinely-absent + `E_NOT_FOUND`; a scoped `locate`/`scan`/`sniff` returns the same + response shape and budget fields as the unscoped call (filtering + precedes truncation); writes through the Station carry the acting + principal in the commit message and the audit log reconstructs a + session's full trail; capability gates reject `query`/`tend`/`plant`/ + `graft` without the matching cap; and the engine suite passes with + zero edits under `src/monkeyllm/` all covered by tests. +19. Per-forest inference (J.10): a provider's key is never returned by any + surface (create, list, or re-edit) and an empty key on update keeps the + stored one; a binding is refused for an unknown provider or an unknown + role; removing a provider removes the bindings that pointed at it; the + two roles can hold different models on the same forest; `answer` and + `curate` refuse politely when no model is bound, and enforce the `read` + and `write` capabilities respectively; and the load-bearing one for + a principal scoped to a subtree, the material handed to the answering + model contains no node outside that subtree all covered by tests. +20. Console, lifecycle and ingest (J.5/J.7/J.8): every user-facing string + resolves in all three languages, with a test that fails on the first + key missing from any of them; the console renders in both themes and + holds no credential in its bundle; forest creation refuses ids + containing separators or relative segments **before** joining them to + the root, refuses an id that already exists, and grants the creator + the forest it just made; ingest refuses without the `ingest` + capability and refuses a `dest` outside scope, an uploaded filename + that escapes its staging directory is rejected, and a forest with no + `ingest` binding still ingests with G.4-derived summaries; and a + `projects/`-scoped principal's console offers only `projects/` in its + tree, its scope picker and its dataset list all covered by tests. +21. Credentials (J.2.1/J.2.2/J.5.4): a username and password exchange for a + session token that authorises exactly what the same principal's API key + would and no more; a Station with no `MONKEYLLM_STATION_PASSWORD` set + has **no** password door rather than a default one; a password is + stored only as a salted memory-hard hash and a principal without one + cannot log in; an **expired** key, a **revoked** key and an unknown key + are all rejected identically; `last_used_at` advances on a successful + call; listing returns prefixes and never a secret, and a secret is + returned exactly once at creation; session tokens do not appear in the + token console; and the load-bearing one an administrator of one + forest is refused when minting or revoking a key for a principal that + also holds a grant on a forest they do not administer, so a token + cannot be used to reach across the registry all covered by tests. +22. Per-forest administration and navigation (J.3.2/J.5.1): every + `/v1/admin/*` route refuses a principal without `admin`, proven by a + sweep that enumerates the routes rather than a hand-written list that + a new route can quietly escape; and on a two-forest registry, an + administrator of one forest sees **no** principal, branch prefix or + audit entry belonging to the other while an administrator of both + sees everything. Navigation lists exactly the permitted consoles for + the selected forest, and each console still guards itself when reached + with the capability missing all covered by tests. +23. Person-shaped governance (J.2.3/J.5.5): one `POST /v1/admin/people` + creates a principal, grants it, sets its password and mints its key, + and the resulting password logs in while the resulting key reads — + proving onboarding needs one request; each step re-checks its own rule, + so an administrator of one forest is refused the credential steps for a + principal that also holds another forest **while the grant it was + entitled to make still applies**, and the response names what was + refused; clearing a password removes the sign-in; revoking all of a + person's keys stops all of them at once; and `GET /v1/admin/people` + returns only administered forests' grants and tokens all covered by + tests. A grant naming **several** forests lands on each of them, so the + key minted in the same request reads in every one; naming a forest the + caller does not administer refuses that forest **by id** while the rest + still apply; and a multi-forest `revoke_access` removes exactly the + grants named also covered by tests. + +24. The Gauntlet (Part K): with no embedder, an empty index, or an index + whose recorded model differs from the embedder's, `look`, `move` and + `scan` return **byte-identical** responses to the same calls made with + the feature absent entirely proven by comparing the two, not by + inspecting a flag; a mismatched index also turns hybrid `locate` off + and is reported by validation rather than silently ranking across two + vector spaces; when active, the frontier order changes, the response + says it was conditioned and toward what, and the per-call opt-out + restores the unconditioned order within the same session; and the goal + is embedded once per hunt rather than once per hop all covered by + tests. + +25. Map projections (J.11): for a scoped principal, `GET /graph` returns no + id the same principal cannot `look` at, every edge it returns has both + endpoints in scope, and every `degree` it reports equals the degree + computed from the returned edges alone proven by recomputing, not by + trusting the field; `GET /trails` exposes persistent heat only, never a + session scope; both flag `truncated` when a bound cut the answer; and + the Explore console's graph, tree and file modes read only these + endpoints and the Part C primitives all covered by tests. + +Out of scope for Phase 0 (do not implement): embeddings/vectors, `same-as` compaction, S3/R2 sync, multi-writer, Troop (Part E Phase 1.5; only ensure session namespacing in trails.db). Automatic ingest left this list in v0.9 (Part G); evaporation and promotion/pruning left it in v0.10 (Part H). + +--- + +## Part G The Gardener (ingest pipeline, spec v0.9) + +The Gardener turns raw directories into forest. It is **trusted +infrastructure** (it runs with the operator's authority, not an agent's), +but it writes through the same audited mechanics as everything else: nodes +are born via C.7 `plant`, datasets via C.7.1, and only `.md` ever reaches +git (A.3.1). Four stages only one of them needs an LLM: + +```text +0 archive → 1 convert → 2 curate → 3 plant +(raw copy) (pluggable) (LLM-optional) (existing primitives) +``` + +### G.1 Passport policy (normative) + +No file enters the forest without a passport: a sibling `.md` node that is +the file's official presence in the graph. The agent always touches the +passport first; the native file is payload. + +- Every passport records **`source_path`** (the source file's path, as given + to adopt/sync) and **`source_hash`** (sha256 of the source bytes) in its + frontmatter. These two fields make the forest itself the sync state — + there is no separate bookkeeping database to drift. +- Conversion targets per format: markdown/plain text → `note` (body is the + content, no payload); convertible documents (PDF/DOCX/…) → `document` + (body is the converted markdown, original archived); tabular (CSV/XLS/ + XLSX/tabular JSON) → `dataset` (C.7.1 birth with schema + rows; original + archived); **native SQLite (`.db`/`.sqlite`/`.sqlite3`) → `dataset` by + adoption of the file itself as the payload** (G.2.2); audio/image/video → + `media` (body is the transcript/description, original archived). +- Archived originals live in the node's branch under `_assets/` (gitignored + per A.3.1), referenced by `payload` + `payload_hash`. Markdown/plain-text + sources are NOT archived (the body is lossless). +- Node ids are deterministic slugs of the source-relative path (lowercase, + ASCII-folded, `[a-z0-9._-]`); a slug collision appends a short hash. The + id mirrors the source layout placement in `adopt` mode is structural, + not an LLM decision (ids are immutable; deciding placement at birth is + mandatory, see A.3). + +### G.2 Converter contract (public plugin API v1) + +A converter claims file extensions and produces either markdown or a +dataset description: + +```python +class Converter(Protocol): + extensions: set[str] # e.g. {".docx"} + def convert(self, path: Path) -> Conversion: ... + +Conversion = markdown(title, body) # → note/document/media + | dataset(title, schema, rows) # → C.7.1 birth + | payload(title, tables, samples) # → G.2.2 adoption +``` + +The third kind (v0.44) says *"the source file is already the payload"*: the +converter reports the structure it read and the Gardener installs the bytes. +It exists for formats the forest speaks natively, and G.2.2 is the only +built-in that uses it. + +Discovery order (first converter claiming the extension wins): + +1. **Command hooks** from the forest's Gardener config (G.6) an external + command template (`"{input}"`/`"{output}"` placeholders) that must write + markdown; lets operators plug ANY tool (including copyleft-licensed + ones) without it ever becoming a dependency of this project. +2. **Entry points**: packages installed in the environment declaring the + `monkeyllm.converters` group (`pip install monkeyllm-whisper` just + works). This is the third-party extension surface. +3. **Built-ins**: `.md`/`.txt` passthrough; `.csv`/tabular `.json` (and + `.xlsx` when `openpyxl` is present, `.xls` when `xlrd` is) → dataset + with inferred column types, one table per sheet (G.2.4); + `.db`/`.sqlite`/`.sqlite3` → dataset by adoption (G.2.2, no optional + dependency `sqlite3` is the standard library and already this + project's payload format); `.docx` → markdown when `python-docx` is + present (G.2.1). Built-ins MUST keep the core dependency-light and + MIT-clean. + +A file with no claiming converter is reported as `unsupported` never a +crash, never a silent skip. + +#### G.2.1 DOCX built-in converter (v0.12) + +Available when `python-docx` is importable (optional `ingest` extra — +python-docx is MIT, its lxml dependency BSD; same gating pattern as the +`.xlsx` built-in). Normative behavior: + +1. **Document order, single pass.** The converter walks the body's block + elements in order: `w:p` (paragraph) and `w:tbl` (table). +2. **Paragraph text = the join of ALL descendant `w:t` elements.** This + captures runs fragmented mid-word by Word (joining merges them for + free) AND text living inside embedded text boxes (`wps:txbx`, legacy + `v:textbox`) content invisible to naive `paragraph.text` readers. +3. **Headings**: paragraphs styled `Heading N` (or `Title`) map to + markdown `#`-headings (`Title`/`Heading 1` → `##` and deeper `#` is + reserved for the node title line). Everything else is a plain + paragraph. +4. **Tables** become GitHub pipe tables: first row = header, cells take + the same all-`w:t` join. Nested tables flatten into their cell text. +5. **Headers/footers are EXCLUDED**: page numbers and letterhead repeat + on every page and would pollute the scent (A.4 summaries derive from + the opening text). +6. **Exclusions are not errors**: images/drawings contribute no text + (media adoption is G.5's path); an empty document converts to an + empty-bodied markdown with the filename title. + +Without `python-docx`, `.docx` files are reported `unsupported` (G.2) — +operators can still route them through a command hook (e.g. a Pandoc or +MarkItDown wrapper), which keeps priority over this built-in. + +#### G.2.2 SQLite adoption the file is the payload (v0.44) + +`.db`, `.sqlite` and `.sqlite3` are the one source format a forest already +speaks: a dataset's payload IS a SQLite database (C.7.1 rule 5). The +built-in therefore does not convert it **adopts**. + +Normative behavior: + +1. **A payload conversion, not a dataset conversion.** The converter opens + the source **read-only** (`mode=ro`), reads the structure of every table + in `sqlite_master` (`PRAGMA table_info` for names and declared types) + and the **first 3 rows of each** (G.2.3), and reports them. It never + reads the whole file into memory: the largest thing it holds is + `3 × columns` values per table. +2. **The bytes are copied, never re-inserted.** The Gardener installs the + source file beside the passport as `<leaf>.db` the same location and + the same `payload`/`payload_type`/`payload_hash` frontmatter a C.7.1 + birth produces and plants the node with no `schema`, which is the + pre-existing "payload already on the filesystem" path (C.7.1 rule 2). + Rebuilding the database row by row would be unbounded in the source's + size, and lossy where the source's types, `WITHOUT ROWID` tables, + views, indexes or BLOBs do not survive a `TEXT|INTEGER|REAL|BLOB` + round trip. The destination of that round trip is byte-for-byte what + the source already was. +3. **The C.7.1 schema limits do not apply.** They bound what a *model* may + declare (≤ 10 tables, ≤ 50 columns, four types); an operator adopting a + database they already own is not declaring anything. The map (G.2.3) + is bounded instead, which is where the cost actually lives. +4. **A file that is not SQLite is an error, never a crash.** The 16-byte + header (`SQLite format 3\0`) is checked before anything is opened; + a mismatch is `E_SCHEMA` naming the file, reported per-file like every + other conversion failure (G.2). An encrypted or corrupt database fails + the same way, on the first read. +5. **Adoption is a copy the rollback owns.** If the plant fails after the + file is installed, the copy MUST be removed C.7's atomicity extends + to it exactly as it does to a newborn payload. On `sync`, a changed + source replaces the payload whole and refreshes `payload_hash`, + `source_hash` and the map, through the audited `.md`-only commit (G.3). +6. **`archive: always` does not double the file.** A payload conversion's + original is its payload; copying it a second time into `_assets/` would + store the same bytes twice under two hashes. The archive step is + skipped for this kind, as it already is for C.7.1 births. + +*Why not reference the source in place (informative):* because `sync` would +then be the only thing standing between a moved directory and a dataset +that answers `E_NOT_FOUND` to every question. Payloads are local to the +Vine by design (G.9.4); a remote or foreign-tree payload is the exception +that `content: reference` and the fetchers cover, not the default a folder +drop should get. + +#### G.2.5 A count limit guards invention, not data (v0.45) + +C.7.1 rule 1 caps a declared schema at 10 tables and 50 columns. That +guard is aimed at a **model**: an agent inventing a schema can invent a +thousand columns, and nothing downstream would question it. G.2.2 rule 3 +already said the counts do not apply to an adopted SQLite file. The same +reasoning applies to every conversion, and it took a real 141-column ERP +export being refused to notice. + +Normative: + +1. **The Gardener's plants are `adopted`.** A schema the Gardener read off + a source is exempt from the two COUNTS tables and columns and from + nothing else. Names still match `^[a-z_][a-z0-9_]*$`, types are still + one of the four, `primary_key` still references declared columns, and + every one of those refusals still fires. +2. **Exemption MUST NOT be reachable from the wire.** It is a keyword-only + argument of the library call, and the host's policy wrapper forwards + only the node so a request body carrying it is an error, not a + relaxed guard. A flag an agent can set is not a guard. +3. **The bound moves to where the cost is.** What a wide table actually + costs is tokens in the body and in `look`, and G.2.3's caps are what + bound those sampled columns, sampled rows, clipped cells. Refusing + the *data* to protect a *rendering* was solving the wrong problem. +4. **Nothing about `tend` or `query` changes.** DML-only, read-only, + single-statement, every injection guard exactly as it was. This is + about how many columns a table born from a file may have, and nothing + else. + +#### G.2.3 The sample map (v0.44) + +Every dataset passport's body from C.7.1 births, from the tabular +converters, and from G.2.2 adoptions alike carries two generated +sections: + +```markdown +## Query manual + +Tables: +- `findings_raw(page TEXT, type TEXT, detail TEXT)` + +Example queries: +- `SELECT * FROM findings_raw LIMIT 5` +- `SELECT COUNT(*) FROM findings_raw` + +## Sample rows + +### findings_raw 490 rows + +| page | type | detail | +| --- | --- | --- | +| /login | error | submit returns 404 | +| /login | warning | password field has no autocomplete | +| /admin/users | error | table renders before the fetch resolves | +``` + +Normative rules: + +1. **Structure and contents, for every table.** The manual names each + table and its columns with declared types; the sample names each table + and shows its **first 3 rows** (`SELECT * FROM <t> LIMIT 3`, no + `ORDER BY` the file's own order is the cheapest and the most + honest). "Every table" is the point of the whole section: a database + whose second table is the one being asked about is not mapped by its + first. **Tables, in name order**: views are excluded because C.2's + `query_manual` excludes them, and a body claiming a view the digest + never mentions is two answers to one question; name order keeps the + map stable, so a `sync` rewrites it when the data moved and not when + SQLite happened to reorder its catalog. +2. **This is what `sniff` reads.** `locate` searches curated metadata and + `sniff` searches bodies (C.6b), so a value that appears nowhere but + inside the payload is invisible to both a `.db` is opaque to every + text primitive the forest has. Three rows per table put the *shape of + the values* into the body: the vocabulary, the id format, the date + format, the units. It is not a substitute for `query`; it is the scent + that tells an agent which dataset to `query`. +3. **Bounded by construction, and never silently.** ≤ 3 rows per table; + **≤ 12 columns per sampled row**; each cell clipped to 120 characters + with `…`; BLOBs rendered as `<blob N bytes>`, never as their bytes; + NULL as an empty cell; pipes and newlines escaped so the table stays a + table. At most **20 tables** get a sample section. Whenever a cap cuts + tables or columns the section MUST state how many were left out. A + map that quietly stops is worse than a short one. + The column cap is where the real cost lives (v0.45): a 141-column + export sampled whole would put three rows of 141 clipped cells into the + body and into every `look` of it. The **manual still names every + column** that is the structure, and an agent needs it to write SQL — + while the sample shows the leading ones. +4. **Generated, never curated.** Both sections are rewritten whole by the + Gardener whenever the payload is rebuilt or replaced (G.3), and only + those two sections are: a curator's own headings in the same body + survive untouched. A caller-provided `## Query manual` at plant time is + still kept verbatim (C.7.1 rule 4) an author who wrote the manual + owns it. +5. **The summary names the tables, not just the first one.** G.4.1's + derived summary for a dataset MUST count the tables and name as many as + the A.4 budget holds. "Table X with 6 rows" for a twelve-table database + is a scent for the wrong thing. +6. **A wide table says it is wide (v0.47).** When a table has more columns + than the sample shows, the manual MUST state the count and that + `SELECT *` will not fit C.5.1's budget. The agent otherwise learns this + by spending a hop on a truncated result which now works, but a map + that could have said so beforehand and did not is a map withholding + something it knows. + + This is the boundary of what the Gardener is allowed to contribute, and + it is a sharp one. **Column count is arithmetic; column relevance is + meaning.** The Gardener MUST NOT name "the important columns", order + them by likely usefulness, or otherwise decide what the data is *for* — + it does not know, it would be confident anyway, and rule 4 already + forbids it inventing rather than reading. Which columns answer the + question is `## Notes` (C.2.1), written by somebody who knows. The + manual still names **every** column: that is structure, and an agent + cannot project without it. + +#### G.2.4 Workbooks are multi-table (v0.44) + +`.xlsx` (openpyxl, MIT) and `.xls` (xlrd, BSD-3 optional `ingest` extra, +same gating pattern) convert **every** sheet: one table per sheet, named +by the slugified sheet name, deduplicated. The first non-empty row of each +sheet is its header; empty sheets are skipped. Taking sheet one and +dropping the rest is how a spreadsheet arrives in a forest missing the +data somebody adopted it for. + +**A workbook's declared extent MUST NOT be trusted (v0.45).** The `.xlsx` +format carries a `<dimension>` record naming the used range, and a +read-only reader believes it but files written by anything other than +Excel (exports, report generators, spreadsheet libraries) routinely +declare `A1:A1` or omit it entirely. A real 130-row sheet then arrives as +one row and the file is reported as a workbook with no data: a correct +message about a wrong reading, which is the worst kind. The extent MUST be +inferred from the rows actually present. + +A workbook with no sheet holding more than a header row is `E_SCHEMA` +naming the file reported per-file like every other conversion failure, +never a crash. There is **no cap on sheets or columns** here; see G.2.5. + +#### G.2.6 The team's own name for a document (aliases, v0.54) + +Every project that files documents under a convention has a vocabulary the +files themselves never spell. A task living at +`tasks/back-end/291-provider-budget.md` is called **`BE-291`** in every +conversation, commit and cross-reference — and that token is in no title, +no summary and no body, so `locate` returns nothing and `sniff` returns +the *neighbours*: the documents that cite `BE-291`, wearing scores and +snippets and the full costume of a correct answer. For an LLM consumer +that is the worst failure shape this product can produce — plausibly wrong +beats visibly empty (C.1.1 exists because of the second; this rule exists +because of the first). + +The passport has carried `aliases` since A.3, and `locate` has indexed it +at weight 3 — between title and tags — since the catalog existed. What was +missing is a writer. The Gardener now derives aliases at draft time: + +1. **What the source states about itself is derived; what only an + operator knows is declared (v0.59).** The first version of this rule + required the `aliases:` map for anything at all, and the field showed + the cost: in a forest where every document has a canonical code, + **1,877 of 1,877** ingested nodes carried no aliases, and the most + frequent access in that forest fell through to the path measured ~100× + slower — while the skill was busy calling `aliases` "the findability + lever" and telling agents to fill it by hand. The corrected boundary + is not "no map, no aliases"; it is **who knows the name**. A code the + document prints in its own title is procedence, and reading it back is + not the engine acquiring content vocabulary — the engine invents no + words, and it must never derive from a table of conventions it carries + itself (that would be the G.4.5 violation this rule guards). A + convention the material does not state — *`back-end` means `BE` + because a team decided so* — still lives in `gardener.yaml`'s + `aliases:` map, which is the forest's own config. +2. **The derivation is mechanical, deterministic, and has four sources.** + For a source file whose stem starts with digits `N`, in folder `F`: + - **the bare number** `N` — how a document is referred to inside its + own folder, and the cheapest of all; + - **the path form** `F/N`; + - **the declared prefix** `P-N`, when `gardener.yaml` maps `F` to `P`. + The operator's declaration wins and **suppresses the next rule**: a + convention stated is not a convention to be guessed alongside; + - **the folder's initials** `I-N`, when no map covers `F` and `F` is a + compound name (two or more parts separated by `-` or `_`), `I` being + the uppercased first letter of each part: `back-end/291` → `BE-291`. + A single-word folder derives no prefix — one letter is not a name, + and inventing `T-291` from `tasks` would put noise in the field the + forest is most often searched by. + + Independently of the file's number, the draft also gains **every code + in the shape `LETTERS-DIGITS`** (2–6 capitals, a hyphen, 1–6 digits) + appearing in the document's **title or its H1** — `ADR-0002` names + itself, and a document stating its own name is the least ambiguous + source there is. Bodies below the H1 are not scanned: a code inside + prose is usually a reference to a *different* document, which is + exactly the neighbour-instead-of-target failure this rule exists to + end. + + Derived aliases are deduplicated preserving first occurrence, ordered + deterministically (declared before derived, prefixed before bare), and + an unnumbered file in an unmapped folder with no code in its title + still derives nothing — honestly, rather than by inventing a name for + a document that has none. +3. **`sync` adds, never removes (v0.56).** v0.54 said a changed + convention is applied by re-adopting — and the field showed what that + costs: an operator added the `aliases:` map to a live forest, ran + `sync`, and nothing happened, because the fast-path (G.8) skips + unchanged sources and the config is not part of what it compares. A + config edit was invisible exactly where it was aimed. `sync` now + recomputes the DERIVED aliases for every visited passport — fast-path + included; the derivation is two string operations, the conversion is + what the fast-path saves — and **unions** the missing ones into the + frontmatter. Union, never replacement: adding a name is not rewriting + somebody's edit, removing one is, so hand-added aliases survive every + refresh and removal stays a human act (`graft`, rule 4). Existing + aliases are never displaced by the 16-alias cap (C.8); derived forms + that no longer fit are dropped and counted in the sync report + (`aliases_clipped`), never silently. +4. **The backfill is `graft`.** `aliases` is mutable frontmatter (C.8, + v0.54), so an already-ingested forest is repaired by writes, not by + re-ingesting. Curation MUST NOT touch aliases: a model inventing a + team's naming convention is the hallucination G.4.2.1 exists to + prevent, in a smaller costume. **And the backfill MUST be reachable + without the source tree (v0.61):** every input to this derivation the + source path and the title is recorded in the passport, so the repair + needs no directory, no converter and no model. It was nevertheless + reachable only through `sync`, which resolves a host root and requires + `admin` over it and a forest of 1,877 nodes therefore had the feature + in the code and not in the corpus, which is the only place it counts. + J.13.6 is that pass. +5. **A derived number is a whole leading segment (v0.61).** Rule 2 derives + from "a stem that starts with digits", and the test did not require the + digits to end: `9router-free-ai-router.md` derived the aliases `9` and + `x/9`. A single digit is not a name it is a token that enters the one + index searched by curated metadata alone, matches broadly and ranks, + which is noise with authority in exactly the field this rule exists to + make trustworthy. The leading digits MUST be followed by a separator + (`-`, `_`, `.`, or whitespace) or by the end of the stem. `291-provider- + budget` still derives `291`, `BE-291` and `back-end/291`; `9router` + derives nothing from its number, and its title's own code (rule 2's + last paragraph) is unaffected. + +#### G.2.7 The Gardener records where it came from (`origin`, v0.58) + +v0.57 gave the passport `origin` and only agents wrote it — yet the one +writer who always KNOWS the origin is the ingest pipeline, which was +recording `source_path` (its own bookkeeping, relative to a root only +the Gardener remembers) and telling the reader nothing. Three rules: + +1. **Adopt and refresh fill `origin` with the source file's URI** + (`file://…`, absolute, percent-encoded — the A.3 validation passes by + construction). An upload staged under `_derived/` gets the entry's + declared `source_url` instead (J.8's provenance, already validated) + — and nothing at all when none was declared: a path inside the + staging area is a fact about plumbing, not about the document. +2. **Only when absent.** An operator's or agent's hand-written `origin` + outranks a derived one and survives every `sync` — G.2.6's union + rule, applied to one scalar. The fast-path applies the same + `setdefault` it applies to aliases, so a forest ingested before this + rule gains origins on its next sync without re-conversion. +3. **Curation MUST NOT touch it** (G.2.3 rule 4's spirit): an origin is + a fact, and a model's guess about facts is the failure this pipeline + exists to filter out. + +**Extension surface is edges-only (normative):** converters and curation +hooks extend what goes INTO the forest. Nothing extends the primitives' +semantics, token budgets, or security guards (`query`/`tend` validation, +A.3.1, C.9 locking). UIs, upload receivers and automations are clients of +the MCP server or of the Python library they require no plugin API. + +### G.3 `adopt` and `sync` (the brownfield engine) + +- **`adopt(source_dir, dest?)`** mirrors an existing tree: each source + directory becomes a `branch` (planted before its children), each file is + converted and planted as its passport under the mirrored branch. + Deterministic: stable ordering, slug ids, no LLM in the loop. `dest` + roots the mirror under an existing branch (default: forest root). +- **`dest` names a branch, in either of the two spellings a branch has + (v0.61).** A branch's id ends in `/_index` and that is how it is named + everywhere else on the surface `scan("tasks/_index")`, `parent: + "notes/_index"`, `coverage`'s roots so `dest` MUST accept + `tasks/_index` and `tasks` as the same destination, and `_index` alone + as the forest root. Before this it accepted only the bare form and the + canonical one produced `tasks/_index/_index`, refused with an + `expected_parent` that named the exact string the caller had sent: the + advice was to do what had just been done, which is a refusal nobody can + act on. Normalisation happens once, at the boundary, before scope is + checked against it (J.8) so the scope test and the write agree about + which branch is meant. +- **`sync(source_dir?)`** re-walks the source (default: the adopted root + recorded in config) and hash-diffs against the passports' `source_hash`: + - **new** file → adopt it; + - **changed** hash → re-convert; the passport's body, `source_hash`, + `payload_hash` (datasets are rebuilt; an adopted SQLite payload is + replaced whole, G.2.2 rule 5) and `updated` are refreshed + through the Gardener's audited write path a git commit + `gardener(sync): <id>` of only the `.md`. Curated frontmatter + (summary, tags, links, confidence) is PRESERVED, and for a dataset + **the two map sections are rewritten and nothing else in the body is** + (G.2.3 rule 4): a payload that changed under a sample that did not is + a stale claim with a commit behind it, and a curator's own sections + are not the Gardener's to overwrite; + - **deleted** source → the passport is reported `stale`. The Gardener + NEVER deletes nodes; pruning is the Ranger's call (tombstone policy, + out of scope here). +- Continuous watching (filesystem events) is a Ranger-era concern; v1 sync + is on-demand and deterministic. + +**Source containment (normative, v0.26).** Both entry points resolve their +source through one gate, because two gates drift: + +1. **A source is always named.** `adopt` requires one; `sync` takes the one + `adopt` recorded. When neither exists the call is `E_SCHEMA` an + absent source MUST NOT fall back to the process's working directory, + to a default, or to anything else. "The usual place" for a forest that + has no usual place is not a location, and every filesystem API in wide + use resolves the empty path to the working directory silently. +2. **A source MUST NOT overlap the forest.** It may not *be* the forest + root, contain it, or sit inside it. The single exception is the + forest's own `_derived/` subtree, which is explicitly not forest + content and is where a host stages uploaded bytes (J.8). +3. **A forest is never a source.** A directory carrying the A.5 master + index (`_index.md`) that is met *inside* a walk is pruned whole, + children included. Its passports are somebody's curated nodes, not + documents awaiting conversion, and a source that happens to sit above a + registry would otherwise deliver every forest under it into this one, + in a single call and across the tenant boundary. + +The Gardener is trusted infrastructure running with the operator's +authority (see the head of this Part), so these rules bound *what a walk +may reach*, not who may ask for it. Who may ask, and which directories a +**host** will open on a caller's behalf, is J.8.2 a shell user is +already standing on the filesystem and is not subject to it. + +### G.4 Curation (the only LLM stage always skippable) + +Stage 2 enriches the draft node before planting: + +1. **Without an LLM** (default in v1): summary derived from the converted + content's first sentences (≤ 60 tokens, A.4-validated, with a safe + fallback), `source: ingest`, `confidence: 0.7` (unreviewed), default + tags from config. The pipeline never blocks on a missing GPU. +2. **With an LLM** (Gardener v2): A.4 summary with validate-and-retry, + tags, edge proposals at link-level `confidence: 0.3` (G.4.2.1), guided + by the **curation directives** in the forest config free-text criteria + the operator wants the Gardener to "keep an eye on" (e.g. "prioritize + contract numbers and client names in summaries"). Entity EXTRACTION + (minting new `entity` nodes) is deferred past v0.12: it needs a + placement policy and a `same-as` dedup story first. +3. **`on_curate` hooks**: plugins (entry-point group `monkeyllm.hooks`, + name `on_curate`) and/or locally registered callables receive the draft + (dict) and may mutate it. Hooks run in discovery order; a raising hook + is logged into the report and SKIPPED a broken plugin never aborts an + ingest. + +#### G.4.2.1 Edge proposals (v0.12) + +LLM curation MAY propose links from the node being adopted to nodes that +ALREADY exist in the forest. The contract is built so a wrong proposal is +cheap and a fabricated one is impossible: + +1. **Candidates come from the catalog, never from the model's memory.** + The Curator runs a BM25 search (C.6.1) with the draft's title + curated + summary and offers the model a closed list of up to 8 candidates + (`id`, `title`, `summary`). Excluded from candidacy: the draft itself, + `branch` nodes (a link to a folder carries no scent), and the draft's + own parent. +2. **The model picks from the list or picks nothing.** Anything outside + the offered ids is dropped (the hallucination guard is structural, not + a prompt instruction). Picking nothing is a valid, common answer: + relatedness must be visible in the two summaries. +3. **Every proposal is `rel: related-to`** (symmetric, generic A.2) with + **link-level `confidence: 0.3`** and MAY carry a short free-text `note` + (kept out of the summary budget; helps the Ranger's audit trail). Other + rels (`mentioned-in`, `same-as`, …) are NOT proposable in v0.12 they + assert ontology, not navigational adjacency. +4. **Caps and dedup**: at most 3 proposals per node; self-links and + duplicates of existing links (same `rel` + `target`) are dropped. +5. **Node-level vs link-level confidence**: the adopted node keeps its + G.4 `confidence: 0.7` (unreviewed content); 0.3 lives ON THE LINK — + that is exactly the population Part H manages. The lifecycle is the + point: **the Gardener proposes (0.3), usage heats both endpoints, the + Ranger promotes (0.8) or prunes (cold)**. A proposal nobody ever walks + costs one frontmatter line and dies by H.2. +6. **Failure never blocks**: bad JSON, transport errors or zero valid + picks simply yield zero proposals (counted in the Curator's stats); + the node still plants. + +#### G.4.6 The dataset's scent comes from its map (v0.45) + +Curation skipped `type: dataset` because a dataset had nothing to read: no +body, and a column list that the G.4.1 template already stated better than +a model would. G.2.3 changed the input every dataset passport now carries +its structure and the first three rows of every table so the reason is +gone and the cost of reading it is known in advance. + +Normative: + +1. **The Curator curates a dataset from its map, and from nothing else.** + Not the payload, not the source file, not a sample it takes itself. The + map is already in the draft when curation runs (stage 2 follows stage 1), + it is bounded by G.2.3 three rows per table, cells clipped, a stated + table cap and that bound is what makes this safe: **a 5 MB CSV and a + 5 GB database cost the model the same few hundred tokens.** An ingest + whose model cost scaled with the source would be an ingest nobody can + run on real data. +2. **The fallback is unchanged.** A refused, malformed or absent answer + leaves the G.4.1 factual template in place and counts as a fallback, + exactly as it does for a document. Ingest never blocks on a model + (G.4), and that is not weakened here. +3. **Curation writes `summary` and `tags`, never the body.** The two + generated sections are the Gardener's (G.2.3 rule 4) and a model + rewriting them would put unverified rows where a reader expects the + ones that are in the payload. Edge proposals (G.4.2.1) apply to a + dataset exactly as they do to any other node. +4. **Why it is worth a model call at all.** A.4 makes the summary the + scent every hop navigates by, and `locate` searches curated metadata + only (C.6b). "Adopted from source; pending curation" is therefore what + an agent reads when deciding whether this dataset can answer the + question for the one node type whose contents it cannot otherwise + see. + +#### G.4.4 Branch rollup (v0.13) + +Curation gives every banana a scent; rollup gives every REGION one. After +the per-node curation stage of an `adopt`/`sync` (or on demand), the +Gardener MAY rewrite branch frontmatter summaries bottom-up: + +1. **Scope**: only branches with `source: ingest` the Gardener rewrites + what the Gardener planted, nothing else. An explicit operator override + (`--all`) MAY widen the scope to every non-`_meta` branch. +2. **Order**: deepest branch first (by id depth), so a parent's rollup + always sees its sub-branches' fresh summaries. +3. **Input**: the branch's own `## Sub-branches` and `## Direct bananas` + entry lines (which replicate child summaries verbatim, A.5), clipped to + the curation content budget. The model never reads child bodies — + rollup is O(branches) LLM calls with bounded prompts. +4. **Output contract**: an A.4-valid summary (1-3 sentences, ≤ 60 tokens) + answering the A.5 blockquote question what lives here + where to go + if it is not here. Validate-and-retry as in G.4.2. +5. **Fallback**: any failure (bad JSON, invalid summary after retries, + transport error) falls back to a deterministic summary composed from + child titles and counts the pipeline never blocks and never leaves a + branch worse than the template it had. Counted in the Curator's stats. +6. **Write path**: C.8 `graft` on the frontmatter `summary` atomic, + `.md`-only commit, catalog upsert, and VERBATIM propagation of the new + summary into the parent's `## Sub-branches` entry (coverage suffix + preserved, A.5). No new write machinery. +7. **What rollup is NOT**: it never creates nodes or links, never touches + bodies (`## Cross trails` stays hand-authored), and never runs without + an operator asking for curation (it is part of the always-skippable + LLM stage). + +### G.5 Media (multimodal by proxy) + +Audio/image/video go through the SAME converter contract: the converter +(e.g. a Whisper transcriber, a vision-model describer extras or hooks, +never core dependencies) returns markdown that becomes the `media` +passport's body. The forest's job is **finding** media fast: `locate`/ +`sniff` search the textual proxy; a multimodal client that wants full +fidelity follows `payload` to the raw file. Text to find, binary to +consume. Serving payload bytes over MCP to multimodal clients is the +`view` tool (C.6d, v0.48): found by its prose, read in its pixels. + +### G.5.1 The stub and the describer (v0.48) + +Before this version an image was `unsupported`: no converter claimed +it, so a screenshot the single most common thing a person clips — +fell out of the report. Two pieces fix that, split exactly along the +engine/host line. + +**The stub (engine, built-in).** A built-in converter claims image +extensions (`.png .jpg .jpeg .gif .webp`) and audio extensions +(`.mp3 .wav .m4a .ogg .flac`) and returns markdown: an H1 from the +filename and a body that states plainly what is known the format, +the size, and that no description is available yet. The Gardener +plants it as **`media`**, not `document`: the typing rule becomes +*text source → `note`; payload type `image`/`audio` → `media`; +otherwise → `document`*. An image is never `unsupported` again, with +or without a model. + +**The describer (host, injected).** A forest may bind a model to the +new **`vision`** role (J.10). When one is bound, the host injects a +describer converter for the image extensions that sends the image to +the bound model and returns its description as the body: what the +image shows, and **any legible text in it** that is what makes a +slide, a whiteboard or a flowchart findable by `sniff`, which reads +the textual proxy and nothing else (G.5). A describer that fails — +endpoint down, image refused, over budget MUST fall back to the +stub: G.4.3's rule reaches conversion too, a broken model never +aborts ingest. Audio keeps the stub until a transcriber role exists; +G.5 already names that future. + +**The seam (public API v1, additive).** Injected converters enter +through a new `extra_converters` argument to the Gardener, ranked +**after the operator's command hooks and before entry points and +built-ins**: an operator who configured their own `.png` command hook +keeps it; everyone else gets the describer over the stub. Nothing +else about G.2 discovery moves, and the engine itself still never +holds a model: the describer lives in the host. + +**The describer holds a lane (v0.48).** Its call runs inside the +convert stage of a step, and a step holds the forest's one lane (J.9): +every read on that forest every console open on it waits behind +it. The describer's request MUST therefore carry a timeout of at most +**60 seconds**, and a timeout falls back to the stub like any other +failure, with the reason in the report's `errors`. The 180-second +patience that suits a chat surface is a frozen panel here; a +deployment that wants slower vision buys it consciously, never by +default. + +**The staging amendment (G.7).** `archive: never` keeps durable +originals at the source, and stays the default. But an *uploaded* +source is staged under the forest's `_derived/` disposable and +rebuildable by contract so a media node referencing it would +outlive its own bytes. Media whose source root lies inside the +forest's `_derived/` MUST be archived into `_assets/` and referenced +as payload regardless of the archive policy: there, the payload is +the only copy that exists. A durable disk source under +`archive: never` is still referenced, not copied, exactly as G.7 +says. + +**F.48 (acceptance).** A `.png` adopted with no vision binding plants +a `media` node with a stub body never `unsupported` and, when +staged through `upload`, carries the original under `_assets/` as its +payload even under `archive: never`. The same `.png` with a bound +`vision` role plants the model's description as the body, and a +describer that raises falls back to the stub with the failure in the +report's `errors`. An operator command hook on `.png` wins over the +injected describer. All covered by tests. + +### G.6 Gardener config (`_meta/gardener.yaml`) + +Operator-level configuration, read by the Gardener (not a node `_meta/` +non-markdown files are not indexed): + +```yaml +source_root: D:/dump/docs # written by adopt ONLY; sync's default source + # absent = sync has nothing to refresh (G.3) +ignore: ["~$*", "*.tmp"] # extra ignore globs (defaults: VCS dirs, temp files) +converters: # command hooks (discovery priority 1) + ".pdf": 'pdf2md "{input}" -o "{output}"' +curation: + default_tags: [adopted] + directives: > # free text fed to the curation LLM (G.4.2) + Prioritize contract numbers and client names in summaries. +content: inline # inline | cached | reference (G.7) +archive: never # never (default) | always (G.7) +``` + +### G.7 Content & archive policies (v0.11) + +The forest's three tiers: SCENT (passport frontmatter always local, in +git), FLESH (full converted text), BONE (raw binaries stay at the +source). The `content` policy decides where the FLESH lives: + +- **`inline`** (default): the converted body lives in the node `.md` + (v0.9 behavior git-versioned content; right for normal corpora). +- **`cached`**: the node `.md` holds only the title stub and the + frontmatter marker `content: cached`; the converted body is written to + `_derived/bodies/<id>.md` OUT of git. Right for huge corpora. + Regenerable: re-running `sync` while sources are reachable rebuilds the + cache (the body is a function of source + converter). +- **`reference`**: no local body at all; the body IS the source file, + read live at harvest time. ONLY valid for passthrough text sources + (`.md`/`.txt`); marker `content: reference`. + +Normative semantics: + +1. **Lazy resolution**: `pick` (and `sniff`, when it reaches such a node) + resolves the body from the cache file (`cached`) or from + `source_root/source_path` (`reference`). The resolution is transparent + same response shape, same budgets. +2. **Degraded mode is explicit**: when the body cannot be resolved + (source share down, cache purged), the read fails with `E_NOT_FOUND` + and a hint naming the missing backing file. The MAP keeps working — + `locate`/`look`/`scan`/heat never depended on the body. +3. `look`'s `outline` MAY be empty for non-inline nodes (the digest comes + from the catalog; spending I/O to outline a remote body would break + the <= 500-token cheapness contract). +4. Summary derivation and LLM curation (G.4) always see the FULL + converted text at ingest time the scent quality does not depend on + the content policy. +5. **`archive`**: `never` (default) durable sources are not copied into + `_assets/`; `source_path` + `source_hash` are the reference. `always` + inbox mode: the source will vanish after ingest, archive the + original (v0.9 behavior). Datasets keep their local `.db` payload + under every policy (G.9). +6. **Containment (normative, v0.26)**: the resolved backing file MUST lie + underneath `source_root`; otherwise the read fails as rule 2's + `E_NOT_FOUND` and the hint MUST NOT quote what was found there. + `source_path` is ordinary frontmatter the Gardener writes it, and + `plant` accepts it like any other extra field so a node can name a + path its author chose. Without this rule `pick`, a read primitive + available to any principal holding `read`, resolves arbitrary host + files with the Vine's authority and reports them as the node's own + body. The check happens after resolution, so `..` and symlinks are + already collapsed. + +### G.8 Targeted sync & triggers (v0.11) + +- **`sync(path=...)`** reconciles a single source-relative path (new, + changed or deleted) without walking the whole tree the building block + for event-driven updates. +- **Containment (normative, v0.26)**: `path` is relative to the source + root and MUST resolve underneath it; an absolute path or one that + escapes is `E_SCHEMA`. The comparison MUST be made on the **resolved** + path. A lexical check passes `../../etc/passwd` joined onto the root + it still *starts* with the root, so a purely textual "is it relative to" + answers yes, the file is read, and its slugified `..` segments become a + branch. Events arrive from watchers, webhooks and queues (below), which + is to say from outside; this path is caller input like any other. +- **Fast-path (normative)**: passports record `source_size` and + `source_mtime`; a sync visit MUST skip hashing when both match the + stored values (rsync's trick re-hashing 2 TB per cycle is the real + bottleneck). Hash remains the authority whenever the fast-path misses. +- **Events trigger, the reconciler decides**: filesystem watchers, S3 + event notifications, Drive `changes.watch` and upload webhooks are + CLIENTS/plugins that call targeted sync. Events MUST NOT be trusted as + state (they get lost); a periodic full `sync` (`--every N`) heals + anything an event missed. Same controller pattern as C.6.1: derived + state reconciles from the files, never the other way around. + +### G.9 Payload fetchers (v0.11) + +`payload` and `source_path` MAY carry a URI scheme. Plain paths mean +`file://` (today's behavior, zero change). Remote schemes (`s3://` first, +as an optional MIT-licensed extra) resolve through a fetcher registry: + +1. Remote payloads/bodies download on first use into + `_derived/payloads/`, validated against `payload_hash`/`source_hash` + before use (a corrupted or tampered download never reaches the agent). +2. **Datasets are local-first by design**: SQLite needs a local file, and + a hot knowledge base needs sub-millisecond reads object storage + holds `.db` files only as backup or cold-archive tiers. A cold + dataset's first `query` pays one download; the cache absorbs the rest. +3. Remote sync uses the store's own change signals (ETag listings) + instead of downloading to hash. +4. **`tend` rejects remote payloads** (`E_QUERY_FORBIDDEN` with hint): + writes belong to the local-first tier editing a cached copy of a + remote database would fork it silently. Reads (`query`, `look`'s + dataset digest) work through the cache transparently. +5. **Region prefetch (the parachute warms the camp)**: `prefetch(scope)` + downloads every remote payload under a branch in one sweep the + orchestrator calls it right after `locate` drops the monkey, so the + subsequent `sniff`/`query` hops run at local speed. Combined with H.6 + eviction, the payload cache converges to the shape of the pheromone: + hot regions stay warm, cold regions evaporate from disk. + +The MAP itself (passports + the forest git) stays local to wherever the +Vine runs it is the truth, it is ~0.1% of the source, and remote +clients reach it through the MCP server, not by replicating it. Moving a +map between machines is what snapshots are for (Part I). `catalog.db` and +`trails.db` remain disposable caches OF the local map (C.6.1) they are +never the only local copy of anything. + +### G.10 Ingest yields (v0.32) + +`adopt` and `sync` were always a loop over documents with a config save at +the end; G.10 makes the loop's step boundary part of the contract, because +a host that wants to interleave other work with a batch or count its +progress needs the seam the loop already had. + +`adopt_iter(source, dest?)` and `sync_iter(source?, dest?, path?)` return +**step iterators**: each step converts, curates and plants **exactly one +source file**, then yields a progress record + +```json +{"file": "guides/setup.md", "index": 3, "total": 41, "action": "planted"} +``` + +where `index` counts steps taken (so it is also "done"), and `action` is +one of `planted`, `updated`, `unchanged`, `unsupported`, `error`, `stale`, +`skipped`. Construction is eager where iteration is lazy: resolving the +source with the G.3/G.8 errors that entails and walking it happen at +the call, so a bad source fails **before any step runs** and the iterator +knows its `total` up front; a host can therefore refuse, or promise +progress out of `total`, before accepting the batch (J.9). Walking is +filesystem work; no document is touched until the first step. Once +exhausted, the iterator's `result` is the unabridged `IngestReport` of +G.3. Normative rules: + +- **`adopt` and `sync` MUST remain "drain the iterator and return its + report".** One pipeline, two paces. A second code path that batches + differently from how it steps would drift, and the drift would be + invisible until a sync disagreed with the adopt that preceded it. +- **A step is a whole document** converter, curation (G.4, model round + trip included), content policy (G.7) and plant. Yielding mid-document + would suspend an open model call or a half-planted node on the goodwill + of a consumer that may never resume; yielding between documents suspends + nothing, because C.7 already made each plant atomic and committed. +- **The source root is recorded before the first step, not after the + last.** An abandoned run a crash, a cancel (J.9) leaves the files + already stepped planted and committed, and the recorded root is what + lets `sync` finish the remainder through the G.8 hash diff instead of + the operator starting over. Recording it last, as v0.31 did, made every + interrupted adopt a forest with no memory of where it came from. +- **Abandonment is safe at every yield.** No step depends on a later one: + branch indexes are grafted as each document needs them (G.3), so an + iterator dropped at step *k* leaves exactly the first *k* documents in + the forest, correct and committed, and nothing else. +- `dry_run` composes unchanged: a preview Gardener steps and yields the + same way and writes nothing (J.8.1's object-level guarantee), with + drafts accumulating on the report exactly as before. +- The CLI and every existing caller keep calling `adopt`/`sync`; the + iterators add a pace, not a mode. Converters, hooks, budgets and guards + are exactly as extensible and no more as G.2 already says. + +#### G.10.1 The stage inside the step (v0.45) + +A step is a whole document, and the rule above says why: yielding +mid-document would suspend an open model call or a half-planted node on a +consumer that may never resume. That objection is about **suspension**, not +about visibility and a batch of one large document is one step, so a +consumer counting steps shows nothing at all until it shows everything. +An operator cannot tell that from a hang. + +The Gardener therefore **names the phase it is in** without pausing in it. + +`Gardener(vine, …, on_stage=…)` takes an optional observer called as +`on_stage(file, stage)` as the current document passes through the closed, +ordered list + +```text +convert → curate → plant +``` + +Normative rules: + +- **A stage is reported, never yielded.** The observer is called from the + thread already doing the work, between operations that are already + sequential there. Nothing is suspended, nothing is resumable, and the + G.10 step boundary is exactly where it was. A consumer that ignores the + observer sees the v0.32 contract unchanged. +- **The observer MUST NOT be able to affect the ingest.** A raising + observer is swallowed and the batch continues, like a broken `on_curate` + hook (G.4.3). Progress reporting that can abort the work it reports on + is worse than no progress reporting. +- **Stages are closed and ordered, so a fraction is honest.** A consumer + MAY render position within a document as `stage index / stage count`, + which is what lets a one-document batch move at all. +- **A skipped stage is passed, not pending.** Not every document reaches + every stage an unsupported file stops at `convert`, an `unchanged` + file never leaves it so a consumer MUST NOT wait for a stage that will + not come. The step's own `action` (G.10) remains the truth about what + happened; a stage says only where the work is. +- **Stages are not a report.** They are transient, they are never counted + into the `IngestReport`, and they are never written into a forest the + same boundary J.9 draws around job records. + +**J.9 amendment.** A job record carries `stage` beside `current`: the phase +of the file named by `current`, `null` between documents and on a finished +job. It is host memory like every other field of the record, so reading it +still touches no forest, and a restart still forgets records without +forgetting work. + +--- + +## Part H The Ranger (maintenance, spec v0.10) + +The Ranger keeps the forest healthy over time. The compounding loop only +works if the pheromone can also **forget**: without evaporation every trail +saturates at `heat = 1.0` and the whisper stops discriminating; without +pruning, agent proposals pile up as permanent noise. The Ranger is trusted +infrastructure (operator authority): evaporation lives entirely in the +derived layer; every node edit goes through the audited `.md`-only commit +path. + +### H.1 Heat evaporation (derived layer only no commits) + +- Persistent heat decays exponentially: + `heat' = heat × 0.5^(Δt / half_life)`, where `Δt` is the time since the + row's `updated` timestamp. Default `half_life_days: 30` (config H.5). +- Rows whose decayed heat falls below **0.01** are deleted (dust removal — + the table stays proportional to what is actually warm). +- Session scopes (`scope != ''`) older than `session_ttl_hours` (default + 24) are cleared crash leftovers from Troop hunts must not survive. +- Evaporation re-stamps `updated` at decay time (the decay is applied, not + re-derived); running the Ranger twice in a row is a no-op within clock + precision (idempotence under the synthetic-clock test). +- `_derived/` remains disposable: deleting `trails.db` loses memory but + breaks nothing (A.3 spirit) therefore evaporation never commits. + +### H.2 Promotion and pruning of uncertain links + +**Scope rule (normative): the Ranger manages ONLY links that carry a +link-level `confidence < 1.0`** i.e. edges born as proposals +(`related-to` at 0.3, C.8) or discovered shortcuts (0.5, C.8). Structural +edges (`part-of`, etc.), links without a confidence field and links at +`confidence: 1.0` are NEVER touched. + +- **Promotion**: a managed link whose BOTH endpoints hold persistent heat + `>= promote_floor` (default 0.2) after evaporation is *confirmed by use*: + link confidence is raised to `promoted_confidence` (default 0.8). Audited + commit `ranger(promote): <id> <rel>-><target> 0.8` of only the `.md`. +- **Pruning**: a managed link with `confidence <= prune_below` (default + 0.5) whose BOTH endpoints have fully evaporated (heat 0 no + reinforcement within memory) is removed. Audited commit + `ranger(prune): <id> <rel>-><target>`. +- A link that is neither hot enough to promote nor cold enough to prune is + left alone patience is a feature. +- The Ranger NEVER deletes nodes. Stale passports (G.3) stay reported until + a human (or a future tombstone policy) decides. + +### H.3 Health report (read-only) + +One pass over the catalog + files, returned as a dict and printed by the +CLI: + +- **`needs_split`**: branches with > 150 entries or > 3.000 body tokens + (A.5 rule). +- **`fat_nodes`**: nodes with degree > 50 (A.2 rule branch candidates). +- **`lint`**: error/warning counts from `vine validate`'s engine (includes + payload drift, C.10). +- **`stale_passports`**: passports whose `source_path` no longer exists + under the Gardener's `source_root` (when configured). +- **`uncertain_links`**: inventory of managed links by confidence bucket + (what the next promotion/pruning cycle will look at). +- **`needs_description`** (v0.54): `type: media` nodes still carrying the + G.5.1 stub sentence — media that was ingested with no vision binding, or + whose describer failed. Such a node is findable by filename and nothing + else, and its summary matches every other undescribed media node's; the + operator's repair is binding a `vision` model and re-describing, and a + repair nobody is told about is not one. The check matches the stub + SENTENCE, exported as one constant the converter and this check share — + two spellings of a sentinel agree only where somebody compared them. +- **`heat`**: row count + max/mean of the persistent scope (pheromone + health at a glance). + +### H.4 Execution model + +- `vine ranger [--forest DIR]` one full cycle: evaporate → tend links → + health report. +- `vine ranger --every N` service mode: repeat every N seconds until + interrupted (Docker-friendly; the deploy doc's `ranger (cron)` box). +- The Ranger takes an injectable clock (`now`) the synthetic-clock tests + of F.14 depend on it. + +### H.5 Ranger config (`_meta/ranger.yaml`) + +```yaml +half_life_days: 30 +session_ttl_hours: 24 +promote_floor: 0.2 +promoted_confidence: 0.8 +prune_below: 0.5 +payload_cache_gb: 5 # H.6 (v0.11) +``` + +### H.6 Payload-cache eviction (v0.11) + +The Ranger evicts `_derived/payloads/` entries least-recently-used first +when the cache exceeds `payload_cache_gb`. Eviction is always safe: every +cached entry is re-fetchable from its source URI and hash-validated on +return (G.9.1). Evaporation for bytes same philosophy as H.1. + +### H.7 Landmarks refresh (v0.13) + +The Ranger keeps the master `_index.md`'s `## Landmarks` section (A.5) +populated the forest's hubs, discovered mechanically: + +1. **Selection**: top 10-20 nodes by degree over the catalog's typed-edge + table (frontmatter `links`, both directions). Excluded: `branch` nodes + (a landmark must carry scent), `_meta/*`, and degree-0 nodes. The + folder hierarchy (`parent`) does NOT count toward degree landmarks + measure how woven a node is, not how filed. +2. **Rendering**: A.5 entry lines (`- [[id]] <summary>`) inside the + `## Landmarks` section of the master branch only. The section is + created if the heading is missing. +3. **Idempotence**: the section is rebuilt in full and compared; an + unchanged graph produces no write and no commit. +4. **Write path**: the audited `.md`-only pattern (H.2) with commit + message `ranger(landmarks): refresh`, followed by a catalog upsert of + the master index. No LLM, no node creation, no link changes. + +### H.8 The repo is tended too (v0.57) + +A forest's git repository accumulates one commit per write forever, and +git left alone accumulates loose objects with them. On a laptop's SSD +that is invisible; on the overlay filesystems containers actually run on, +every git operation slows as the object directory grows — and since every +`plant` IS a commit (C.7), the write path inherits the drag. Measured in +the first production deployment: the repo's own hygiene was a material +share of why a plant held its forest's thread long enough for operators +to describe the product as frozen. + +The Ranger's `run()` therefore ends by asking git to tend the repo: +`git gc --auto --quiet`. Normative: + +1. **Git decides, the Ranger only asks.** `--auto` applies git's own + thresholds; most runs do nothing, and the Ranger MUST NOT force a + repack on every pass. +2. **Never a commit, never a node.** Repo maintenance touches `.git/` + only — it changes no history, no working tree, no catalog row. It is + the same class of act as evaporation: housekeeping in a layer the + contract does not version. +3. **Reported, best-effort.** The run's report carries `gc: + ran|skipped|unavailable`; a git that fails the call fails nothing + else (the same rule as the audit's — maintenance must never fail the + work it maintains). + +--- + +## Part I Snapshots (v0.11) + +A forest snapshot is ONE file: the forest's git repository packaged as a +`git bundle` (the full commit history every plant/tend/gardener/ranger +audit trail travels along), compressed. + +- `vine snapshot create [--out FILE]` → `<forest>-<date>.bundle.zst` (or + `.bundle` when zstd is unavailable). Payload `.db` files are NOT inside + (they are not in git, A.3.1); `--with-payloads` adds a sidecar archive. +- `vine snapshot restore FILE --forest DIR` → a full forest clone with + history; `vine reindex` rebuilds the derived layer. +- Upload to object storage rides the G.9 fetcher (`--to s3://...`). +- The Ranger MAY schedule snapshots in service mode (backup policy: + interval + retention), config in `_meta/ranger.yaml`. +- A hosted Station moves snapshots over HTTP download of the bundles + it took, import of a bundle into a forest that does not exist yet — + under J.13's rules (owner-only, v0.39). Restore into an *existing* + forest stays `vine snapshot restore` at a shell. + +Use cases (informative): backup/DR, distribution (a team pulls the whole +MAP in one small download the scent tier is ~0.1% of the source), +frozen releases of a knowledge base ("the forest as of Q2 close"). + +--- + +## Part J The Station (host layer: self-host, governance, scoped access) + +### J.0 Position + +Parts A-I describe a forest and the Vine that reads it, for one operator +who owns the filesystem. Part J describes the **Station**: the service that +serves forests to *many* principals with identity, policy, audit and a +web console so that a forest becomes a governed corporate asset instead +of a personal directory. + +The Station is a **privileged client**, never an extension (G.0): + +- The engine (`src/monkeyllm/`) MUST NOT gain policy, identity or tenancy + awareness. Primitive semantics, budgets and guards are identical whether + a call arrives through the Station or through `vine serve`. +- Forests remain content. Principals, tokens and policies MUST live in the + **host registry** (host-side storage), never inside a forest a forest + handed to another operator carries no credentials. +- Every write remains a git commit inside the forest (A.3), and binaries + remain outside that git (A.3.1). + +### J.1 The Station + +The Station mounts a **forest registry** a root directory whose valid +forests are resolved exactly as C.0 registry mode already resolves them — +and exposes three surfaces: + +| Surface | Consumer | Transport | +|---|---|---| +| REST | applications, scripts, integrations | HTTP/JSON under `/v1/` | +| MCP | agents, IDEs, bots | the Part C tool contracts, unchanged | +| Studio | humans | web console served by the Station (J.5) | + +All three surfaces MUST route every forest access through the single +`ScopedVine` of J.3. An unscoped `Vine` handle MUST NOT be reachable from +any surface, including internal helpers and background jobs. + +The MCP surface MUST remain contract-identical to `vine serve`: an agent +that works against a local Vine works against a Station-served forest with +no change beyond endpoint and credentials. Scoping is expressed only as +narrower *content*, never as a different shape (J.3). + +#### J.1.1 The surface that answers only to itself (v0.52) + +The MCP mount refuses any request whose `Host` header is not in +`MONKEYLLM_STATION_ALLOWED_HOSTS` DNS-rebinding protection, and it stays +exactly as strict as it is. The default list names a local install, and the +shipped `docker-compose.yml` inherits that default, so **a Station published +under a domain refuses every MCP request until an operator names the +domain**. Nothing else about the deployment says so. `GET /v1/health` +answers `ok`, `GET /v1/forests` lists them, Studio opens, REST serves every +primitive and the only dark surface is the one the product exists for. The +client reports `Failed to connect`; the wire carries `421` and nineteen +bytes of `Invalid Host header`, which name neither the refused host, nor the +accepted ones, nor the variable that decides. The diagnosis was reached, in +the field, only because the person holding the failing client also had the +source tree open. + +Three requirements, none of which relaxes the check: + +1. **The refusal wears the envelope.** A `421` leaving the MCP mount is + answered `{error: {code: "E_HOST_NOT_ALLOWED", message, hint}}`, naming + the `Host` that was refused and the environment variable that would admit + it. The **decision** stays with the transport guard that makes it today + one decider, as everywhere else in this document only the sentence is + the host's. The host that appears in the message is the one the caller + sent: it is not a disclosure, it is a quotation. +2. **The boot says it.** A Station that serves MCP with no explicit + allow-list MUST log a warning at startup, naming the variable and saying + that MCP will answer to local addresses only. A deployment whose main + surface cannot answer MUST NOT boot silently. A list containing `*` MUST + warn too, naming what it turns off: `*` disables `Origin` checking along + with the host check, so it is never the shortcut for "my domain". +3. **`/v1/health` reflects it, per request.** The health document carries + `mcp: {enabled, host_allowed}`, where `host_allowed` is the verdict for + **this request's own `Host`**. The operator curls the domain they + published and gets the answer about that domain, in the place they were + already looking. It discloses nothing the allow-list is never listed, + and the host being judged is the one the caller supplied. + +The allow-list itself MUST NOT be served to a caller, and no route may be +added that reveals it. Naming the variable is documentation; printing its +value is configuration disclosure. + +**F.62 (acceptance).** A request to the MCP mount carrying a `Host` that +is not allowed is answered `421` with `{error: {code: +"E_HOST_NOT_ALLOWED", …}}` naming that host and the variable; the same +request with an allowed host completes the handshake. `GET /v1/health` +carries `mcp.host_allowed` matching that verdict for the host the caller +sent. A Station that starts serving MCP with no explicit allow-list logs a +warning naming the variable. No response anywhere lists the allow-list. +Covered by tests. + +#### J.1.2 The block is for the model (v0.54) + +The text block of an MCP tool result goes into an LLM's context, where it +is billed by the token and read by a parser. Everything in this section +follows from taking that consumer seriously. + +1. **Compact serialization.** The result dict is serialized with no + indentation and no separator whitespace. Measured against a served + Station, pretty-printing cost 29.9% of a `locate`, 24.1% of a + `harvest` — ~500 tokens per sweep, a whole `pick` of real content per + five-hop hunt, spent on air. Keys, values and their order are + unchanged: this is presentation, and the contract has no presentation + layer on the wire. A console that wants indentation renders it + client-side, where it is free. +2. **`isError` agrees with the envelope.** A tool result whose body + carries the C.12 envelope (`error` at the top level) sets the + protocol's `isError` flag. The SDK already flags schema-validation + failures, so the two failure families used to wear opposite flags — + and a harness that branches on the protocol field treated `E_NOT_FOUND` + as success, forwarding the envelope as if it were data. Whether a + domain refusal "is" a protocol error is a debate the consumer settles: + a machine reads one field, so the two signals MUST agree. The envelope + itself is unchanged — `{code, message, hint}` is the body either way. +3. **The server states its version.** `serverInfo.version` carries the + installed package's version. An integrator debugging against a + deployment must be able to ask which build answered; a full report + cycle was once spent against a build nobody could identify, and the + client had no way to detect it. +4. **No empty promises.** Capabilities with nothing registered behind them + (`resources`, `prompts`) are not announced. An announced capability is + an instruction to every connecting client to spend a round trip listing + it; two round trips per connect, forever, to learn "empty" is a cost + with no buyer. + + **A transport method is not a capability (amended v0.64).** This rule + reaches the two families it names and no further. In particular + `subscriptions/listen` (2026-07-28, SEP-2575) MUST stay served: it is + not a feature a client lists, it is the era's only server-to-client + channel — what the standing GET stream was before it — and withholding + it does not save a round trip, it ends the connection (J.1.4). The + consequence is that at that era the SDK derives `tools.listChanged` + from the served handler and announces `true` while this Station + publishes no such event. That is admitted deliberately: the promise + costs a subscriber one stream that stays quiet, which is the cheaper of + the two things a client can be told. Earlier eras are unchanged — + `tools.listChanged` is `false` at 2025-06-18 and 2025-11-25, where the + flag is derived from notification options rather than from the handler. +5. **The instructions name every tool (v0.55).** The `instructions` + served at `initialize` are the one description of this surface every + client receives unasked, and an agent that trusts them uses exactly + what they name — a consumer team operated a full round without `scan` + while writing a feature request for what `scan` already did. Every + registered tool appears in the instructions by name, and the suite + compares the two lists mechanically: two descriptions of one contract + agree only where somebody compared them. +6. **The first reply states the version (v0.56).** The `forests()` + result — the call the instructions prescribe first — and REST's + `GET /v1/forests` carry `station: "<version>"`, the same string as + rule 3's `serverInfo.version`. Rule 3 put the version where a + protocol client can read it; this rule puts it where the MODEL reads, + because the model is what navigates by a downloaded skill, and a + skill is a snapshot of this surface that nothing ages visibly: the + team's round-without-`scan` was a stale skill, not a missing tool. + The generated skill stamps the version it was built against (J.5.12) + and teaches the comparison; the server cannot push a skill, but it + can make staleness visible in the first reply of every session. + +#### J.1.3 The door tells the truth about the rooms (v0.55) + +v0.52 taught `/v1/health` to report the MCP door (J.1.1), and the next +outage was behind the next door: a Station whose every forest refused to +open still answered `status: "ok"`, `writable: true`, and listed both +forests with full capabilities — while `forests()` is the first call the +instructions prescribe. An agent was instructed to begin from an answer +that was false, and its next call could not tell a bad key from a bad +name from a dead server. + +1. **`/v1/health` carries `forests: {served, locked}`** — counts, never + ids: health is unauthenticated, and forest ids are J.3's to disclose. + `served` is what would open; `locked` is what a live foreign writer + currently holds (C.9). The probe reads the lock file and asks the + kernel — it MUST NOT open the forest, warm it, or touch a lane. +2. **`status` says `"degraded"` when `locked > 0`.** A Station serving + none of what it exists to serve is not `ok`, and an operator's first + curl is the place to say so. +3. **`forests()` and `GET /v1/forests` mark what cannot serve.** An + entry the key may see carries `locked: true` while a foreign writer + holds it — the caller was going to learn this anyway, one failed call + later and without the reason. An orphan lock marks nothing: it heals + at the next open (C.9), so reporting it would name a problem the + product no longer has. + +#### J.1.4 A refusal is not a disconnection (v0.64) + +Streamable HTTP gives one status code a meaning the JSON-RPC layer above it +cannot override: **404 means the session named by this request no longer +exists** (2.5.3). A client that receives it has been told, correctly, that +continuing on this connection is pointless, and the conforming answer is to +stop — so 404 is the one status a live server MUST NOT spend on anything +smaller than that. + +An unregistered method is something smaller. The SDK answers it with +`-32601 Method not found` under HTTP 404, which is defensible as HTTP and +wrong as this transport: the two facts differ in scope, and the client can +only act on the one the status carries. Measured, that is the whole distance +between "this server does not offer that method" and **0 tools** — the +client tore down a session that was healthy, and the call that failed was +the next one, not the one refused. + +1. **The MCP mount MUST NOT answer a served request with 404 for any reason + other than a session that is gone.** A method this Station does not serve + is a JSON-RPC error carried by a 2xx, on the terms C.12 already sets for + every other refusal on this surface. +2. **A method the era requires is served, not refused** (J.1.2 rule 4 as + amended). Where the two rules could disagree, this one does not arise: + the method is served, so no refusal is spelled at all. +3. **The rule is about the wire, not about authority.** J.3's byte-identical + `E_NOT_FOUND` for an out-of-scope node is unaffected — it is a JSON-RPC + result about a node, and it is exactly the disclosure boundary that + requires it to be indistinguishable from an absent one. Nothing here + licenses naming what a scope hides. + +The general form is the one this document keeps arriving at from different +directions: a signal has one meaning per layer, and a layer that borrows +another's vocabulary to say something cheaper will be believed about the +expensive thing. + +### J.2 Identity + +- **Principals** are users (humans) or service tokens (machines). Both are + registry objects; both carry a stable id used in audit records. +- **Authentication:** API keys (stored hashed) MUST be supported; OIDC/JWT + for corporate SSO MAY be added, mapping claims onto a principal. +- **Roles** are per-forest: `owner`, `gardener` (ingest and writes), + `ranger` (maintenance), `reader`. A principal MAY hold different roles on + different forests. Roles are shorthand for capability sets (J.3); an + explicit policy grant always refines them. + +#### J.2.1 Two doors, one identity + +A human should not have to paste a 43-character secret to open a web +console, and a machine should not have to hold a password. So there are two +doors: + +- **Password** `POST /v1/auth/login {username, password}` returns a + **session token**: an ordinary API key with a short lifetime and a + `session` kind. Sessions MUST NOT appear in the token console; they are + the by-product of a login, not a credential an operator manages. +- **API key** pasted directly, as before. + +Both MUST converge on the same `authenticate()` and the same J.3 policy +resolution. There is exactly **one** authorization path; the door only +decides how the principal was established, never what it may do. + +**The environment super-admin.** `MONKEYLLM_STATION_ADMIN` and +`MONKEYLLM_STATION_PASSWORD` define a break-glass account, verified against +the environment with a constant-time comparison and **never stored**. +Hashing a value that already sits in the environment protects nothing, and +storing it would give a rotation two places to go wrong. It carries the +owner bit (J.2.4), so it governs a registry that holds no forest yet the +grant-per-forest reading of this rule is what made an empty deployment +unreachable before v0.25. If the variables are absent, the door simply does +not exist a deployment that never sets them has no default password, +which is the only safe default. + +It is **break-glass and MUST NOT be the documented way in**. A deployment +that sets it has chosen an environment-held credential over an owner the +registry knows; both are legitimate, but they MUST NOT be offered at the +same time, and J.2.4 states which one wins. + +Other principals MAY hold a password, set by an administrator and stored +**hashed with a memory-hard KDF and a per-principal salt** (unlike API +keys, a password is guessable, so the plain-digest reasoning does not carry +over). A principal without a password cannot use the password door at all; +absence MUST NOT degrade into a blank or default credential. + +#### J.2.2 Token lifecycle + +A credential that cannot be listed, expired or revoked is not governed. Every +API key MUST carry: + +| Field | Why it is not optional | +|---|---| +| `label` | a token nobody can identify is a token nobody dares revoke | +| `expires_at` | the default answer to a leak nobody noticed | +| `revoked_at` | the answer to a leak somebody did notice | +| `last_used_at` | what makes an unused token safe to remove | +| `prefix` | lets a token be recognised in a list without being disclosed | + +Authentication MUST reject expired and revoked keys, and MUST record last +use. Listing MUST return the prefix and this metadata and never the secret, +which is shown exactly once, at creation. + +**The escalation rule.** A key authenticates a *principal*, and a principal +may hold grants on several forests. Minting or revoking a key for a +principal therefore requires `admin` on **every forest that principal is +granted**, not merely on one of them otherwise the administrator of one +forest could mint a credential that opens another. For the same reason, the +token console MUST list only principals the caller fully administers. + +#### J.2.3 The person as the unit of administration + +Grants, passwords and keys are three tables and one thought. Onboarding +somebody is not three tasks performed in three places; it is one decision +with three consequences. `POST /v1/admin/people` therefore applies, for a +single principal and in this order: + +1. **grant** create or replace their access on one or more forests +2. **revoke access** remove their access to one or more forests +3. **password** set, replace or clear it (absent field means "leave it") +4. **issue key** mint one, returned exactly once +5. **revoke keys** one, or all of theirs + +The order is normative because it is what makes first-time onboarding work +in a single request: the grant lands before the credential steps, so a +principal that did not exist a moment ago is administrable by the time its +password and key are created. + +**A composite is not an authority.** Each step MUST re-check the rule that +governs it on its own `admin` on the forest for (1) and (2), +`administers_fully` for (3), (4) and (5), and the environment account's +refusal to hold a stored password. A step the caller may not perform MUST +be refused **without abandoning the steps they may**: the response reports +what was applied and what was refused, because silently dropping half of a +submitted form is worse than either doing it or failing it. + +**Several forests, one decision.** Access is rarely forest-shaped: an +analyst joins a team that reads four of the six forests, a CI service reads +all of them. Steps (1) and (2) therefore accept a **set** of forests — +`grant` MAY carry `forests: [<id>, …]` in place of `forest: <id>`, and +`revoke_access` MAY carry a list in place of a string. The scalar forms +remain valid and mean a one-element list. + +A set MUST NOT weaken the per-forest rule. Each named forest is authorised, +applied and refused **individually**: an administrator of two forests out of +three who names all three grants two and is told, by forest id, why the +third was refused. Partial application within the step follows the same +reasoning as partial application between steps the operator gets what they +were entitled to, and an explicit account of what they were not. The step +counts as applied when at least one forest landed. + +`allow`/`deny` prefixes in a grant apply to **every** forest it names, +because a grant is one policy expressed once. Branch names are forest-local, +so naming several forests and a subtree at the same time is only meaningful +when the caller knows those subtrees exist in each; the API MUST NOT +second-guess that, while the console MUST NOT offer it blindly (J.5.5). + +**The escalation rule is unaffected.** A key authenticates a principal, so +minting one still requires `admin` on every forest that principal holds +(J.2.2). Widening a principal to a forest the caller does not administer is +refused at step (1) and can never become a back door into step (4): step (4) +re-reads the principal's grants as they stand after step (1). + +`GET /v1/admin/people` returns, per principal the caller administers: +identity, grants (filtered by J.3.2), whether a password exists, their +tokens, and when they were last seen. The console MUST NOT have to +reassemble a person from three endpoints; that shape is the registry's, not +the operator's. + +#### J.2.4 First-run setup, and the owner + +A Station is installed before it has an administrator. Until v0.25 that +first moment had no answer: authority was a sum of per-forest grants, an +empty registry summed to nothing, and J.7 would not hand over the first +forest because there was no existing one to be admin of. A product MUST be +reachable through its own front door on first boot. + +**The owner bit.** A principal MAY carry `owner`, a property of the +principal itself. An owner holds `admin` on every forest in the registry — +**present and future, including none**. It is not a grant, is not stored +per forest, and is not re-derived at startup: + +- authority that must be able to create the first forest cannot be derived + from a forest, or the deadlock simply moves; +- re-granting at boot drifts every forest created later needs the same + loop to run again, and the one time it does not is a support ticket; +- a grant can be revoked forest by forest, which would silently produce a + half-owner. The bit is atomic: an owner is one or is not. + +There is **exactly one owner**, and the bit is not grantable through +`/v1/admin/people` or any other route. Governance is still per forest +(J.3.2); the owner is the root of it, not a second tier of console. + +**The setup route.** `POST /v1/auth/setup {username, password, email?}` +creates the owner and returns a session token, exactly as a login would. + +- It MUST be **unauthenticated**, because there is nobody to authenticate. +- It MUST exist **only while the registry holds no credential of any kind** + no password, no non-session API key. That is the one condition under + which an open route creates no privilege escalation: there is no + privilege yet to escalate from. +- It MUST NOT exist while an environment super-admin is configured. That + deployment has already declared its first identity, and two open doors + competing for it is the race this section exists to forbid. +- Once it has run it MUST close **permanently**. A closed route MUST answer + exactly as an unrouted path does not "already configured", which + publishes the deployment's state to anyone who asks. +- It MUST NOT be closed by the Station's own **startup** (v0.28). The window + belongs to the person who opens the console; a process that consumes it by + booting removes the feature from every deployment that runs the image as + shipped. Only an operator's explicit request may take it instead (J.2.5). +- The check and the creation MUST be **one atomic transaction**. Two + simultaneous requests MUST produce one owner and one refusal, never two + owners. This is the whole security surface of the feature: a + check-then-write with a gap between them is a back door with a race + condition as its key. +- `email` is **optional**, stored locally as the owner's contact, and MUST + NOT be transmitted anywhere. A setup step that depends on a network call + cannot complete on an air-gapped host, and asking for an address in + exchange for nothing is a poor first sentence for a product to say. +- The password is stored under the J.2.1 rules memory-hard KDF, salted. + The owner is an ordinary principal that happens to carry a bit. + +**The first forest.** Setup MAY create one, and the choice MUST be the +operator's: an empty forest, or a **seeded demo** whose only purpose is that +`Ask` and `Explore` have something to answer on the first visit. Neither is +required an owner with no forest is now a valid, workable state, which is +precisely what v0.24 could not represent. + +The seed MUST be **generated, never shipped as content**: a generator that +calls only public primitives, living outside `src/monkeyllm/` because the +engine carries no vocabulary of its own (a forest is content, and content +is not the engine's business). A demo forest MUST NOT be committed to the +repository the generator is the artifact, the forest is its output. + +**F.28 (acceptance).** On a registry with no credential and no environment +super-admin, `GET /v1/health` reports setup is required and the setup route +creates an owner whose session **immediately** reports `admin`, holds +`admin` on a forest created *after* the owner existed, and is refused by +nothing that `admin` permits; the same route, called a second time, answers +byte-identically to an unrouted path, and two concurrent first calls produce +exactly **one** owner and one refusal proven by running them against one +registry, not by inspecting the code. With an environment super-admin +configured, the route MUST NOT exist at all. An owner MUST be able to create +the first forest on an empty registry, and a non-owner without grants MUST +still be refused it. Clearing every credential MUST NOT reopen setup while +the owner principal exists all covered by tests. + +#### J.2.5 The first run, announced (v0.28) + +J.2.4 made a Station with nobody in it reachable. This section makes it +**findable**, because the two are not the same thing and only the first was +ever built. + +Nobody meets this product in a browser. They meet it in a terminal, watching +`docker compose up` scroll, and at the end of that scroll they either know +what to do next or they do not. A console that would have told them is +behind the door they are trying to open. So the first minute is a log line, +and the log line is part of the product. + +**Starting mints nothing (normative).** A Station MUST NOT create a +credential as a side effect of starting. The registry it starts on MUST hold +exactly the same authority after boot as before it no key, no password, no +principal that can act. This is what makes J.2.4's window survive to be used: +a process that mints itself a credential on an empty registry closes setup +before the first request and turns the documented first door into code that +only tests can reach. + +The environment super-admin (J.2.1) is not an exception to this. It creates +an *identity* and no credential: the password is compared against the +environment and never stored, so nothing in the registry becomes usable by +possessing the registry. That it also closes setup is J.2.4's rule about +declared identities, not a side effect of booting. + +**The announcement.** When nobody can yet sign in, the Station MUST write to +its standard output how to get in, and MUST name the console's URL. There +are exactly three states and the announcement MUST distinguish them, because +the operator's next action differs in each: + +| Registry state | What the announcement says | +|---|---| +| No credential, no environment super-admin | setup is open: the first person to open the console becomes the owner | +| Environment super-admin configured | sign in as that **username**, with the password held in the environment | +| Any credential exists | nothing this is not a first run | + +- The environment password MUST NOT be printed. The operator set it; the log + aggregator did not need a copy. +- The open-setup announcement MUST also read as a warning. A Station + published on a public interface with an unclaimed owner seat is a race + against strangers, and the operator learns that here or after losing it. +- The third row is silence, not a status line. A restart that reports the + deployment's authentication state to whatever collects its logs is a + disclosure with no reader who needed it. +- The condition is **the registry**, never a marker file. A first run is a + fact about state, and a Station whose registry volume was replaced is + having its first run again no matter what the filesystem remembers. + +**The bootstrap key (opt-in).** A deployment with no reachable browser — +headless server, CI, an MCP-only client MUST still have a first door. The +Station therefore accepts an explicit request, at start, to mint the first +API key: a `--bootstrap-key` flag, or the equivalent environment variable so +that a platform UI with no argv field can ask for it too. + +- It MUST be explicit. An opt-in that defaults to on is not an opt-in, and + the default here is the setup screen. +- It MUST mint **only into J.2.4's window** no owner, no credential and + return nothing at all otherwise. A running deployment MUST NOT be able to + grow a new full-authority key by being restarted with a flag; that is what + `station key` and the People console are for, both of which require + somebody who is already in. +- The principal it mints MUST take the **owner bit**. A first credential + that cannot create the first forest is the v0.25 deadlock wearing a new + hat, and this is the one requirement here that is about authority rather + than about words on a screen. +- Minting it **closes setup**, by J.2.4's own rule, and the announcement + MUST say so. The flag and the setup screen are two doors onto one + one-shot window; whichever is used spends it. +- The key is shown **once**, at creation, and only its digest is kept + (J.2.2). The announcement MUST say that too, because a secret that scrolls + past unlabelled is a secret the operator will look for again tomorrow. + +**F.31 (acceptance).** On an empty registry with no environment super-admin, +starting the Station MUST leave `GET /v1/health` reporting +`setup_required: true` proving the boot minted nothing and the +announcement on standard output MUST carry the console URL. Started once +with the bootstrap flag, the same registry MUST then report +`setup_required: false`, the printed key MUST authenticate a principal +reporting `owner: true`, and that principal MUST be able to create the first +forest on the empty registry; started with the flag a **second** time, or +against a registry that already holds a credential, it MUST mint nothing. +With an environment super-admin configured, the announcement MUST name the +username, MUST NOT contain the password, and no key is minted. On a +registry that already holds a credential the announcement MUST be empty. All +covered by tests. + +#### J.2.6 Pairing a key that narrows (v0.48) + +A device that acts for a person all day a browser extension, a phone +shortcut must hold a credential, and both existing shapes are wrong +for it. A session (J.2.1) is the principal's whole authority with a +short life: stored in a toolbar it is both too much and too brief, and +an extension that silently re-logs in must store the password, which is +strictly worse. An admin-minted key (J.2.2) has the right lifetime but +the wrong gatekeeper: a person should not need an administrator to +connect their own browser to their own grants. + +`POST /v1/auth/pair` is the third door. Unauthenticated like `login`, +it takes `{username, password, label?, caps?, expires_in_days?}` and +answers `{api_key, principal, caps, expires_at}` an ordinary J.2.2 +key whose row additionally carries a **capability mask**. + +- **The mask only narrows.** The key's effective authority is the + principal's grants **∩ mask, computed at the moment of use** — + wherever the requesting principal's authority is read: the policy + built for a forest call, the grants a console is shown, and the + admin and owner bits, over REST and MCP alike. A mask never adds a + capability, never widens a scope, and a masked key held by an owner + is refused every `/v1/admin` route exactly as if the owner bit were + absent. Grants revoked after pairing are gone from the intersection + immediately: the mask is a filter over live authority, not a copy of + it. +- **`caps` ⊆ `{read, ingest}`, default both.** A pair key exists to + clip and to look; asking for `write`, `tend`, `query` or `admin` is + `E_SCHEMA`. Those remain what People and `station key` mint, + deliberately. +- **No admin gate, by construction.** Pairing is self-service because + it reaches nothing the password could not already reach refusing + it would not protect anything, only route the same authority through + a wider credential. A principal with no `ingest` grant anywhere still + pairs; the key simply cannot ingest, which is the grants speaking, + not the door. +- **It MUST expire.** Default 90 days, ceiling 365; absent or zero + means the default, never "unlimited". The lifecycle is otherwise + J.2.2's: digest-only storage, shown once, revoked from People, + `last_used_at` maintained. +- **`login` and `pair` MUST be rate-limited.** Both verify passwords + and both are now reachable from every browser that holds the origin, + not only from the console. A fixed window per (username, client) is + enough; the refusal is HTTP 429 with the same one message whether + the user exists or not the limiter must not become the directory + the login refusal already refuses to be (J.2.1). +- `/v1/me` and `/v1/forests` answered to a masked key report the + **masked** caps: what a console renders from them is what the key + can actually do, or every disabled button becomes a support ticket. + +**F.47 (acceptance).** Pairing with a valid password returns a key +whose `/v1/me` shows only the masked caps. That key MUST be refused a +`plant` its principal would be granted unmasked, MUST still read and +`ingest`, and minted for the owner MUST be refused every +`/v1/admin` route and MUST NOT satisfy the admin bit over MCP. A wrong +password, an unknown user and a user with no password answer +identically. Failures past the window answer 429 without revealing +whether the user exists. Every pair key carries an expiry; `caps` +outside `{read, ingest}` is `E_SCHEMA`. All covered by tests. + +### J.3 Policy and enforcement `ScopedVine` + +**Unit of scope: the branch prefix.** The hierarchy that Part A already +maintains is the policy surface a grant names a subtree, not a node list. + +A policy binds one principal to one forest: + +```yaml +principal: <id> +forest: <forest-id> +allow: [projects/, sales/reports/] # subtree grants +deny: [projects/secret/] # carve-outs; deny wins +caps: [read, write, query, tend, ingest, admin] +datasets: # optional narrowing + sales/report-q1-2026: {tables: [sales]} +``` + +Resolution rules: absent policy means **no access** (deny-by-default); a +node is in scope when some `allow` prefix matches its id and no `deny` +prefix does; `deny` MUST win over `allow` at any depth. + +`ScopedVine` wraps the ten primitives plus `harvest` with exactly one rule +each: + +| Primitive | Enforcement | +|---|---| +| `locate`, `scan` | candidate set restricted to in-scope nodes **before** ranking, budgeting and truncation | +| `sniff` | body search space restricted to in-scope nodes | +| `look`, `pick` | node MUST be in scope, else `E_NOT_FOUND` | +| `move` | edges whose other endpoint is out of scope MUST be omitted from the response | +| `harvest` | inherits the above (it is a C.6c composite, not a bypass) | +| `query` | requires `query` cap and an in-scope `type:dataset` node; the optional table allow-list is checked against the parsed statement (C.5.3); C.9 read-only guards unchanged | +| `tend` | requires `tend` cap and an in-scope dataset; the optional table allow-list is checked against the parsed statement, **reads included** (C.5.3, v0.50); C.10 guards unchanged | +| `plant`, `graft` | require `write` cap; the target id MUST be in scope | +| Gardener `adopt`/`sync` | require `ingest` cap; MUST NOT write outside scope | + +**Two invariants, both security-critical:** + +1. **No truncation oracle.** Scope filtering MUST be applied before token + budgets and `truncated` are computed. A scoped response MUST have the + same shape and budget semantics as an unscoped one; a caller MUST NOT + be able to infer hidden content from result counts or truncation flags. +2. **No existence oracle.** An out-of-scope node MUST produce a response + byte-identical to that of a node that does not exist (`E_NOT_FOUND`, + same hint). This extends to `move`: an omitted edge MUST be + indistinguishable from an absent edge, because an error or a placeholder + would itself disclose the forbidden node. + +Structural consequence: `ScopedVine` composes the public `Vine`; it MUST +NOT patch, subclass around, or reach into engine internals. Any behavior it +cannot express through public primitives is a spec gap to be resolved here, +not a monkey-patch. + +#### J.3.2 Administration is per forest + +J.3 scopes *content*. The same reasoning governs *governance data*, and it +is easy to miss because the capability check passes: holding `admin` on one +forest admits a caller to a host route, and that is all it does. It is +never a licence to read rows about forests they do not administer. + +Therefore every host route that returns registry data MUST filter its +result to the forests the caller administers: + +| Route | Filter | +|---|---| +| `/v1/admin/principals` | principals holding a grant on an administered forest, with `grants_detail` reduced to those forests | +| `/v1/admin/audit` | entries whose forest is administered | +| `/v1/admin/keys` | principals the caller administers **fully** (J.2.2 a key spans forests, so partial administration is not enough) | +| `/v1/admin/grant`, `/v1/admin/models` | already per forest; unchanged | + +A branch prefix is a description of somebody's world, and an audit entry +is a record of what they read. Neither becomes public because the reader +happens to administer a different forest. + +*Boundary (normative as of v0.50):* providers (J.10) are a **host** +resource one row, no forest column, shared by every forest. Their reach +is therefore the whole deployment: the endpoint decides where every +forest's material is sent, the key pays for every forest's calls, and +removing one removes the bindings of forests the remover may not +administer. Authority over them MUST match that reach. + +| Operation | Authority | +|---|---| +| list providers (`GET`) | any administrator. A per-forest model binding points at these names, and the response carries `has_key` rather than any secret | +| create, change, remove, or test a provider | administers **every** forest in the deployment | + +"Every forest" rather than "the owner bit" is deliberate, and it is the +same reasoning J.2.4 gives for the bit itself: authority is stated as what +it reaches, so the rule keeps working where the bit is unavailable. The +J.2.1 break-glass account falls back to per-forest grants when the owner +seat is taken and keeps provider repair, which is the situation +break-glass exists for; a single-forest deployment is unaffected, there +being no second forest to cross into; and a deployment's second forest +narrows the authority the moment it exists, with nobody revoking anything. + +Two custody rules follow, and they hold for every principal including the +owner: + +1. **A stored credential belongs to the address it was stored against.** + Changing a provider's endpoint MUST require supplying its key again. + Leaving other fields alone with a blank key still keeps the stored one + — that is the case the blank-key affordance exists for. +2. **A stored credential is never sent to a caller-supplied + destination.** Where a connection test accepts both a saved provider + and an endpoint typed into a form, a supplied endpoint that differs + from the stored one is a different destination: it carries its own key + or none. + +A per-tenant provider model remains a later concept, not an implementation +detail here. + +### J.4 Audit + +- **Writes** are already commits; the Station MUST stamp the acting + principal in the message, following the existing convention + (`station(<principal>): <action>`, cf. `ranger(promote|prune)`). Git + history remains the source of truth for what changed. +- **Stamped at the commit, never amended after (v0.57).** The stamp used + to be an amend: the engine committed, the host read the message back + and rewrote the commit with the `station-principal:` trailer — two + commits and a log read for every write, on the one thread every write + already queues for. The engine now exposes `commit_trailers` — a + public, host-writable seam in the J.0 pattern (`embedder`, + `hybrid_locate`): lines the next commit appends after a blank line, in + git's own trailer convention. The host sets it around each scoped + write; the engine stays principal-blind (it appends what it is handed + and never reads it). The sha the caller receives is the only sha that + ever existed. The amend remains as fallback where the seam is absent + (an older engine), because attribution lost is worse than attribution + paid for twice. +- **Reads** extend Part D telemetry with the principal: every scoped call + records `(principal, forest, primitive, argument digest, result size, + timestamp)`. Bodies and snippets MUST NOT be copied into the audit log — + it records access, not content. +- **An answer served from the store is audited as one** (J.10.7): the row + carries the entry's key digest, is marked as served from the store, and + the cost it records is the cost avoided, never a second spend. + Reconstruction survives the shortcut the row names the entry, and the + entry keeps the original run and its trail. +- The pair MUST be sufficient to reconstruct any answer's full trail after + the fact: which principal, which primitives, which nodes, in which order. + +#### J.4.1 Governance is audited too (normative, v0.50) + +The bullets above record what was read and what was written. This records +the changes that decide **who may do either** — the questions any later +review starts from: when was this key made, and by whom; when did this +grant widen; when did this provider change address. + +The Station MUST record, on the same table and the same terms: + +| Event | Carries | +|---|---| +| grant / revoke | target, forest, capabilities | +| key issued / revoked | target, label, the key's non-secret prefix, expiry | +| password set or cleared | target, and that it happened | +| provider created, changed, removed, tested | name, endpoint, whether a key was supplied | +| model binding | forest, role, provider, model | +| forest created | id, seed | +| sign-in, pairing, owner setup | username, client host, outcome | + +Three rules: + +1. **Never the secret.** The digesting of Part D applies unchanged, and + nothing secret is passed to it in the first place: a key is named by + its non-secret prefix, a password only by the fact that one was set. +2. **A governance row belongs to no forest** and MUST carry a single + agreed placeholder, so that "show me the administration trail" is a + filter rather than a guess. A row that *is* about one forest — a grant, + a model binding, a forest's creation — carries that forest's id, so its + administrator can read it back. +3. **Placeholder rows are the owner's to read.** They describe the + deployment as a whole, and J.3.2's rule applies to them for the same + reason it applies to content: administering one forest is not a licence + to read the shape of the others. + +Failed sign-ins MUST be recorded as well as successful ones. The J.2.6 +limiter counts in memory and forgets on restart, so without a row there is +no answer to whether anyone was trying. Recording the attempted username +is intended: it is what was tried. + +An audit write MUST NOT be able to fail the action it describes. + +### J.5 Studio + +A web console served by the Station. Studio MUST consume only the +documented REST surface. It MUST NOT hold a privileged side-channel: +whatever Studio can do, an API client with the same principal can do and +whatever a principal cannot do, Studio cannot show. Localisation and +theming are presentation: they MUST NOT change any request, response or +permission. + +#### J.5.1 Information architecture + +The console is organised into three groups, answering three different +questions an operator arrives with: + +| Group | Console | Answers | +|---|---|---| +| **Use** | Overview | what is in this forest and what may I do here | +| | Ask | what does the forest know about *X* | +| | Explore | where does a fact live, and what is next to it | +| | Playground | what exactly does an agent see, and what would this call cost | +| | Data | what do the datasets contain | +| | Skills | how does my own AI learn to use this forest as memory (J.5.12) | +| **Build** | Ingest | how do I put my documents in | +| | Models | who reads this forest, and who summarises it | +| | Webhooks | what this forest tells my other tools, and when (J.16) | +| **Govern** | Access | who exists, what they may see, how they sign in | +| | Audit | who saw what | +| | Health | what the Ranger sees, and how to snapshot | +| | MCP / API / Integrations | how agents, apps and deployments plug into this Station | + +Navigation MUST carry an icon per console alongside its label: the console +is used by people who did not choose these names, and a name alone is a +weak target. + +One label is normative (v0.49): the integration manual's entry MUST read +**MCP / API / Integrations** the three surfaces it documents, in that +order. The menu is where a newcomer decides what this deployment *is*, +and the previous label, a lone abstract noun in the govern group, read as +an appendix. The consoles are a window; the surfaces named on this door +are the product: external intelligences plugging into a brain a person +grows for themselves. Localisation MAY translate the trailing noun +("Integrações", "Integraciones"); `MCP` and `API` are names and travel +as-is, like the node types of A.1. + +Navigation MUST list exactly the consoles the principal's capabilities +permit on the selected forest, and MUST re-evaluate when that forest +changes capabilities are per forest, so the menu is too. `Ask` is the +default landing console for a principal holding `read`; a principal +without it lands on the first console they do have. + +**Hiding is presentation and MUST NOT be the control.** Each console keeps +its own capability guard, because a hidden entry is still reachable by +anyone who can set application state, and the API remains the authority: it +already refuses, and it would refuse a request the console never sent. +Where a console has something for *every* principal Overview, which +describes the key itself, its scope and its capabilities it is always +listed; an entry that could only ever refuse is hidden instead (the govern +consoles for a non-admin), because a menu reads as a list of what you may +do, and an entry that only ever refuses teaches nothing (v0.49 this +corrects the earlier example: Access is admin-gated and hidden like its +group; the principal's own half of that story lives in Overview). + +#### J.5.2 The vocabulary rule + +The console MUST address the operator in the operator's vocabulary. The +policy model of J.3 is storage, not interface: + +- **Roles before capabilities.** Access is granted by choosing a named + role; the resulting capability set MUST be shown as a *consequence* of + that choice, never demanded as the input. Refining the set directly MAY + be offered as an explicit deviation from a role. +- **Scope is picked, not typed.** Branch prefixes MUST be selectable from + the forest's actual branch tree. Free text MAY remain available; it MUST + NOT be the only way in, because a typed prefix that matches nothing is + indistinguishable, in a text field, from one that matches everything. +- **The grant MUST be restated in a sentence** before it is saved: which + principal, which branches out of how many, what they will be able to do, + and what they will not. A policy an operator cannot read back is a + policy they cannot audit. + +#### J.5.3 Localisation and theme + +- The console MUST ship **English, Portuguese and Spanish**, complete: a + missing translation is a defect, not a fallback. It MUST detect the + browser's preference on first load and persist an explicit choice. +- The console MUST offer both a **light and a dark** presentation, follow + the operating system preference until told otherwise, and persist an + explicit choice. +- Content is not chrome. Node ids, titles, summaries, bodies, SQL and + model output are forest data and MUST be rendered as stored the + console translates its own words only. + +#### J.5.4 Credentials, and the panel that does not exist + +Issuing, listing and revoking API keys follows J.2.2: label, principal, +expiry, last use, prefix. The secret appears once, at creation, and the +console MUST say so at the moment it is shown rather than afterwards. + +The access **levels** MUST be documented in the console itself the named +roles, what each one can do, and what it cannot. An operator choosing a +level should not have to leave the screen to learn what the choice means. + +#### J.5.5 The People console + +Governance is presented **per person**, not per table: + +- **Onboarding is one form.** Who they are, what they may see, how they + sign in, and a token if they need one submitted together, because that + is one decision. Splitting it across screens makes the operator hold the + model that the interface should be holding for them. +- **Forests are chosen as a set, not one at a time.** The form MUST offer + every forest the operator administers as a multi-selection with an + all-or-nothing control, in a bounded, scrollable region so that a registry + with fifty forests looks like the same form as one with three. A + single-choice control here would be the interface asserting that access is + forest-shaped, and it is not: repeating the whole form once per forest is + how a five-forest grant becomes four forests and a forgotten one. +- **Branch scope appears only when it means something.** Branch names are + forest-local (J.2.3), so the subtree picker is offered when exactly one + forest is selected; with several selected the grant covers each forest + whole, and the form MUST say so rather than silently applying one forest's + branch names to another's. +- **The list is the maintenance surface.** Every person the caller + administers appears with their level, scope, whether they can sign in, + how many live tokens they hold, and when they were last seen. Changing + any of it starts from that row, not from a separate screen. +- **Credentials stay visible as credentials too.** A second view lists + tokens across people, for the operator auditing what exists rather than + who exists. Two views over one truth; not two places to maintain it. +- Secrets a generated password, a new key appear once, at the moment + they are created, in the same place the operator was already looking. + +**There is no separate super-administrator panel, and there MUST NOT be +one.** One console over one API, with capabilities deciding what appears: a +principal without `admin` does not see Tokens, and a principal with `admin` +on one forest does not see the credentials of another. A second panel would +require a second authentication path, and a second authentication path is +where the backdoor goes this is the same reasoning as J.5's +no-side-channel rule, applied to the console's own front door. + +#### J.5.4 Forest Views + +A forest is a graph of nodes and typed trails with heat on it, and a tree +of files on disk. Both are the same truth; a console MUST be able to show +either without the operator changing consoles. The Explore console +therefore carries **modes over one selection** the selected node survives +a mode change, because the operator did not stop looking at it. + +| Mode | Shows | Reads | +|---|---|---| +| graph | nodes and trails, laid out spatially | J.11's `/graph` | +| tree | the branch hierarchy as a list | `scan` | +| files | the forest as files, one open at a time | `look`, `pick`, `query` | + +**Encoding rules for the graph mode.** Every visual channel MUST carry a +fact the forest actually holds, and MUST NOT invent one: + +- Node type comes from the forest's own dialect (`_meta/schema.md`, A.1). + A console MUST NOT hardcode the type list: a forest that added a type + gets a legend entry, not an unlabelled colour. +- Heat is the pheromone value of Part D, and a console that shows heat MUST + show the value it received rather than a rank heat is comparable across + nodes and a rank is not. +- Link-level `confidence` below 1.0 MUST be visually distinct from curated + links: it is a proposal under the Ranger's management (H.2), not an + assertion. `discovered-shortcut` (C.8) MUST be distinguishable in turn. +- Colour MAY encode the node's type or its home branch the dialect and + the id, both facts the forest holds. A console MUST NOT colour by a + category the forest does not hold, and whichever fact colour encodes, + the legend names it (v0.38). +- Layout is presentation and carries no meaning. A console MAY animate it; + it MUST honour a reduced-motion preference by settling immediately — + and it MUST settle regardless (v0.38): a map at rest holds still, + spending motion only on new data, the operator's hand, or an explicit + reorganize. A forest cannot be pointed at while it trembles. Distinct + regions MUST read as distinct: a layout that piles unrelated branches + into one heap answers the operator wrongly. +- View tuning filters, grouping, label visibility, node scale, link + width, force strengths is presentation and belongs to the operator + (v0.38). It MAY persist in browser storage, per forest; it MUST NOT + enter the address (J.5.8: the address carries the selection, not the + taste) and it MUST NOT spend a call or a write. +- **Growth replay** (v0.38). A console MAY replay the region in `created` + order (ties by id): nodes appear as they were planted, trails appear + when both ends exist. Replay is presentation over the projection + already in hand it MUST NOT spend another call and it MUST NOT + write. Under reduced motion the replay is a scrubber, not an + animation. + +**Rendering rules for the files mode.** A file MUST be rendered as what it +is, and its stored form MUST remain reachable: + +- A node body is markdown: rendered by default, with the stored source + available in one action. A body whose content is HTML is rendered as a + page, sanitised; it MUST NOT be able to script the console, and it MUST + NOT be able to reach the console's credentials. +- A `type: dataset` node's payload is a database: its tables MUST be + listable and browsable through `query` and nothing else the same single + SELECT, the same injected LIMIT, the same timeout (C.5). A console + browsing a payload is a `query` client, not a second access path. +- Frontmatter shown beside a body is the passport as the Catalog holds it. + A console MUST NOT present a reconstructed passport as the file's bytes. +- A body over the `pick` budget MUST show the outline the primitive + returned rather than pretending to have the whole text. + +**Editing.** A console MAY offer editing, and every edit MUST leave as a +Part C write `graft` for a node, `tend` for a dataset row. No surface, +the console included, may write a node file or a payload directly: the +commit, the validation, the index propagation and the audit record are the +write, and a "save" that skips them is a forest that no longer describes +itself. A console offering editing MUST show the operations before they are +applied: the operator is authoring a commit, and a commit is not a +keystroke. + +Whole-note editing (v0.43): a console MAY edit the entire body in one +place and save it as one `graft` carrying `replace_body` the note as +the unit of edit, one commit for one thought. Two rules keep it honest: +the console MUST NOT compose a `replace_body` from a truncated `pick` +(a body over the pick budget is edited at the section grain, because +writing back less than was read is how notes lose their tails), and a +rich editor that cannot represent everything markdown can say MUST +offer the stored source as an editing surface, so what the operator +cannot see is still not silently dropped. + +#### J.5.6 The setup screen + +The console has exactly two pre-identity screens. The Gate (sign in) is one; +the setup screen is the other, and which one appears is not the console's +choice `GET /v1/health` already says whether a password door exists, and +it MUST also say whether setup is required. The console asks and renders the +answer. A console that decided this locally would eventually show a sign-in +form on a Station nobody can sign in to, which is the bug this whole section +exists to remove. + +- It MUST collect a username and a password, MAY collect an email, and MUST + label the email as optional in the interface rather than only in the API. +- It MUST offer the first-forest choice of J.2.4 empty or seeded demo — + and MUST let it be skipped. An owner with no forest is a valid state and + the console MUST render it without looking broken: the existing "no + forest" empty state already carries the create action for an + administrator, and the owner is one. +- It carries the language and theme controls, for the Gate's reason (J.5.3): + the first screen a person sees cannot require a session to be legible. +- It MUST NOT be reachable once setup has closed. The route is gone by then, + so the console MUST treat a failed setup call as "someone else got here + first" and fall back to the Gate rather than retrying. + +Everything else in J.5 is unchanged: there is still no second panel, the +owner uses the same nine consoles as anyone else, and what appears is still +decided by capabilities (J.5.4). + +#### J.5.7 Shaping the forest (v0.27) + +A.5 gives a new forest one branch, its master index. Part G grows more, but +only by mirroring a source tree `adopt` derives structure, it does not +invent it. So a forest whose documents arrive through `upload` or `compose` +has nowhere to put them except the root, permanently, and the operator's +only recourse is to leave the product, arrange a folder tree on some other +machine, and mirror that instead. The console MUST be able to add a branch. + +- **Through `plant`, and through nothing else.** A branch made here MUST be + the same node an agent's `plant` would make: same validation, same commit, + same audit row, same entry grafted into the parent index by the engine. + The console composes a call; it does not write files, does not maintain + the parent's `## Sub-branches` list, and adds no second idea of what a + branch is. This is the J.7 rule (`the Station adds no second way to make a + forest`) one level down. +- **The operator names it; the console derives the id.** The name is + slugified into a path segment and the id is composed as + `<parent>/<slug>/_index`. Ids MUST NOT be typed by hand in this flow: + they are immutable (C.7), so a typo is not a mistake to correct but a + node to abandon, and the engine's own check that an id lives under the + parent it names is unhelpful to someone who did not know they were + writing a path. +- **The parent is chosen, never typed**, and only from branches the + principal can already reach. A parent it cannot read is not a parent it + may write under, and offering one produces a refusal the operator cannot + act on. +- **The summary is required, and the engine judges it.** It is the A.4 + scent every later hop navigates by, so it is not optional and not + derived from the name. The console MAY show the 60-token budget while + typing; it MUST NOT implement its own rule, because two validators + disagree eventually and the engine's is the one that decides. +- **A new branch carries the A.5 index skeleton** `## Sub-branches`, + `## Direct bananas`, `## Cross trails` so it reads like every other + branch from the first moment rather than growing headings the first time + something is planted into it. +- **Scope is the engine's, restated in the interface.** `ScopedVine` + already refuses a write outside the grant, so a scoped principal cannot + create at the root; the console MUST NOT offer a parent it knows will be + refused. Hiding is presentation and never the control (J.5.1) the API + still refuses what the console never sent. +- **Where it lives.** Two places, one component: the Explore console, where + an operator is looking at the shape of the forest, and inline in the + Ingest destination picker, because "where do these go?" is exactly the + moment a missing branch is noticed. The picker's create action MUST make + the branch and then select it, so the ingest that prompted it continues + without a second trip. + +**What this is not.** There is no move, no rename and no delete. A node's +id encodes its branch and ids are immutable, so relocating one would mean +a new id and every `related-to` link pointing at the old one going stale; +no primitive does it, and none is specified here. The console can create +structure and curate what is in it (`graft`, and the Curator through +J.10). An operator who puts a branch in the wrong place lives with it or +rebuilds the region deliberately which is the honest cost of ids that +are also addresses, and is stated here so that nothing downstream is +designed against a file manager this product does not have. + +**F.30 (acceptance).** A principal holding `write` creates a branch through +the console's call and gets a node whose `type` is `branch`, whose id is +`<parent>/<slug>/_index`, whose parent index gained exactly one +`## Sub-branches` entry, and whose creation appears in the audit log with +a commit sha none of it written by the console. The same call with a +name that slugs to nothing is refused, a duplicate id is refused, and a +summary that breaks A.4 is refused by the engine rather than accepted and +truncated. A principal scoped to a subtree is refused a branch at the root +with `E_FORBIDDEN` and succeeds inside its own grant. All covered by tests. + +#### J.5.8 The address bar (v0.30) + +A console is a place, and a place has an address. Studio's did not: every +screen was served at `/`, and which forest, which console and which node +were open lived in application state alone. So a reload started the console +over first forest of the list, default console, nothing selected a +selection could not be sent to a colleague, and the browser's Back button +left the product because no history entry had ever been written. + +**The URL is the console's state, not a decoration of it.** What is on +screen MUST be derivable from the address, and the address MUST be the +thing the console reads when it renders. A console that keeps a second copy +of where it is will disagree with the address bar eventually, and the +address bar is the copy the operator can see, share and edit. + +| Part | Carries | Why there | +|---|---|---| +| `/f/{forest}/{console}` | the forest, and the console open on it | the forest scopes every request the page makes, and the console is what the page *is* | +| `?node=` | the selected node, across consoles | a node id contains `/` (A.2) and is not a path segment | +| `?…` | what the open console needs to be the same page | `mode`, `dataset`, `table`, `tab` the console's own selection, not its scroll position | + +- **The forest comes first, and it is never re-chosen for the operator.** It + is the scope of every call on the page, so a console that picks it again + on a reload has changed *which data is on screen* without being asked. A + URL naming a forest MUST win over any remembered preference. +- **Moving is a history entry; adjusting is not.** Choosing a forest, a + console or a node MUST push; toggling a mode, a tab or correcting a + selection that turned out not to exist MUST replace. Back is for undoing + navigation, and a Back that walks a per-keystroke trail is a Back nobody + presses twice. +- **The address is written by navigation, never by rendering.** Loading data + MUST NOT rewrite it. The one exception is a selection the forest does not + contain a table dropped since the link was written which MAY be + corrected to what is actually shown, by replacement, because the + alternative is an address that describes a page that is not there. +- **A parameter the console does not understand MUST be ignored.** Links + outlive the version that wrote them, and a shared address is edited by + hand. An unknown console falls back exactly as J.5.1 already says + capabilities fall back; an unknown parameter value falls back to its + default. Neither is an error screen. +- **The last place is remembered only to resolve a bare `/`.** Which forest + somebody was last in is a convenience for the door, not an authority: it + MUST NOT override an address, MUST NOT survive the grant that justified it + (a forest no longer in `GET /v1/forests` is not a place to restore), and + MUST NOT be the console's idea of where it is. +- **A forest the principal cannot see is said, not swapped.** An address + naming a forest absent from this principal's list MUST be reported as + what it is, with the forests they do have offered as the way on. Silently + redirecting to a forest they can see is worse than an error: the operator + followed a link to a specific place, and landing somewhere else without + being told is how a person comes to believe they are in a forest they are + not. +- **Restoring a place MUST NOT restore an action.** The address carries what + is being looked at, never a call to make. A deep link MUST NOT cause a + model call, a write, an ingest or a snapshot on arrival: J.10 composites + cost money and Part C writes cost commits, and a reload is not consent to + either. What an operator typed MAY be restored; what it produced is + re-asked for by hand. +- **What has an address MUST be a link.** Every navigation entry, every + forest in the switcher and every reference to a node MUST be a real + anchor carrying that address, so the browser's own affordances open in + a new tab, copy link, middle click, the status bar work. Intercepting + the plain click is how it stays a single-page application; intercepting a + modified click is how it stops being a web page. A control that can be + unavailable is not an address and stays a button: `disabled` is a + statement about a capability, and an anchor cannot make it. +- **Hiding is still not the control (J.5.1).** An address is application + state a person can type, so a console reachable by URL but not by menu + MUST refuse exactly as the menu implies which it already does, because + the API is the authority and the guard is in the console, not in the way + it was reached. + +**The host answers the console's addresses.** A deep link is a `GET` of a +path that belongs to Studio and not to the API, and the Station is what +receives it. + +- A `GET` matching no API route, no mount and no file in the build MUST be + answered with the console's shell, so that reloading `/f/x/explore` + reaches the same application that pushed it. +- It MUST be answered that way **only for document requests** a request + that accepts HTML. A missing script or stylesheet MUST stay a `404`: an + asset answered with the shell is an HTML body served under a JavaScript + MIME type, which fails later, elsewhere, and unrecognisably. +- `/v1` MUST keep answering as the API (the J.1 rule that an unrouted `/v1` + path is a JSON error, never the console), and the MCP mount is untouched. +- The shell MUST NOT be cached by the browser. It names the hashed assets of + one build; a stale copy asks for files the deployment no longer has. + +**F.34 (acceptance).** Opening a console, selecting a node and reloading +MUST return the same forest, the same console and the same selection. The +address MUST survive being copied into another browser with the same +principal, and Back MUST retrace the consoles visited rather than leaving +the console. A `GET /f/{forest}/explore` on the Station MUST return the +shell with `200`; `GET /assets/missing.js` MUST return `404`; `GET +/v1/nope` MUST return the JSON error envelope of J.1. An address naming a +forest outside the principal's grants MUST show that forest's name and an +explanation, and MUST NOT change which forest the console is reading. +Covered by tests. + +#### J.5.9 The runs already made (v0.31) + +Ask holds one result and then loses it: the next question replaces it and a +reload leaves none. So the console cannot do the thing it exists for. The +same question after an ingest, with the walk on (J.10.5), or against a model +rebound since are different answers to one question, and judging a forest is +reading them next to each other. + +The console MUST keep the runs it made, and MUST keep them in the browser. + +**A run is one submission.** The record is what was sent the question and +the parameters exactly as they went and what came back, whole: answer, +evidence, the material the model was given, the walk, the trace, the clocks +and the cost. Half a record is not a run: an answer without the material it +was drawn from is the markdown download, which the console already has and +which is not evidence of anything. The same question asked twice MUST leave +two runs, because those two are the comparison. + +**It stays on the machine that asked, and nothing carries it anywhere.** A +run is the operator's working note about an evaluation, not a fact about the +forest, and the forest has already recorded the call it describes an audit +row (J.4) and pheromone (Part D), both written when the call ran. The +console MUST NOT send a run anywhere, and MUST NOT make a request in order +to show one: a history that needed the host would be a slower copy of +something the host does not have. + +**Keyed by principal and by forest, and dead with the credential.** A run +carries node bodies read under a grant, and a grant is per forest (J.3). The +history offered MUST be the current principal's, on the current forest, and +signing out MUST discard what was kept. A browser is shared furniture, and a +console showing the previous operator's answers would be showing what the +API refuses J.5's no-side-channel rule, arriving through the back. + +**Restoring a run restores a record, never a call.** This is J.5.8's rule +one level in. Selecting a run MUST put back the question and the parameters +as they were sent, and MUST show the response as received, labelled with +when it was made and which model made it: an answer whose model has since +been rebound reads as current otherwise, and telling the two apart is the +entire purpose. Asking again MUST be a deliberate act, and MUST leave a new +run rather than overwrite the one being read. + +**A run has no address.** J.5.8 made the console's places linkable and a run +is not one: it exists only in the browser that made it, so an address naming +it resolves for its author and is broken for everybody else. The address bar +carries the console; the history is opened there, not linked to. + +**The bound is stated out loud.** Retention is finite bodies are large and +browser storage is not the operator's disk. The console MUST keep a stated +number of runs per forest, MUST discard the oldest first, MUST show what it +is holding, and MUST offer to discard it. Silent eviction is C.6's +truncation rule in a different costume: what was dropped is said, or a +partial history is read as a complete one. + +**Storage is a convenience and MUST NOT become a failure.** Private +browsing, a refused quota, storage switched off the answer on screen is +unaffected. The console MUST report the history as unavailable and MUST NOT +turn a storage error into a failed `ask`. It MAY offer the kept runs as a +file, asked for by hand, which is the only thing that should ever move them. + +**F.35 (acceptance).** Two questions asked on one forest leave two runs. +Restoring the first puts back its question and its parameters, shows its +answer with the time it was made and the model that made it, and issues no +request to the Station. Asking again leaves the restored run intact and adds +a third. Signing out leaves no run readable, and a second principal signing +in on the same browser finds an empty history. The store never exceeds its +stated bound and says what it holds. With storage unavailable the console +still answers and says the history is not. Covered by tests. + +#### J.5.10 The Data console (v0.44) + +The Data console is a database client over the forest's datasets, and it +shipped without the three things every database client has: a way to make +one, a way to bring one in, and a way to leave the one you are in. What it +gains here are those three, and colour on the surface where SQL is typed. + +**A dataset is born through one `plant`.** Exactly the J.5.7 rule for +branches, for the same reason: the id lives under a chosen parent, the +parent-index entry and the commit are the engine's, and the console composes +a single C.7.1 call carrying a declarative `schema`. Normative: + +- The console MUST NOT write DDL, and MUST NOT offer a free-text SQL box for + creation. Table and column names, the four types and the primary key are + fields; the `CREATE TABLE` is the Vine's (C.7.1 rule 1). A console that + typed DDL would be a second definition of what a dataset is. +- Ids are **never typed** and never moved. The leaf is slugified from the + name, shown before the call, and immutable after it no primitive + relocates a node. +- Creation requires the `plant` capability and a `dest` in scope. A console + MUST NOT offer the control to a principal who cannot use it. +- Schema evolution stays absent. `tend` is DML-only forever (C.10) and there + is no `ALTER` for agents or consoles; a table is changed by rebuilding it. + +**A dataset is imported through J.8, never beside it.** The console MAY +accept `.db`, `.sqlite`, `.sqlite3`, `.csv`, `.json`, `.xls` and `.xlsx` +files and MUST send them as an `upload` ingest (J.8) the same converters +(G.2), the same curation (G.4), the same commits, the same J.9 job and the +same pill (J.9.3) as a folder dropped on the ingest console. Normative: + +- Import requires the `ingest` capability, scope-checks `dest`, and MUST NOT + let the caller name a host path (J.8: that is `admin` and J.8.2's roots). +- Binary sources travel as `b64`; the wire contract is J.8's `{name, + text|b64}` and nothing else. +- The console MUST NOT plant an imported file itself, parse it in the + browser, or pre-compute its schema. An importer that understood the file + would be a converter living where nobody can extend it, and it would + disagree with the Gardener the first time either changed. +- The answer is a job, not a dataset. The console says so, and the list + refreshes when the job settles. + +**A connection can be left.** While a dataset is selected the picker MUST +show that dataset its id, its scent, its tables and their row counts — +and MUST offer an explicit control that returns to the list. Rationale: the +list is a browse surface and the selection is a working surface, and a +console that keeps eleven other databases one mis-click away from the query +you are editing is inviting the mis-click. Leaving is a **navigation**, so +it clears the selection in the address (`?dataset`, `?table` J.5.8) and +pushes; it MUST NOT drop a pending write. Unapplied edits are a draft the +operator can still see, so the control MUST refuse (or confirm) while one +is staged rather than discarding it silently. + +**A person teaches the dataset (v0.46).** A **Notes** tab beside Rows, +Structure and SQL edits the C.2.1 section, and composes ONE `graft` — +`replace_section`, or `append_section` the first time. Normative: + +- It requires `write`, and a console MUST NOT offer it without. +- The tab value goes in the address like every other (J.5.8), which means + it MUST be in the route validator's allow list. A tab that is not is a + tab that bounces back to the first one when clicked. +- The console MUST NOT write the notes anywhere but the node's body. A + side store would be teaching the agent cannot read, which is the one + thing this must not be. +- What is being taught is prose about data, so the editor is the markdown + one, coloured like every other source surface. + +**Source is coloured where it is typed.** The console already colours every +literal surface it *prints* (statements pending a `tend`, stored DDL, +fenced blocks in an answer). The surfaces it did not colour were the +editable ones the SQL box and the markdown body editor which are the +surfaces a person actually reads while composing. The markdown one matters +most where the rich editor refuses: a body holding a table, which every +dataset's does. A plain `<textarea>` cannot hold spans, so the editor is a +highlighted mirror under a transparent input: same font, same metrics, same +wrapping, scrolled together, with the caret and the selection visible. The +input remains a real `<textarea>` native editing, native undo, +keyboard-accessible and the mirror is `aria-hidden`: it is a second +rendering of the same characters, and a screen reader must not read them +twice. + +**F.46 (acceptance).** A `query` whose result exceeds `BUDGET_QUERY` +returns fewer rows than it matched, with `truncated: true`, the full +`columns` list and a hint naming the column count; a `SELECT *` on a table +wide enough that not one row fits returns zero rows, `truncated: true`, +`columns` intact and a hint carrying the per-row cost and the same +statement rewritten to name three columns returns its rows untruncated. An +aggregate is never truncated. `limited` and `truncated` are independently +observable. A statement naming a table that does not exist answers +`E_QUERY_INVALID` (HTTP 400) carrying the C.5 name hint, while attempting +a write answers `E_QUERY_FORBIDDEN` (HTTP 403); the same split holds for +`tend`. A walk whose entry `locate` returns a dataset puts that dataset's +`notes` in the model's first message without any `look` being called, and +a failed hop reports the error's message beside its code. A table with +more columns than the sample shows states the count and the `SELECT *` +warning in its `## Query manual`, and names every column anyway. Covered +by tests. + +**F.45 (acceptance).** A dataset's `## Notes` section comes back from +`look` as `notes`, survives a `sync` that replaces the payload and rewrites +the map, and is never written by curation. Notes longer than the budget +come back clipped with `truncated`, and a digest over its overall budget +drops `sample_rows` before it drops them. The console's Notes tab issues +exactly one `graft` `append_section` when the section is absent, +`replace_section` when it is present writes nothing else, and its tab +value round-trips through the address. Covered by tests. + +**F.44 (acceptance).** A 5 MB CSV adopted against a bound ingest model +sends the model the G.2.3 map and not the file: the request the Curator +issues is bounded by the map's own limits, the planted summary is the +model's, and a model that refuses leaves the G.4.1 template with the +fallback counted. A batch whose every document is a dataset or is +`unchanged` reports `curated: false` with `skipped > 0`, and the console +says nothing needed the model instead of reporting a rejection. A batch of +one document reports a job whose `stage` advances `convert → curate → +plant` while `done` stays 0, an observer that raises on every call changes +neither the report nor the commits, and a finished job carries `stage: +null`. A `.xlsx` whose `<dimension>` record declares `A1:A1` over a sheet +of many rows adopts every one of them. A workbook of 141 columns plants, +`query` reaches the last column, the sample shows 12 and says how many it +left out, and the manual names all 141 while the same 141-column schema +sent to `plant` **over the wire** is still refused by C.7.1. Covered by +tests. + +**F.43 (acceptance).** A `.db` adopted by the Gardener plants ONE dataset +whose payload is byte-identical to the source, whose `payload_hash` matches +it, and whose body maps **every** table with its columns and first 3 rows; +`query` answers on the second table without any further ingest, and `sniff` +for a value that appears only in a sampled row finds the node. A source +whose bytes are not a SQLite database is reported as an error naming the +file, and the forest is unchanged. A `.xlsx` with three sheets plants three +tables; one with more sheets than C.7.1 allows is refused by name. A +`sync` after the source database changes replaces the payload, refreshes +`payload_hash` and the two map sections, leaves a curator's own section in +the same body untouched, and commits only the `.md`. Creating a dataset +from the console issues exactly one `plant` and no DDL; importing one +issues exactly one `ingest` and no `plant`. Covered by tests. + +#### J.5.11 First access (v0.49) + +The first signed-in minute decides what a person believes this +deployment is. Left alone, they conclude the obvious wrong thing: that +the console is the product. It is a window. The product is the forest +behind it a knowledge base external agents feed and read through MCP, +growing for as long as somebody keeps it and nothing on a stats page +says so. + +So the console MUST offer a one-time presentation after the first +sign-in: what a forest is, that AIs connect to it and feed it through +MCP, and where to start ask, feed, connect. It is chrome, wholly: + +- **Dismissed once, gone for good per browser.** The flag is written + when the person dismisses it, and lives in browser storage, the same + standing as the reply-size preference (J.10.8): a personal setting, + never in the address (J.5.8 the address restores a page, never a + call). Until it is acknowledged it MAY appear again an unacknowledged + presentation is an unread one, not a delivered one. +- **It spends nothing.** Rendering or dismissing it MUST NOT issue a + model call, a commit, or any write beyond that browser-storage flag. + It may only ever *link* to consoles that do real work. +- **It never precedes identity.** J.2.4's setup window and J.5.6's gate + are exactly what they were; the presentation appears only inside a + session, and MUST NOT block the console dismissable, skippable, + translated like everything else (J.5.3). +- **Overview MAY restate it permanently, small**: a standing pointer to + the Skills console (J.5.12) and the integration manual, because the + person who dismissed the presentation on day one is the person who + needs the door on day thirty. + +**F.53 (acceptance).** A fresh browser profile signing into a served +Studio is shown the presentation; dismissing it produces no request +beyond what the landing console already makes, and after dismissal it +never appears again in that browser; and the integration manual's menu +entry renders **MCP / API / Integrations** in each of the three languages +of J.5.3. + +#### J.5.12 The Skills console (v0.49, blocks v0.60) + +A *skill* is a small instruction file an agent runtime Claude Code +and its kin loads to learn a workflow. The workflow this Station +wants every visiting agent to learn is: **use this forest as your +persistent memory** recall before answering, save what you learn, +cite the node ids you read. The Skills console hands that file over +instead of asking the person to write it. + +- **Self-service, never admin-gated.** Available to any principal whose + grant holds `read` on the open forest. Pairing (J.2.6) made the + credential self-service; the Clipper (J.15) made distribution + self-service; a skill gated behind an administrator would undo both. +- **Generated where it is read.** The skill text carries this Station's + own origin and the open forest's id Integrations' rule verbatim: + documentation that cannot drift from the deployment it documents. + Produced client-side, delivered by copy or file download; the Station + gains **no endpoint** for it. +- **It teaches only the published surface, shaped to the key.** Every + operation the skill instructs goes through the MCP tools as documented, + under the person's own paired key: recall through + `locate`/`harvest`/`answer`, and **saving through `ingest`** one + markdown document through the Gardener because that is the one write + the J.2.6 default mask actually carries. `plant`/`graft`, `query` and + `tend` MUST be taught only as conditional on a key that carries + `write`/`query`/`tend`: a skill that teaches a write its own credential + step cannot perform, to an agent it also teaches "never work around a + refusal", is a contradiction obeyed straight into silence (v0.49 this + corrects the earlier wording). No third write path (J.15), no + privileged side-channel (J.0, J.5). +- **The walkthrough names pairing as the credential step.** A person + installs this against their own password-derived key with the default + `{read, ingest}`-style narrowing of J.2.6 never by asking an + administrator to mint one. +- **The file addresses a model, not the reader.** Its body is English + regardless of the console language like SQL, ids and model output, + it is content the console must not rewrite (J.5.3); the surrounding + walkthrough is translated like any other chrome. +- **The skill states its age (v0.56).** The generated file carries the + Station version it was built against, and its body teaches the check: + `forests()` returns `station` (J.1.2 rule 6); when the server is newer + than the skill, the agent MUST tell its operator to re-download the + skill from this console rather than navigate by a stale map. The team's + round-without-`scan` was exactly this failure: the tool existed, their + downloaded skill predated it, and nothing anywhere said so. A skill is + a cached copy of the surface; v0.56 gives the cache a validator. +- **The skill teaches writing (v0.57).** The consumer team's seventh + report measured the asymmetry: they planted well-formed nodes only + because they had read the engine's source in earlier rounds — an agent + on its first session would plant nodes with no aliases, no edges and + possibly an undeclared rel, and the forest would get worse with nobody + told. The skill (and the MCP tool descriptions — the `plant` tool's + `node` parameter carried an EMPTY description) MUST teach the **anatomy + of a node**, conditional on a writing key as ever: + 1. the `node` shape — required and optional fields, each with its role; + 2. `aliases` presented as what it is: the findability lever, because + `locate` reads curated metadata and never bodies — "give the node + the names people will actually type"; + 3. the summary ceiling, **with the number** (60 tokens): the error + message names it, but it arrives after the body crossed the network; + 4. the id-determines-parent rule: every intermediate level must exist + as a branch, and the id is forever; + 5. read `_meta/schema` (one `pick`) before the first write in an + unknown forest — types and rels are per forest and undeclared ones + are refused; + 6. `fields` in `look` and `scan` as the cost lever, stating that fewer + fields means bigger `scan` pages; + 7. `dry_run` (C.7.3) as the rehearsal before an expensive plant. + And one footnote naming the two REST surfaces an agent wants the moment + it writes for people: `export` (J.14.1) and share links (J.17). The + team probed for shares by guessing URL patterns and filed as missing a + feature that had shipped — a surface the skill does not name does not + exist. +- **The skill teaches the document's past (v0.58):** `transplant` as the + repair for a misplaced node (and that the old id keeps finding it), + `history` as "what happened here and who did it", the batch `plant` + as the way several related nodes land whole or not at all, and + `supersedes` vs `succeeds` — the judgement and the timeline, chosen + deliberately. + +- **A skill is a folder, and the core is what every agent pays (v0.60).** + The file has grown every version that touched it born at ~2,300 + tokens in v0.49, the age stamp in v0.56, the anatomy of a node in + v0.57, `transplant`/`history`/batch in v0.58, `coverage` and + `min_score` in v0.59 and it arrived at **3,921 tokens, +14% in that + last release alone**. Growth is not the defect; the defect is that it + is indivisible. A runtime keeps only the `description` in context and + loads the body when the skill fires, so the number that matters is what + a *firing* costs and every agent pays all of it, including the ~1,400 + tokens of `plant` anatomy that a J.2.6 paired key, carrying + `{read, ingest}` by default, is not able to execute. The console MUST + therefore deliver a skill **folder**: a `SKILL.md` holding what every + agent needs, and `references/*.md` holding what only some do, read by + the agent in one call when the core sends it there. + + | file | required capability | what it holds | + |---|---|---| + | `SKILL.md` | `read` | what a node is, `forests()` first, the age check, the read loop, `locate` ≠ `sniff`, `coverage` before a silence, citation, refusals and budgets | + | `references/saving.md` | `ingest` | the one write a paired key carries by default: one document through the Gardener | + | `references/writing.md` | `write` | `plant`/`graft`/`prune`/`transplant`/`history`, the batch, `supersedes` vs `succeeds`, and the anatomy of a node | + | `references/time.md` | `read` | `calendar` and the `since`/`until` window | + | `references/datasets.md` | `query` (and `tend` to write) | `look` for the `## Notes` first, then read-only SQL, then single-statement DML | + | `references/sharing.md` | `read` | `export` and share links the two REST surfaces an agent wants the moment it writes for people | + + Four rules make the split safe: + + 1. **The core alone is a complete skill**, never a teaser: an agent that + reads nothing else still recalls correctly, still knows that an empty + `locate` is not an empty forest, and still cites what it read. + 2. **Every reference is named in the core, with the condition that sends + the agent to it.** A file the core does not name does not exist + which is the v0.57 footnote's lesson about `export` and shares, + applied to the skill's own parts. + 3. **No instruction exists in two blocks.** A sentence kept in two + spellings is two contracts, and they diverge on the first edit. + 4. **Several installed skills is NOT the split.** Each one costs its + `description` in every session whether or not it fires, and the + *runtime* decides which loads a model that does not yet know it is + about to write will not load a writing skill. One skill that names + its own references routes deterministically and costs nothing for + what it does not read. + +- **The key chooses the blocks, and a person may overrule it (v0.60).** + The console already knows the grant it renders under, so the default + selection is exactly the capabilities of the key on the selected + forests. A block whose capability the key lacks MAY still be generated + deliberately somebody preparing a skill for a colleague whose key is + wider and when it is, its first line MUST name the capability it + requires. That keeps the v0.49 correction honest: teaching a write + *conditionally* is legitimate, teaching one unconditionally to an agent + whose credential cannot perform it is the contradiction obeyed straight + into silence. The archetypes the split exists for — reads, reads and + remembers, curates, analyses datasets, everything — MAY be offered as + named shortcuts through the same list, never as a different list: what a + shortcut selects must be exactly what a person could tick by hand, or + something becomes reachable only through a preset. + +- **Single-file assembly stays (v0.60).** Not every runtime takes a + folder, and a person pasting one file into one path is the shortest + install there is. The console MUST offer the same selection inlined + into one `SKILL.md`, and the two assemblies MUST teach the same + surface: the inlined file is the concatenation of the parts, never a + different edition of them. + +- **An example is a call (v0.60).** Every primitive on this surface takes + `forest` as its first argument, and the generated skill's twenty-three + call examples passed it *not once* `answer(question)`, + `coverage()`, `scan(root, filter: …)`. The forest lived in the title, + in the `description` and in no call the model was ever shown. Every + example in every generated file MUST carry the forest argument in the + shape the tool takes; the file states once, concretely, what that + argument is, and never writes a call without it afterwards. + +- **The skill is for the forests it names, and `forests()` is the + authority (v0.60).** The console offers the forests the key reaches, + as a selection, with the open one already chosen so that a person + configuring an agent for two forests hands it one skill instead of + choosing which half of its memory to install. The rule that keeps the + selection from becoming a lie is that **a baked id is intent, never + authority**: + 1. `forests()` MUST be taught as the first call. It is the only place + capabilities, roots, `locked` and `station` are true *at the moment + of use*; everything baked was true when the file was generated. + 2. A named forest whose grant has since lapsed answers `E_NOT_FOUND` + like anything else outside a key, and the skill MUST say so: that is + the ordinary shape of a narrowed key, not a defect to report or work + around (J.3's byte-identical refusal, read from the agent's side). + 3. **More than one forest MUST carry a routing table** one row per + forest: its id, its largest roots, and the capabilities the key held + there when the file was made built from `coverage` (C.17) at + generation time. Without it a model either sweeps every forest at N + times the cost or picks one in silence, and picking in silence is + the failure C.17 exists to prevent, one layer out. + 4. **One forest MUST NOT carry a baked table.** Inside a single forest + `coverage()` is one live call, and a copy of a forest's shape can + only drift from it the same reason this console generates its own + text from the deployment it documents rather than shipping a + written-down copy. + +**F.52 (acceptance).** A principal holding `read` opens the Skills +console and receives a skill whose text contains the Station's own +origin and the open forest's id, and whose install steps require only a +paired key. An admin gate on the console, or a new server endpoint +minted for the artifact, is a failure. + +- **The selection is in the address, and the skill names the way back + (v0.60).** The blocks, the forests and the assembly are this console's + selection, so they ride the query like every other console's (J.5.8) — + and here that rule earns more than consistency: the address IS the + regeneration. The generated core names it, so an agent that has just + discovered its own staleness hands its operator the one link that + rebuilds *this* skill — same forests, same blocks, same assembly — + against the Station as it now is, instead of "re-download it from the + console" and a selection nobody wrote down. Visiting it spends no model + call and commits nothing, which is what makes it safe to put in a file + an agent reads. + + **And the agent MUST NOT install it.** Not because it could not — it + holds file tools, and the text would be one tool call away if the + surface ever served one — but because a skill outlives the connection + that delivered it. The MCP instructions and every tool description + reach a model only while it is connected; a file under + `~/.claude/skills/` keeps instructing it in every later session, + including sessions this Station is not in. What persists past the + connection is a person's decision. So the Station still gains no + endpoint for the artifact (v0.49's rule, unchanged) and the surface + gains no `skill()` tool — which would additionally charge every + connected client its description in every session, forever, to save a + paste that happens once a release. The staleness check is a validator + and the link is the repair; neither is an install. + +- **The skill is generated FOR a deployment, so it may not teach a call + that deployment refuses (v0.61).** This console exists precisely so + documentation cannot drift from the Station it describes, and the v0.60 + file drifted anyway in three places, each found by an agent following + it: the saving example passed `dest: "decisions/_index"`, the canonical + branch form, which the server refused (G.3 fixes the server; the example + is fixed too, because two halves of one product disagreeing about a + spelling is the defect, not either half); the same block never mentioned + `source_url`, so every document an agent saved arrived without an + `origin` and the gap was then reported as a missing feature; and the + answer block taught `min_evidence: 2` without J.10.10 rule 8's pairing, + which turns a floor into a universal refuser as soon as `min_score` is + set. A generated file MUST be checkable against the surface it names, + and the check runs in the suite (`check-skill.mjs`). +- **The skill is named for what it addresses (v0.61).** `name:` was a + constant, so a person generating one skill per forest as the console + invites installed two files claiming the same name. The name derives + from the selected forests, deterministically, so two selections that + differ produce names that differ and the same selection reproduces its + own byte for byte (J.5.8). +- Acceptance: **F.52**, **F.111 – F.116**, **F.127**. + +#### J.5.13 The page declares what it may load (normative, v0.50) + +Studio renders two kinds of untrusted text as markdown: what a model +wrote, and the body of an ingested document. Both are untrusted by the +product's own premise ingest is how outside material gets in, and J.15's +Clipper exists to capture third-party pages. + +That matters here because of *where* the rendering happens. Whatever such +text can talk the page into fetching, the page fetches from the reader's +own authenticated browser, and the Station is not on that path at all: the +request never arrives, so no host-side check can be the control. The +control is telling the browser the rules before it reads anything. + +The Station MUST therefore serve, with every response: + +| Header | Requirement | +|---|---| +| `Content-Security-Policy` | `default-src 'self'`; `img-src` limited to same-origin, `data:` and `blob:`; `connect-src 'self'`; `frame-ancestors 'none'`; `object-src 'none'`; `base-uri 'none'` | +| `X-Content-Type-Options` | `nosniff` — a JSON envelope is filled with forest content, and one sniffed as HTML is a scripting surface | +| `Referrer-Policy` | `no-referrer` — a console address names the forest and the node being read, which belongs to the reader | +| `X-Frame-Options` | `DENY`, for browsers that do not implement `frame-ancestors` | + +`img-src` is the load-bearing line, and it costs nothing legitimate: a +forest image is fetched through J.14 with the viewer's own credential and +rendered from a blob, because an `<img src>` cannot carry the bearer +credential in the first place (J.10.9). An off-origin image address in +rendered output is therefore never something the console asked for. + +Two implementation constraints are normative because getting them wrong is +silent: + +1. **Inline script is allowed by hash, and the hash is computed from the + built shell**, not written down beside it. The console applies the + saved theme inline before first paint (J.5.3); a digest maintained by + hand goes stale on the next edit of that script, and the failure is a + page that still loads with the script simply not running. +2. **Styles keep `'unsafe-inline'`** — style attributes and the diagram + renderer both require it — **and script MUST NOT.** No `'unsafe-eval'` + either; the console's bundle needs neither. + +The console's renderer SHOULD additionally drop image sources it did not +itself resolve. That is a second layer, not the control: it protects a +deployment serving the bundle from something that does not send these +headers. + +**F.54 (acceptance).** (a) A statement reaching a table outside a grant's +allow-list is refused with `E_QUERY_FORBIDDEN`/403 through `query` and +through `tend` alike, in whatever syntax it is written, and the refusal +does not name the table; a permitted statement is unaffected. (b) A +principal administering one forest of several can list providers and +cannot edit or test one; a principal administering every forest can. +(c) Changing a provider's endpoint without supplying its key is refused, +and the stored provider is unchanged. (d) Issuing a key, granting, +setting a password, changing a provider and signing in each leave an audit +row, and no row contains a secret. (e) The console's shell is served with +the headers above, and the policy admits the shell's own inline script. + +#### J.5.14 The reading console (v0.56) + +Every console until now was an instrument: Explore operates on a node, +Ask interrogates the forest, Data edits datasets. None of them *shows a +document to a person* — Explore renders the body as raw markdown in a +code block, through `pick`, which means a document over the C.4 ceiling +renders as nothing at all, in the product's own console. The consumer +team's number-one reason for keeping local `.md` files was literal: the +operator asked for "an analysis in `.md` to send to the dev team", +because a forest document had no form a person could be handed. + +`/f/{forest}/read` (selection in `?node=`, J.5.8 as ever) is the page a +document is READ on: + +1. **The body arrives whole, through J.14.1's export** — never through + `pick`. The C.4 ceiling protects a model's context window; a person + scrolling is not that, and rendering a truncation the surface imposed + on itself would misreport the document to its own author. +2. **Rendered, not quoted.** The body renders through the same markdown + pipeline as model output (J.5.13 CSP applies; it is ingested, + untrusted text) with `media:` resolution through the viewer's own + credential (J.10.9) — an out-of-scope image renders as its caption + here exactly as it does in an answer. +3. **The outline is the sidebar.** C.4's section list, as anchors. A + 28-section report is navigable, which is what the outline was always + for. +4. **The raw markdown is one click away** — copy, and download via + J.14.1 (the export route is the download; the console adds no second + path). +5. **Reachable from where the document is found:** Explore's node panel + links to the reading page, and the reading page links back. A share + link (J.17) is minted HERE, because "hand this to somebody" is a + reading-page act, not an operating-console act. + +#### J.5.15 The path an answer took (v0.65) + +J.10.4 gave the Ask console the material an answer was built from, and the +console lists it. A list is the right form for checking a citation and the +wrong form for one question a demonstration always gets asked: *where in +the forest did that come from?* The forest is a graph, J.5.4 draws it, and +until now nothing connected the two — the console that knew which nodes +were read could not show where they were, and the console that showed where +everything was did not know which had been read. + +The Ask console MAY draw a second panel: the same material, on the map it +came out of. It is presentation over data already returned, and every rule +below exists to keep it that. + +1. **It costs the answer nothing, and it is its own switch.** The map is + one J.11 `graph` read and the retrieval preview is one `harvest`, both + on the reader pool (J.6.2), both concurrent with the answer, neither on + its critical path. The switch MUST be separate from the J.10.5 walk + switch. They are not the same cost — a walk is one model call per hop + and the drawing is none — and a single control over both would teach an + operator that the picture is what made the answer slow. +2. **The preview is the same sweep, not a similar one.** The console MAY + run the retrieval itself, before the answer returns, and when it does it + MUST send the question, `k` and entry ranker the answer is being asked + with. It MUST NOT deposit heat: pheromone is the whisper's, at the close + of an answer (J.10.7). When the answer lands, its own bundle replaces + the preview — they are the same sweep, but only one of them is what was + answered from. +3. **Every stage is read off returned material.** `found_by` says which + retriever reached a node (C.6c); `content` says what was handed to the + model. A stage MUST NOT be inferred, filled in, or narrated. A stage + with nothing in it is shown as empty, which is a fact, not a placeholder + for something still coming. +4. **`cited` is a walk's stage and not a sweep's.** On a walk the reply + names `answer_nodes` and the host keeps only those it opened (J.10.5) — + a choice, and drawable as one. On a sweep `evidence` is every id in the + bundle, because the reply is prose and cites nothing; presenting that as + "cited" would draw a selection that did not occur, so on a sweep the + stage MUST NOT exist. +5. **The trail is the forest's own structure.** The line from the root to + a hit follows `parent`, which J.11 has already filtered to what this + principal may see: a chain that leaves the scope stops, and never draws + a segment to a node the caller cannot read. Shared ancestors are drawn + once, at the earliest stage that needed them. +6. **A trail is not a shortcut.** It carries its own colour token. A + `discovered-shortcut` is a fact the forest holds and a trail is what one + question did to it, and two different facts MUST NOT arrive in one + colour. Proposals (`confidence < 1`) stay dashed, as in J.5.4. +7. **The panel states its own speed.** The reveal is seconds and the + retrieval it depicts is milliseconds, so the real figure MUST be shown + beside it, read off the Part D trace (J.10.4) and never a second + stopwatch. This console's subject is how little retrieval costs; an + animation that let an audience read its own duration as the measurement + would misreport the product in the one place it is being judged. +8. **Presentation stays out of the address** (J.5.8). The switch is a + browser preference like the reply size (J.10.8); the address carries the + selection, not the taste. + +Live hops — a walk's steps arriving one at a time rather than together at +the end — are NOT this section. That needs the host to push events, which +is a contract change and not a console one. + +### J.6 Deployment + +A Station deployment MUST be reducible to one container image plus two +volumes the forest registry and the host registry with no external +database required. Snapshots (Part I) remain the backup unit; the host +registry is backed up alongside them. + +**The first minute is a log line (normative, v0.28).** A Station's startup +output MUST reach the container log as it is written unbuffered, or +flushed at emission. Everything J.2.5 specifies is delivered through this +channel and through no other, so a default block buffer does not degrade the +feature, it deletes it: the operator reads the log at the one moment it is +empty, concludes the product has nothing to say, and goes looking for a +password that was never printed. + +#### J.6.1 Boot opens the forests + +A forest is opened on its first touch, which means the first caller pays +for it: measured on a fresh Station, that request costs roughly ten +milliseconds of host against a third of one from the second call on, and +none of the difference is the corpus. It is SQLite waking up. On a console +whose whole subject is how little retrieval costs, the person most likely +to be shown that number is the one evaluating the product. + +A Station MUST therefore open and warm (C.6.1) every servable forest at +boot, and it MUST be possible to turn that off. The cost is what makes the +switch necessary: opening holds a few megabytes of resident memory per +forest, which is fine for a registry of ten and is not for a registry of +five hundred. Default on, because the deployment that never thinks about it +is the one that should be fast. + +**Best effort, never fatal.** A forest that will not open a writer lock +left behind, a catalog that needs rebuilding MUST be skipped and the +Station MUST start. Refusing to serve thirty-nine forests because the +fortieth was busy is not a performance feature. + +**Warming is not a request.** It runs through `warm()` and therefore leaves +no trace event, no heat and no audit record. A boot that logged forty reads +nobody made would corrupt the two things this product asks to be trusted +on: the pheromone and the audit trail. + +**F.33 (acceptance).** On a Station started with warming on, every servable +forest MUST be open before the first request arrives, and the pheromone and +the audit log MUST be exactly as they were before boot. A forest holding a +foreign writer lock MUST leave the Station running and serving the others. +With warming off, opening MUST go back to happening on first touch. Covered +by tests. + +**The working directory is not a location (normative, v0.26).** A Station +process MUST NOT run with its own installation tree as its working +directory. The rules of G.3 and J.8.2 are what *prevent* an unnamed source +from being walked; this one decides what an unnamed source would have +reached had they failed, and the answer should be an empty directory +rather than the product's source code. Ingestable material belongs on its +own volume, mounted for that purpose and named in `MONKEYLLM_INGEST_ROOTS` +— never on the image. + +#### J.6.2 Reads scale (v0.57) + +The first production deployment under real agent load locked up, and the +operators' report used the right word: *frozen*. Not when a model +answered — when an agent **planted**. One thread per forest (J.9) meant +every read queued behind every write, and a write is a git ceremony +measured at 69× a `locate` on a fast local disk, before the container's +overlay filesystem multiplies it. C.9 has said "one writer, N readers: +reads never block" since Phase 0. The engine honours it — WAL readers +never wait on the writer — and the host was the one violating it, by +making N readers share the writer's thread. + +Each open forest now has a **reader pool** beside its writer lane: + +1. **K read-only engine instances** (`writable=False` — no lock, C.9), + each confined to its own thread exactly as the writer is to its lane. + SQLite connections still never cross threads; there are simply more + threads, each with its own connections, tracer and embedder seam. +2. **Reads run on the pool.** Every read primitive, the composites' + retrieval, and the map projections (J.11) dispatch to a reader lane + (round-robin). Writes (`plant`, `graft`, `tend`, `prune`), ingest + steps, and admin repairs (reindex, canopy build, restore) keep the + writer lane, unchanged. +3. **Freshness is WAL's promise, stated honestly:** a read sees every + write whose commit finished before the read's transaction began — + C.9's "up to 1 write behind", now observable. A caller that needs + read-your-write reads its write's own *response*, which is where the + engine already answers what changed. +4. **Pheromone is deposited exactly as before.** A reader Vine's reads + are reads; heat, traces and audit rows are identical in kind to the + single-lane ones. (This is why C.9 gains `busy_timeout`: N readers + are N occasional writers to the trails store.) +5. **Sized by `MONKEYLLM_STATION_READERS`** — default 4, `0` restores + the single-lane behaviour byte-identically (the pool is an + arrangement of threads, never a contract change). Readers open + lazily, on their own lane, on first use: boot warming (J.6.1) warms + the writer; multiplying boot cost by K would move the cold-start + problem, not solve it. +6. **The lanes are still the only door.** `app.state.pool` remains + reachable only through the lane accessors; a reader vine belongs to + its lane exactly as the writer belongs to J.9's. +7. **A held writer lock stops writes, not reads.** v0.55's total outage + — a live foreign holder refusing every primitive — narrows to its + true size: readers take no lock, so reads and answers keep serving + while writes answer `E_LOCKED` naming the holder (C.9's own model — + the flock is writer-vs-writer, and WAL never made a reader wait). + Likewise, with warming off a READ no longer opens the writer: the + pool opens on the first write or admin touch, and `GET /v1/forests`' + `active` describes the writer, which is the thing its `locked` probe + was always about. With the pool disabled (`0`), the single lane's + old refusals return, byte-identical. + +What this buys, stated as the incident that demanded it: during a batch +ingest whose curation model call holds the writer lane for seconds per +document, and during any agent's plant, **every read of that forest +proceeds** — a hundred agents consulting a forest wait on nothing but +their own reads. + +### J.7 Forest lifecycle + +A deployment that can only serve forests placed on its volume by hand is +not self-service. `POST /v1/admin/forests {id, title, summary?}` creates +one, and creation is exactly A.5 `init_forest` the same skeleton, +dialect and embedded git a local `vine init` produces. The Station adds no +second way to make a forest. + +- The `id` is a directory name inside the registry root and MUST be + validated **as a name, before it is a path**: a bounded character set, + no separators, no relative segments. Rejecting after joining is too + late. +- Creating requires the `admin` capability on some existing forest **or the + owner bit (J.2.4)** the authority to govern a forest is the authority + to start another, and the owner is the authority that precedes every + forest. A bootstrapped deployment therefore reaches its second forest + through the API, an empty one reaches its **first**, and an unprivileged + principal never reaches either. Requiring an existing forest of everyone + was the v0.24 reading, and on an empty registry it locked the owner out + of the only action that could unlock it. +- The creator MUST be granted the new forest with full capabilities. + Creating a forest nobody can open would be a silent failure with a + success status. +- An existing id MUST be refused rather than adopted: quietly returning + someone else's forest because the name matched is an access-control bug + wearing a convenience feature. + +Deletion is deliberately absent. A forest is content with history; the +operator removes it from the volume, and Part I snapshots are how it comes +back. + +### J.8 Ingest surface + +Part G already turns directories into forest. J.8 exposes it, because the +operator who most needs ingest is the one who has a browser and no shell. +`POST /v1/forests/{forest}/ingest` takes one of four modes: + +| Mode | Body | Does | +|---|---|---| +| `adopt` | `{path, dest?}` | mirrors a directory the **Station host** can read | +| `sync` | `{path?, dest?}` | G.8 hash-diff refresh of a previous adopt | +| `upload` | `{files: [{name, text}], dest?}` | stages the payload under the forest root, then adopts it | +| `compose` | `{title, text, dest?}` | stages one authored markdown document, then adopts it | + +The three batch modes `adopt`, `sync`, `upload` validate synchronously +and answer **202 with a job** (J.9); `compose` is one document and a review +conversation (J.8.1) and answers in place. + +Common rules: + +- Requires the `ingest` capability (J.3's Gardener row), and `dest` MUST be + in scope. Ingest is a write; a principal who may not read a subtree MUST + NOT be able to write into it, or scope becomes a one-way mirror. +- A principal whose scope is not the whole forest MUST supply `dest`. + Defaulting to the root would let a narrowly scoped principal write where + it cannot read. +- **Naming a host path is a privileged act** and MUST additionally require + `admin` on the forest, **and** the path MUST pass J.8.2. `path` is read + with the Station's authority, not the caller's, so `ingest` alone would + turn a content capability into arbitrary read access to the host + filesystem. The exception is a *targeted* `sync` of a path relative to + the source root a prior adopt already recorded: that directory was + vetted when it was adopted, and G.8's containment keeps the targeted + path inside it. +- **A refresh MUST name what it will re-read.** `sync` without a source is + the one call whose reach is invisible at the point of asking: it comes + from configuration, not from the request. A console MUST therefore show + the recorded source root beside the control, and MUST NOT offer the + control at all for a forest that has none. A button whose scope the + operator cannot see is not consent, and this is the shape the v0.25 + console shipped in. +- `upload` MUST validate each entry's `name` as a relative path with no + escape, and stage under a directory inside the forest that is not itself + forest content. Uploaded bytes are a source, not a node: they become + nodes only through the same converters, curation and commits as `adopt`. +#### J.8.3 An upload is a courier, not a mirror (v0.61) + +An upload was two code paths — `adopt` the first time, a refresh of the +staging **directory** every time after — and both halves were wrong in the +same way: they treated the staging area as a *source tree this forest +mirrors*. The consequences were found in the field, and they compound. + +`adopt` records its source as the forest's `source_root`. So **one upload +repointed a forest that really did mirror `/data/handbook` at the upload +staging area**: the recorded root is what a refresh re-reads and what a +console MUST show beside the refresh control (J.8's own rule above), so +the operator's Sync now described the courier and the folder they had +adopted was forgotten. + +And because the refresh walked the whole directory, every file any previous +batch had ever uploaded was re-examined on every upload. A file whose node +had since been **pruned** no longer had a passport to diff against: it was +not a refresh candidate, it was a new document, and it was **planted +again** — a fresh timestamp, a fresh curation, an edge into the material of +the batch that resurrected it. The remover had been told `pruned: true`, in +a previous session, and the forest contradicted it a day later without an +act by anyone. In a memory that is worse than a write that fails: a failed +write is retried, a resurrected one reintroduces material somebody decided +to withdraw — a wrong fact, a private one — and the removal is what looked +successful. + +Underneath both is the same unstated assumption, and stating it is the fix: +**staged bytes are a courier.** They are how a document reaches a Station +that its author cannot otherwise write to; they are not a folder anybody +mirrors, and they are not where anything lives. + +1. **One path, first upload or hundredth.** The pass is scoped to the + entries of THAT request: an entry with no passport is planted, an entry + whose name matches a passport's recorded source path refreshes that node + (never a second one), and nothing else in the directory is touched, + reported or looked at. A call may only testify about what it walked, so + `stale` covers the named set alone. +2. **An upload records no source root and no destination.** `source_root` + is what a refresh re-reads; a courier is not that. A forest whose only + ingest was uploads therefore has none, and a console correctly does not + offer the refresh control at all. +3. **Bytes that became a node are removed as they land**, and the report + names them (`consumed`). The node is the record; a copy left in the + courier is what a later pass reads as a document nobody sent. Bytes that + did NOT become a node — a conversion error, an unsupported format — are + kept: nothing landed, and the file is the only evidence of what was + sent. The engine never decides this on its own: consumability is + declared by the caller that staged the bytes, keyword-only and + unreachable from the wire (G.2.5's construction), because the general + rule stands — **this pipeline deletes no source it did not stage** (G.3), + and a mirrored host directory is never touched by any of it. +4. **A staged source never backs a `reference` body** (G.7). A `reference` + body is re-read from its source at every `pick`, and this source is one + the forest itself may discard; the policy degrades to `cached`, exactly + as it already does for a converted body that has nowhere else to live. +5. **What remains is countable and clearable** (J.13.7). Failures, + cancelled batches and — on a forest ingested by an older Station — + documents whose nodes were later pruned. Invisible accumulation is what + made the resurrection possible, so the answer is not a shell. +6. A pruned node's staged file goes with it (C.14 rule 2). Under rules 1–3 + there is usually nothing left to take; the rule exists for every forest + ingested before this version, which is all of them. +- An upload entry MAY carry `source_url` (v0.48): where these bytes came + from, when the origin is an address rather than a directory a clipped + page, a saved image. **It is also the whole of an uploaded document's + `origin` (v0.61, stating G.2.7 rule 1 from this side).** An adopted file + has a path and the Gardener writes it; an uploaded one has a staging + path, which is a fact about plumbing and is deliberately not recorded, + so an upload that declares nothing gets no `origin` and `coverage` + counts it in `without_origin` correctly. This was read from outside as + the feature missing, twice, because nothing on any surface said the + field existed: a console offering upload MUST offer somewhere to state + it, and a generated skill teaching upload MUST name it. `http`/`https` only, at most 2048 characters; + anything else is `E_SCHEMA`. The host hands it to the Gardener as a + **provenance map** (source path → URL; public plugin API v1, additive + like `extra_converters`), and the Gardener appends a final + `Source: <url>` line to the converted body the same line a composed + clip already carries **on adopt and on every refresh alike**, so a + re-uploaded screenshot keeps its address (a refresh rebuilds the body + from the converter, and provenance recorded only at curation would + vanish with the first `sync`; curation keeps its G.3 rule of never + running on refreshes). Provenance is prose, not a new frontmatter + field: the origin survives where a person can follow it and `sniff` + can find it. It applies to every conversion of that entry, including + the G.5.1 stub and describer bodies, which is what lets a screenshot's + node say what page it is a screenshot **of**. +- The result is the Part G `IngestReport` created, updated, unchanged, + unsupported, errors unabridged. A partially successful ingest that + reports success is worse than one that fails. For the batch modes the + report arrives on the finished job (J.9); for `compose` it is the + response body, as before. +- Curation uses the forest's `ingest` binding (J.10) when one exists and + the deterministic G.4 derivation when it does not. Ingest MUST NOT + require a model: a forest with no binding still ingests, with derived + summaries. +- **The report distinguishes a rejection from nothing to do (v0.45).** + Curation statistics carry `skipped`: drafts the Curator returned + untouched because there was nothing for a model to read an + `unchanged` file it never saw, a draft with no body. A report where a + model is **bound** and carries no evidence that it was ever asked + anything no summary written, no rollup, no retry, no fallback, no + transport error describes a batch that needed no model, and a console + MUST say so rather than reporting a rejection. (A genuine rejection + always leaves a fallback or a retry behind; that is what separates the + two, and `skipped` says which drafts the Curator deliberately passed + over.) + The two have opposite fixes: one is a different model, prompt or token + budget, and the other is nothing at all. Sending an operator to tune a + model that was never asked anything is worse than saying nothing, + because it looks like an answer. + +- `compose` is `upload` with one authored document and a title instead of a + filename. It exists because the alternative a console that plants a node + directly would be a second write path with its own idea of what a + passport is. Authored prose MUST go through the same converters, the same + curation (G.4) and the same commits as an adopted file, and the + edge proposals it receives MUST be the closed-candidate ones of G.4.2.1. + A console MUST NOT let `compose` name a host path. + +#### J.8.1 Composing with review + +Curation is the one ingest step whose output a person may want to see before +it is true. A summary is the scent every later hop navigates by (A.4) and a +proposal is what the Ranger will spend the next month promoting or pruning +(H.2); both are cheap to correct in a draft and expensive to correct in a +node that already exists, has a commit, and may already have been read. + +`compose` therefore takes two calls: + +| Call | Body | Does | +|---|---|---| +| stage | `{mode: "compose", title, text, dest?, stage: true}` | converts, curates, proposes and stops at the plant | +| accept | `{mode: "compose", title, text, dest?, draft: {…}}` | runs the same pipeline with the approved passport pinned | + +Normative rules: + +- **The staging call MUST NOT write forest content.** No node is planted, no + frontmatter grafted, no commit produced, no branch created, no body + cached, no source archived, and the Gardener's own configuration is + unchanged. Writing the authored text into the staging area is not an + exception to this: a staged byte is a source, and sources become nodes + only by being adopted. +- **A dry run MUST be a property of the Gardener, not of a call.** A + Gardener constructed to preview MUST be unable to write by any path it + offers. A flag passed per call is forgotten by the next call that is + added; an object that cannot write is not. +- **The staging call MUST report what the accepting call would produce** — + the node id, its parent, type, summary, tags and proposed links, each link + named by the title of what it points at. A review that shows an id without + saying what it is is not a review. +- **Accepting MUST walk the same pipeline as an adopted file.** The approved + passport enters as an `on_curate` hook (G.4.3), leaving the converter, the + content policy (G.7), the plant and the commit exactly as they are for + every other source. A second write path that plants from a draft directly + would be a second definition of what a passport is, and nothing would keep + the two honest. +- **Accepting MUST NOT re-curate through the model.** It would answer + differently, and what shipped would then not be what was approved. The + planted summary MUST be the approved one. (Branch rollup, G.4.4, is a + different write about a different node and is unaffected.) +- **A returned draft is a client payload and MUST be re-validated**, exactly + as if the reviewer had authored every field: the summary re-clipped to the + A.4 budget, tags re-cleaned and capped at the G.4 maximum, and each link + re-checked against G.4.2.1 `rel: related-to` only, target existing and + in scope, never a branch, never the node itself or its parent, capped at + the proposal maximum. Trusting the round-trip would make the hallucination + guard a client-side one, which is to say none. +- **A kept proposal stays at confidence 0.3.** A reviewer glancing at a link + is not evidence that it is used, and 0.3 is precisely the population the + Ranger manages (H.2). Promotion is earned by traffic; a human-authored + certain link is `graft`'s job, not ingest's. +- **Review is compose-only.** `adopt`, `sync` and `upload` are batches whose + drafts have no single decision to make; `stage` on those modes MUST be + refused rather than silently ignored. +- **Neither call may be skipped by the other's arguments.** A body carrying + both `stage` and `draft` MUST be refused: it states two intentions and the + host must not pick one. +- The two calls are otherwise indistinguishable to the policy layer: both + require `ingest`, both scope-check `dest`, and neither may name a host + path. + +**F.27 (acceptance).** A staging call over a forest leaves `git rev-parse +HEAD` unchanged, adds no node to the catalog and writes no body cache, while +returning a draft whose id equals the one the accepting call plants; an +accepted draft whose links were edited to name a branch, an out-of-scope +node, a non-existent node, itself, its parent, a rel other than `related-to` +or a fourth proposal MUST plant with those links dropped, and every surviving +link at confidence 0.3; and the planted node's summary MUST be the approved +text, not a re-curated one. + +*Attribution boundary (informative):* J.4 stamps the acting principal by +amending the commit a write produced. An ingest produces many one per +node and amending would rewrite only the last while claiming the batch. +The Station therefore records the resulting commit **range** in the audit +log and returns it, rather than rewriting history it did not author. + +#### J.8.2 Ingest roots (v0.26) + +G.3 bounds what a walk may *reach* once a directory is named. J.8.2 bounds +which directories a **host** will open at all, because the two questions +have different answers: a person at a shell already holds the filesystem, +and a request arriving over HTTP does not. + +A Station MUST hold a list of **ingest roots** absolute directories it is +willing to read on a caller's behalf configured out of band +(`MONKEYLLM_INGEST_ROOTS`, OS path-separated). Every host path a request +names, in any mode, MUST resolve to a location at or underneath one of +them, compared **after** resolution so `..` and symlinks are collapsed +first. + +- **The default is empty, and empty means none.** An unconfigured Station + MUST refuse every host path and still serve `upload` and `compose`, + which carry their own bytes and stage inside the forest. This is the + normative default and not merely a recommended one: a deployment whose + operator has never read this document is the deployment that most needs + the boundary, and a control that must be switched on is a control that + is off wherever nobody knew to look. The refusal MUST name the setting, + because an operator who *did* mean to mirror a host folder learns the + one thing they need from the error itself. +- **`admin` is not a bypass.** The capability answers *who may ask*; the + roots answer *what exists to be asked for*. Collapsing the two puts the + host's whole filesystem one grant away, and in a self-hosted deployment + the operator holds that grant by construction which is exactly the + reader who is not protected by a rule addressed to attackers. +- **The registry root is never an ingest root**, listed or not, nor is any + ancestor of it. G.3 already prunes a forest met inside a walk; this rule + refuses the walk. One forest reading the volume that holds every forest + is the tenant boundary failing in the only direction that counts, and a + configuration mistake MUST NOT be able to express it. +- Roots that do not exist at boot are a **startup** error, not a per-call + surprise: an operator who mistyped a mount learns it from the log at + boot rather than from an ingest that quietly refuses months later. +- The list bounds host paths only. Staged uploads live under the forest's + own `_derived/` (J.8) and are generated, not named by the caller, so + they are outside this rule as is a targeted `sync` path, which is + relative to an already-vetted source root and contained by G.8. + +**F.29 (acceptance).** With `MONKEYLLM_INGEST_ROOTS` unset, an `adopt` +naming any host path is refused for an `admin` principal and for the +owner, with an error naming the setting, while `upload` and `compose` +succeed unchanged. With a root configured, a path inside it succeeds; a +path outside it, a path that resolves outside it through `..` or a +symlink, and the registry root itself are each refused. A forest that has +never adopted refuses a bare `sync` without reading any directory, and the +`_meta/gardener.yaml` of that forest still records no `source_root` +afterwards. A `sync` whose targeted path escapes the recorded source root +is refused. A `pick` of a `reference` node whose `source_path` points +outside the source root fails `E_NOT_FOUND` without disclosing the file's +contents. An `adopt` of a directory containing another forest plants no +node from it. All covered by tests. + +### J.9 Ingest jobs (v0.32) + +A batch ingest is minutes of work a converter pass, a model round trip +and a commit per document (Part G) and v0.31 ran all of it inside the +HTTP request that asked for it. Every gateway on the path has a patience +shorter than a folder, so the operator's answer was a timeout over a batch +that was still running: unwatchable, uncancellable, and indistinguishable +from a crash. J.9 gives the work an identity instead of a connection. + +#### The job + +`POST /v1/forests/{forest}/ingest` in a batch mode `adopt`, `sync`, +`upload` answers **202 Accepted**: + +```json +{"job": {"id": "ing-8f3ka2", "forest": "handbook", "mode": "adopt", + "state": "running", "done": 0, "total": 41, "current": null, + "started": "2026-08-11T14:02:11Z"}} +``` + +- **`mode` is the caller's own word, on the job and on the report + (v0.61).** It used to be rewritten mid-call: an upload whose staging + root was already recorded became `mode: "sync"`, the mode that mirrors + a host directory, on both. A caller that sent `upload` and read `sync` + beside an `updated` list naming nodes it never mentioned had been told, + by the only surface it has, that something it did not ask for had + happened — in a product where every read declares what it did, the + write report was the one place the answer contradicted the call. The + first fix drafted for this added a second field to name the mechanism, + which is a label for a mechanism that should not have existed: J.8's + upload path is now one path, so there is one mode and it is the + request's. +- **Refusal is still synchronous.** Capability, scope, `dest`, the ingest + roots of J.8.2 and the staging of uploaded bytes are all checked before + the 202, with exactly the v0.31 errors. A 202 for a request that was + always going to fail validation teaches the caller to distrust 202; only + work that has been *accepted* becomes a job. +- The job then advances one G.10 step at a time. `state` is one of + `running`, `done`, `error`, `cancelled`; `done`/`total` count source + files; `current` names the file being worked. A finished job carries the + unabridged `IngestReport` as `report`, the commit range as + `commit_before`/`commit` (the J.8 attribution rule unchanged), and + `finished`. A failed one carries the spec error envelope as `error`, + beside the report of what it did complete. +- **One batch per forest at a time.** A batch POST while one runs is + refused `E_LOCKED` **naming the running job**, so the console can offer + to show it instead. Queueing invisible work is how a forest gets a + surprise second ingest an hour after somebody gave up and closed the + tab. +- `wait: true` on the POST answers only when the job is finished, with the + job in its final state for callers whose own patience is not a + gateway's. The **MCP `ingest` tool waits by default**: an agent's poll + loop would be context spent on plumbing, and its call is already the + unit it wants an answer to. +- The audit row (J.4) is written when the job finishes, carrying the + commit range and the job id the ingest is the fact being recorded, + and it has not happened until it has. + +#### Reading a job + +`GET /v1/forests/{forest}/jobs` lists recent jobs, newest first, bounded, +`truncated: true` when the bound cut (the C.6 rule); `GET +/v1/forests/{forest}/jobs/{id}` returns one. Both require the `ingest` +capability the authority to watch the work is the authority that could +have asked for it. + +- **Reading a job MUST NOT touch the forest.** A job is a record in the + host's memory; a poll that queued behind the work it reports would be + the v0.31 deadlock again, one level up. No forest thread, no trace + event, no pheromone, no audit row: watching is free, in every ledger. +- **Job records are process state, bounded and honest about it.** They are + never written into a forest progress is not curated content, the same + boundary that keeps model runs in the browser (J.5.9). A restart + therefore forgets the *records*; it cannot forget the *work*, because + the work is commits. A job id the host no longer knows answers + `E_NOT_FOUND` absence of the record is not failure of the work, and + the forest's own account is the audit log and `git log`. +- **Recovery is `sync`, not archaeology.** G.10 records the source root + before the first step, every step is committed, and the G.8 hash diff + is idempotent so a batch interrupted by a crash, a cancel or a + restart is *finished* by running `sync`, which re-reads nothing that + already landed and plants nothing twice. + +#### Cancelling + +`POST /v1/forests/{forest}/jobs/{id}/cancel` asks the job to stop. It +takes effect at the next step boundary a document is whole or absent, +never half and the job reports `cancelled`, its report covering the +steps it took. The steps stand: they are commits, and un-planting nodes +is no primitive's job (C.7). A cancelled batch is completed later by +`sync`, or left as it is. + +#### Isolation and fairness + +Two rules the jobs machinery exists to serve, stated as contract because +they are observable and a future implementation must preserve them: + +- **Isolation: a call on one forest MUST NOT wait on another forest's + work.** The engine's thread-affinity discipline (C.6.1, J.6.1) was + always per forest; serialising *across* forests was a host + simplification, acknowledged as such, and v0.32 retires it. One lane + per forest, opened lazily with the forest and closed with it a + registry too large to hold every forest open (J.6.1) is equally too + large to hold every lane, and the same switch governs both. +- **Fairness: between two steps of a running batch, calls to the same + forest MUST get their turn.** The batch yields at every document + (G.10), so a `locate` on a forest mid-ingest is answered within one + document's work, not one folder's. The model round trip inside a step + bounds the wait; the folder never does. +- **The batch owns the writer lane, and only that (v0.57).** With J.6.2, + "calls to the same forest" splits: *reads* never enter the writer lane + at all — during a step, curation model call included, every read of + the forest proceeds on the reader pool. What queues between steps is + the other *writes*, and that cost is correct: one batch per forest at + a time was already the rule, and a plant that interleaves mid-batch + waits one document, exactly as fairness always promised. Splitting the + curation call out of the step is deliberately not done — G.10.1 stands + (a step is a whole document), and the starvation the incident measured + was the readers', which the pool ends. + +#### J.9.1 The console follows the job + +- **The address carries the job**: the ingest console puts the running + job's id in the query (`?job=…`), replacing rather than pushing + (J.5.8). A reload restores the progress view by reading the job a + record, never a call: no model spend, no commit, no re-POST of the + batch. Leaving the console open is watching; leaving it entirely is + safe, because the job does not need its audience. +- **Progress is shown from the job record** `done`/`total`, the current + file, errors so far and the console MUST NOT block navigation while a + batch runs. Freeing the operator to look elsewhere is the reason jobs + exist; a modal progress screen would rebuild the v0.31 experience out + of politeness. +- **A dead job id is said, not dressed up**: an address naming a job the + host has forgotten (restart, eviction) says so and points at the audit + log, rather than inventing a state or silently clearing the query. The + J.5.8 rule about forests that cannot be shown, one size smaller. +- **Returning rediscovers the running job (v0.36).** The query belongs to + the console it is on (J.5.8), so moving to another console does not + drag `?job=` along and coming back must not greet the operator with + an empty form while their batch runs on. Entering the ingest console + with no `?job=` MUST read the job list a record, never a call, free + in every ledger and, finding one `running`, put its id in the + address, replacing rather than pushing: a correction, not a place the + operator went. A finished job is not adopted; its record is on the + board and its story in the audit log. + +#### J.9.2 The next batch waits in the console, never in the host (v0.36) + +The host refuses to queue (J.9) because work waiting in a server after +its audience left becomes a surprise ingest an hour later. That reasoning +names the danger precisely: *invisible* work that *outlives* its asker. +Work that is on screen and dies with the tab is neither and the +operator standing in front of a running batch with the next folder in +hand was being told "come back later" by a disabled button. The console +may hold that wait for them: + +- **The console MAY stage next batches while a job runs**, first in + first out, and submit each as an ordinary batch POST when the running + job settles. The host sees nothing new: every submission is a plain + request racing every other client, refused `E_LOCKED` like any other + if it loses. On that refusal the queue is not dropped the batch + waits for the job the refusal names, and takes its turn at *that* + job's settle. +- **The queue is tab memory.** It is shown where it waits; it is never + in the address (work in progress is not a place the J.5.8 rule that + already governs staged files); it is sent nowhere until its turn; and + closing the tab abandons it, exactly as closing the tab abandons + staged files. Nothing invisible remains anywhere, which is why this + does not reopen the door J.9 closed. +- **Consent is per batch.** Each entry joins the queue by the same + explicit act that would have submitted it, under a button that says it + will wait rather than start. An entry can be taken out of the queue + while it waits; removal destroys nothing but the waiting. +- **A cancel holds the queue.** The operator who stopped the running + batch said stop, and auto-starting the next thing behind that word + would be the console contradicting them. `done` and `error` release + the next batch batches are independent, and one batch's bad day is + not a verdict on the next but after a `cancelled` settle the queue + waits for the operator, who starts it explicitly or takes it apart. A + submission the host refuses (other than `E_LOCKED`) holds the queue + the same way, with the refusal shown. + +#### J.9.3 The batch is visible from every console (v0.37) + +J.9.1 freed the operator from the batch; it did not tell them how it was +doing unless they came back. From every console of the forest, a running +batch and a waiting queue (J.9.2) is announced by a small indicator +that expands on demand into what the job record says: done over total, +the document in hand, errors so far, the queue behind it, the cancel, +and the way to the ingest console. Three rules: + +- **The indicator reads the board, never a client copy.** The job board + is the one memory of running work (J.9), and the console keeps no + duplicate of it in browser storage: a stored id would go stale in both + directions surviving the restart that forgot the record, and blind + to the batch another principal started, which deserves the indicator + just the same. Entering a forest asks the board once; everything after + is the watch. Signing in again, on any machine, is therefore enough to + find the batch: the memory was never in the browser. +- **The cadence follows the attention.** One watcher per forest serves + every reader at the finest cadence any of them asks: collapsed, the + indicator reads the board on the order of a minute; expanded or with + the ingest console open on the order of seconds; a waiting queue + sits between the two, at the pace settle detection needs. Watching is + free in every ledger (J.9), but free is not a licence to be noisy. +- **The indicator yields.** On the ingest console the full progress card + is already on screen, and a floating copy of it would be noise. And it + is scoped like everything on screen (J.5.8): it shows the forest the + address names, never activity from another one. + +**F.36 (acceptance).** An `adopt` of a multi-file directory answers 202 +with a job before the batch finishes; polling reaches `done` with +`done == total` and a report whose contents match what the same directory +yields under v0.31 semantics. While a batch with a deliberately slow +converter runs on forest A, a read primitive on forest B completes without +waiting for the batch, and a read on forest A completes within one step's +time, not the batch's. Polling a job adds no trace event and no pheromone +to the forest. A second batch POST on forest A while the job runs is +refused naming the running job's id. A cancel after *k* steps leaves +exactly *k* documents planted and committed with `state: "cancelled"`, and +a subsequent `sync` completes the remainder without duplicating any of the +*k* which requires, and thereby tests, that the source root was recorded +before the first step. `wait: true` returns the finished job in one +response. On a fresh Station instance the old job id answers `E_NOT_FOUND` +while the planted nodes and the audit row survive. All covered by tests. + +### J.10 Per-forest inference + +**Providers.** An operator registers named endpoints in the host registry: +a name, an OpenAI-compatible `/v1` base URL, and an optional key. Any +compatible gateway qualifies OpenRouter, LiteLLM, vLLM, a local +llama.cpp. Credentials are **write-only across every surface**: the API +accepts a key and reports only whether one is set (`has_key`), and an +update with an empty key MUST preserve the stored one **while the endpoint +is unchanged** so a provider can be re-saved without re-pasting a +secret. Changing the endpoint is a different destination and requires the +key again (J.3.2, v0.50). Who may perform any of this is J.3.2's table. + +**J.10.1 Environment-declared providers.** A deployment that already sets +`MONKEYLLM_LLM_ENDPOINT` / `MONKEYLLM_EMBED_ENDPOINT` (with their optional +`…_PROVIDER` name and `…_API_KEY`) has stated a provider. The Station MUST +publish it at boot so no operator is asked to re-enter it, marked +`origin: "env"` to distinguish it from a row somebody typed. + +Its key **MUST NOT be persisted in the registry**: it is held for the life +of the process and resolved when a call is made. The registry file is a +backup target and the environment is not; a deployment that chose the +environment for its secret MUST NOT have it copied elsewhere as a side +effect of starting the host. Write-only still holds `has_key` is the only +thing any surface reports. + +Such a row is **read-only to the console**: an edit or a removal MUST be +refused, because the environment would reinstate it at the next restart and +the operator would meanwhile be looking at a configuration the deployment +does not have. Withdrawing the variables is the way to remove it; at the +next boot the row becomes an ordinary console provider keyless, visibly +so rather than being deleted, which would silently take its bindings with +it. + +**J.10.2 A named destination is validated before it is contacted +(normative, v0.50).** The connection test lets a caller name an address the +Station then opens a connection to, from wherever the Station sits. The +address MUST therefore be checked before the call: + +- `http` or `https` only; +- the host name MUST be resolved and **every** address it maps to judged. + Inspecting the URL text would decide on what the address says rather than + on where it goes; +- loopback, link-local, private, reserved, multicast and unspecified + addresses are refused with `E_SCHEMA`, **unless** + `MONKEYLLM_STATION_PROVIDER_ALLOW_PRIVATE` is set truthy. + +That variable is not a corner case: a local llama.cpp or Ollama lives on +loopback, which is the ordinary development posture of this project (see +`docs/local-inference.md`). It is off by default all the same, because the +deployment that most needs the boundary is the one whose operator never +read this paragraph, and turning it on is one line for the deployment that +knows it needs it. + +**Model discovery.** A provider already publishes what it serves, at +`/models`. The console MUST offer that catalogue when choosing a model — +with the per-token prices when the provider states them rather than +asking an operator to type an identifier. Typing invites the failure this +rule exists to prevent: a model name from one provider bound to another, +which is well-formed, accepted, and wrong until the first call fails. + +Discovery is a convenience, never a constraint: a model the endpoint does +not advertise MUST remain bindable, because gateways under-report and a +console that refuses an unlisted name would be less capable than the API +beneath it. + +**Role bindings.** A binding maps `(forest, role) → (provider, model, +max_tokens, reasoning)` with `role ∈ {ingest, answer, vision}`: + +| Role | Used by | What to optimise for | +|---|---|---| +| `ingest` | curation at adopt/sync, `curate` | care: its output is the scent every later hop navigates by | +| `answer` | `answer` | speed and instruction-following over already-retrieved material | +| `vision` | the G.5.1 describer at adopt/sync | fidelity: it reads slides, diagrams and screenshots so `sniff` can | + +A binding MUST be refused if the provider or the role is unknown, and +removing a provider MUST remove the bindings that pointed at it a +dangling binding would fail at the worst possible moment. + +**The default budget (v0.63).** A binding created without a stated +`max_tokens` carries **1500**, and so does a call that finds neither a +`reply_tokens` nor a binding budget. The number is sized for the `answer` +role, the one whose reply carries the citation apparatus and not only prose. +`ingest` writes a scent and `vision` writes a description, and both keep the +smaller budget they were sized for; the curator's own default is a different +client with a different job and is unaffected. + +**Repairing a shipped default (v0.63).** A default is the value for rows +nobody has written, so raising one reaches no deployment that already has +bindings. A host MAY therefore carry **data repairs**: ordered statements +applied to a registry once and recorded against it, so that a value an +operator chooses afterwards is never overwritten by the repair that moved it. +The repair raising `answer` off the shipped 600 MUST NOT move a binding at any +other value, MUST NOT touch another role, and MUST NOT run twice. A registry +created fresh is stamped current and applies none of them. + +### J.10.3 Model-backed composites + +Two host composites, neither a primitive (the engine gains nothing): + +- **`answer(question, k)`** runs the scoped `harvest`, hands the result + to the forest's `answer` model, and returns `{answer, model, model_ms, + evidence, harvest, trace}` (J.10.4). Requires the `read` capability. +- **`curate(id)`** re-summarises one node through the `ingest` model + under the A.4 scent rules (validate-and-retry), returning the proposed + summary rather than writing it. Requires the `write` capability, because + it spends the operator's tokens. + +**The invariant that makes binding a model safe:** retrieval runs through +`ScopedVine` *before* any model is called, so the model receives only +material the principal could already have read primitive by primitive. +Binding a model MUST NOT widen what a principal can see; if a composite +ever needs data outside the caller's scope, that is a specification +question, not an implementation shortcut. + +*Known boundary (informative):* `answer` reads text. Facts that live only +inside a `type:dataset` payload are reached with `query`, so a question +whose answer is an aggregate over rows will be honestly refused rather +than guessed unless the model is given the primitives and allowed to run +`query` itself, which is J.10.5. + +### J.10.5 The answer that navigates + +`answer`'s default is a sweep: `harvest`, one model call, done. Cheap, +predictable and blind to anything not reachable from the entry list. It +is retrieval-augmented generation with a forest underneath, and it uses +none of what the forest is for. + +`answer` therefore accepts **`hops`**: with it, the model holds the read +primitives and decides where to go until it can answer. This is the loop +criterion F.5 already measures offline; J.10.5 is that loop as a hosted +composite. + +- **Opt-in, always.** One model call per hop against one for the sweep, so + the default MUST remain the sweep. `hops: true` means the host's own + budget; a number sets it. The budget MUST be bounded. +- **Read-only, by whitelist, not by capability.** The loop offers `locate`, + `sniff`, `look`, `move`, `pick`, `scan`, `query` and nothing else. The + policy would already refuse a write to a principal without the capability + but a principal who *has* `write` asked a question, and a loop that + could `plant` would turn a question into an edit. +- **Every call goes through `ScopedVine`**, exactly as a client's would. + The loop is a client with no privileges of its own; J.10.3's invariant is + unchanged, not re-argued. +- **A spent budget still answers.** Running out MUST force one closing turn + over what was already read, rather than discarding the hunt the tokens + are spent either way. +- **Evidence is what was opened.** Cited ids that the loop never read MUST + NOT be returned as evidence: that is a claim about the forest rather than + a reading of it. +- **The entry carries what a dataset teaches (v0.47).** The loop's first + message is the entry `locate`, which is curated metadata: no body, no + manual, no notes. C.2.1 rule 6 governs it like any other material a host + assembles every `type: dataset` in that entry list MUST arrive with its + `notes`. Without this the walk is the one path where an operator's + instructions depend on the model deciding to `look` first, and on a + dataset the natural next move is `query`. +- **A refusal reports what it was, not only that it was (v0.47).** The + loop already returns the whole error envelope to the *model* that is + how it corrects itself, and it MUST keep doing so. What it reported to + the *console* was the code alone, so two different mistakes (a guessed + table name, then a guessed column name) rendered as the same word twice, + and the reader could not tell that the engine had answered both with the + C.5 hint. A hop's outcome MUST therefore carry the error's message, + clipped like its other string fields. Nothing new is disclosed: the + message is the engine's own reply to a statement the caller wrote, + against a node already inside the scope. + +The response carries `hops` alongside the `trace` of J.10.4, so the path and +its cost are both visible. A hop MUST report more than its tool name: the +arguments the model chose, one number for what came back (results, rows, +tokens, or the refusal code), and **two clocks** the forest call and the +model turn that decided to make it. "sniff, sniff, locate" and "sniff → 0, +sniff → 0, locate → 5" are the same list of verbs and opposite stories, and +one combined duration would hide which half a slow hunt is spending. + +The arguments appear here and **not** in the `trace`, deliberately: the +trace is the technical record and reports shape only (J.10.4), while a hop's +arguments are the model's own choices, derived from the caller's own +question, over results the scope already filtered. + +Steps in the `trace` that a hop caused SHOULD carry that hop's number, so a +console can show a timing and the decision behind it in one place. The entry +`locate` is not a hop the forager did not choose it. + +**And it carries what it read.** The sweep can show the material because +`harvest` returns it in one bundle; a forager has a walk instead, so the +same evidence MUST be assembled from the hops and returned in the same +shape (`read`): `pick` bodies and sections, `sniff` snippets with their +section and line, `query` rows. A `look` is a digest and is not material — +naming a summary an excerpt would blur the one distinction this reporting +exists to make. A console MUST render both the same way, because "what was +this answer built from" is the same question in both modes. + +### J.10.4 Explaining a composite + +A composite is opaque from the outside: `answer` is one request, several +forest calls and a provider round trip, and a single elapsed number cannot +say which of them to fix. The usual suspicion "the forest is slow" is +almost always wrong, and there is no way to find that out from a total. + +Calls that are several calls (`answer`, `harvest`) MUST therefore return a +`trace`: the ordered steps the call performed, each with its primitive, its +elapsed milliseconds, the tokens it emitted and only for primitives that +take one the node id; plus `retrieval_ms`, `total_ms`, and the provider +round trip as a `model` step. Consoles that answer questions MUST show it. + +The engine already times every primitive it runs (Part D), so this is a +slice of that trace and not a second instrumentation: the events the call +appended, and nothing else. + +**A trace reports shape, never content.** No arguments, no queries, no +snippets a step names what ran and what it cost. Node ids appear only for +primitives the caller's own policy already admitted, since scoping happens +before the call the trace is describing; a trace therefore cannot disclose +what a scoped response withheld. + +**What it cost, when the provider says so.** A composite that calls a model +MUST report the tokens the provider itself metered (`usage`) and, when that +provider publishes rates, the money: `cost: {prompt_tokens, +completion_tokens, calls, priced, usd}`. Two rules make it trustworthy. +Counting tokens locally is an estimate of somebody else's meter and MUST +NOT be substituted for it. And a provider that publishes no rate a local +Ollama, a llama.cpp MUST be reported as **unpriced**, never as free: +`priced: false` with no `usd`, because rendering silence as $0.00 is a +claim about money made from the absence of one. + +### J.10.6 The host's own clocks + +J.10.4 explains a composite because a composite is several calls. A single +primitive is one call, and the reasoning was that it therefore needs no +explaining: whoever invoked it can time it. That holds for a library caller +and fails for an HTTP one. Over the wire the caller's stopwatch measures +TLS, the network, HTTP framing, JSON and its own render, and the engine's +`elapsed_ms` never leaves the process so a REST client cannot tell 0.2 ms +of `locate` behind 28 ms of internet from 28 ms of `locate`. Those are +opposite facts about the product and they look identical from outside. + +**Every primitive response MUST carry `Server-Timing`.** Three metrics, in +milliseconds: + +- `vine` the engine, the sum of the tracer events this call appended. + Present on every response, `0` when the call reached no primitive. +- `host` the host's own share: policy, the audit record, serialisation, + the forest-thread hop. What is left of the host's span after the other + two. +- `model` the provider round trip, present only when one happened + (J.10.3, J.10.5). +- `cache` the answer store's own work: the lookup and the + reading-fingerprint check, plus, on a walk hit, the heat deposit + (J.10.7). Present only when the store was consulted. On a hit `model` + is absent, because no provider ran a header claiming one did would be + the forged number this section exists to prevent. + +The clocks present MUST account for the host's whole span, so a caller that +subtracts them from its own stopwatch is left with transport and nothing +else. + +**A header, not a field.** A response body is the agent's context window +and it is budgeted in tokens (C.6). Diagnostics for a human console MUST +NOT be added to it: no agent reads them and every agent would pay for them, +and a number appended after the budget was enforced would break the budget +it was appended to. `Server-Timing` is carried by the transport, costs the +body nothing, and is already rendered by every browser's network panel. +The MCP surface (J.4) has no headers and reports nothing extra; that is +correct, because its caller is the agent, not the console. + +**A timing MUST NOT disclose what a scoped response withheld.** Like a +trace (J.10.4), it reports shape only three durations, no ids, no +arguments, no counts. It rides on every response the primitive route +produces past authentication, refusals included: a route that timed only +its successes would answer "which forests exist?" by staying silent. An +unauthenticated request never reaches a forest and carries nothing. + +**Consoles report the engine, and transport is not the subject.** A surface +that shows the latency of a call MUST show the engine's own figure as the +primary number, and MUST NOT present a client-side round trip as the cost +of the call. What a reader is there to judge is retrieval: how long this +engine takes to find something in a corpus. The rest of the span is their +network and whatever host they pointed at a measurement of somebody's +infrastructure, and giving it equal weight reports the wrong subject. + +Transport MUST NOT be hidden either, and the reason is not symmetry. A +console that shows 0.2 ms for a click that plainly took longer is making a +claim the reader cannot reconcile, and an unreconcilable number is read as +marketing. So it is stated once, plainly, and named as infrastructure +rather than as the call. + +**The engine figure MAY be given a unit a reader feels.** Every forest call +is serialised onto one worker thread (J.0), so the inverse of the engine's +own time is not a projection: it is the rate that deployment sustains on +that corpus, back to back. A surface that reports it MUST derive it from +the engine clock alone and MUST NOT report it for a call in which a +provider ran the rate of an `answer` is the model's, not the forest's. + +**F.32 (acceptance).** Every served primitive MUST answer with a +`Server-Timing` header carrying `vine` and `host`; `answer` MUST also carry +`model` when a provider ran a hit of J.10.7's store carries `cache` +instead and the clocks present MUST sum to no more than the host's measured span +for the request. A response body MUST be byte-identical to the same call +made before this section existed the header is the only difference and +the token budget of every primitive MUST be unchanged. The Playground MUST +lead with the engine figure, MUST NOT lead with a round trip, and MUST +still account for the remainder of the span somewhere on the panel. +Covered by tests. + +### J.10.7 The answer already given (v0.33; the reading check, v0.35) + +`answer` is the one call in this host that costs real money and real +seconds; everything beneath it is a fraction of a millisecond, which is the +fact J.10.6 exists to make visible. A deployment in front of traffic is +asked the same questions over and over, and until now every repetition +bought a fresh provider round trip over the same material. The retrieval +was already too cheap to be worth saving; the model call is the entire +bill, and the store exists to stop paying it twice. + +**The store fronts the model, and nothing else.** Primitives are never +cached: they are the cheap half, and their contracts budgets, truncation, +scoping are per call by design. `harvest` is zero-LLM and needs no +saving the sweep runs its retrieval on **every** ask, hit or miss, +because the retrieval's result is what decides a hit (below). `curate` is +never served from a store, because its purpose is a fresh reading. +Wherever `answer` is served, the store sits between the retrieval and the +provider. Per forest it can be switched off; it is **on by default with a +stated bound**, because the check below makes a stale hit structurally +impossible and the labelling below makes every hit visible. + +**The key is a closed list, and everything that shapes the call is on +it.** An entry is named by the digest of, exactly: + +1. the question, normalised for nothing but writing: Unicode-normalised, + trimmed, inner whitespace collapsed, case-folded; +2. the **effective terms** the ones the call actually used, whether the + caller supplied them or the sweep derived them; +3. the **effective `k`** capped by C.6c for the sweep, because the cap + shapes the answer and so must name it; as given for the walk, which + C.6c does not cap the hops budget when the walk was on (J.10.5), + and the entry-search mode (K.3) a hybrid entry retrieves + differently, so it answers differently; +4. the **binding as resolved** provider, model, `max_tokens`, + `reasoning`. A rebound model is a different answerer, so it is a + different key. And the caller's **`reply_tokens`, when one was set** + (J.10.8, v0.48), as clamped: a short answer and a long answer to one + question are two different answers, and a call that set none keys + exactly as before, so an upgrade invalidates nothing; +5. the caller's **scope** allow, deny and table grants as enforced + (J.3). Two principals under one scope are asking one forest; under + different scopes they are asking different forests that happen to share + a directory. An entry MUST be shared across principals whose scope is + identical and MUST NOT be served across scopes: J.10.3's invariant + survives the store by construction, not by a check; +6. the forest's **HEAD** **for the walk only** (J.10.5, v0.35). A walk + cannot be re-walked without paying the model per hop, so its entries + stay pinned to the exact forest that produced them. The sweep's key + carries no HEAD: its freshness is decided by the reading, below. + +Two calls that differ anywhere on the list are strangers to the store. +Nothing off the list may enter the key, because every extra component is a +hit rate halved for no correctness bought. + +**The reading is the freshness check (v0.35).** Two digests with two +jobs. The key above finds the entry; a second digest the **reading +fingerprint**, stored with it decides whether the model owes a fresh +pass. The sweep fingerprints what it would hand the model: the set of +results keyed by id, each contributing its type, title, summary, matches, +body content and `notes` when it carries them (v0.48 the teaching is +handed to the model, so a teaching edited is a reading changed), its +`created`/`updated` dates and its `supersedes`/`superseded_by` +annotations (v0.57, C.6c.3 — the material's stated time is handed to the +model, so material re-dated or re-ordered is material re-read), plus the +bundle's truncation flag and nothing +volatile: not score, not heat, not the serving order. Pheromone drifts on +every use and reorders near-ties (Part D); the order is the ranking's +affair, not the body's, and a store invalidated by its own hits would +never hold an entry. A result that enters or leaves the set is a change +of reading; a set that merely reshuffled is not. Equal fingerprints mean the model +would be handed the same reading it already answered, so the stored reply +is served; different means the forest changed under this question there +may be new information, so the model runs on the new reading and the +entry is replaced. The check is exact where HEAD was indiscriminate: a +`graft` on a node the question reads is a miss; a `plant` in a branch the +question never touches invalidates nothing; a `tend` that changes rows +but not prose changes no reading. Heat that pushes a result out of the +set or a new one in changes the reading and is honestly a miss; the +worst case is a bought run, never a stale answer. For the walk, HEAD in the key remains +the clock: every commit invalidates it, exactly as v0.33 stated. +Evaporation (H.1) commits nothing and, by itself, still invalidates +nothing. A TTL exists as hygiene space, never correctness. + +**Nothing empty and nothing broken enters the store.** A miss stores its +run only when the run was worth its key: + +- a run whose retrieval found **nothing** an empty entry list, a walk + that opened no node, evidence of zero MUST NOT be stored. An empty + answer is the least useful response this product can give, and the store + MUST NOT make it the fastest; +- an errored call, a refusal, or a response marked truncated MUST NOT be + stored; +- a turn that performed any write MUST NOT be stored. The loop already + cannot write (J.10.5); this rule survives any future surface that can. + +**A hit is a record served over a live reading, and it says which is +which.** The retrieval fields of a sweep hit `harvest`, `evidence`, +`sources`, the trace are this call's own, fresh from the sweep that +just ran. The model fields `answer`, `model`, `usage`, `cost` are the +record, returned as bought, with `cached: true` and the time of the +original run (J.5.9's distinction one level down). The original cost MUST +NOT be counted a second time as spend, and no `model` clock or trace step +may claim a provider ran. A walk hit is still served whole, as received +(v0.33). Either way a console MUST label the answer as served from the +store, and the host's log states the hit with the entry's digest. + +**The whisper is the composite's close (v0.35).** Part D ends a +successful hunt with heat on the winning trail, and a hosted `answer` is +a hunt whether the reply was bought or served v0.33 whispered only on +hits, which told the Ranger that a question answered from the store +mattered and the same question freshly bought did not. The host MUST +deposit the whisper on the answer's evidence hit and miss alike, +through the trails store, the same channel the engine's own session close +uses, never a primitive so the nodes behind a deployment's most-asked +questions read to the Ranger as exactly as hot as they are (H.2). A sweep +hit additionally holds the tracer events of its own retrieval, because +that retrieval really ran; a walk hit appends none, because nothing ran — +its stored trail is what the whisper lands on. + +**It lives in the disposable layer.** The store is per forest, in +`_derived/` beside the catalog and the trails, WAL like the rest (J.6.1), +out of git like every non-`.md` (A.3.1). It is never a source of truth: a +snapshot does not package it (Part I), `reindex` owes it nothing, and +deleting it costs money the answers are bought again but never truth. + +**The bound is stated out loud.** The store is finite, per forest, and +says so: a stated cap, oldest-served-first eviction, and a surface that +shows what is held against the bound. Silent unbounded growth is C.6's sin +in yet another costume. + +**Asking past the store is one flag, and it refreshes.** A call carrying +`cache: false` MUST skip the serve the sweep's retrieval runs +regardless run the model on the fresh reading, and **replace** the +entry its key names. That is the with-and-without comparison made honest — +J.5.9 exists to read such pairs side by side and it is the operator's +way to force a fresh draw of one answer without emptying anything. + +**The console states the store's economy.** Per forest: hits, misses, what +is held against the bound, and the money not spent computed only over +runs whose provider priced them. J.10.4's rule holds in mirror: an +unpriced run's saving is unpriced, never $0.00. The settings on or off, +the bound, the hygiene TTL, the similarity threshold where it applies — +are the operator's, per forest, behind `admin`; emptying the store is +offered there, and costs truth nothing. + +**The near question, only where the forest has ears for it.** Exact keys +answer exact repetition, and real traffic rephrases. Where and only +where a Canopy index and an embedder are both present (the same +conjunction that makes `locate` hybrid), the store MAY also hold an +embedding of each entry's question and serve an entry whose stored +question clears an operator-set similarity threshold with **every other +component of the key still matching exactly** (scope, binding, `k`, hops) +**and the reading fingerprint still deciding**: a neighbour whose stored +reading no longer matches this sweep's is not served, however close the +question. The question and the terms derived from it are what similarity +stands in for; terms the caller supplied are a precision instrument, and a +call that carries them MUST NOT be answered by a neighbour. The tier is +**off by default** the exact tier has no false positives and the near +tier trades some for hit rate, which is the operator's trade to make and +a neighbour served MUST name the stored question it answered, because the +reader can judge the stand-in only when shown it. + +**F.37 (acceptance).** The same question asked twice on an unchanged +forest makes one provider call: the second response carries `cached: +true`, the original run's answer, fresh retrieval fields, a +`Server-Timing` with `cache` and no `model`, an audit row marked as +served from the store and the second sweep's primitives really ran: +tracer events appended, and the whisper deposited on the evidence, as it +also is on a miss. A `plant` +of material foreign to the question between the two asks is **still one +provider call**; a `graft` that edits a node in the question's reading +makes it two. A change to any of: terms, the effective `k`, hops, +binding, or scope is a miss. A run with empty evidence, asked twice, is +two provider calls and no entry. `cache: false` answers fresh and +replaces the entry. The store never exceeds its stated bound and evicts +oldest-served-first. An entry stored under one scope is never served to +another. A walk answer is keyed with HEAD, and any commit invalidates it. +With the near tier off, a rephrased question is a miss; with it on, a +neighbour served names the stored question it answered. Covered by +tests. + +**F.38 (acceptance).** With `MONKEYLLM_HARVEST_MAX_K` unset, a `harvest` +asking `k: 50` returns at most 5 results the default is the old cap, +byte for byte. Set to a smaller integer, the smaller integer wins; the +response budget still holds and truncation is still explicit. Set to `0` +or to text, `harvest` answers `E_SCHEMA` naming the variable. On the +host, two sweeps asking `k: 10` and `k: 50` under a cap of 5 form one +store key and the second is served from the store; the same two calls +with the walk on (J.10.5) form two keys, because the walk's `k` is not +capped. Covered by tests. + +**Identical questions in flight share one generation (v0.58).** The old +single lane had an accidental virtue: identical misses queued, and every +one behind the first hit the entry the first had just stored. J.10.11's +parallel phase 2 un-made it — ten identical cold asks became ten paid +generations racing to replace one entry. Deliberately now: concurrent +sweep misses with the SAME store key **coalesce**. The first becomes the +leader and runs phases 2–3 as ever; followers await it on the loop (no +lane held), then **re-consult the store under their own reading +fingerprint** — a follower whose reading matches the leader's is served +the stored reply (`cached: true`, which is the plain truth of what +happened), and one whose reading differs runs its own model call, +exactly as the reading check always ruled. The in-flight table lives in +host memory, keyed by (forest, store key), and empties itself: a leader +that errors or declines to store releases its followers to their own +calls — coalescing is an optimisation over the store, never a second +source of truth. `cache: false` opts out of coalescing along with +everything else, and a disabled store coalesces nothing. + +### J.10.8 The reply has a stated size (v0.48) + +The one control over how much an answer says was the binding's +`max_tokens` (J.10): per forest, set by the operator, and enforced only +as a hard cut a model that overran it stopped mid-sentence. The person +asking has the opposite need per question: a one-line confirmation now, +a thorough reading across documents later. That is a per-call choice, +not a per-forest configuration. + +`answer` therefore accepts **`reply_tokens`**, walk and sweep alike: + +- **Clamped to [64, 4000]**, the upper bound being the project's + familiar "one reading" budget (`pick`, `harvest`). Absent means the + binding's `max_tokens` rules exactly as before the parameter is an + override, never a new default. +- **The cap is also said (amended v0.63).** The effective value replaces + `max_tokens` on the model call AND is stated in the prompt, so the model + shapes the reply to fit rather than being truncated by it, and this holds + whatever chose that value: the caller's `reply_tokens`, the binding, or the + default when neither did. It used to be said only **when set**, which left + the prompt silent in exactly the case where nobody had chosen a number and + the shipped default was deciding alone, and a deployment that never touches + the parameter is the one that most needs the warning. What is stated is the + cap, never a parameter the caller did not send: a call carrying no + `reply_tokens` still reports none. On a walk it bounds every turn and the + note aims at the final answer, which is the turn it exists for. This + section used to call a tool call "far under the floor", which is true of a + navigating turn and false of the one that answers: that turn is an object + carrying the text AND `answer_nodes`, and it is the turn a low cap cuts. +- **The cut is reported (v0.54).** This section used to claim a + provider's cut carries no flag; for the OpenAI-compatible surface this + host speaks, that was wrong — `finish_reason` is in every response, + and it is now read. A reply the provider stopped for length carries + `truncated: true` and its `finish_reason`; a reply that finished + carries neither. A truncated reply MUST NOT enter the J.10.7 store: + `storable` always refused truncated results, but nothing ever set the + flag, so cut-off answers were bought once and served forever. This was + the one place in the product where a caller paid and could not tell + whether it received everything. +- **The clamp is reported (v0.54).** The response echoes the effective + `reply_tokens` whenever one was set. `reply_tokens: 40` is served by + the floor, 64 — a fact the caller could previously learn only by + noticing that `completion` exceeded the request, which reads as an + overrun rather than a clamp. +- **It joins the key when set** (J.10.7): the effective, clamped value — + two calls that differ only in reply size are asking for two different + answers. A call that set none contributes nothing to the key, so + existing stores survive the upgrade untouched. +- The binding's `reasoning` bump is applied after the override, for the + same reason it exists at all: thinking tokens must not eat the reply. + +**The console offers it as a control, and keeps it as a preference.** +A slider beside the ask box, defaulting to the binding's own size +("auto"), persisted client-side per person J.5.3's class of choice +(like language and theme), never in the address: the address restores +a page (J.5.8), and how long someone likes their answers is theirs, not +the page's. + +**F.51 (acceptance).** An `answer` carrying `reply_tokens` makes the +provider call with that value as `max_tokens` (clamped to [64, 4000]) +and the prompt states it; absent, the binding's value rules byte-for- +byte as before. Two sweeps differing only in `reply_tokens` are two +store entries; a call without it forms the same key as before the +upgrade. The MCP `answer` tool accepts it. Covered by tests. + +### J.10.9 The answer that shows what it read (v0.48) + +A media node's body is a describer's prose about pixels (G.5.1). The +J.14 route lets a console show the image beside the node but the +*answer* is where a person actually meets the forest, and an answer +built on a screenshot was text about an image nobody was shown: the +model had read the description, used it, and had no way to hand the +reader the thing itself. + +The model may now **embed a media node's image in its reply**, by +reference: + +- The syntax is a markdown image whose address is the `media:` scheme + followed by the node id `![<caption>](media:<node id>)` stated to + the model in the answer prompts whenever its material contains a + `media` node, with the rule that only ids present in the material may + be named. It is a *reference*: the host neither fetches, inlines nor + rewrites anything, and the reply stays plain markdown storable in + the answer store (J.10.7) unchanged, because a node id is stable + where a URL is not. +- **The console resolves it through J.14**, the route where scope is + already enforced: a `media:` reference is fetched with the viewer's + own credential, so an id the model invented or one the *viewer* + may not read resolves `E_NOT_FOUND` and MUST render as its caption + and nothing else, never as an error that outranks the answer. Bytes + still never ride in the response body; G.5's line is untouched. +- **Evidence shows its image.** An evidence item of type `media` MUST + be rendered with its image beside its scent (J.14's console rule, + made specific): whether or not the model chose to embed it, "what was + this answer built from" includes the pixels. +- **Exports carry what the reader saw.** A PDF export includes the + rendered images; a markdown export rewrites `media:` references to + the absolute J.14 route, so the file names a fetchable address + rather than a scheme only this console understands. + +*(Informative.)* The embed rule rides in the prompt per call, so it +reaches every binding without retraining; a model that never embeds +loses nothing evidence rendering does not depend on it. + +**A citation carries the title (v0.54).** The prompt teaches the closing +citations as `Title [id]`, not the bare id: `sources` always carried the +title, but the *reply text* is what a person reads, forwards and pastes, +and `[chatgpt--chatgpt-com-202608200332]` tells that person nothing. The +id stays in the bracket — it is what a console or a harness resolves — +and the title is what makes the line prose. A renderer keeps needing no +lookup, because the model writes both from material it already holds. + +**A citation carries its scope (v0.59).** `sources[]` is the block a +console renders and an agent summarises — and it carried `id`, `title`, +`summary` and `type` while the `harvest` sitting beside it carried each +item's `trail`. The field designed to be read was the one that lost the +material's place in the forest. A multi-product forest is the normal +case, not the exception: a consumer forest held the product, a second +product, a billing platform and this repository side by side, and an +answer about the wrong one of them cited a real document, correctly, and +was wrong about the subject anyway. With the trail in the citation that +answer reads as *"according to `findleads/back-end`…"* and the mismatch +is visible before a word of the reply is trusted. `sources[]` therefore +carries `trail` — the same list `harvest` computed, never a second +lookup, and absent rather than invented when a hop produced a node with +no trail in hand. This binds both shapes: the sweep's sources (J.10.4) +and the walk's, which assembles the same block hop by hop (J.10.5). + +#### J.10.10 The answer it should not give (v0.52) + +`answer` always answers. When the sweep comes back with two weak snippets, +the model still writes a paragraph, and the response still dresses it in +`sources`, `evidence` and `usage` — so a synthesis built on almost nothing +is, to the reader, indistinguishable from one built on the document that +settles the question. That is hallucination arriving with a citation, and +the sparser the forest the likelier it is: the failure grows in exactly the +deployments least able to notice it. + +`answer(question, min_evidence: n)` gives the caller the floor: + +1. Default `0` — **off**. The behaviour of every existing caller is + unchanged. It is **not** part of the J.10.7 key, and that is deliberate: + it cannot change what the model would write, only whether it is asked, + so an entry produced with a floor is the same answer as one produced + without it. A refusal never enters the store, so no entry can exist + under the parameter to begin with. +2. The host counts the sweep's items **that carry content** before calling + the model. Below `n`, no model call is made. +3. The refusal is `{answer: null, reason: "insufficient_evidence", + evidence_count, min_evidence, harvest}` — with the retrieval attached, + because the caller asked a question and the honest reply is "here is + everything the forest has on it, and it is less than you asked for". + Handing back nothing would send the caller to its own parameters, which + is the failure this whole release is about. +4. It costs nothing. The refusal is decided before the provider is called, + so it is never billed, carries no `model` clock (J.10.6), and never + enters the answer store — J.10.7's existing rule for empty-evidence runs, + applied to a run that was declined for the same reason. +5. `min_evidence` is clamped to [0, the effective `k`]: a floor above the + number of items the sweep may return is a refusal by arithmetic, and a + caller asking for that has made a mistake, not a policy. + +A floor is a blunt instrument one strong node can settle a question that +five weak ones cannot and this document does not claim otherwise. It is +the caller's knob, off unless asked for, and it is the only one that can be +enforced without asking a model to grade its own evidence. + +**Counting items is not counting evidence (v0.59).** The floor as +specified above counts the sweep's items that carry content — and the +sweep returns `k` items whatever their scores, so on any forest that is +not nearly empty the count reaches the floor and the guard never fires. A +consumer agent asked a question with no answer in the corpus, with +`min_evidence: 2` set, and got three items scoring 0.0164, 0.0164 and +0.0161: the floor passed, the model ran, and it was the *model's* honesty +— not the guard's — that produced the refusal. A protection that fires +only on an empty forest is not the protection it advertises. + +6. **`min_score: float`** (v0.59), default `0` — off. An item counts as + evidence only when it carries content **and** its harvest `score` is + at or above the threshold. It is applied before the count, so + `min_evidence` and `min_score` compose as one floor: *n items that + clear s*. It shares every property of `min_evidence` — outside the + J.10.7 key, never billed, never stored, refusal shape unchanged except + that it names both numbers (`min_score` beside `min_evidence` and + `evidence_count`), because a refusal that hides which knob fired is a + knob nobody can tune. +7. **What the number means MUST be stated, not implied** (v0.59). The + `score` is RRF fusion output (C.6c): a rank artifact, near + `1/(60+rank)` per list a node appears in — which is why 0.0164 reads + as *"top of one retriever"* and 0.0325 as *"top of both"*. It is + therefore comparable **within a deployment** and meaningless across + corpora, embedders or `k` values. This document declines to ship a + default threshold for the same reason it declines to grade evidence + with a model: the honest artefact is a lever the operator calibrates + against their own forest, plus the sentence explaining what they are + calibrating. +8. **The refusal says which half refused (v0.61).** The two knobs compose, + and the composition is sharper than it reads: RRF output is compressed + near `1/(60+rank)`, so a threshold that means anything usually admits + the ONE item that is top of both retrievers and excludes the filler + and then `min_evidence: 2`, the value a caller picks to mean "I want + two sources", refuses questions the forest answers correctly. Measured + twice on the same live forest: `(2, 0.02)` refused a question that + `(1, 0.02)` answered faithfully with citations. The floor is behaving + as specified; what was missing is that the refusal reported + `evidence_count: 1` and said nothing about the two items the threshold + had just dropped, so the tuning problem was invisible in the only + artefact that could show it. The refusal MUST therefore carry + **`below_min_score`**: how many items carried content and did not clear + the threshold. `evidence_count + below_min_score` is what the count + would have been with no threshold, which is the number the caller needs + to choose between lowering `min_score` and lowering `min_evidence`. Any + surface that teaches these knobs MUST state the pairing: with a + `min_score` that means anything, `min_evidence: 1` is the useful floor, + and 2 is a deliberate demand for corroboration paid for in refusals. + +**F.63 (acceptance).** An `answer` carrying `min_evidence` above the +number of items the sweep produced returns `answer: null`, +`reason: "insufficient_evidence"` and the harvest, makes no provider call +(no `model` clock, no cost, no store entry). Above the floor the reply is +unchanged, and the cache key is the same one the call formed before the +upgrade. Covered by tests. + +### J.10.11 The provider is not a lane (v0.57) + +The sweep `answer` ran whole on its forest's thread — retrieval, then +the provider round trip, then the store deposit — so for the seconds a +model took to write, the thread on which every 0.2 ms read of that +forest runs held an open socket and did nothing. Under a hundred +consulting agents that is not a latency detail; it is the lockup J.6.2 +describes, reproduced by every question. The retrieval halves need the +engine; the model call needs nothing but the bundle already in hand — +`inference.answer` handed a bundle touches no vine at all, which is the +property this section makes load-bearing. + +The sweep `answer` runs in **three phases**: + +1. **Prepare, on a reader lane (J.6.2):** capability and binding checks, + the sweep's retrieval, the J.10.10 floor, the J.10.7 store consult. + A hit, a refusal, or a validation error completes here — those paths + never leave the lane and are byte-identical to before. On the miss + path, the phase ends by **capturing this call's trace slice** (the + tracer events its own retrieval produced, and their engine-time sum) + — captured at the boundary, because the lane serves other calls while + the model writes, and a trace read later would carry a stranger's + hops (the J.10.6/J.10.4 figures must describe this call and nothing + else). +2. **The model call, on no lane at all.** The bundle, the binding and + the question leave the lane; the provider round trip runs on an + anonymous executor thread. Nothing in this phase may touch a vine, a + catalog, a trail or the store — the phase's inputs are values, and + its output is a reply. +3. **Settle, on the same reader lane:** the store deposit (J.10.7), the + whisper (heat on the evidence), the audit row, the J.16 emission. + Pinned to the lane of phase 1: the vine whose trails the whisper + feeds belongs to that thread. + +The clocks (J.10.6) are unchanged in meaning: `vine` is phase 1's +captured engine time, `model` is phase 2's round trip, `host` is the +remainder of the whole span — the three still account for it. + +**Phase 2 has a stated ceiling.** The consumer team's load report +measured the old shape exactly: cold `answer` throughput pinned at 0.3 +req/s whatever the concurrency, latency rising linearly with it — one +model call at a time, Little's law closing the case — and a 104 ms cache +hit arriving in 6.6 s because it waited behind generations. Removing the +lane hold removes the serialisation; what replaces it must not be "as +many sockets as there are askers", because the provider is metered and +the operator pays it. Concurrent phase-2 calls are admitted under +`MONKEYLLM_STATION_MODEL_CONCURRENCY` (default 8, `0` = unbounded); a +call over the ceiling waits in the host, visibly (the wait is inside the +`host` clock, never the `model` one). Hits never touch the ceiling — +they end in phase 1. + +**The deployment states its shape.** `/v1/health` carries +`concurrency: {readers, model}` — the reader pool's size and the model +ceiling. The team discovered every limit by experiment and asked for +this directly: an agent that can read the ceiling chooses `harvest` over +`answer` by itself. Counts of capacity, never per-forest data: health +stays the unauthenticated surface it is. + +**Stated exceptions, not omissions:** the **walk** (`hops`) interleaves +primitive reads with model turns by design and stays on its reader lane +for its whole duration — it occupies one lane of K, never the writer, +and it is opt-in per call. **`recurate`** (one read, one model call, one +graft) is a write and stays whole on the writer lane; it is an +operator's curation act, not a hot path. A future version may split it +with this section's pattern if it ever measures as one. + +### J.11 Map projections + +`look`, `move` and `scan` answer *about this node*. A console showing the +shape of a region would have to ask them once per node, and a region is not +a node. Two read-only endpoints answer *about this region* instead: + +| Endpoint | Returns | +|---|---| +| `GET /v1/forests/{forest}/graph` | `{nodes: [...], edges: [...], truncated}` | +| `GET /v1/forests/{forest}/trails` | `{heat: [{id, heat}], stats, truncated}` | + +Both require the `read` capability and are subject to J.3 in full. Neither +is a primitive: they add no capability an authorised caller does not +already have, and everything they return is reachable node by node through +Part C. They are a *shape* the same authority can be asked for in one call. + +Normative rules: + +- **A node out of scope is absent**, exactly as in J.3 never a stub, + never a count. An edge is included only when **both** endpoints survive + filtering; an edge with one visible end would disclose the other. +- **Every derived number is recomputed from what survived.** `degree` MUST + count the edges present in the response, not the edges in the Catalog. + A count taken over the whole forest is itself a disclosure (J.3). +- **Heat is the persistent scope only.** Session-scoped heat belongs to a + hunt in flight and MUST NOT be observable through a map. +- **The Catalog is not the source of truth** (C.6.1). A projection MUST be + documented as derived and rebuildable; a consumer that finds it stale + reindexes rather than reconciling. +- **Bounded, and honest about it.** Both accept `scope` (a branch prefix, + itself scope-checked) and `limit`. When a bound is reached the response + MUST carry `truncated: true` the same always-explicit rule as every + primitive budget (C.1). A projection MUST NOT silently sample. +- The payloads carry no bodies. A map is scent, not flesh: `pick` remains + the only way to a body, with its own budget. +- **`created` and `updated` ride along** (v0.38). Both are passport facts + the Catalog already holds, at the passport's own day precision. A + replay of the forest's growth (J.5.4) is a shape question, and shape + questions are what a projection exists to answer in one call. + +**F.25 (acceptance).** For a scoped principal, every id appearing anywhere +in a map projection MUST be reachable by that principal through `look`, and +every `degree` MUST equal the degree computed from the projection's own +edges. A projection that fails either is an oracle. + +### J.13 Maintenance surface + +Part H's Ranger and Part I's snapshots are operator tools, and a hosted +Station's operator has a browser rather than a shell. + +| Endpoint | Returns | +|---|---| +| `GET /v1/admin/health?forest=` | the H.3 report, unchanged | +| `GET /v1/admin/snapshots?forest=` | the bundles taken so far | +| `POST /v1/admin/snapshots` | `{forest, with_payloads?}` takes one | +| `GET /v1/admin/snapshots/{forest}/{file}` | that bundle or sidecar, streamed (owner, J.13.1) | +| `POST /v1/admin/snapshots/import` | `{id}` + bundle [+ sidecar] → a new forest (owner, J.13.2) | +| `POST /v1/admin/reindex` | `{forest}` rebuilds the catalog, returns the node count (J.13.3) | +| `GET /v1/admin/locks?forest=` | the C.9 lock's state: free, orphan, or held — with the holder's card (J.13.5) | +| `POST /v1/admin/unlock` | `{forest}` removes an orphan lock file; refuses a held one (J.13.5) | + +Normative rules: + +- **Health requires `admin` on the forest AND an unrestricted scope.** The + report is inherently whole-forest: it counts lint errors, names fat nodes + and lists stale passports across everything. Filtering it to a prefix + would leave numbers that silently describe nodes the caller may not see, + which is the disclosure J.3 exists to prevent. A scoped principal MUST be + refused with that reason stated, never served a filtered report. +- **The report is relayed, not recomputed.** Whatever `Ranger.health()` + returns is what the endpoint returns. A host that reformats or summarises + it becomes a second definition of the forest's health. +- **Health MUST NOT write.** It reports; evaporation, promotion and pruning + remain the Ranger's own run (H.1/H.2), which is a scheduled job and not a + side effect of somebody opening a console. +- **Snapshots are host state, not forest content.** Bundles MUST be written + outside every forest a `.bundle` inside a forest would be a binary in + the tree A.3.1 keeps binaries out of, and the next snapshot would package + the last one. +- **Restore into a live forest is NOT exposed.** Part I restores into an + empty destination, so there is nothing to offer a console operating on + an existing forest, and taking a filesystem destination from an HTTP + caller spends the Station's authority rather than the caller's (the + same reasoning J.8 applies to `path`). Restoring in place stays `vine + snapshot restore`. Import (J.13.2) is neither of those things: it + restores into a forest that does not exist yet, at a destination the + host derives from a validated *name*. + +#### J.13.3 Rebuild (v0.41) + +`POST /v1/admin/reindex` with `{forest}` runs `Catalog.reindex()` and +answers `{forest, nodes, ms}`. + +- **`admin` on the forest AND an unrestricted scope**, for health's + reason (J.13) with one addition: the count it returns is the size of + the whole forest, and it rewrites the row of every node including + the ones a branch-scoped principal may not read. A scoped principal + MUST be refused with that reason stated. +- **It runs on the forest's lane and the caller waits.** Rebuilding is + offline work, exactly like a canopy build (which re-embeds every + summary and is already synchronous); it is bounded and it is the + thread-affinity rule (C.6.1) that decides where it runs, not the + patience of the caller. It is NOT an ingest job (J.9): it plants + nothing, converts nothing, commits nothing, and has no report to + stream. +- **It writes `_derived/` and nothing else.** No commit, no model call, + no pheromone, no trace event the audit row (J.4) is the only record + it leaves. A Station serving read-only forests MUST still offer it: + the derived layer is not the content, and a read-only Station that + could never repair its own index would degrade permanently with no way + back that does not involve a shell. +- **It may run while a batch does.** J.9's fairness rule says a call to + a forest gets its turn between the steps of a running ingest, and this + is such a call; the count it answers with describes the moment it ran, + which is all any count ever does. +- **Idempotent, and never a repair of the files.** Reindexing twice + changes nothing the second time, and a node the files no longer have + leaves the catalog rather than being restored to it: the files win, + which is what this endpoint exists to enforce. +- **The memo survives what did not change** (C.6b.1): rebuilding rewrites + every row, and a body whose bytes are identical keeps its hash and + therefore its memo entries. A `reindex` that dropped the memo would + make the repair a punishment. + +**F.41 (acceptance).** `POST /v1/admin/reindex` on a forest whose +catalog was deleted restores `locate`, `scan` and `sniff` to their +pre-deletion answers with no other action; the response's `nodes` equals +the count `vine reindex` reports at a shell on the same forest; a +branch-scoped `admin` is refused with the scope reason; a read-only +Station serves it; it produces no commit, no trace event and no +pheromone in the target forest, and exactly one audit row; a second call +changes nothing; and memo entries for unchanged bodies survive it. + +#### J.13.4 Refresh the dense layer (v0.42) + +`POST /v1/admin/canopy` accepts `{refresh: true}`: embed the nodes marked +stale and leave the rest alone. Same authority, lane and audit as a build +(K.4's surface), and the same answer the status, now carrying `stale`. + +- **A refresh is not a build.** It embeds what changed; a build embeds + everything and is what a model change requires (K.4 forbids a partial + re-embed across two spaces). A refresh against a mismatched or absent + index MUST refuse rather than half-fill it. +- **It is where the operator already goes.** Beside J.13.3's rebuild in + the console's Optimize tab: the content (`sync`), what finds it + (`reindex`), and the dense half (`refresh`) are one errand told three + times, and an operator hunting for them in three consoles learns none + of them. +- **Nothing else may embed a node.** With K.2 amended, this endpoint and + a full build are the only places node vectors are produced. A read + that quietly did it would put an ingest's bill inside a question again. + +**F.42 (acceptance).** With the dense layer active and nodes newly +planted, `locate` MUST NOT issue an embedding request for any node: the +embedder sees exactly one call, for the query, and the same `locate` +repeated on an unchanged forest sees zero (the memo). `canopy_status` +reports `stale` equal to the number of nodes written since the last build +or refresh; `{refresh: true}` embeds exactly those and drives `stale` to +zero without re-embedding the rest; a refresh against a model-mismatched +index is refused rather than mixing two spaces; a node planted and not +yet refreshed is still returned by `locate` (BM25) and still absent from +the vector hits; and dropping the memo changes latency and nothing else. + +**F.26 (acceptance).** `GET /v1/admin/health` matches `Ranger.health()` field +for field on the same forest; a principal holding `admin` on a *branch +prefix* is refused with the scope reason rather than served; a snapshot +lands outside every forest directory and a second one does not package the +first; and no maintenance endpoint produces a commit. + +#### J.13.6 Re-derive what ingest derives (v0.61) + +`reindex` (J.13.3) repairs what finds a node; `sync` (J.8) repairs what a +node says by re-reading its source. Between them sits a repair neither +performs: a derivation rule that improved after the material was ingested. +Aliases (G.2.6) are the case that forced it every input to that +derivation the source path, the title lives in the passport, so the +repair needs no source tree, no converter, no model and no network. Yet +the only path to it was `sync`, which resolves the recorded host root and +requires `admin` over a directory the Station may no longer be able to +read. A forest of 1,877 nodes was therefore a forest where the feature +shipped in v0.59 was, in practice, absent and "the code has it" is not a +claim a user can verify from outside. + +`POST /v1/admin/recurate {forest, derive: ["aliases"]}` — under +`/v1/admin/` beside `reindex` and the canopy build, because it is the +same kind of act on the same authority, and because a literal under +`/v1/forests/{forest}/` would have to be read past the primitive +catch-all. + +1. **From the forest's own passports, and nothing else.** It reads what + the nodes already record and writes only fields the pipeline derives. + It MUST NOT open a source file, call a converter, call a model or reach + the network: this is arithmetic on material already committed, and + anything else is `sync` wearing a different name. +2. **It unions, exactly as `sync` does** (G.2.6 rule 3): missing derived + forms are added, hand-written ones are never displaced, the 16-alias + cap never evicts an existing entry, and overflow is counted + (`aliases_clipped`) rather than dropped in silence. A node with nothing + to add is not rewritten and not committed. +3. **One commit per changed node, `.md` only**, subject + `recurate(aliases): <id>`, principal stamped like every Station write + (J.4). The report carries `scanned`, `changed`, the ids, and + `aliases_clipped` a pass that changed nothing says so, which is the + answer an operator running it twice should get. +4. **`admin` on the forest, on the writer lane, and the caller waits** + the shape of `reindex` (J.13.3), for the same reasons: it rewrites + rows the caller may not be scoped to read, and the count IS the + forest's size. Unlike `reindex` it commits, so a read-only Station + refuses it. +5. **`derive` is a closed list.** `aliases` is the only member in v0.61. + `origin` is deliberately NOT one: it is derived from the source file's + address, which this pass does not have and MUST not guess (G.2.7 rule + 2's "only when absent" protects a written origin; inventing one from a + recorded relative path would fabricate provenance, and provenance is + the field this product is least allowed to fabricate). +6. **In Studio it lives beside `reindex`, in Optimize** (J.5.10): `sync` + keeps the content current, `reindex` keeps what finds it current, and + this keeps what ingest would derive today current. Three repairs, one + tab, each naming what it does not do. + +#### J.13.7 The staging area, seen and cleared (v0.61) + +J.8.3 makes uploaded bytes a courier that empties itself as documents +land. Three things still stay: a conversion that failed, a batch that was +cancelled, and — on any forest ingested before that rule — a document +whose node was later pruned. All three are legitimate; what was not is +that none of them could be **seen**. Invisible accumulation is precisely +what made a pruned node come back, and an operator with a browser had no +answer at all. + +`GET /v1/admin/staging?forest=` and `POST /v1/admin/staging {forest}`. + +1. **One resource, because it is one question asked twice.** The GET says + what is there — how many files no live passport records, their total + size, and their names (bounded, `truncated` when the bound cut). The + POST removes exactly those. +2. **"Unrecorded" is a fact, not a guess:** a staged file whose relative + path is no node's `source_path`. Nothing is inferred from age, name or + modification time — a heuristic here would eventually delete a document + somebody was about to ingest. +3. **Removal is a MOVE into `_derived/graveyard/_staging/`**, C.14's rule + applied to the same class of bytes: the graveyard is disposable, never + a source of truth, and the operator's to empty. +4. **It refuses while a batch runs on that forest** (`E_LOCKED`, naming + the job): a running batch is reading these files, and one cancelled + halfway leaves the rest of its bytes here. +5. **`admin` and an unrestricted scope**, `reindex`'s rule (J.13.3): the + area holds bytes headed for any branch, so a branch-limited grant is not + the authority for it. The GET is served by a read-only Station; the + POST is not, because it writes. +6. Audited as `staging.clear` with the count. The names are not audited: + an uploaded filename is the operator's, and the count is what the act + was. + +#### J.13.1 Snapshot download (v0.39) + +`GET /v1/admin/snapshots/{forest}/{file}` streams one file the J.13 +listing names a bundle or its payload sidecar with a filename header +and an octet-stream type. + +- **Owner-only.** A bundle is the whole forest with its whole history: + every branch scope, every redaction the grant table enforces, collapses + the moment the bytes leave. `admin` on a forest is authority over the + forest's *service*, not over every byte it has ever held under every + other principal's scope so the only principal a download cannot + over-serve is the one whose authority already spans everything, and + that is the owner bit (J.2.4). A non-owner MUST be refused with that + reason, never served a filtered archive; there is no such thing as a + scoped bundle. +- **Contained after resolution.** `{file}` is a name, not a path: one + segment, no separators, no relative parts, and the resolved target MUST + still sit inside that forest's snapshot directory (the J.8.2 posture: + validate as a name before it is a path, contain after resolution). A + name the listing would not return is `E_NOT_FOUND`, never a probe into + the volume. +- **Host state only.** Serving a download touches no lane, writes no + trace, deposits no pheromone and produces no commit the same + discipline as the J.9 job board. It is audited (J.4) with the file name + and byte count; the audit row is the only record it leaves. + +#### J.13.2 Snapshot import (v0.39) + +`POST /v1/admin/snapshots/import` carries a new forest id and the +snapshot itself the bundle, plus the optional payload sidecar in the +request body, and answers with the forest the registry now serves. + +- **Owner-only.** Import is J.7 creation *plus* arbitrary content that + bypasses every converter, curation pass and review the J.8 surface + imposes on bytes entering a forest a bundle is already forest and + enters as-is. The only principal that may plant an unreviewed forest on + the volume is the one that governs the volume. +- **J.7 rules apply whole.** The id is validated as a name before it is a + path; an existing id MUST be refused rather than adopted; the creator + holds the result with full capabilities. Import is the second way a + forest appears on a Station, and it appears exactly where J.7 forests + do. +- **The body is the source.** The bundle arrives as request bytes and is + staged outside every forest (snapshots are host state, J.13); no host + path is taken from the caller and J.8.2's roots are not consulted — + they govern what the Station may *read*, and import reads nothing from + the volume. The accepted size is capped by + `MONKEYLLM_STATION_IMPORT_MAX_MB`, which as of v0.50 **has a default** + (1024): an unbounded upload fills the volume every other forest lives + on, and a limit nobody set is a limit nobody has. `0` still means no + limit, for a deployment that decided so rather than inherited it. +- **A sidecar carries payloads, and the consumer decides that (v0.50).** + Part I's producer writes only payload files, but an imported bundle came + from somewhere else — that is what importing is — so `restore` MUST + validate every member *before* extracting, and MUST refuse the archive + rather than skip a member: an archive carrying something else was built + by somebody who expected it to land, and the operator is entitled to + know before the forest exists. Members are named positively (the payload + files a sidecar exists to carry) rather than filtered against known-bad + shapes; the extraction's destination is a working git repository, whose + contents git itself later reads and acts on, and discarding relative + segments is not a sufficient rule there. An explicit uncompressed + ceiling applies, since compression ratios are not bounded by the upload + cap above. +- **Arrives servable, arrives cold.** Import ends with Part I restore, + payloads placed beside the tree, and a `reindex` a hosted forest has + no shell to run one, and a forest the console lists but cannot serve is + a silent failure wearing a success status. It MUST NOT spend a model + call: no curation, no canopy build the vector layer waits for an + operator who asks for it, and `locate` stays BM25-only until then + (C.6). Accepted formats are exactly what Part I `create` produces. The + new forest opens and warms like any other (J.6.1). + +**F.39 (acceptance).** A snapshot created over J.13, downloaded over +J.13.1 and imported over J.13.2 under a fresh id yields a forest whose +`git log` equals the source forest's; the downloaded bytes hash-equal the +file on the volume; a `{file}` carrying a separator, a relative segment +or a name absent from the listing is refused without filesystem effect; a +non-owner `admin` is refused on both routes with the owner reason; an +existing id is refused rather than adopted; the imported forest answers +`locate` with no further shell step and stays BM25-only until a canopy is +built; and neither route produces a commit, a trace or pheromone in any +forest. + +#### J.13.5 The lock, inspected and released (v0.55) + +C.9's lock heals itself when its holder dies — that is the fix. What +remains for the host is the pair of questions an operator still asks: +*who has this forest*, and *how do I clear a file the kernel cannot vouch +for* (the fallback filesystems of C.9 rule 4, and the caution of wanting +to see before trusting the self-heal). + +- **`GET /v1/admin/locks?forest=`** answers one of three states: + `{state: "free"}` (no file), `{state: "orphan", holder}` (a file + nobody holds — the next open reclaims it), `{state: "held", holder}` + (a live writer; `holder` is the C.9 card: pid, host, since). The probe + asks the kernel and reads the file; it MUST NOT open the forest or + touch a lane — a diagnostic that needs the patient healthy is not a + diagnostic. +- **`POST /v1/admin/unlock {forest}`** removes an **orphan** lock file + and answers what it found. A **held** lock is refused with `E_LOCKED` + quoting the card: an endpoint able to break a live writer's lock is an + endpoint able to produce two writers, which is the corruption C.9 + exists to prevent — no flag overrides this. Both routes ride + `admin_gate` (C.12 rule 6) and the mutation is audited under J.4.1 + with the forest id and the card it removed. +- **The console offers it where the refusal appears (amends J.5.9).** + The Health console, on an `E_LOCKED` answer, shows the lock card and — + for the states the endpoint would accept — the release action. The + button is the API's `unlock`, nothing more: a console MUST NOT gain a + path the API refuses. + +**F.40 (acceptance).** For every query in the Phase 0 suite, a `sniff` +answered from a cold memo and the same `sniff` answered from a warm one +are byte-identical once ranking fields are held constant, and both equal +the direct scan with the memo disabled; editing one node's body changes +that node's result on the next call while every other node is served +from the memo; a `reindex` after an edit that restored the original text +invalidates nothing; a scoped `sniff` populates entries a later global +`sniff` uses; a node with `content: reference` is rescanned every call; +deleting `_derived/` changes latency and nothing else; and `heat` and +`score` still move between two otherwise identical calls. + +### J.14 Payload bytes (v0.48) + +A `media` node's image and a dataset's `.db` live beside the map as +payload files (A.3.1, G.7). Every read primitive serves the textual +proxy on purpose text to find, binary to consume (G.5) but until +now nothing served the binary to the person: a screenshot the Clipper +ingested was a node whose image no console could show. + +`GET /v1/forests/{forest}/payload/{node}`: + +- Requires the `read` capability on the forest. The node resolves + through the same scope rules as every read: out of scope and absent + answer a **byte-identical `E_NOT_FOUND`** (J.3's no-existence-oracle + invariant). A node without a `payload` field is `E_NOT_FOUND` too — + absence is explicit, the map keeps working. +- A remote payload URI (G.9 `s3://`, `file://`) is refused with + `E_SCHEMA` naming the scheme: v1 serves local bytes only. Fetching + on a GET would hide a network dependency inside a read; a remote + region is warmed by `vine prefetch`, not by a browser. +- The resolved file MUST lie inside the forest root. The `payload` + field is Gardener- or operator-written, not caller input but a + containment failure is refused, never followed; this surface hands + out file contents and gets the J.8.2 discipline. +- The response is the raw bytes: `Content-Type` guessed from the file + name (`application/octet-stream` when unknown), `ETag` from + `payload_hash` when the node carries one, `Cache-Control: private`. +- It is a **human surface**. Payload bytes MUST NOT enter material the + host assembles for a model not through this route, not through any + other: the describer (G.5.1) reads the image at ingest, and a + multimodal *client* that wants the pixels fetches them deliberately + through `view` (C.6d), into its own context, under its own budget. + What G.5's line forbids is bytes arriving unasked in a token-budgeted + bundle; what it always intended is a client choosing to consume the + binary it found. +- Audited like a read; served by a read-only Station (it writes + nothing). +- A console SHOULD render an in-scope media node's image payload + through this route beside the node's prose (v0.48). The description + exists because of the image; a reader shown one without the other is + left trusting text about pixels nobody can see. + +**F.49 (acceptance).** The served bytes equal the file on disk and the +`ETag` equals the node's `payload_hash`. A scoped principal asking for +an out-of-scope media node receives the same envelope as for a missing +one; a node without payload the same. A dataset's `.db` is served +under the same rules. A `payload` field resolving outside the forest +root is refused, and a remote URI answers `E_SCHEMA`. All covered by +tests. + +#### J.14.1 The document is a byte surface too (v0.56) + +J.14 served the binary beside the map; nothing served the map's own +text. `pick` returns JSON with the body escaped inside — and above the +C.4 ceiling, not even that — so the only way to hand a forest document +to an e-mail, a ticket, a PR or a pipeline was to reassemble it outside +the forest. That reassembly is the local `.md` habit, mechanized. + +`GET /v1/forests/{forest}/export/{node}`: + +- Answers `text/markdown; charset=utf-8` with + `Content-Disposition: attachment` naming `<leaf>.md`. **No token + budget**: this is a download for people and pipelines, J.14's + precedent — budgets protect a model's context window, and none is on + this path. +- For `content: inline` the response is the passport file **verbatim, + byte-identical** — frontmatter and body exactly as planted, which is + what makes `curl … > report.md` reproduce the planted document + (F.84). For `content: cached|reference` the response is the + frontmatter plus the resolved body (G.7); an unreachable body is + `E_NOT_FOUND` with the map intact, G.7's own rule. +- Scope, refusals, audit: J.14 verbatim — `read` capability, + out-of-scope and absent byte-identical `E_NOT_FOUND`, path containment, + audited as a read, served by a read-only Station. +- Any node type exports: a dataset or media node exports its passport + (the map); the payload stays J.14's route. One route per surface, + no overlap. + +**The subtree exports too, and the flag is never swallowed (v0.57).** +The consumer team sent `?recursive=true`, received `200` and the branch +node alone — the parameter was accepted and ignored, the exact defect +C.8 had just fixed for `graft`, alive on the route beside it. Two rules: + +1. `recursive=true` on a **branch** returns a **zip** + (`application/zip`, `Content-Disposition` naming `<leaf>.zip`): one + member per node of the subtree, the branch's own passport included, + each member the **byte-identical single export** of that node, named + `<id>.md` (the id is a path, so the zip unpacks as the subtree it + is). Members are the caller's scope's view: out-of-scope nodes are + absent exactly as they are absent from `scan` — and absent silently, + because a manifest of what a scope may not see would be the size + oracle J.3 exists to prevent. Payloads are NOT inside (A.3.1's rule: + the map travels, the binaries are referenced); J.14 remains the byte + route. On a non-branch node, `recursive=true` is `E_SCHEMA` — a leaf + has no subtree, and pretending otherwise is the silence this rule + removes. +2. **An unknown query parameter on this route is `E_SCHEMA`**, naming + the parameter and listing the accepted set — C.12's discipline + applied to the query string. A download URL is pasted, edited and + shared by hand more than any JSON body; the silent-parameter failure + mode is *worse* here, not better. + +### J.15 The Clipper (v0.48) + +A browser extension that clips the page a person is reading into a +forest. It is a **client** Studio's rule (J.0) verbatim: MCP/REST +surfaces only, no privileged path, nothing in the engine knows it +exists. What is normative here is the little that keeps it honest: + +- **It stores the server origin and a paired key (J.2.6), never the + password.** The password is a gesture at pairing, not data at rest. + Logout discards the key; revocation stays in People (J.2.2), where + every key already lives. +- **Prose goes through `compose`; binaries go through `upload`.** One + clip = one `compose` (a single document, answered in place, J.8.1 + review available); a screenshot = one `upload` entry (`{name, b64}`, + a J.9 job). The Clipper MUST NOT invent a third write path J.5.7's + rule for the console is the rule for every client. +- **A page clip with a screenshot is two nodes**, tied to each other + as far as the write paths allow: the markdown names the image file + it was clipped with, and the image's *file name* carries the page's + title and host the stub body (G.5.1) quotes that name, so the + provenance survives into prose. The media node's body is written + server-side by the stub or the describer; a client cannot author it, + and MUST NOT gain a way to (that would be the third write path this + section forbids). The pairing is prose, not a new edge type; the + Curator's closed-candidate proposals (G.4.2.1) remain the only + machine-written links. +- **The click answers immediately; the work happens behind it.** The + Clipper MUST NOT hold its UI against the server: uploads, composes + against a busy lane and slow batches queue in the extension + (storage-backed) and settle with a notification, while the person + keeps browsing. A popup frozen against a forest lane that is mid- + ingest (J.9, G.10.1) is the failure mode, not a UX choice. +- **On `E_LOCKED` the Clipper queues client-side and retries.** The + host still never queues (J.9); the queue dies with the browser, like + Studio's (J.9.2). +- **Capture offers the whole page and a dragged region (v0.51).** A page + capture MUST be the scrollable document, not the viewport: the extension + scrolls to the end, shoots each viewport, and composes the slices into + one image. What a screenshot is for here is the reason — it is read once, + at ingest, by the G.5.1 describer, and that prose is all `locate` and + `sniff` will ever see of it, so a capture bounded by the window decides + how much of the page is findable by where a scroll bar happened to rest. + + Four rules, each of them a way the obvious loop goes wrong: + + 1. **Re-measure at every step.** Scrolling is what makes a lazily-loaded + page grow, so the height read before the first move is not the page's + height, and trusting it stops the walk in the middle of a feed. + 2. **Hide viewport-fixed elements after the first slice.** They travel + with the scroll, so leaving them stamps the same header down the + length of the composed image, over the content it covers. + 3. **Bound it, and notice a page that does not move.** An explicit slice + limit, and a walk that ends when scrolling stops advancing rather + than shooting one viewport repeatedly; the composed height MUST come + from what was captured, so a page that outgrew the limit ends where + the capture ended rather than in a blank band. + 4. **Give the page back.** The scroll position, and anything hidden for + the walk, are restored when it finishes — a clip that quietly leaves + somebody at the bottom of an article has taken something from them. + + A page the extension may not script still yields the capture the browser + will give: one viewport is a smaller answer, never an error. + + The **region** picker is unchanged and stays a crop of the visible view — + it is a rectangle somebody drew on what they were looking at. It is an + overlay injected on the click the same activeTab + consent as every injection and the crop happens client-side, + device-pixel-ratio aware: no pixels leave the tab except the chosen + rectangle. The drag ends the DRAW, never the choice: the rectangle + stays up, movable and resizable by its handles, until the person + confirms a selection two pixels short is adjusted, not redrawn. + The picker MAY annotate (arrow, box, pen, text label): annotations are + **vectors, composited by the worker onto the cropped bitmap** — + never DOM the capture must race, and they render at full sharpness + at any pixel ratio. The picker MAY take a note, typed or dictated; + the note travels as a **paired `compose`** naming the screenshot + file (the two-nodes rule above) the media node's body stays the + server's to write. Dictation runs in the **extension's own + offscreen context**: the microphone grant belongs to the extension, + made once on a visible page, and the page under the overlay never + holds the microphone its origin collects no grant and its + Permissions-Policy cannot forbid what never runs in it. +- **Keyboard shortcuts are the platform's commands, never key hooks.** + Suggested keys apply only when nothing else holds them a clash + with the browser or the system resolves to *unassigned*, never to a + stolen key and the person remaps them in the browser's own + shortcut settings. Pressing one is a user gesture like the click, + and grants exactly what the click grants. +- **An image under the pointer is clippable from its context menu.** + The bytes are read from the page; when cross-origin rules bar + reading them, the fallback is the screen region the image occupies. + Either way they travel as an ordinary `upload`, with `source_url` + naming the page (J.8). +- **Every clip carries its address.** Composes end with the `Source:` + line; uploads carry `source_url` a clip nobody can trace back to + its page is a citation with no cite. +- **Writing happens in a full tab, not the popup.** The editor page + offers room, rich editing and dictation through the browser's own + speech facilities, and sends through the same `compose`. A popup + dies on blur; a microphone permission prompt would kill the very + note it asked to hear. +- **The extension's UI language is the person's own setting**, stored + with the extension, defaulting to the browser's. Manifest-level + strings follow the browser locale the platform's rule, not ours — + and the panel's language preference lives in another origin's + storage, unreachable by design. +- **It injects on user action only.** The extension requests host + permission for the paired origin, reads the page under `activeTab` — + the click is the consent and MUST NOT run on every page. It sends + exactly what the person chose: the selection, the readable article, + the page as an image, or the region they drew. That the page capture + scrolls to compose itself (above) is the same single consent doing the + same single job it is one capture of one page, not a second visit. +- **Clipped pages are third-party text entering curation.** The + boundary is held by two things that already exist: the pair mask + (a clipper key holds `read`+`ingest` and nothing else) and + G.4.2.1's closed candidate list, which makes an invented link + target structurally impossible no matter what the page says. +- **Distribution is the Station's, and it is not admin-gated.** One + shared build, served at `GET /clipper.zip` a static artifact + beside the console shell, unauthenticated like it: the extension is + public software carrying no secrets and no origin, because pairing + supplies both. The server ships no per-user binary, ever. The + console MUST offer the download to every signed-in person, not only + to administrators pairing is self-service (J.2.6), so distribution + MUST be too, or the administrator becomes the gatekeeper the pair + route exists to remove. A deployment that stages no build answers + 404 with the reason, like a missing Studio build does. + +**F.55 (acceptance).** A page taller than the window, clipped as an image, +arrives as one media node whose picture reaches the end of the document — +not the end of the window. On a page that loads as it scrolls, the capture +reaches past what the document measured before the first move. A fixed +header appears once, not once per screen. The person's scroll position is +where they left it. A page that cannot be scrolled, and a page the +extension may not script, each yield one viewport rather than an error. + +### J.16 Webhooks (v0.53) + +Everything Part J does so far is **pull**. A principal arrives, is +identified, is scoped, and reads. That is the right shape for a knowledge +base and the wrong shape for everything around one: the operator who wants +a message when a contract lands, a rebuild when the corpus changes, or a +page when the answer model starts refusing has no way to be told. Their +only option is to ask again, and asking again is the one thing this +project's economics are built against. + +A webhook is the outbound half. The Station POSTs a small, signed +notification to an address the operator registered, when a named event +happens. It is a **host** surface, exactly like providers and bindings +(J.10): no primitive gains a parameter, no MCP tool is added, and nothing +here is written into a forest. + +Two of those are deliberate rather than incidental. **No MCP tool**, +because a webhook is a standing instruction to send data outward and an +agent that could install one could exfiltrate a forest one event at a +time — the same reasoning that keeps `ScopedVine.plant` from forwarding +G.2.5's `adopted` flag. **Nothing in the forest**, because a forest handed +to another operator MUST carry no credentials (J.0), and a webhook URL is +a credential in every way that matters. + +#### J.16.1 The payload is an audit row with a destination (normative) + +This is the load-bearing rule and every other rule in J.16 follows from +it: **a delivery leaves the Station's authority behind.** Inside, a read is +scoped by J.3, bounded by a token budget and recorded by J.4. The moment +bytes are POSTed to a URL, whoever holds that URL reads them, for as long +as they keep them, under no scope at all; and a grant revoked afterwards +reaches none of it. + +So a webhook body carries what an audit row carries — *what happened, to +what, by whom, when* — and MUST NOT carry content: + +- node bodies, `pick` sections, `sniff` snippets: never; +- a question, a model's reply, the text of its evidence: never; +- SQL, column values, dataset rows, a dataset's `## Notes`: never; +- payload bytes, or any URL from which bytes can be fetched without a + credential: never. + +What it does carry is **identity and shape**: node ids, node types, +parents, counts, states, job ids, commit shas, capability names, +durations, costs, error codes. A receiver that wants more comes back +through the API holding its own credential, and is scoped like anybody +else. That is the entire design: the notification says *there is something +to read*, and the reading stays inside the authority that governs it. + +**One opt-in, per webhook.** A webhook MAY carry `include_metadata`. Set, +the events that name a node also carry that node's `title` and `summary` — +curated metadata, the same two fields `locate` already returns to anyone +holding `read`. Three rules keep the opt-in from becoming a hole: + +1. It defaults to **off**, and the console states what turning it on + means at the moment it is turned on. +2. It never widens past `title` and `summary`. The list above stays + forbidden in every mode; there is no setting that sends a body. +3. **It adds only what the act already knew.** `plant` was handed a title, + so `node.planted` can state one; `graft` was not, so `node.grafted` + does not, and does not go looking. A webhook MUST NOT cause a read: an + event that opened a node in order to describe itself would put an + unbounded, unaudited retrieval on the path of every write. + +#### J.16.2 Two scopes, and why a scope is a ceiling + +A webhook belongs to exactly one scope: + +- a **forest** — managed by a principal holding `admin` on it, hearing + that forest's events; +- the **deployment** — managed by a principal who *governs the + deployment*, which is J.10.2's reach rule unchanged (the owner, or an + administrator of every forest that exists), hearing every forest's + events **and** the ones that belong to no forest. + +The deployment scope exists because several of the most useful signals are +not about a forest at all: a refused sign-in, a key issued, a provider +whose address moved. J.4.1 rule 3 already makes those the owner's to read, +and a webhook is a way of reading, so the same reach decides it. + +The scope is a **ceiling, not a filter**. A forest webhook cannot +subscribe to a deployment event however its subscription list is written, +and the Station refuses the subscription rather than silently dropping the +event: a scope that a list could widen would make the list the control, +and the list is edited by whoever holds the console. + +`forest.created` is deployment-scoped for a duller reason than authority. +A forest that has just been created has no webhooks on it, so the event, +delivered to its own scope, would be delivered to nobody. + +**Authority is re-read at delivery, never only at creation.** v0.50 settled +that a second forest narrows deployment authority *the moment it exists, +with nobody revoking anything*; a standing instruction to send data +outward would otherwise escape that rule, having been created while the +authority held and continuing to fire after it lapsed. So every delivery +re-reads the authority of the principal the webhook is **owned by** — +`admin` on its forest, or deployment governance — and a webhook whose +owner no longer holds it is **suspended**, not deleted, and says so +wherever it is listed. Suspension is undone by the grant returning, or by +another principal with the authority adopting the webhook. Deleting it +instead would be the same fact delivered as silence, and silence reads as +an integration that works. + +#### J.16.3 The catalogue + +Event names are **contract tokens** and are English, the A.1 rule applied +to a second vocabulary. They are `group.thing.happened`, they are stable +across versions, and the catalogue is **closed** and **served**: `GET +.../webhooks` returns it beside the list, so a console never hard-codes it +and an integration can enumerate what it may subscribe to. + +Only events the Station can actually emit are named. A catalogue entry +that never fires is worse than an absent one, because it is a subscription +that reads as coverage. + +| Scope | Group | Event | Fires when | +|---|---|---|---| +| forest | content | `node.planted` | `plant` created a node (C.7) | +| | | `node.grafted` | `graft` extended one (C.8) | +| | | `node.pruned` | `prune` removed one (C.14, v0.56) | +| | | `node.transplanted` | `transplant` moved one (C.15, v0.58 — both ids, backlinks rewritten count) | +| | | `branch.created` | the planted node was a branch (J.5.7) | +| | | `dataset.created` | `plant` created a dataset (C.7.1) | +| | | `dataset.changed` | `tend` wrote a row (C.10) | +| | ingest | `ingest.started` | a batch was accepted (J.9) | +| | | `ingest.finished` | it finished | +| | | `ingest.failed` | it ended in an error | +| | | `ingest.cancelled` | it was cancelled | +| | | `ingest.document.failed` | one document inside it failed (G.10) | +| | answer | `answer.served` | `answer` replied, from the model or the store | +| | | `answer.failed` | the composite errored | +| | access | `access.denied` | a scoped call was refused (403) | +| | | `grant.changed` | a grant on this forest was written or revoked | +| | | `model.bound` | a role was bound or unbound here (J.10) | +| | maintenance | `snapshot.created` | Part I, over J.13 | +| | | `canopy.built` | Part K's index was built or refreshed | +| | | `reindex.finished` | J.13.3 repaired the catalog | +| | | `recurate.finished` | J.13.6 re-derived from the passports | +| deployment | access | `auth.login.succeeded` | a sign-in was accepted | +| | | `auth.login.failed` | one was refused (J.4.1) | +| | | `pair.issued` | a password became a key (J.2.6) | +| | | `key.issued` | a key was minted | +| | | `key.revoked` | one was revoked | +| | config | `provider.changed` | a provider was created, edited or removed | +| | | `forest.created` | a forest was created (J.7) | + +`webhook.test` exists and is **not subscribable**: it is what the console's +test button sends, so that "does this address work" is answered without +waiting for a real event and without a real event's data. + +**Reads are deliberately absent.** Every read already deposits pheromone +and writes an audit row. A webhook per read would put an outbound HTTP +request on the path of the primitive with the tightest budget in the +system (F.6), in order to say something the audit says better and the +trails say cheaper. + +#### J.16.4 Delivery + +**An event MUST NOT be able to fail or slow the act that produced it.** +J.4's last sentence, applied to a thing that talks to the internet. +Emission is non-blocking and never runs on a forest lane (J.9): the +primitive has returned before any socket is opened. Emission MUST also be +O(1) when nothing subscribes — the Station holds the subscription index in +memory and refreshes it when a webhook is written, because a registry read +per primitive call would tax the hot path in order to answer "no". + +- **One body, many attempts.** The body is byte-identical on every retry, + so the signature is stable and a receiver deduplicating by `id` sees one + event. What changed between attempts travels in the headers. +- **Retries are bounded, backed off, and stop.** Delivery is best-effort + notification and never a queue with a guarantee: what happened is + recorded in the audit table and in git, and a webhook is a hint that + they moved. A restart forgets pending retries — stated here, rather than + discovered later. +- **The queue is bounded and says so.** Overflow drops and counts, and the + count is reported. A silent drop reads as an integration that works. +- **Consecutive failure suspends the webhook**, with the reason recorded. + An endpoint that has been answering 500 for a week is not a + subscription; it is a retry loop nobody is watching. +- **Every attempt is recorded**: delivery id, event, when, attempt number, + HTTP status, duration, and a clipped copy of the response. The response + body is the *receiver's* text rather than forest content, so keeping it + is what makes a broken integration debuggable. Records are bounded per + webhook, and the bound is stated. +- **Redelivery** re-sends a recorded delivery, body unchanged, as a new + attempt. It is how an integration is repaired without waiting for the + event to happen a second time. + +**Signing.** Every request carries `X-MonkeyLLM-Signature: sha256=<hex>` — +the HMAC-SHA256 of `<timestamp>.<body>` under a per-webhook secret — +beside `X-MonkeyLLM-Timestamp`, `X-MonkeyLLM-Event`, +`X-MonkeyLLM-Delivery`, `X-MonkeyLLM-Attempt` and `X-MonkeyLLM-Forest`. +The timestamp is *inside* the signed string, so a captured body cannot be +replayed as a fresh event. The secret is shown **once**, at creation, and +the console says so at the moment it shows it (J.5.4's rule, for J.5.4's +reason). It can be rotated; it can never be read back. + +**The destination is validated like a provider's.** A webhook URL is a +caller-supplied address that the Station will connect to repeatedly and +unattended — J.10.2's problem exactly, so it gets J.10.2's answer: +`http(s)` only, the host name resolved and **every** address it maps to +judged, non-public ones refused unless the deployment says otherwise +(`MONKEYLLM_STATION_PROVIDER_ALLOW_PRIVATE=1`, which a self-hosted n8n on +the same machine needs). Text inspection would decide on what a URL says +rather than on where it goes. + +**Headers.** A webhook MAY carry a small map of request headers, because +many destinations authenticate. Bounded, never overriding the +`X-MonkeyLLM-*` set or the framing headers, and **write-only**: the API +returns header *names* and never their values, the same custody rule a +provider's key gets, and for the same reason — a value that can be read +back is a value that leaks through whoever can read the configuration. + +**A webhook is audited as the governance change it is.** J.4.1's table +gains a row: created, edited, removed, tested, rotated, suspended, each +carrying the webhook's id and its destination **host** — never the path, +never the secret, never a header value. + +#### J.16.5 The console (amends J.5.1) + +Webhooks are a console of their own, in the **Build** group, requiring +`admin`. That group then reads as the three directions a forest moves in: +Ingest is what comes in, Models is who reads it, Webhooks is what goes +out. + +- **The catalogue is presented as the operator's five questions**, not as + a list of twenty-five tokens: what changed, what was ingested, what was + asked, who was let in or refused, what maintenance ran. Each group + selects and clears as a group; each event states in one line when it + fires. The token itself is shown as stored — it is a contract name, and + J.5.3's content rule applies to it. +- **The body is previewed before it is subscribed to.** Selecting an event + shows the exact JSON that event will POST, including whether + `include_metadata` is on. An integration is built against a shape, and + an operator who cannot see the shape builds against a guess. +- **The test is one button and its answer is the whole answer**: the + status, the duration, and the response the endpoint gave back. A test + that only reported success or failure would leave the two most common + causes — a wrong path answering 404, a proxy answering HTML — + indistinguishable. +- **The secret is shown once, and said so at that moment** (J.5.4). +- **The deliveries are a table with the event, the time, the status, the + attempt and the error**, newest first, with redelivery on each row. +- **The deployment scope appears only for a principal who governs the + deployment** (J.16.2). Hiding is presentation and not the control — the + API refuses either way — but an entry that could only ever refuse + teaches nothing (J.5.1). +- The address carries the selection: `?hook=` for the webhook being + edited, `?tab=` for settings or deliveries, both in `useRouteState`'s + `allow` list (J.5.8). + +**F.65 (acceptance).** A webhook subscribed to `node.planted` on a forest +receives exactly one POST per `plant`, whose body carries the node's id, +type and parent and carries **no** `title`, `summary` or body text. The +same webhook with `include_metadata` set carries `title` and `summary` and +still no body text. `graft` on the same webhook carries neither, with the +opt-in set or clear. The `plant` response time is unchanged when the +destination is a black hole that never answers. + +**F.66 (acceptance).** A forest-scoped webhook asking to subscribe to +`auth.login.failed` is refused with `E_SCHEMA` naming the event. A +deployment-scoped webhook created by the owner receives it. When a second +forest is created and the webhook's owner administers only the first, the +next delivery does not go out and the webhook is listed as suspended, +naming the reason; granting `admin` on the second forest resumes it +without the webhook being edited. + +**F.67 (acceptance).** A destination answering 500 is retried the stated +number of times, backing off, with one delivery record per attempt sharing +one delivery `id` and one signature; after the stated number of +consecutive failures the webhook is suspended. `sha256=HMAC(secret, +timestamp + "." + body)` verifies against the headers on every attempt. +A URL resolving to a loopback or private address is refused at creation +unless `MONKEYLLM_STATION_PROVIDER_ALLOW_PRIVATE=1`, and a header value +saved on a webhook is never returned by any endpoint. + +### J.17 A share is a key with one room (v0.56) + +The reading console (J.5.14) shows a document to a person with an +account. The person the document is FOR usually has none — the operator's +stated flow is "send it to the dev team" — and as long as reaching them +requires reconstructing the document outside the forest, every report +has a local copy by definition. A **share link** hands one document to +somebody with no account, under authority that stays the issuer's. + +`POST /v1/forests/{forest}/share {node, days?}` → `{id, url, expires}`. +`GET /s/{share-token}` serves the reading page; the page fetches +`GET /v1/share/{share-token}` → `{title, markdown, outline, expires}`. +`GET /v1/forests/{forest}/shares` lists; `DELETE +/v1/forests/{forest}/shares/{id}` revokes. + +Normative: + +1. **One room.** A share names exactly one node. It grants `read` of + that node's export — never its neighbours, never `locate`, never the + forest's existence beyond this document. The served markdown resolves + like J.14.1's export; `media:` references render as their captions + (J.10.9's fallback), because the token's scope is one node, not the + images beside it. A caller who wants the images shared shares their + nodes. +2. **Issued inside the issuer's own reach.** Creating a share requires + `read` with the node in scope — a share is a delegation, and nobody + delegates what they do not hold. The token is generated with ≥128 + bits of entropy and stored **hashed**, exactly as keys are (J.2.2); + the URL is the secret, shown once at creation. +3. **Authority is re-read at every serve (J.16's lesson).** Each `GET` + re-checks: share not revoked, not expired, AND the issuer still + holds `read` with the node in scope. A lapsed grant suspends every + share it issued, the moment it lapses — a share MUST NOT outlive the + authority it delegated. Revoked, expired, suspended, absent and + never-existed answer one **byte-identical `E_NOT_FOUND`**: a share + URL in the wild must not become an oracle for why it stopped + working. +4. **Expiring, bounded.** `days` defaults to 7, ceiling 90 (`E_SCHEMA` + beyond — the J.2.6 shape). No non-expiring share exists: a URL is a + credential that cannot be rotated, only revoked, and one forgotten + forever is the incident report of 2027. +5. **Listed and revocable where it was minted.** The reading console + shows the node's active shares to their issuer (and all of a + forest's to its admin, who may revoke any — a share is a grant, and + J.2's rule is that grants are visible to who governs the forest). + The listing carries `id`, node, issuer, `expires` — **never the + token**, which no endpoint returns after creation. +6. **Audited as governance and as reads.** `share.created` / + `share.revoked` are J.4.1 governance rows (by share `id`); every + serve is audited by share `id` — the reader is anonymous, the + authority is not. Serves are rate-limited beside `login`/`pair` + (J.2.6): the token space makes guessing hopeless, the limiter makes + it loud. +7. **The page is the reading console in anonymous dress.** Same + renderer, same CSP (J.5.13), outline sidebar, copy/download of the + raw markdown. No Studio chrome that presumes a session; no link into + the forest — the document ends at its own edges. +8. **One address, two representations (v0.59).** `/s/{token}` began as a + console route, so the SPA fallback served it only to a request that + accepts HTML (J.5.8's rule, which is correct and stays): the first + thing anybody does to debug a share — `curl` it — answered **404** + while the same URL opened fine in a browser, and a link that works + for people and 404s for machines reads as a broken feature. The route + now content-negotiates on `Accept`: a document request gets the + reading page, and every other request gets exactly what + `GET /v1/share/{token}` returns, from that same handler — same + authority re-read (rule 3), same rate limit, same byte-identical + `E_NOT_FOUND` for every dead state, same audit row. No second URL is + minted and the mint response is unchanged: the resource is *the + shared document*, and two spellings of one resource is the thing that + confused this in the first place. + +**F.68 (acceptance).** Every MCP tool result's text block contains no +newline and no indentation whitespace between tokens, and parses to the +same keys and values the REST surface returns for the same call. A tool +result carrying the `error` envelope (`look` on an unknown forest, `look` +on a missing node, `tend` on a non-dataset) sets `isError: true`; a +successful call does not; the envelope body is `{code, message, hint}` +either way. `serverInfo.version` equals the installed package version, and +`resources`/`prompts` capabilities are absent from `initialize` while +nothing is registered behind them. Covered by tests. + +**F.69 (acceptance).** `move(direction="all")` on a node with +`degree > 0` is `E_SCHEMA` naming `direction`, the value and the accepted +set — never an empty neighbour list. `locate(scope="typo")` and +`scan(fields=["nope"])` are refused the same way. Every accepted value +behaves exactly as before. Covered by tests. + +**F.70 (acceptance).** On a forest larger than one `scan` page, chaining +`scan(parent, recursive=true, after=<last next>)` from `after: ""` +enumerates every node exactly once — no loss, no duplicates — and every +response carries `total` (constant across the chain) and `returned`. A +page that left nodes behind carries `next`; the final page does not. +`after` beside `toward` is `E_SCHEMA`. Without `after`, ordering and +shape are byte-identical to v0.53, plus `total`/`returned`. Every `scan` +item's default fields include `body_tokens`; a `sniff` result and a +`harvest` item carry `body_tokens` equal to `look`'s `stats.body_tokens` +for the same node. A demoted `sniff` hit carries `demoted: true` with its +score unadjusted; `_meta/schema` in a recursive scan carries +`system: true`. Covered by tests. + +**F.71 (acceptance).** A `graft` that changes the body without a +`summary` in the same patch returns `summary_stale: true`; carrying a +`summary` (or touching no body) returns no such key. A frontmatter-only +graft setting `aliases` succeeds, the FTS row is refreshed, and +`locate` finds the node by the new alias; 17 aliases, or an alias that is +not a non-empty string, is `E_SCHEMA`. Covered by tests. + +**F.72 (acceptance).** With `aliases: {targets: BE}` in `gardener.yaml`, +adopting `targets/291-budget.md` yields a node whose passport carries +`aliases: ["BE-291", "targets/291"]` and `locate("BE-291")` returns it +first; the same tree adopted without the map yields no aliases. A `sync` +refresh preserves them. Curation never writes aliases. Covered by tests. + +**F.73 (acceptance).** An `answer` whose provider reply carries +`finish_reason: "length"` returns `truncated: true` and the +`finish_reason`, and is not stored: the same question asked again runs +the model again. A finished reply carries neither flag and stores as +before. A call with `reply_tokens: 40` is served with the clamped 64 and +the response says `reply_tokens: 64`. Covered by tests. + +**F.74 (acceptance).** `health()` lists under `needs_description` exactly +the `type: media` nodes whose body still carries the G.5.1 stub sentence, +and the sentence is a single shared constant between the converter and the +check. Covered by tests. + +**F.75 (acceptance).** A `.vine.lock` file whose writer is gone (the file +present, the kernel lock unheld) does not stop the next writable open: +the Vine opens, serves, and rewrites the card — no manual step, no +restart. A second writable Vine on a forest whose first is still open is +refused `E_LOCKED` naming pid, host and since; closing the first admits +the second. On a Station, an orphan lock left before boot changes neither +warm-up nor any request's outcome. Covered by tests. + +**F.76 (acceptance).** `GET /v1/admin/locks` reports `free` with no file, +`orphan` for a card nobody holds, and `held` with the card while a writer +lives. `POST /v1/admin/unlock` removes the orphan (audited, with the +card), answers idempotently for `free`, and refuses `held` with +`E_LOCKED` quoting the card. Both refuse a missing `forest` with +`E_SCHEMA` (C.12 rule 6) and a non-admin with `E_FORBIDDEN`. Covered by +tests. + +**F.77 (acceptance).** While a foreign writer holds a forest, +`/v1/health` answers `status: "degraded"` with `forests.locked` counted +and no forest id anywhere in the body, and `forests()` / `GET +/v1/forests` mark that entry `locked: true` for a key that may see it. +With the writer gone and only its file left, health answers `ok`, nothing +is marked, and every read serves. Covered by tests. + +**F.78 (acceptance).** Every tool name returned by `tools/list` appears +in the `instructions` the same server hands to `initialize` — compared +mechanically, so the next tool added without its sentence fails the +suite. Covered by tests. + +**F.79 (acceptance).** `pick` of a body over 4,000 tokens returns a +non-empty first page within the budget, `truncated: true`, `next`, +`returned` and `total`, and a hint naming `after`. An unknown cursor is +`E_SCHEMA` naming it; `after` beside `section` is `E_SCHEMA`; a body +within budget returns the pre-v0.56 shape with no cursor fields. A +single block wider than the budget arrives alone, flagged `cut: true`, +with `next` advancing past it. Covered by tests. + +**F.80 (acceptance).** The pages of a multi-page body, fetched in cursor +order and concatenated, equal the body **byte-identically** — measured +on a body with tables, fenced code, nested lists and accented text. A +19,420-character body completes in at most 5 calls. `pick(id, +section=[a, b, c])` returns every requested name in exactly one of +`sections` / `missing` / `dropped`, in request order, under one +4,000-token budget; a bare-string `section` returns the v0.55 shape to +the byte. Covered by tests. + +**F.81 (acceptance).** `graft` whose patch carries an unknown key beside +a legal operation refuses with `E_SCHEMA` naming the key and listing the +accepted operations, and writes nothing — the legal operation is NOT +applied. The same unknown key alone refuses identically. Covered by +tests. + +**F.82 (acceptance).** `look` returns `created` and `source` for every +node and `aliases` for a node that carries any; a scoped look shows the +same values. `scan(filter={"source": "agent"})` returns exactly the +nodes whose passport says so. Covered by tests. + +**F.83 (acceptance).** No wire response of any primitive contains the +string `banana` in a field value: `kind` emits `note`/`branch` in +`locate`, `scan` and everywhere else it appears. `locate(scope="notes")` +filters leaves; `scope="bananas"` behaves identically (deprecated +alias); `scan(filter={"kind": "note"})` matches what `kind` emits. +Covered by tests. + +**F.84 (acceptance).** `GET .../export/{node}` of an inline-content node +answers `text/markdown` bytes equal to the planted file, for a node of +any size; out-of-scope, absent and payload-less answer the byte-identical +`E_NOT_FOUND` of J.14; a read-only Station serves it. Covered by tests. + +**F.85 (acceptance).** `prune` of an unreferenced leaf removes the +passport, the parent-index entry and the catalog row in one commit, and +a subsequent `plant` of the same id succeeds. `prune` of a node with +`edges_in` refuses with `E_ANCHORED` naming the anchors; with +`force: true` it removes the node and strips every backlink in the same +commit. A branch with children refuses, `force` included. A dataset's +`.db` lands under `_derived/graveyard/<id>/`. A scoped principal pruning +an out-of-scope id receives `E_NOT_FOUND` byte-identical to absent, and +`force` refuses when an anchor lies outside the caller's scope, +reporting only a count. Covered by tests. + +**F.86 (acceptance).** `forests()` and `GET /v1/forests` carry +`station` equal to the installed version, and the generated skill stamps +the same version and teaches the re-download check. A share link serves +the node's rendered markdown with no session; after revocation, expiry, +or the issuer's grant lapsing, the same URL answers the byte-identical +`E_NOT_FOUND` of a token that never existed; no endpoint returns the +token after creation. Covered by tests. + +**F.87 (acceptance).** `look` on a node whose full digest exceeds +`BUDGET_LOOK` never returns an emptied `edges_out`/`edges_in` without +naming the field in `truncated_fields`; the clip order is `outline`, +`children`, the edges, then `sample_rows`; and a digest whose +edge lists survive intact does not name them. `stats.degree` equals the +true degree in every case. Covered by tests. + +**F.88 (acceptance).** Sweep items carry `created` and `updated`; two +items with equal fusion scores order the more recently updated first; +and when one selected item `succeeds` another, the pair carries +`supersedes`/`superseded_by`. Declaring the succession changes the +J.10.7 reading fingerprint (a stored answer is not served across it). +Covered by tests. + +**F.89 (acceptance).** `plant(node, dry_run=true)` on a valid node +answers `{valid: true}` and leaves the forest byte-identical — no file, +no commit, no catalog row, no heat; on an invalid node it raises the +exact envelope the real call would; and it requires `write` exactly as +the real call does. Covered by tests. + +**F.90 (acceptance).** A node planted with `origin` returns it in +`look`; `scan(filter={"origin": …})` finds it; an `origin` with +whitespace or over 2048 chars is `E_SCHEMA`; and the engine performs no +I/O against the URI. Covered by tests. + +**F.91 (acceptance).** `pick(section=[...])` items carry `header` equal +to the header line that matched, including when prefix matching resolved +a different string than was asked. Covered by tests. + +**F.92 (acceptance).** With a reader pool of K ≥ 1, a read on a forest +whose writer lane is held (a write in progress, or an ingest step +running a curation call) completes without waiting for the writer; +`MONKEYLLM_STATION_READERS=0` restores single-lane behaviour; reads on +reader vines deposit pheromone and audit rows exactly as writer-lane +reads did. A sweep `answer`'s provider call runs on no forest lane: a +read on the same forest completes while the model is writing, the served +response is byte-identical in shape, and its `trace` and `vine` clock +carry only that call's own retrieval. Two cold asks run their model +calls concurrently (up to `MONKEYLLM_STATION_MODEL_CONCURRENCY`), and +`/v1/health` carries `concurrency: {readers, model}`. Covered by tests. + +**F.93 (acceptance).** `GET .../export/{branch}?recursive=true` returns +a zip whose members are exactly the in-scope subtree, each byte-identical +to that node's single export; a scoped principal's zip omits what its +scan omits; `recursive=true` on a leaf and any unknown query parameter +answer `E_SCHEMA`. Covered by tests. + +**F.94 (acceptance).** A scoped write's commit carries the +`station-principal:` trailer in its original commit (no amend: the sha +returned is the first sha created), and the Ranger's `run()` report +carries `gc`. Covered by tests. + +**F.95 (acceptance).** `transplant` of a leaf moves the passport, keeps +`created`, rewrites every backlink, refreshes both parent indexes, and +lands in ONE commit; a local payload moves beside the new passport. The +new node carries `moved_from` and the old id in `aliases`; `locate` by +the old name finds the new node; a read of the old id answers `E_MOVED` +with `moved_to`. A branch, the root and `_meta/*` refuse. After +`reindex`, the waymark still answers (`moved_from` rebuilt it). Covered +by tests. + +**F.96 (acceptance).** Under a policy, `transplant` refuses when any +backlink's holder is out of scope (count, never names), refuses a +destination outside the grant as `E_FORBIDDEN`, and a scoped read of a +waymark whose `moved_to` is out of scope answers the byte-identical +`E_NOT_FOUND` of a node that never existed. Covered by tests. + +**F.97 (acceptance).** `history(id)` lists the node's commits newest +first with `at` carrying time of day, `action` parsed from the subject, +and `by` equal to the `station-principal:` trailer on host-stamped +writes; a transplanted node's history crosses the move unbroken; +`limit` and the 800-token budget truncate explicitly; out-of-scope and +absent answer identically. Covered by tests. + +**F.98 (acceptance).** `plant` with a list validates every node before +writing any: a batch whose third node is invalid writes nothing and +names it; a valid batch of N lands N nodes in exactly ONE new commit; a +branch and its children succeed in one batch in order; `if_absent` +reports taken ids in `existing` without failing the batch; `dry_run` +rehearses the whole list and writes nothing; an in-batch duplicate id +and any `schema` node refuse. A single dict keeps the v0.57 shape to +the byte. Covered by tests. + +**F.99 (acceptance).** With `B supersedes A` declared, a sweep matching +both returns B and not A, carries `superseded_excluded` naming A and B, +and still returns `k` items when candidates remain; +`include_superseded: true` restores A with its annotations and forms a +different store key. `locate` and `scan` still return A. A scoped caller +who cannot see B receives A unsuppressed. Covered by tests. + +**F.100 (acceptance).** An adopted file's node carries `origin` as its +source `file://` URI; an upload with `source_url` carries that URL; an +upload without one carries no origin; a hand-set origin survives `sync`; +and a forest ingested before the rule gains origins on its next sync +without re-conversion. Covered by tests. + +**F.101 (acceptance).** Two concurrent cold `answer`s with the same +question produce ONE provider call: the follower is served the leader's +stored reply with `cached: true` and its own retrieval fields. With +different questions they generate independently (F.92's concurrency +stands). A leader that errors releases followers to their own calls, +and `cache: false` never coalesces. Covered by tests. + +**F.102 (acceptance).** The MCP surfaces serve `transplant` and +`history` (19 tools, named in the instructions — the J.1.2 parity test +counts them); `transplant` rides `write` and `history` rides `read` +under J.2.6's existing mask ceiling. Covered by tests. + +**F.103 (acceptance).** `coverage()` on the fixture returns every branch +child of the root `_index` as a root, each with `nodes` equal to the +count of catalog rows under its prefix, plus `total`, `types`, `sources` +and `undated`; the sum of the roots' `nodes` accounts for every node in +the forest exactly once. It opens no file and issues no per-node query. +Under a branch-scoped policy the roots are that policy's own roots, every +count covers only nodes in scope, and the totals of an unrestricted call +are not derivable from it. `scope` narrows roots and totals alike. +Covered by tests. + +**F.104 (acceptance).** For a root whose nodes were ingested, `coverage` +reports `origin` as a prefix that every one of those origins starts with, +and `scan(root, filter={"origin_prefix": <that value>}, recursive=true)` +returns exactly the nodes counted — the map's string is the read's string +with no arithmetic between them. A root with a mix reports +`without_origin` with the count that carries none; a forest with no +origins at all reports `without_origin` equal to its size and no +`origin`. `filter={"origin": <full URI>}` still matches that one node. +Covered by tests. + +**F.105 (acceptance).** A source file `291-provider-budget.md` under +`back-end/` is ingested with **no** `aliases:` map and its node carries +`291`, `back-end/291` and `BE-291`; with the map declaring `back-end: BE` +the result is the same set and no doubled prefix. A file under a +single-word folder derives the number and the path form and **no** +letter prefix. A document whose title states `ADR-0002` carries it +whatever its folder, and a code appearing only in the body below the H1 +is not derived. `locate` for any derived alias returns the node. +Covered by tests. + +**F.106 (acceptance).** `plant(dry_run=true)` on a node with a 61-token +summary **and** a non-existent parent answers one envelope whose `code`, +`message` and `hint` are byte-identical to v0.58's, and whose `data.errors` +names both problems, the first entry repeating the envelope. A batch dry +run of 20 nodes with problems in nodes 3 and 17 reports both, each with +its `id` and `index`. A real `plant` still refuses at the first problem +and writes nothing. A valid dry run's success shape is unchanged. +Covered by tests. + +**F.107 (acceptance).** `answer(question, min_evidence=2, min_score=0.02)` +against a sweep returning three items scoring below the threshold answers +`answer: null`, `reason: "insufficient_evidence"` naming `min_score` and +`min_evidence`, makes no provider call, is not billed and creates no +store entry. The same call with `min_score` absent behaves exactly as +v0.58. `min_score` does not enter the J.10.7 key: two otherwise identical +questions differing only in it hit the same entry. Covered by tests. + +**F.108 (acceptance).** Every item of `answer`'s `sources[]` carries the +`trail` the sweep computed for that node, equal element-for-element to +the matching item's `trail` in the response's own `harvest`. The walk's +`sources[]` carries it for every node whose material arrived with one. +No additional read is issued to produce it. Covered by tests. + +**F.109 (acceptance).** A warm `sniff` whose terms match no body loads no +catalog row and deserializes no record for the non-matching nodes, and +still reports `scanned_nodes` equal to the nodes covered; a warm `sniff` +whose terms match most of the forest issues a **bounded** number of heat +queries independent of the number of matching nodes; and in both cases +the response is byte-identical to the same call against a cleared memo — +same results, order, snippets, `match_count`, `truncated_matches`, +`scanned_nodes`. Covered by tests. + +**F.110 (acceptance).** `GET /s/{token}` with `Accept: text/html` serves +the reading shell; the same URL with any other `Accept` returns exactly +the body of `GET /v1/share/{token}`. A revoked, expired, suspended or +never-existing token answers the byte-identical `E_NOT_FOUND` on both +paths and under both `Accept` values. The MCP surfaces serve `coverage` +(20 tools, named in the instructions — the J.1.2 parity test counts +them), riding `read` under J.2.6's existing mask ceiling. Covered by +tests. + +**F.111 (acceptance).** A key carrying `{read, ingest}` generates a skill +whose `SKILL.md` instructs no `plant`, `graft`, `prune`, `transplant` or +`tend`, ships `references/saving.md` and no `references/writing.md`, and +is smaller than the single file it replaces. Every reference the +selection produced is named in the core together with the condition that +sends an agent to read it, and the core is a usable skill on its own. +Covered by tests. + +**F.112 (acceptance).** Every call example in every generated file names +the forest as its first argument. No generated file contains a call +written without it. Covered by tests. + +**F.113 (acceptance).** Two selected forests produce a routing table with +one row per forest carrying its id, its largest roots and the +capabilities the key holds there, built from `coverage`. One selected +forest produces no table, and the core teaches `coverage()` in its place. +Both files teach `forests()` as the first call. Covered by tests. + +**F.114 (acceptance).** The default block selection equals the +capabilities of the key on the selected forests; a block included for a +capability the key does not carry names that capability in its first +line. Covered by tests. + +**F.115 (acceptance).** The single-file assembly of a selection carries +the same instructions as the concatenation of the folder assembly of the +same selection. A principal holding `read` alone still reaches the +console, and the Station gains no endpoint for any of it (F.52 stands). +Covered by tests. + +**F.116 (acceptance).** The Skills console reads its forests, blocks and +assembly from the address and writes every change back to it; reloading +that address reproduces the same files byte for byte, spends no model call +and commits nothing. The generated core names that address as the way to +rebuild itself, and states that installing is the operator's act. No MCP +tool and no HTTP route serves the skill. + +**F.117 (acceptance).** A file uploaded to a forest, planted, and then +`prune`d, is NOT planted again by a later upload of a different file to +the same destination: that second call reports only its own entry, and +the pruned id stays absent. The prune moved that node's staged file into +`_derived/graveyard/<id>/source/` and said so (`staged_moved`), while a +node ingested from a host directory leaves its source untouched. The staged file of the earlier batch is +neither planted, refreshed nor reported `stale` by it. Re-uploading a name +whose passport still records it remains an update of that node, never a +second node. Covered by tests. + +**F.118 (acceptance).** `look` on a `type: dataset` node whose local +payload file has been removed returns the passport title, summary, +tags, edges, `notes` with `payload_missing: true` and without +`query_manual` or `sample_rows`, instead of `E_NOT_FOUND`. `query` and +`tend` on the same node still refuse with `E_NOT_FOUND` naming the +payload. With the payload present, the response carries no +`payload_missing` and is byte-identical to the response before the +upgrade. Covered by tests. + +**F.119 (acceptance).** `coverage` reports `payload_missing` per root and +in the totals, counting nodes whose LOCAL payload is absent and no remote +payload; under a policy the count is the policy's own. Covered by tests. + +**F.120 (acceptance).** `ingest(dest: "x/_index")` and +`ingest(dest: "x")` land the same documents under the same branch, and +`dest: "_index"` means the forest root. The scope check (J.8) is applied +to the normalised destination, so a principal scoped to `x/` is refused +neither form and a principal scoped elsewhere is refused both. No +destination produces an id containing `/_index/`. Covered by tests. + +**F.121 (acceptance).** Every upload answers `mode: "upload"` on the job +and on the report, first or hundredth, and no second field names a +mechanism. An upload leaves the forest's recorded `source_root` exactly as +it found it — a forest that mirrors `/data/handbook` still mirrors it +afterwards — and records none when it had none. A staged entry that became +a node is gone from the staging area when the batch settles and is named in +`consumed`; one that failed conversion is still there and is not. A source +outside the forest is never removed by an upload or by a `prune`. Covered +by tests. + +**F.122 (acceptance).** After `transplant`, `pick` on the old id answers +`E_MOVED` carrying `moved_to`, exactly as `look`, `move`, `history`, +`view` and `query` do — and under a policy whose scope excludes the +destination, all six collapse to the byte-identical `E_NOT_FOUND` of an +absent node (C.15 rule 4). Covered by tests. + +**F.123 (acceptance).** A source file `9router-free-ai-router.md` derives +no alias from its leading digit; `291-provider-budget.md` under +`back-end/` still derives `291`, `back-end/291` and `BE-291`. Covered by +tests. + +**F.124 (acceptance).** `plant` and `graft` refusing an undeclared `type` +or `rel` return `E_SCHEMA` whose `hint` names the forest's declared set +and where it is declared. A forest whose `_meta/schema.md` omits a rel the +engine ships still refuses it — the authority is the file — and now says +what it would have accepted. Covered by tests. + +**F.125 (acceptance).** `POST /v1/forests/{f}/recurate {derive: +["aliases"]}` on a forest whose nodes were ingested before a derivation +rule adds the missing derived aliases, never displaces a hand-written one, +opens no source file and calls no model, commits `.md` only with the +principal stamped, and reports `scanned`/`changed`/`aliases_clipped`. Run +twice, the second pass reports `changed: 0` and commits nothing. It +requires `admin` and is refused on a read-only Station. Covered by tests. + +**F.126 (acceptance).** An `answer` refused by the floor carries +`below_min_score`: the number of content-carrying items that did not clear +`min_score`. With no threshold set the field is `0` and the refusal is +byte-identical to the one before the upgrade. Covered by tests. + +**F.127 (acceptance).** Every `dest` in every generated skill file is a +form the server accepts; the saving block names `source_url` as what gives +an uploaded document its `origin`; the answer block states J.10.10 rule +8's pairing. Two different forest selections generate different `name:` +values, and the same selection reproduces its own. Covered by tests. + +**F.128 (acceptance).** `GET /v1/admin/staging` reports the staged files no +live passport records — count, bytes and bounded names — and `POST` moves +exactly those into `_derived/graveyard/_staging/`, leaving a forest whose +uploads all landed reporting zero. A forest seeded with files an older +Station staged, whose nodes were pruned, reports them and can be swept. The +clear refuses with `E_LOCKED` while a batch runs on that forest, and both +verbs refuse a branch-limited admin. Covered by tests. + +**F.129 (acceptance).** The fold is byte-identical to its own definition +lowercase and strip diacritics to the base character of the NFD +decomposition for **every** code point Python can represent, not for a +sample, and it preserves length everywhere (C.6b reports a position into +the original line). Cased astral scripts and CJK Compatibility Ideographs +fold like any other letter, and nothing at or above the table's limit folds +to anything but itself checked in bulk against the Unicode version in +use, so a later version cannot narrow the match in silence. A `sniff` finds +the same node in either case spelling of its term. Covered by tests. + +**F.130 (acceptance).** The G.7 `content:` marker is read in the +frontmatter. A node whose frontmatter does not declare it and whose **body** +contains the line `content: cached` is scanned as the inline node it is, +and the second call the one served by the memo agrees with the first. +Covered by tests. + +**F.131 (acceptance).** A cold `sniff` folds each body at most once, plus +once per term, and the fold table is built on first use: importing the +package builds nothing, and folding ASCII text builds nothing, because +ASCII needs no table. Covered by tests. + +**F.132 (acceptance).** A binding created without a stated budget carries +1500, whatever its role; one created with a budget carries what was named. +The `answer` role's shipped default is 1500, and `ingest` and `vision` keep +theirs: a scent and a description do not carry the citation apparatus that +sized the number. Covered by tests. + +**F.133 (acceptance).** A registry left by an older host with an `answer` +binding at exactly the shipped 600 reads 1500 after the next open; one at any +other value, and any other role at 600, is untouched. The repair runs once, +so an operator who binds 600 after it has run still reads 600 after every +later open. A registry created fresh is stamped current and applies no +repair. Covered by tests. + +**F.134 (acceptance).** The prompt states the effective cap in tokens and in +words, in the sweep and on a walk alike, whether the number came from +`reply_tokens`, from the binding, or from the default. A call that sent no +`reply_tokens` still reports none: what the amendment adds to the prompt it +does not add to the response. Covered by tests. + +**F.135 (acceptance).** The list of methods withheld under J.1.2 rule 4 +names the two families that rule names and nothing else, and +`tools.listChanged` is `false` at 2025-06-18 and 2025-11-25 and `true` at +2026-07-28. The second assertion carries the first: at that era the SDK +derives the flag from whether the listen handler is served, so the flag +being `true` IS the handler being registered. Covered by tests. + +The end-to-end shape — a client of that era completing its connection and +reading the same tool count an earlier-era client reads — is verified +against a released client rather than in the suite, because the response to +`subscriptions/listen` is an endless stream and the suite's in-process +client cannot hold one open without holding its own shutdown. That is a +limit of the harness and it is recorded here so the gap is a known one: +what the suite guards is that nobody deletes the handler again. + +**F.136 (acceptance).** No request the MCP mount serves is answered 404 +except one naming a session that no longer exists. A method the Station does +not serve is a JSON-RPC error under a 2xx status, and a test asks for one to +prove it. Covered by tests. + +**F.137 (acceptance).** The Ask console's path panel (J.5.15) marks a node +in a stage only from material the host returned: a sweep whose `found_by` +carries `locate` marks the entry stage and one that does not, does not; a +sweep produces no `cited` stage at all while a walk with `answer_nodes` +produces one; and a trail segment is drawn only where BOTH ends are in the +J.11 projection this principal received. The retrieval preview sends the +same question, `k` and entry ranker as the answer beside it, and the heat of +every node is unchanged by it. Covered by tests. + +### J.12 Out of scope for Part J + +Engine changes of any kind (contracts, budgets, ranking); per-node ACLs +finer than the branch prefix; row-level filtering inside datasets beyond +the table allow-list; multi-writer forests (the single-writer lock stands); +billing and metering beyond per-token quotas. + +*Documented boundary (informative):* scoping is per node, and node bodies +are author-written prose. A body that names an out-of-scope node discloses +that id to anyone who may read the body the remedy is to keep such +references in the same scope, not to redact prose, which would corrupt the +content the forest exists to serve. + +--- + +## Part K The Gauntlet (query-conditioned frontier, v0.21) + +### K.0 Why it is not the entry search + +Part C's `locate` answers *where do I start*. Parts C.3–C.5 answer *where +do I go next*, and they answer it without knowing what the forager is +looking for: `look` sorts edges by heat, `scan` sorts children by degree, +`move` does not sort. Heat is the memory of past hunts and degree is the +shape of the graph; neither is about **this** question. + +The Gauntlet is the instrument that closes that gap a query-conditioned +ordering of the *frontier*, i.e. the set of nodes reachable in one step +from where the forager stands. In information-foraging terms it makes +proximal cue assessment conditional on the goal, which is what a real +forager's nose does and what static curated scent cannot do. + +It is deliberately **not** a second entry search. Measurement (§5.1) +showed that fusing a dense ranker into an already-correct lexical one +degrades it. The frontier has no such ranker to degrade. + +### K.1 Contract + +When the Gauntlet is **active** for a call, the candidate list of `look` +(`edges_out`/`edges_in`), `move` (`neighbors`) and `scan` (`nodes`) is +ordered by a blend of query proximity and the existing signal, **before** +the edge cap and the token budget are applied. Ordering changes; shapes, +budgets, truncation semantics and every other field do not. + +**Availability is not consent.** The vector layer has two possible +consumers and the measurement above says opposite things about them, so +*having* an index MUST NOT decide *using* it for either: + +| Consumer | Default | Why | +|---|---|---| +| entry search (`locate` under RRF) | **off** | fusing into an already-correct BM25 degrades it | +| the Gauntlet (frontier order) | **on** when ready | there is no query-dependent ranker there to degrade | + +An implementation MUST therefore keep the layer's *readiness* separate from +each consumer's decision. Binding an embedding model to a forest turns on +the Gauntlet and MUST NOT turn on hybrid entry search: an operator who +picks up the instrument has not asked for the degradation, and a feature +that silently enables a measured regression is a trap, not a default. + +The Gauntlet is active only when all of the following hold: + +1. an embedder is configured, and +2. a Canopy index exists, is non-empty, and its recorded model matches the + embedder's (K.4), and +3. a **goal vector** is available for the session (K.2), and +4. the call did not opt out (K.3). + +If any fails, the primitive MUST behave exactly as it does without the +Gauntlet the same order, the same fields, the same bytes. Absence is not +a degraded mode; it is the Phase 0 contract, unchanged. + +### K.2 The goal, and why it costs nothing + +The goal vector is the embedding of the most recent `locate`/`harvest` +query in the session: the forager picks the instrument up when the hunt +starts and carries it for every hop after. `locate` MUST embed the query +whenever the layer is ready **for the goal**, whether or not it also +fuses the result into its own ranking. That is one embedding per hunt, not +per hop, and it is the entire running cost. + +The separation matters for exactly the reason K.1 gives: the query is +embedded so the forager can *navigate* with it, not so entry search can +re-rank with it. Each subsequent hop is a dot +product over vectors already stored in the Canopy no network call, no +model call, and no tokens in either direction. + +A caller MAY override the goal per call with an explicit `toward` string; +the implicit goal is what makes the feature free, and the explicit one is +what makes it testable. + +**The read path embeds the query and nothing else (normative, v0.42).** +`locate`, `harvest` and the Gauntlet's goal MUST NOT embed *nodes*. +Refreshing stale vectors inside a read was one caller paying an ingest's +bill: the work is proportional to what somebody else wrote, it is +unbounded, and it lands on whoever asks next inside the primitive with +the tightest budget in the document (F.6). Re-embedding is maintenance +(J.13.4), triggered and observable, exactly as the catalog rebuild is +(J.13.3). + +The cost of that separation is stated plainly rather than hidden: until a +refresh runs, a newly written node is **absent from the dense half** of +hybrid ranking. It is not absent from the forest the catalog upsert is +synchronous, so BM25 finds it on the next call, and every structural +primitive already does. The debt is reported (K.4) so it can be chosen, +which is the whole difference between a trade-off and a surprise. + +The goal is session state and MUST be observable, never silent: a response +whose order was conditioned MUST say so the primitive reports that its +frontier was ranked and toward what. A reordering the reader cannot see is +a reordering the reader cannot audit, which is the same objection this +specification raises to every other invisible transformation. + +### K.3 Opt-out, and the experiment it enables + +Every affected primitive accepts an optional boolean that disables the +Gauntlet for that call. This is not a convenience: a feature that claims a +navigation gain MUST be measurable **against itself on the same corpus in +the same session**, and that requires turning it off without restarting +anything or rebuilding an index. + +Consoles that expose navigation (the Playground) and the answering +composite (`answer`) MUST surface that switch, so an operator can compare +the two orders on their own corpus rather than trusting a table measured on +somebody else's. + +**The entry-search switch is a different switch.** `answer` composes +`harvest`, which is `locate` + `sniff` and never hops, so a *Gauntlet* +control on an answering console would change nothing and a control that +changes nothing is worse than no control. What does change an answer is +K.1's other consumer: whether the vector layer is fused into entry search. +Calls that perform entry search (`locate`, `harvest`, `answer`) MUST +therefore accept an optional `hybrid` boolean, **defaulting to false on +every call**, for the same reason the opt-out exists: the published +degradation (R@1 1.00 → 0.40) has to be reproducible on the operator's own +corpus. It MUST NOT be sticky a request that omits it is a BM25 request, +whatever the previous request asked for. + +*Deployment note (informative):* whether the Gauntlet is available at all +is a property of the forest's configuration, not of the caller's identity. +A deployment MAY additionally pin it on or off for a given credential, but +the default is per-forest availability plus per-call choice. + +### K.4 Index integrity (the mismatch guard) + +The Canopy records the model that built it. Comparing a query embedded by +one model against vectors produced by another compares two unrelated +spaces: the result is not worse ranking, it is meaningless ranking, and it +fails silently because a dot product always returns a number. + +Therefore: when the embedder's model differs from the index's recorded +model, the dense layer MUST be treated as **absent** hybrid `locate` off, +Gauntlet off, Phase 0 behaviour and the mismatch MUST be reported by the +forest's validation and by any surface that shows index status. Rebuilding +is the only resolution; a partial re-embed would leave the index in two +spaces at once. + +**Status reports the debt (normative, v0.42).** The status surface of this +section MUST also carry `stale`: the number of nodes written since the +last build or refresh, and therefore absent from the dense half. It is +the number that predicts what a refresh costs and the only way an +operator can decide when to pay it; a layer that is quietly behind is +indistinguishable from one that is current. + +### K.6 The embedding memo (v0.42) + +`embed(model, text)` is a pure function of its inputs, so a Vine MAY +memoize it in the derived layer under exactly the C.6b.1 discipline: + +- **Keyed by the model and the normalized text**, because a vector from + one model in another model's space is the meaningless comparison K.4 + exists to prevent. +- **Only texts a caller supplies** queries, `toward` goals. A node's + vector already has a home, the Canopy index itself, and storing it + twice would make two answers to "what is this node's vector". +- **Disposable and bounded.** It lives in `_derived/`, may be dropped at + any moment with no effect but latency, and MAY be evicted + least-recently-used (H.6 is the precedent). +- **Never a substitute for the index.** A memo hit skips a round trip; + it never makes an absent or mismatched index look present (K.4 stands + ahead of it). + +### K.5 Out of scope + +Re-ranking node *bodies* (that is `sniff`'s job and it is literal by +contract); replacing heat with proximity (they answer different questions +and H's pheromone economics depend on heat remaining a memory); and any +behaviour that makes navigation *require* an embedder. From 31abfac771a4872b2a513a42220249024bb9fca5 Mon Sep 17 00:00:00 2001 From: Jimmy Wesley <rededown@hotmail.com> Date: Wed, 26 Aug 2026 23:32:10 -0300 Subject: [PATCH 2/9] The Ask console draws the path the answer took (J.5.15) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The panel that fills the gap the spec measures. While the model writes, the console runs the sweep's own retrieval beside it through `harvest` — same question, same k, same entry ranker — and reveals the stages over the J.11 graph projection Explore already reads. Its switch is deliberately separate from `hops`. A walk costs one model call per hop and the drawing costs none; one control over both would teach an operator that the picture is what made the answer slow, which is the opposite of what the panel exists to show. A trail carries `--graph-trail` and not `--graph-shortcut`. A `discovered-shortcut` is a fact the forest holds and a trail is what one question did to it — two different facts must not arrive in the same colour. Segments follow `parent`, and only where BOTH ends are in the projection this principal received, so the drawing cannot outline a region the scope hides. `groupOf` and `step` become exports of `graph.jsx` rather than being copied into `trailmap.js`: the layout the trail is drawn on has to be the layout Explore draws, or the same forest would have two shapes. The millisecond figure printed beside the stages is read off the Part D trace, never timed around the reveal. `check-trail.mjs` is F.137 and runs from `tests/test_trail_panel.py`, the same arrangement `check-skill.mjs` has: it asserts that a stage is marked only from material the host returned — a sweep produces no `cited` stage at all, an entry stage appears only where `found_by` carries `locate`, and heat is unchanged by the preview. Signed-off-by: Jimmy Wesley <rededown@hotmail.com> --- apps/studio/check-trail.mjs | 146 ++++++++ apps/studio/src/index.css | 6 + apps/studio/src/locales/ask/en.json | 14 + apps/studio/src/locales/ask/es.json | 14 + apps/studio/src/locales/ask/pt.json | 14 + apps/studio/src/trailmap.js | Bin 0 -> 6550 bytes apps/studio/src/views/Ask.jsx | 192 +++++++--- apps/studio/src/views/graph.jsx | 6 +- apps/studio/src/views/trail.jsx | 542 ++++++++++++++++++++++++++++ tests/test_trail_panel.py | 114 ++++++ 10 files changed, 990 insertions(+), 58 deletions(-) create mode 100644 apps/studio/check-trail.mjs create mode 100644 apps/studio/src/trailmap.js create mode 100644 apps/studio/src/views/trail.jsx create mode 100644 tests/test_trail_panel.py diff --git a/apps/studio/check-trail.mjs b/apps/studio/check-trail.mjs new file mode 100644 index 0000000..d978da4 --- /dev/null +++ b/apps/studio/check-trail.mjs @@ -0,0 +1,146 @@ +// SPDX-License-Identifier: AGPL-3.0-only +// Copyright 2026 Jimmy Wesley + +/* J.5.15 acceptance (F.137): what the path panel marks, checked. + * + * Studio has no test runner and this file is not one — it is the console's + * decision layer, asked the criterion's own questions. `trailmap.js` holds + * the rules precisely so they can be asked here rather than inferred from + * a screenshot. `tests/test_trail_panel.py` runs it; a non-zero exit is a + * failed criterion, named on stdout. + * + * What this cannot see is the canvas — colours, motion, camera — and it is + * not supposed to: those are taste, and F.137 is about claims. */ +import { + CITED, LOCATE, READ, SNIFF, markNodes, reachedStages, shortName, + stageCounts, stagesFor, trailSegments, +} from './src/trailmap.js' + +let failed = 0 +const ok = (n, c, extra = '') => { + if (!c) failed++ + console.log(`${c ? 'PASS' : 'FAIL'} ${n}${extra ? ' ' + extra : ''}`) +} + +/* A projection shaped like J.11's: id -> {parent}. */ +const projection = (pairs) => new Map(pairs.map(([id, parent]) => [id, { id, parent }])) + +const FOREST = projection([ + ['_index', null], + ['projects/_index', '_index'], + ['projects/mixerllm/_index', 'projects/_index'], + ['projects/mixerllm/experiment-log', 'projects/mixerllm/_index'], + ['projects/mixerllm/benchmarks', 'projects/mixerllm/_index'], + ['people/_index', '_index'], +]) + +/* -- rule 3: a stage is what the material says, never an inference ------- */ + +const sweep = [ + { id: 'projects/mixerllm/experiment-log', found_by: ['locate', 'sniff'], + content: [{ section: null, body: 'x' }] }, + { id: 'projects/mixerllm/benchmarks', found_by: ['sniff'], content: [] }, + { id: 'people/_index', found_by: ['locate'], content: [] }, +] +const m1 = markNodes(sweep, undefined) + +ok('F.137 `locate` in found_by marks the entry stage', + m1.get('projects/mixerllm/experiment-log').has(LOCATE) + && m1.get('people/_index').has(LOCATE)) +ok('F.137 no `locate` in found_by does not mark the entry stage', + !m1.get('projects/mixerllm/benchmarks').has(LOCATE), + [...m1.get('projects/mixerllm/benchmarks')].join(',')) +ok('F.137 `sniff` marks the literal stage and only where present', + m1.get('projects/mixerllm/benchmarks').has(SNIFF) + && !m1.get('people/_index').has(SNIFF)) +ok('F.137 content handed over marks the read stage, an empty list does not', + m1.get('projects/mixerllm/experiment-log').has(READ) + && !m1.get('people/_index').has(READ)) + +const counts1 = stageCounts(m1) +ok('F.137 counts are what the material carries', + counts1[LOCATE] === 2 && counts1[SNIFF] === 2 && counts1[READ] === 1 + && counts1[CITED] === 0, counts1.join('/')) + +/* -- rule 4: `cited` is a walk's stage and not a sweep's ------------------ */ + +ok('F.137 a sweep produces no cited stage at all', + stagesFor(undefined).length === 3 + && !stagesFor(undefined).some((s) => s.key === 'cited')) +ok('F.137 a sweep marks nothing as cited even when ids are known', + stageCounts(markNodes(sweep, undefined))[CITED] === 0) + +const walk = [ + { id: 'projects/mixerllm/experiment-log', found_by: ['sniff', 'pick'], + content: [{ section: null, body: 'x' }] }, + { id: 'projects/mixerllm/benchmarks', found_by: ['sniff'], content: [] }, +] +const m2 = markNodes(walk, ['projects/mixerllm/experiment-log']) +ok('F.137 a walk with answer_nodes produces a cited stage', + stagesFor(['x']).length === 4 + && m2.get('projects/mixerllm/experiment-log').has(CITED)) +ok('F.137 a walk cites only what it names', + !m2.get('projects/mixerllm/benchmarks').has(CITED)) +ok('F.137 a walk that cited nothing still HAS the stage', + stagesFor([]).length === 4, 'empty is a statement, absent is a mode') +ok('F.137 a walk `pick` marks the read stage', + m2.get('projects/mixerllm/experiment-log').has(READ)) +ok('F.137 an unrecorded entry locate leaves the stage empty, not filled', + stageCounts(m2)[LOCATE] === 0) + +/* -- the reveal crosses an empty leading stage, never stalls on it ------- */ + +ok('F.137 the reveal reaches past an empty entry stage on a walk', + reachedStages(m2) === CITED + 1, String(reachedStages(m2))) +ok('F.137 nothing marked reaches no stage', reachedStages(new Map()) === 0) + +/* -- rule 5: a segment needs BOTH ends in the projection ------------------ */ + +const t1 = trailSegments(m1, FOREST) +const inside = t1.segments.every((s) => FOREST.has(s.a) && FOREST.has(s.b)) +ok('F.137 every segment has both ends in the projection', inside, + `${t1.segments.length} segments`) + +/* The same marks against a projection that stops at the branch: a scoped + principal receives no root, so the chain must stop there and the missing + ancestor must not be drawn to. */ +const SCOPED = projection([ + ['projects/mixerllm/_index', null], + ['projects/mixerllm/experiment-log', 'projects/mixerllm/_index'], + ['projects/mixerllm/benchmarks', 'projects/mixerllm/_index'], +]) +const t2 = trailSegments(markNodes(sweep, undefined), SCOPED) +ok('F.137 a chain that leaves the scope stops there', + t2.segments.every((s) => SCOPED.has(s.a) && SCOPED.has(s.b)) + && !t2.segments.some((s) => s.a === '_index' || s.b === '_index'), + t2.segments.map((s) => `${shortName(s.a)}>${shortName(s.b)}`).join(' ')) +ok('F.137 a marked node absent from the projection draws no segment', + trailSegments(markNodes([{ id: 'ghost/node', found_by: ['locate'] }], undefined), + FOREST).segments.length === 0) + +/* -- a shared trunk is one segment, at the earliest stage ---------------- */ + +const shared = t1.segments.filter((s) => s.a === '_index' && s.b === 'projects/_index') +ok('F.137 a shared ancestor is one segment', shared.length === 1, + `${shared.length} copies`) +ok('F.137 a shared segment lights at the earliest stage that needed it', + shared[0]?.stage === LOCATE, String(shared[0]?.stage)) + +/* -- naming: `_index` is the one part of an address that says nothing ---- */ + +ok('F.137 a branch is named by its branch', + shortName('projects/mixerllm/_index') === 'mixerllm/' + && shortName('projects/mixerllm/experiment-log') === 'experiment-log' + && shortName('_index') === '/') + +/* -- nothing is invented from a malformed payload ------------------------ */ + +ok('F.137 junk in the material marks nothing', + markNodes([{ found_by: ['locate'] }, { id: 42, found_by: ['locate'] }, + { id: '', found_by: ['locate'] }, null], undefined).size === 0) +ok('F.137 a cycle in `parent` terminates', + trailSegments(markNodes([{ id: 'a', found_by: ['locate'] }], undefined), + projection([['a', 'b'], ['b', 'a']])).segments.length <= 2) + +console.log(failed ? `\n${failed} criterion(s) failed` : '\nall criteria hold') +process.exit(failed ? 1 : 0) diff --git a/apps/studio/src/index.css b/apps/studio/src/index.css index 75685ec..a7eaacb 100644 --- a/apps/studio/src/index.css +++ b/apps/studio/src/index.css @@ -58,6 +58,11 @@ --type-other: 120 132 124; --graph-edge: 122 138 126; --graph-shortcut: 200 132 40; + /* The path one answer took (J.5.4 + the Ask trail). Its own + token and not `--graph-shortcut`: a shortcut is a fact the + forest holds, a trail is what this question did to it, and + two different facts must not arrive in one colour. */ + --graph-trail: 202 146 18; /* Syntax colour (design/highlight.jsx) — one token palette for every language the console prints. Aliased to the type-hues above, not @@ -114,6 +119,7 @@ --type-other: 150 162 152; --graph-edge: 110 126 114; --graph-shortcut: 255 190 100; + --graph-trail: 250 214 96; color-scheme: dark; } diff --git a/apps/studio/src/locales/ask/en.json b/apps/studio/src/locales/ask/en.json index dea75b9..0b4b3b8 100644 --- a/apps/studio/src/locales/ask/en.json +++ b/apps/studio/src/locales/ask/en.json @@ -14,6 +14,8 @@ "ask.ex3": "Summarise what is under the largest branch.", "ask.examples": "Try one of these", "ask.expand": "Widen the answer", + "ask.graph": "Draw the path on the forest", + "ask.graph_hint": "Reads the map once and runs the same retrieval alongside the answer, while the model writes — it does not delay the reply. The figure beside the stages is the real one.", "ask.hint_send": "Press ⌘↵ or Ctrl+↵ to send", "ask.history_bound": "Keeps the last {n} runs of this forest, dropping the oldest first.", "ask.history_clear": "Discard all", @@ -46,9 +48,11 @@ "ask.material": "What it read", "ask.material_counts": "{m} snippet(s) · {s} excerpt(s)", "ask.material_full": "Full body", + "ask.material_hide": "Hide", "ask.material_hint": "The summary decides which node; the body is what the model was given. These are the exact snippets and sections.", "ask.material_outline": "Outline only the body exceeded the per-node budget", "ask.material_section": "Section “{s}”", + "ask.material_show": "See what was read", "ask.no_model": "No model is bound to this forest for answering yet.", "ask.nothing": "Retrieval found nothing inside your scope for that question.", "ask.path": "Where it went", @@ -71,6 +75,16 @@ "ask.sub": "Retrieval runs inside your scope first; only then does the bound model read what it found.", "ask.thinking": "Reading the forest…", "ask.title": "Ask the forest", + "ask.trail": "The path", + "ask.trail_empty": "Ask something and the path is drawn here.", + "ask.trail_real": "{ms} ms of forest, played slowly", + "ask.trail_replay": "Play again", + "ask.trail_stage_cited": "Cited", + "ask.trail_stage_locate": "Entry", + "ask.trail_stage_read": "Read", + "ask.trail_stage_sniff": "Literal match", + "ask.trail_sub": "Where this question went, on the forest it came out of.", + "ask.trail_waiting": "Searching — the first stages appear before the reply does.", "ask.working_hops": "Foraging searching, reading, deciding where next…", "ask.working_sweep": "Searching the forest…" } diff --git a/apps/studio/src/locales/ask/es.json b/apps/studio/src/locales/ask/es.json index ec2544e..4bd09bb 100644 --- a/apps/studio/src/locales/ask/es.json +++ b/apps/studio/src/locales/ask/es.json @@ -14,6 +14,8 @@ "ask.ex3": "Resume lo que hay en la rama más grande.", "ask.examples": "Prueba una de estas", "ask.expand": "Ensanchar la respuesta", + "ask.graph": "Dibujar el camino en el bosque", + "ask.graph_hint": "Lee el mapa una vez y ejecuta la misma búsqueda junto a la respuesta, mientras el modelo escribe — no retrasa la respuesta. La cifra junto a las etapas es la real.", "ask.hint_send": "Pulsa ⌘↵ o Ctrl+↵ para enviar", "ask.history_bound": "Guarda las últimas {n} ejecuciones de este bosque, descartando primero las más antiguas.", "ask.history_clear": "Descartar todo", @@ -46,9 +48,11 @@ "ask.material": "Lo que leyó", "ask.material_counts": "{m} fragmento(s) · {s} extracto(s)", "ask.material_full": "Cuerpo completo", + "ask.material_hide": "Ocultar", "ask.material_hint": "El resumen decide qué nodo; el cuerpo es lo que recibió el modelo. Estos son los fragmentos y las secciones exactos.", "ask.material_outline": "Solo el esquema el cuerpo superó el presupuesto del nodo", "ask.material_section": "Sección “{s}”", + "ask.material_show": "Ver lo que se leyó", "ask.no_model": "Todavía no hay un modelo de respuesta enlazado a este bosque.", "ask.nothing": "La búsqueda no encontró nada dentro de tu alcance para esa pregunta.", "ask.path": "Por dónde fue", @@ -71,6 +75,16 @@ "ask.sub": "La búsqueda corre primero dentro de tu alcance; solo entonces el modelo lee lo encontrado.", "ask.thinking": "Leyendo el bosque…", "ask.title": "Pregunta al bosque", + "ask.trail": "El camino", + "ask.trail_empty": "Pregunta algo y el camino se dibuja aquí.", + "ask.trail_real": "{ms} ms de bosque, mostrados despacio", + "ask.trail_replay": "Repetir", + "ask.trail_stage_cited": "Citó", + "ask.trail_stage_locate": "Entrada", + "ask.trail_stage_read": "Leyó", + "ask.trail_stage_sniff": "Coincidencia literal", + "ask.trail_sub": "Por dónde pasó esta pregunta, en el bosque del que salió.", + "ask.trail_waiting": "Buscando — las primeras etapas aparecen antes que la respuesta.", "ask.working_hops": "Forrajeando buscando, leyendo, decidiendo a dónde ir…", "ask.working_sweep": "Buscando en el bosque…" } diff --git a/apps/studio/src/locales/ask/pt.json b/apps/studio/src/locales/ask/pt.json index ccfa7c9..826ae49 100644 --- a/apps/studio/src/locales/ask/pt.json +++ b/apps/studio/src/locales/ask/pt.json @@ -14,6 +14,8 @@ "ask.ex3": "Resuma o que existe no maior galho.", "ask.examples": "Experimente uma destas", "ask.expand": "Alargar a resposta", + "ask.graph": "Desenhar o caminho na floresta", + "ask.graph_hint": "Lê o mapa uma vez e roda a mesma busca junto com a resposta, enquanto o modelo escreve — não atrasa a resposta. O número ao lado das etapas é o real.", "ask.hint_send": "Use ⌘↵ ou Ctrl+↵ para enviar", "ask.history_bound": "Guarda as últimas {n} execuções desta floresta, descartando as mais antigas primeiro.", "ask.history_clear": "Descartar tudo", @@ -46,9 +48,11 @@ "ask.material": "O que ele leu", "ask.material_counts": "{m} trecho(s) · {s} extrato(s)", "ask.material_full": "Corpo inteiro", + "ask.material_hide": "Ocultar", "ask.material_hint": "O resumo decide qual nó; o corpo é o que o modelo recebeu. Estes são os trechos e as seções exatos.", "ask.material_outline": "Só o sumário de seções o corpo passou do orçamento do nó", "ask.material_section": "Seção “{s}”", + "ask.material_show": "Ver o que foi lido", "ask.no_model": "Nenhum modelo de resposta está ligado a esta floresta ainda.", "ask.nothing": "A busca não encontrou nada dentro do seu escopo para essa pergunta.", "ask.path": "Por onde ele foi", @@ -71,6 +75,16 @@ "ask.sub": "A busca roda primeiro dentro do seu escopo; só então o modelo lê o que foi encontrado.", "ask.thinking": "Lendo a floresta…", "ask.title": "Pergunte à floresta", + "ask.trail": "O caminho", + "ask.trail_empty": "Pergunte alguma coisa e o caminho aparece aqui.", + "ask.trail_real": "{ms} ms de floresta, exibidos devagar", + "ask.trail_replay": "Repetir", + "ask.trail_stage_cited": "Citou", + "ask.trail_stage_locate": "Entrada", + "ask.trail_stage_read": "Leu", + "ask.trail_stage_sniff": "Casou literal", + "ask.trail_sub": "Por onde esta pergunta passou, na floresta de onde ela saiu.", + "ask.trail_waiting": "Buscando — as primeiras etapas aparecem antes da resposta.", "ask.working_hops": "Forrageando buscando, lendo, decidindo para onde ir…", "ask.working_sweep": "Buscando na floresta…" } diff --git a/apps/studio/src/trailmap.js b/apps/studio/src/trailmap.js new file mode 100644 index 0000000000000000000000000000000000000000..8a064ee0b7c96d9a84ec0c2b8bfdc2e79e647677 GIT binary patch literal 6550 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 literal 0 HcmV?d00001 diff --git a/apps/studio/src/views/Ask.jsx b/apps/studio/src/views/Ask.jsx index 44889af..a15d9f3 100644 --- a/apps/studio/src/views/Ask.jsx +++ b/apps/studio/src/views/Ask.jsx @@ -13,9 +13,11 @@ import { } from '../design/ui.jsx' import { Markdown } from '../design/markdown.jsx' import { - Ask as AskIcon, Clock, Collapse, Download, Expand, Printer, Sparkle, Trash, + Ask as AskIcon, Clock, Collapse, Download, Expand, Eye, Printer, Sparkle, + Trash, } from '../design/icons.jsx' import { PayloadImage } from './files.jsx' +import AnswerTrail from './trail.jsx' import { Metric, NeedsCapability, Row, TraceSteps, fmtMs, has, nodeLink, useAsync, } from './shared.jsx' @@ -28,9 +30,10 @@ const REPLY_STEPS = [0, 200, 400, 600, 900, 1200, 1800, 2600, 4000] function loadPrefs() { try { - return { reply: 0, ...JSON.parse(localStorage.getItem(ASK_PREFS_KEY) || '{}') } + return { reply: 0, graph: true, + ...JSON.parse(localStorage.getItem(ASK_PREFS_KEY) || '{}') } } catch { - return { reply: 0 } + return { reply: 0, graph: true } } } @@ -73,6 +76,15 @@ export default function Ask({ forest, grant, me, goto }) { // without comparison the runs history exists to read side by side. const [cache, setCache] = useState(true) const [wide, setWide] = useState(false) + // J.5.4: the map of what the answer did. A preference like the reply + // size — it lives in the browser and never in the address (J.5.8) — + // and it is its OWN switch, deliberately not folded into `hops`: the + // walk is what costs seconds, the drawing costs nothing, and one + // control over both would teach an operator that the picture is slow. + const [showGraph, setShowGraph] = useState(() => loadPrefs().graph !== false) + // The retrieval half of the sweep, fetched alongside the answer so the + // map is drawn while the model is still writing (see `ask`). + const [preview, setPreview] = useState(null) // The runs kept in this browser (J.5.9), and which of them — if any — is // what the answer panel is currently showing. const [history, setHistory] = useState(false) @@ -95,6 +107,19 @@ export default function Ask({ forest, grant, me, goto }) { if (!q) return setQuestion(q) setBusy(true); setError(null); setResult(null); setRestored(null) + setPreview(null) + // The sweep's retrieval is milliseconds and the model is seconds, so + // the map can be drawn long before the reply exists. This is the SAME + // deterministic, read-only sweep `answer` runs — same question, same + // `k`, same entry ranker — so it is what the answer saw rather than an + // approximation of it, and it deposits no pheromone: heat is the + // whisper's, at the close of an answer (J.10.7), never a read's. + // Fire and forget: a preview that fails is a map that arrives late. + if (showGraph) { + api.call(forest, 'harvest', + { query: q, k, ...(hybrid ? { hybrid: true } : {}) }) + .then(setPreview).catch(() => {}) + } // Kept beside the answer because they are half of what a comparison // needs: the same question at `k=2` and at `k=6` are two runs, and a // record that dropped them would show two answers and no reason. @@ -132,6 +157,7 @@ export default function Ask({ forest, grant, me, goto }) { setHybrid(!!run.params?.hybrid) setHops(!!run.params?.hops) setCache(run.params?.cache !== false) + setPreview(null) setResult(run.result) setRestored({ ts: run.ts, model: run.result?.model }) } @@ -218,6 +244,9 @@ export default function Ask({ forest, grant, me, goto }) { </div> <div className="space-y-3 border-t border-line pt-3"> + <Toggle checked={showGraph} + onChange={(v) => { setShowGraph(v); savePrefs({ graph: v }) }} + label={t('ask.graph')} hint={t('ask.graph_hint')} /> <Toggle checked={hops} onChange={setHops} label={t('ask.hops')} hint={t('ask.hops_hint')} /> {dense && ( @@ -247,6 +276,19 @@ export default function Ask({ forest, grant, me, goto }) { {busy && <Working hops={hops} />} + {/* J.10.4 drawn: the same material the panel below lists, on the + forest it came out of. The final result outranks the preview the + moment it lands — they are the same sweep, but only one of them + is what was actually answered from. */} + {showGraph && ( + <AnswerTrail forest={forest} + evidence={result ? (result.harvest?.results || result.read) + : preview?.results} + cited={Array.isArray(result?.hops) ? result.evidence : undefined} + trace={result?.trace} + busy={busy} /> + )} + {error && ( <Card> <ErrorNote error={error} /> @@ -666,9 +708,15 @@ function Material({ results, sources = [] }) { <div className="label">{t('ask.material')}</div> <p className="mb-3 text-[12px] text-text-3">{t('ask.material_hint')}</p> <div className="space-y-2"> - {results.map((r) => ( - <details key={r.id} className="rounded-lg border border-line bg-surface"> - <summary className="flex cursor-pointer flex-wrap items-baseline gap-2 px-3 py-2"> + {results.map((r) => { + /* A row that opens on nothing must not offer to open. The sweep + can hand back a node it found by curated metadata alone whose + body it could not read (G.7): no snippet, no section, nothing + behind the eye — and an affordance over an empty box is a + promise this panel exists not to make. */ + const readable = (r.matches?.length || 0) + (r.content?.length || 0) > 0 + const head = ( + <> <span className="font-mono text-[12px] text-text">{r.id}</span> <span className="text-[11.5px] text-text-3"> {t('ask.material_counts', { @@ -676,63 +724,97 @@ function Material({ results, sources = [] }) { s: r.content?.length || 0, })} </span> - {r.found_by?.length > 0 && ( - <span className="ml-auto font-mono text-[10.5px] uppercase tracking-[0.08em] - text-text-3">{r.found_by.join(' + ')}</span> - )} + <span className="ml-auto flex items-center gap-2"> + {r.found_by?.length > 0 && ( + <span className="font-mono text-[10.5px] uppercase tracking-[0.08em] + text-text-3">{r.found_by.join(' + ')}</span> + )} + {/* The affordance, not a second control: the summary already + IS the button, so this is a span the row's own click + drives — a nested <button> would be two targets for one + act. Open or shut is read off `details[open]` in CSS, so + nothing here keeps state the DOM already holds. */} + {readable && ( + <span className="btn gap-1.5 rounded-md bg-surface-2 px-2 py-1 + text-[11.5px] text-text-2 hover:bg-surface-3 + group-open:border-accent/30 + group-open:bg-accent-soft group-open:text-accent"> + <Eye size={13} /> + <span className="group-open:hidden">{t('ask.material_show')}</span> + <span className="hidden group-open:inline">{t('ask.material_hide')}</span> + </span> + )} + </span> {scent(r.id) && ( <span className="w-full text-[11.5px] leading-relaxed text-text-3"> {scent(r.id)} </span> )} - </summary> + </> + ) + + if (!readable) { + return ( + <div key={r.id} className="flex flex-wrap items-baseline gap-2 rounded-lg + border border-line bg-surface px-3 py-2"> + {head} + </div> + ) + } - <div className="space-y-3 border-t border-line px-3 py-2.5"> - {r.matches?.length > 0 && ( - <ul className="space-y-1.5"> - {r.matches.map((m, i) => ( - <li key={i} className="text-[12px]"> - <span className="font-mono text-[10.5px] text-text-3"> - {m.section || '—'}:{m.line} - </span> - <p className="mt-0.5 border-l-2 border-accent/40 pl-2 - font-mono text-[11.5px] leading-relaxed text-text-2"> - {m.snippet} - </p> - </li> - ))} - </ul> - )} + return ( + <details key={r.id} className="group rounded-lg border border-line bg-surface"> + <summary className="flex cursor-pointer flex-wrap items-baseline gap-2 px-3 py-2"> + {head} + </summary> + + <div className="space-y-3 border-t border-line px-3 py-2.5"> + {r.matches?.length > 0 && ( + <ul className="space-y-1.5"> + {r.matches.map((m, i) => ( + <li key={i} className="text-[12px]"> + <span className="font-mono text-[10.5px] text-text-3"> + {m.section || '—'}:{m.line} + </span> + <p className="mt-0.5 border-l-2 border-accent/40 pl-2 + font-mono text-[11.5px] leading-relaxed text-text-2"> + {m.snippet} + </p> + </li> + ))} + </ul> + )} - {r.content?.map((c, i) => ( - /* Rows are a table. Rendering them as pretty-printed JSON - asked the reader to parse a serialisation of something - the console already knows how to draw. */ - c.columns ? <Rows key={i} {...c} /> : ( - <div key={i}> - <div className="mb-1 text-[11px] text-text-3"> - {c.section - ? t('ask.material_section', { s: c.section }) - : c.outline ? t('ask.material_outline') - : t('ask.material_full')} - {c.body_tokens != null && ` · ${c.body_tokens} tokens`} + {r.content?.map((c, i) => ( + /* Rows are a table. Rendering them as pretty-printed JSON + asked the reader to parse a serialisation of something + the console already knows how to draw. */ + c.columns ? <Rows key={i} {...c} /> : ( + <div key={i}> + <div className="mb-1 text-[11px] text-text-3"> + {c.section + ? t('ask.material_section', { s: c.section }) + : c.outline ? t('ask.material_outline') + : t('ask.material_full')} + {c.body_tokens != null && ` · ${c.body_tokens} tokens`} + </div> + {c.body && ( + <pre className="max-h-56 overflow-auto whitespace-pre-wrap break-words + rounded-md bg-surface-2 p-2.5 font-mono text-[11.5px] + leading-relaxed text-text-2">{c.body}</pre> + )} + {c.outline && ( + <p className="font-mono text-[11.5px] text-text-3"> + {(Array.isArray(c.outline) ? c.outline : [c.outline]).join(' · ')} + </p> + )} </div> - {c.body && ( - <pre className="max-h-56 overflow-auto whitespace-pre-wrap break-words - rounded-md bg-surface-2 p-2.5 font-mono text-[11.5px] - leading-relaxed text-text-2">{c.body}</pre> - )} - {c.outline && ( - <p className="font-mono text-[11.5px] text-text-3"> - {(Array.isArray(c.outline) ? c.outline : [c.outline]).join(' · ')} - </p> - )} - </div> - ) - ))} - </div> - </details> - ))} + ) + ))} + </div> + </details> + ) + })} </div> </div> ) diff --git a/apps/studio/src/views/graph.jsx b/apps/studio/src/views/graph.jsx index c59262c..af130db 100644 --- a/apps/studio/src/views/graph.jsx +++ b/apps/studio/src/views/graph.jsx @@ -80,7 +80,7 @@ function readPalette(types) { /** A branch is a fact the id holds (J.5.4 v0.38): the group of * `tasks/back-end/041-oauth` at depth 2 is `tasks/back-end`. A node that * lives at the root has no branch to name, so it groups under `/`. */ -function groupOf(id, depth) { +export function groupOf(id, depth) { const parts = id.split('/') if (parts.length <= 1) return '/' return parts.slice(0, Math.min(depth, parts.length - 1)).join('/') @@ -171,7 +171,7 @@ function applyRepulsion(root, n, k, rand) { } /** One tick. `p` is the operator's force tuning (×1 = the defaults). */ -function step(sim, w, h, p) { +export function step(sim, w, h, p) { const { nodes, springs, rand } = sim sim.alpha += (sim.alphaTarget - sim.alpha) * ALPHA_DECAY const alpha = sim.alpha @@ -221,7 +221,7 @@ function step(sim, w, h, p) { * physics only has to bloom it, not carry it across the map. Orphans with * no home at all seed on the outer ring, which is where the repulsion * would take them anyway. */ -function seed(sim, w, h) { +export function seed(sim, w, h) { let s = 7 const rand = () => { s = (s * 1103515245 + 12345) % 2147483648 diff --git a/apps/studio/src/views/trail.jsx b/apps/studio/src/views/trail.jsx new file mode 100644 index 0000000..5a04959 --- /dev/null +++ b/apps/studio/src/views/trail.jsx @@ -0,0 +1,542 @@ +// SPDX-License-Identifier: AGPL-3.0-only +// Copyright 2026 Jimmy Wesley + +/* The path one answer took, drawn on the forest (spec J.5.4 + J.10.4). + * + * Explore's graph answers "what is in here". This answers a different + * question — "what did THIS question do to it" — and that is why it is a + * second view rather than a mode of the first: no filters, no settings, no + * pan, nothing to tune. One question, one path, and the map is the caption. + * + * Decisions worth keeping: + * + * 1. **The layout is Explore's, imported, never re-derived.** `seed` and + * `step` come from `graph.jsx`. The same forest must open the same way + * in both consoles, or a person describing a cluster in one is not + * describing it in the other. + * 2. **Nothing here is narrated.** Every stage is read off material the + * host actually returned: `found_by` says which retriever reached a node + * (C.6c), `content` says what was handed to the model. A stage with + * nothing in it stays dim — it is not a promise that something is coming. + * 2b. **`cited` is a walk's stage and not a sweep's.** On a walk the reply + * names its own `answer_nodes` and the host keeps only those it actually + * opened (J.10.5) — a real choice, worth its own ring. On a sweep + * `evidence` is every id in the bundle, because the reply is prose and + * names nothing; drawing that as "cited" would show a selection that + * never happened. So the caller passes `cited` only when there was one, + * and the stage simply does not exist otherwise. + * 3. **Slow is stated, never implied.** Retrieval is milliseconds and this + * animation is seconds, so the panel prints the real figure off the + * trace beside it. An animation that quietly ran at the speed of the + * thing it depicts would be a lie in the one console whose whole promise + * is that the answer is checkable. + * 4. **The trail is amber and a shortcut is not.** `--graph-trail` is its + * own token: a `discovered-shortcut` is a fact the forest holds, a trail + * is what one question did to it, and two facts must not share a colour. + * 5. **The trunk lights once.** Ancestors are shared, so segments are + * deduplicated and each lights at the EARLIEST stage that needed it — + * drawing a shared trunk once per hit would make the root the brightest + * thing on a map about somewhere else. + * 6. **Structure comes from `parent`,** which the Station already filtered + * to what this principal may see (J.11): a chain that leaves the scope + * simply stops, and never draws a line to something the caller cannot + * read. + * 7. **The reveal waits where the call waits.** It advances toward the + * number of stages that have data, so the sweep's three land together in + * milliseconds and `cited` lands when the model is finally done — the + * pause in the middle is the model writing, not a scripted beat. + */ +import { useCallback, useEffect, useMemo, useRef, useState } from 'react' +import { api } from '../api.js' +import { useI18n } from '../i18n.jsx' +import { useTheme } from '../theme.jsx' +import { Card, ErrorNote, Skeleton } from '../design/ui.jsx' +import { Graph as GraphIcon, Play } from '../design/icons.jsx' +import { hrefFor, navigate } from '../router.js' +import { + STAGES, boxOf, markNodes, reachedStages, shortName, stageCounts, + stagesFor, trailSegments, +} from '../trailmap.js' +import { groupOf, seed, step } from './graph.jsx' +import { useAsync } from './shared.jsx' + +const STAGE_MS = 620 // one stage's share of the reveal +const FORCE = { repel: 1, distance: 1.15, attract: 1, center: 1 } +const PAD = 34 // camera margin, in css pixels +const LABEL_LIMIT = 22 // past this a caption per hit whites out the map + +const clamp01 = (v) => (v < 0 ? 0 : v > 1 ? 1 : v) + +export default function AnswerTrail({ forest, evidence, cited, trace, busy }) { + const { t } = useI18n() + const { resolved } = useTheme() + const box = useRef(null) + const canvas = useRef(null) + const sim = useRef({ nodes: [], springs: [], links: [], index: {}, + alpha: 0, alphaTarget: 0, active: false, rand: Math.random }) + const cam = useRef({ x: 0, y: 0, k: 1 }) + const anim = useRef({ pos: 0 }) + const needsDraw = useRef(true) + const [hover, setHover] = useState(null) + const [replays, setReplays] = useState(0) + + const calm = typeof matchMedia === 'function' + && matchMedia('(prefers-reduced-motion: reduce)').matches + + // One cheap read on the reader pool (J.6.2), and it is the same + // projection Explore takes — a forest open in both consoles pays for the + // map twice and for nothing else. + const map = useAsync(() => api.map(forest, 'graph'), [forest]) + + const marks = useMemo(() => markNodes(evidence, cited), [evidence, cited]) + const byId = useMemo(() => { + const out = new Map() + for (const n of map.data?.nodes || []) out.set(n.id, n) + return out + }, [map.data]) + const trail = useMemo(() => trailSegments(marks, byId), [marks, byId]) + + // Which stages this run can have, what they hold, and how far the reveal + // may run — all three decided in `trailmap.js`, where F.137 can ask. + const applicable = stagesFor(cited) + const counts = useMemo(() => stageCounts(marks), [marks]) + const available = useMemo(() => reachedStages(marks), [marks]) + + const palette = useMemo(() => readPalette(), [resolved]) + + const paletteRef = useRef(palette) + const trailRef = useRef(trail) + const marksRef = useRef(marks) + useEffect(() => { paletteRef.current = palette; needsDraw.current = true }, [palette]) + useEffect(() => { trailRef.current = trail; needsDraw.current = true }, [trail]) + useEffect(() => { marksRef.current = marks; needsDraw.current = true }, [marks]) + + /* -- camera ------------------------------------------------------------- */ + + /* The camera starts on the whole forest and leans toward what the answer + touched as the trail spreads — halfway, never all the way: a map about + three nodes that shows only those three is no longer a map of a forest, + which is the thing being demonstrated. */ + const fit = useCallback((ease = 1) => { + const el = canvas.current + const s = sim.current + if (!el || !s.nodes.length) return + const whole = boxOf(s.nodes) + if (!whole) return + const touched = [] + for (const id of marksRef.current.keys()) { + const n = s.nodes[s.index[id]] + if (n) touched.push(n) + } + for (const seg of trailRef.current.segments) { + for (const id of [seg.a, seg.b]) { + const n = s.nodes[s.index[id]] + if (n) touched.push(n) + } + } + const near = touched.length >= 2 ? boxOf(touched) : null + const LEAN = 0.5 + const mix = (a, b) => (near ? a + (b - a) * LEAN : a) + const x0 = mix(whole.x0, near?.x0); const x1 = mix(whole.x1, near?.x1) + const y0 = mix(whole.y0, near?.y0); const y1 = mix(whole.y1, near?.y1) + + const w = el.clientWidth || 1 + const h = el.clientHeight || 1 + const k = Math.min((w - PAD * 2) / Math.max(1, x1 - x0), + (h - PAD * 2) / Math.max(1, y1 - y0), 2.4) + const v = cam.current + v.k += (k - v.k) * ease + v.x += ((w / 2 - ((x0 + x1) / 2) * k) - v.x) * ease + v.y += ((h / 2 - ((y0 + y1) / 2) * k) - v.y) * ease + }, []) + + /* -- the simulation ----------------------------------------------------- */ + + const build = useCallback(() => { + const el = canvas.current + const data = map.data + if (!el || !data) return + const w = el.clientWidth || 720 + const h = el.clientHeight || 380 + const nodes = data.nodes.map((n) => ({ + id: n.id, parent: n.parent, degree: n.degree || 0, type: n.type, + title: n.title, seedGroup: groupOf(n.id, 2), + r0: 1.6 + Math.min(5, Math.sqrt(n.degree || 0) * 1.1), + on: true, fx: null, fy: null, x: 0, y: 0, vx: 0, vy: 0, + })) + const index = Object.fromEntries(nodes.map((n, i) => [n.id, i])) + const known = new Set(nodes.map((n) => n.id)) + const links = [ + ...data.nodes.filter((n) => n.parent && known.has(n.parent)) + .map((n) => ({ src: n.parent, dst: n.id, structure: true, confidence: 1 })), + ...data.edges, + ].filter((e) => index[e.src] != null && index[e.dst] != null) + + // Spring strength is Explore's, for the same reason the layout is: a + // hub with three hundred leaves must keep its place in both maps. + const degree = {} + for (const e of links) { + degree[e.src] = (degree[e.src] || 0) + 1 + degree[e.dst] = (degree[e.dst] || 0) + 1 + } + const springs = links.map((e) => { + const da = degree[e.src] + const db = degree[e.dst] + const kind = e.structure ? 1 : (e.confidence < 1 ? 0.35 : 0.7) + const cross = nodes[index[e.src]].seedGroup !== nodes[index[e.dst]].seedGroup + return { a: index[e.src], b: index[e.dst], bias: da / (da + db), + strength: (kind / Math.min(da, db)) * (cross ? 0.12 : 1), on: true } + }) + + const s = { nodes, springs, links, index, alpha: 1, alphaTarget: 0, + active: true, rand: Math.random } + seed(s, w, h) + sim.current = s + if (calm) { + // Settled before the first paint: nobody asked to watch the layout + // assemble here. The reveal is the animation; the map is the stage. + for (let i = 0; i < 420 && s.active; i += 1) step(s, w, h, FORCE) + s.active = false + } + fit(1) + needsDraw.current = true + }, [map.data, calm, fit]) + + useEffect(() => { build() }, [build]) + + /* A new ask restarts the reveal — `busy` rising is the moment one left + the browser — and so does the replay button and a change of forest. */ + useEffect(() => { + if (!busy) return + anim.current.pos = 0 + needsDraw.current = true + }, [busy]) + useEffect(() => { + anim.current.pos = 0 + needsDraw.current = true + }, [replays, forest]) + + /* -- painting ----------------------------------------------------------- */ + + const draw = useCallback(() => { + const el = canvas.current + const s = sim.current + if (!el || !s.nodes.length) return + const dpr = window.devicePixelRatio || 1 + const w = el.clientWidth + const h = el.clientHeight + if (el.width !== Math.round(w * dpr) || el.height !== Math.round(h * dpr)) { + el.width = Math.round(w * dpr) + el.height = Math.round(h * dpr) + } + const ctx = el.getContext('2d') + const pal = paletteRef.current + const v = cam.current + const pos = anim.current.pos + const { segments, deepest } = trailRef.current + const marked = marksRef.current + const X = (n) => n.x * v.k + v.x + const Y = (n) => n.y * v.k + v.y + const reveal = (stage) => clamp01(pos - stage) + + ctx.setTransform(dpr, 0, 0, dpr, 0, 0) + ctx.clearRect(0, 0, w, h) + ctx.lineCap = 'round' + + /* 1. The forest as context. Two passes rather than a style per edge: + the state changes are what cost, not the lines. A proposal is + `confidence < 1` and is dashed here for the reason it is dashed in + Explore — it is a proposal, never an assertion. */ + ctx.lineWidth = 1 + for (const pass of [false, true]) { + ctx.globalAlpha = pass ? 0.22 : 0.11 + ctx.strokeStyle = pass ? pal.proposal : pal.edge + ctx.setLineDash(pass ? [3, 4] : []) + ctx.beginPath() + for (const e of s.links) { + if ((!e.structure && e.confidence < 1) !== pass) continue + const a = s.nodes[s.index[e.src]] + const b = s.nodes[s.index[e.dst]] + ctx.moveTo(X(a), Y(a)) + ctx.lineTo(X(b), Y(b)) + } + ctx.stroke() + } + ctx.setLineDash([]) + + ctx.globalAlpha = 0.3 + ctx.fillStyle = pal.dot + for (const n of s.nodes) { + if (marked.has(n.id)) continue + ctx.beginPath() + ctx.arc(X(n), Y(n), n.r0 * 0.62, 0, Math.PI * 2) + ctx.fill() + } + + /* 2. The trail, crawling outward from the root. Each segment takes its + own slice of its stage's reveal, ordered by depth, so the line + travels through the forest instead of appearing on it. */ + ctx.lineWidth = 1.9 + ctx.strokeStyle = pal.trail + for (const seg of segments) { + const stageAt = reveal(seg.stage) + if (stageAt <= 0) continue + const local = clamp01(stageAt * (deepest + 1) - seg.depth) + if (local <= 0) continue + const a = s.nodes[s.index[seg.a]] + const b = s.nodes[s.index[seg.b]] + if (!a || !b) continue + const ax = X(a); const ay = Y(a) + ctx.globalAlpha = 0.34 + 0.5 * local + ctx.beginPath() + ctx.moveTo(ax, ay) + ctx.lineTo(ax + (X(b) - ax) * local, ay + (Y(b) - ay) * local) + ctx.stroke() + } + + /* 3. The hits, ringed from the inside out in stage order — so a node + the model actually read is visibly more than one `locate` ranked, + and a node that is all four is unmistakable. */ + for (const [id, stages] of marked) { + const n = s.nodes[s.index[id]] + if (!n) continue + const ordered = [...stages].sort((p, q) => p - q) + const at = reveal(ordered[0]) + if (at <= 0) continue + const x = X(n); const y = Y(n) + const base = (n.r0 + 1.6) * (0.6 + 0.4 * at) + ctx.globalAlpha = 0.85 * at + ctx.fillStyle = pal.stage[STAGES[ordered[0]].key] + ctx.beginPath() + ctx.arc(x, y, base, 0, Math.PI * 2) + ctx.fill() + let ring = base + ctx.lineWidth = 1.5 + for (const stage of ordered) { + const on = reveal(stage) + if (on <= 0) continue + ring += 3 + ctx.globalAlpha = 0.75 * on + ctx.strokeStyle = pal.stage[STAGES[stage].key] + ctx.beginPath() + ctx.arc(x, y, ring * (0.7 + 0.3 * on), 0, Math.PI * 2) + ctx.stroke() + } + } + + /* 4. Names, but only while the result is small enough to read them. */ + if (marked.size <= LABEL_LIMIT) { + ctx.font = '500 10.5px ui-monospace, SFMono-Regular, Menlo, monospace' + ctx.textAlign = 'center' + ctx.fillStyle = pal.label + // Siblings land on top of each other — they are siblings — so a + // caption that simply sat above its node would bury the one beside + // it. Each is lifted until it clears what is already written; two + // unreadable names are worse than one name higher than it should be. + const placed = [] + for (const [id, stages] of marked) { + const n = s.nodes[s.index[id]] + // The obstacle is the node WITH its rings: a caption clearing the + // dot but not the rings around it is still a caption on a node. + if (n) placed.push({ x: X(n), y: Y(n), half: n.r0 + 8 + 3 * stages.size }) + } + const rows = [...marked].map(([id, stages]) => ({ id, stages })) + .sort((a, b) => { + const na = s.nodes[s.index[a.id]] + const nb = s.nodes[s.index[b.id]] + return (na ? na.y : 0) - (nb ? nb.y : 0) + }) + for (const { id, stages } of rows) { + const n = s.nodes[s.index[id]] + if (!n) continue + const at = reveal(Math.min(...stages)) + if (at <= 0.25) continue + const label = shortName(id).slice(0, 26) + const half = ctx.measureText(label).width / 2 + 5 + const x = X(n) + const free = (cy) => cy >= 12 && cy <= h - 6 && !placed.some( + (q) => Math.abs(q.y - cy) < 13 && Math.abs(q.x - x) < q.half + half) + // Above first, then below — a caption pushed past the top edge is a + // caption nobody reads, which is worse than one on the wrong side + // of its own node. + let y = null + for (let lift = 0; lift < 10 && y === null; lift += 1) { + const up = Y(n) - (n.r0 + 12) - lift * 13 + const down = Y(n) + n.r0 + 20 + lift * 13 + if (free(up)) y = up + else if (free(down)) y = down + } + if (y === null) continue + placed.push({ x, y, half }) + ctx.globalAlpha = at + ctx.fillText(label, x, y) + } + ctx.textAlign = 'start' + } + ctx.globalAlpha = 1 + }, []) + + const drawRef = useRef(draw) + useEffect(() => { drawRef.current = draw }, [draw]) + + /* -- the loop ----------------------------------------------------------- */ + + useEffect(() => { + if (calm) { + // No loop under reduced motion: the reveal is already at its end and + // the panel paints when something changed. + anim.current.pos = available + drawRef.current() + return undefined + } + let running = true + let previous = 0 + const tick = (now) => { + if (!running) return + const el = canvas.current + const s = sim.current + const dt = previous ? Math.min(64, now - previous) : 16 + previous = now + if (el && s.nodes.length) { + if (s.active) { + step(s, el.clientWidth, el.clientHeight, FORCE) + fit(0.09) + needsDraw.current = true + } + if (anim.current.pos < available) { + anim.current.pos = Math.min(available, anim.current.pos + dt / STAGE_MS) + needsDraw.current = true + } + } + if (needsDraw.current) { + needsDraw.current = false + drawRef.current() + } + requestAnimationFrame(tick) + } + requestAnimationFrame(tick) + return () => { running = false } + }, [calm, fit, available]) + + useEffect(() => { + const el = box.current + if (!el || typeof ResizeObserver !== 'function') return undefined + const ro = new ResizeObserver(() => { + const s = sim.current + s.active = true + s.alpha = Math.max(s.alpha, 0.25) + needsDraw.current = true + if (calm) { fit(1); drawRef.current() } + }) + ro.observe(el) + return () => ro.disconnect() + }, [calm, fit]) + + /* -- pointing ----------------------------------------------------------- */ + + const onMove = (event) => { + const el = canvas.current + const s = sim.current + if (!el || !s.nodes.length) return + const rect = el.getBoundingClientRect() + const px = event.clientX - rect.left + const py = event.clientY - rect.top + const v = cam.current + let best = null + let bestD = 18 * 18 + for (const id of marksRef.current.keys()) { + const n = s.nodes[s.index[id]] + if (!n) continue + const dx = n.x * v.k + v.x - px + const dy = n.y * v.k + v.y - py + const d = dx * dx + dy * dy + if (d < bestD) { bestD = d; best = { id, x: px, y: py } } + } + setHover(best) + } + + /* -- the panel ---------------------------------------------------------- */ + + if (map.error) { + return ( + <Card title={t('ask.trail')} icon={GraphIcon}> + <ErrorNote error={map.error} onRetry={map.reload} /> + </Card> + ) + } + + const hovered = hover && byId.get(hover.id) + + return ( + <Card title={t('ask.trail')} subtitle={t('ask.trail_sub')} icon={GraphIcon} + actions={available > 0 && !calm && ( + <button type="button" className="btn btn-sm" + onClick={() => setReplays((n) => n + 1)}> + <Play size={13} /> {t('ask.trail_replay')} + </button> + )}> + {map.busy ? <Skeleton rows={4} /> : ( + <> + {/* Taller than a banner on purpose: a forest lays out roughly + square, and a wide short box spends its width on sky. */} + {/* The canvas carries the click, not the card. A card is written + where the pointer is and the pointer must keep moving to reach + it — by which time it is no longer over the node that produced + it, so a card that had to be clicked could never be. The node + under the pointer is the target instead, and the card is what + says which node that is. */} + <div ref={box} className="relative h-[360px] w-full overflow-hidden rounded-lg + border border-line bg-bg sm:h-[500px]"> + <canvas ref={canvas} + className={`h-full w-full ${hover ? 'cursor-pointer' : ''}`} + onMouseMove={onMove} onMouseLeave={() => setHover(null)} + onClick={() => hover && navigate( + hrefFor(forest, 'explore', { node: hover.id }))} /> + {hovered && ( + /* Above the pointer, unless there is no room above — the box + clips, so a card that always sat on top would be cut in + half for every hit near the canopy. */ + <div className={`pointer-events-none absolute z-10 max-w-[70%] + -translate-x-1/2 rounded-lg border border-line + bg-surface px-2.5 py-1.5 shadow-pop + ${hover.y < 76 ? 'translate-y-4' + : '-translate-y-[calc(100%+14px)]'}`} + style={{ left: hover.x, top: hover.y }}> + <span className="block font-mono text-[11px] text-accent">{hovered.id}</span> + {hovered.title && ( + <span className="mt-0.5 block text-[11.5px] text-text-2">{hovered.title}</span> + )} + </div> + )} + {available === 0 && ( + <div className="pointer-events-none absolute inset-x-0 bottom-3 text-center + text-[11.5px] text-text-3"> + {t(busy ? 'ask.trail_waiting' : 'ask.trail_empty')} + </div> + )} + </div> + + {/* The stages with the counts they actually carry. A stage holding + nothing stays dim whether or not the reveal has passed it. */} + <div className="mt-3 flex flex-wrap items-center gap-x-4 gap-y-2"> + {applicable.map((stage, i) => ( + <span key={stage.key} + className={`flex items-baseline gap-1.5 text-[11.5px] transition + ${counts[i] > 0 ? 'text-text-2' : 'text-text-3 opacity-45'}`}> + <span className="h-2 w-2 shrink-0 translate-y-[1px] rounded-full" + style={{ background: palette.stage[stage.key] }} /> + {t(`ask.trail_stage_${stage.key}`)} + <span className="font-mono tabular-nums">{counts[i]}</span> + </span> + ))} + {trace?.retrieval_ms != null && ( + <span className="ml-auto font-mono text-[11px] tabular-nums text-text-3"> + {t('ask.trail_real', { ms: trace.retrieval_ms })} + </span> + )} + </div> + </> + )} + </Card> + ) +} diff --git a/tests/test_trail_panel.py b/tests/test_trail_panel.py new file mode 100644 index 0000000..6f3e019 --- /dev/null +++ b/tests/test_trail_panel.py @@ -0,0 +1,114 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2026 Jimmy Wesley + +"""The Ask console's path panel (spec J.5.15, F.137). + +The panel is drawn on a canvas in a browser, so nothing here can look at +it — and it is not the drawing that F.137 is about. The criterion is what +gets MARKED, and the rules that decide are in `apps/studio/src/trailmap.js` +precisely so a machine can put the questions to them: +`apps/studio/check-trail.mjs` does, and this module runs it. + +Two of F.137's claims are not the console's to keep, and they are checked +here directly: + +* **The preview forges no heat.** The panel draws early by running the + sweep's retrieval itself, ahead of the answer. That is only allowed + because a read deposits no pheromone — heat is the whisper's, at the + close of an answer (J.10.7). If a bare `harvest` ever started depositing, + the panel would be quietly rewriting the ranking it exists to depict, and + every console showing it would be lying twice. +* **The preview asks the answer's own question.** Same question, same `k`, + same entry ranker, or the map describes a retrieval that never ran. + That one lives in JSX, so it is read off the source: the point is not the + spelling but that the three arguments are still there. +""" + +from __future__ import annotations + +import re +import shutil +import subprocess +from pathlib import Path + +import pytest + +REPO = Path(__file__).resolve().parents[1] +STUDIO = REPO / "apps" / "studio" +CHECKER = STUDIO / "check-trail.mjs" +ASK = STUDIO / "src" / "views" / "Ask.jsx" + + +@pytest.mark.skipif(shutil.which("node") is None, reason="node not installed") +def test_the_panel_marks_only_what_the_material_says(): + r = subprocess.run(["node", str(CHECKER)], capture_output=True, text=True, + cwd=STUDIO) + assert r.returncode == 0, r.stdout + r.stderr + # Every criterion reported, not just the ones that happened to run. + assert r.stdout.count("PASS") >= 20, r.stdout + + +def test_a_harvest_deposits_no_pheromone(vine_rw): + """J.5.15 rule 2, and the reason the preview is allowed to exist. + + Heat is deposited by the whisper at the close of a hosted answer, never + by a primitive. The panel runs a second retrieval per question, so if + that ever changed, every question would double-count its own evidence + and the ranking the map depicts would be one the map itself caused. + """ + from monkeyllm.harvest import harvest + + result = harvest(vine_rw, "latency experiment", k=3) + ids = [r["id"] for r in result.get("results", [])] + assert ids, "the fixture must answer this, or the test proves nothing" + + before = vine_rw.trails.heat_map(ids) + for _ in range(3): + harvest(vine_rw, "latency experiment", k=3) + after = vine_rw.trails.heat_map(ids) + + assert after == before, ( + f"a harvest moved the heat of {[i for i in ids if after.get(i) != before.get(i)]}" + " — the path panel's preview would be forging the ranking it draws") + + # Guards the guard: every reading above is 0.0, so an instrument that + # simply could not see heat would pass this test forever. The whisper's + # own channel must move it. + vine_rw.trails.add_heat(ids) + assert vine_rw.trails.heat_map(ids) != before, ( + "heat_map reported no change after an explicit deposit, so the " + "assertion above proved nothing") + + +def test_the_preview_asks_the_answers_own_question(): + """J.5.15 rule 2: the preview is the same sweep, not a similar one.""" + source = ASK.read_text(encoding="utf-8") + call = re.search(r"api\.call\(\s*forest,\s*'harvest',(.{0,200}?)\)\s*\n", + source, re.S) + assert call, "the path panel's retrieval preview is gone from Ask.jsx" + args = call.group(1) + # The question, the depth and the entry ranker — the three the answer is + # about to be asked with. A preview missing any of them draws a + # retrieval that never ran. + assert "query: q" in args, args + assert re.search(r"\bk\b", args), args + assert "hybrid" in args, args + + +def test_the_panel_is_its_own_switch(): + """J.5.15 rule 1: never folded into the walk's. + + A walk is one model call per hop and the drawing is none. One control + over both would teach an operator that the picture is what made the + answer slow — which is exactly the reading the panel must not invite in + front of somebody evaluating the product. + """ + source = ASK.read_text(encoding="utf-8") + assert "t('ask.graph')" in source, "the path panel has no switch of its own" + assert "t('ask.hops')" in source, "the walk's switch is gone" + assert "savePrefs({ graph:" in source, ( + "the switch must persist as a browser preference (J.5.8): the " + "address carries the selection, not the taste") + # The two switches are separate pieces of state, so neither can move the + # other. `hops` reaching the panel's state at all is the defect. + assert not re.search(r"setShowGraph\((?!v\b|\(|false|true)", source), source From d1f94152699bc5200ef8b9f237e07c700349c857 Mon Sep 17 00:00:00 2001 From: Jimmy Wesley <rededown@hotmail.com> Date: Wed, 26 Aug 2026 23:32:28 -0300 Subject: [PATCH 3/9] One console may fail; the console may not disappear MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit React 18 unmounts the whole tree on an uncaught render throw, so a single bad element anywhere below `App` left a blank page — no navigation, no forest picker, no way back, and an operator whose only repair was guessing that a reload might help. That is not hypothetical: a `<Field>` wrapping a `<Select>` made React refuse an `<input>` with children (#137) and took the entire Studio down every time a document was opened. The boundary is not the fix for that bug — that one is fixed where it was written. It is the answer to the class: the shell survives, the address still says where the operator is, and the failure is reported as one console's failure rather than as the product ending. It sits below the Shell and never above it. A boundary that also caught the navigation would leave nothing to navigate WITH, which is the blank page again wearing a message. It resets on `forest:view:node`, so moving somewhere else is itself the retry, and a failure that belonged to a document the operator has left does not poison every later navigation. What it shows is the exception's `message`, truncated to one line, and nothing below it. The stack and React's component info go to `console.error`, where a front-end failure belongs: the console has no error sink of its own, and inventing one would open a second, unaudited channel out of the operator's browser — which is the premise J.5.13 is built on. Signed-off-by: Jimmy Wesley <rededown@hotmail.com> --- apps/studio/src/App.jsx | 7 +- apps/studio/src/components/Boundary.jsx | 85 +++++++++++++++++++++++++ apps/studio/src/locales/app/en.json | 5 +- apps/studio/src/locales/app/es.json | 5 +- apps/studio/src/locales/app/pt.json | 5 +- 5 files changed, 102 insertions(+), 5 deletions(-) create mode 100644 apps/studio/src/components/Boundary.jsx diff --git a/apps/studio/src/App.jsx b/apps/studio/src/App.jsx index 6ba9417..b115d87 100644 --- a/apps/studio/src/App.jsx +++ b/apps/studio/src/App.jsx @@ -11,6 +11,7 @@ import { import { Card, ErrorNote, Field, Note, Spinner, Tabs } from './design/ui.jsx' import { Forest, Globe, Moon, Sun } from './design/icons.jsx' import { Shell, consolesFor } from './components/Shell.jsx' +import { Boundary } from './components/Boundary.jsx' import Overview from './views/Overview.jsx' import Ask from './views/Ask.jsx' import Explore from './views/Explore.jsx' @@ -133,8 +134,10 @@ export default function App() { // Resolving in the effect above: one frame, not a screen. <Spinner label={t('common.loading')} size={18} /> ) : ( - <View key={`${forest}:${view}`} forest={forest} grant={grant} me={session.me} - node={node} setNode={setNode} goto={goto} /> + <Boundary resetKey={`${forest}:${view}:${node}`}> + <View key={`${forest}:${view}`} forest={forest} grant={grant} me={session.me} + node={node} setNode={setNode} goto={goto} /> + </Boundary> )} </Shell> ) diff --git a/apps/studio/src/components/Boundary.jsx b/apps/studio/src/components/Boundary.jsx new file mode 100644 index 0000000..294fe03 --- /dev/null +++ b/apps/studio/src/components/Boundary.jsx @@ -0,0 +1,85 @@ +// SPDX-License-Identifier: AGPL-3.0-only +// Copyright 2026 Jimmy Wesley + +/* One console may fail; the console may not disappear. + * + * React 18 unmounts the whole tree on an uncaught render throw, so a single + * bad element anywhere below `App` leaves a blank page with no navigation, + * no forest picker and no way back — the operator's only repair is guessing + * that a reload might help. That is what a `<Field>` wrapping a `<Select>` + * did to the reading console: React refused an `<input>` with children + * (#137) and took the entire Studio down with it, every time a document was + * opened. + * + * The boundary is not the fix for that bug — the bug is fixed where it was + * written. It is the answer to the *class*: the shell survives, the address + * still says where the operator is, and the failure is reported as one + * console's failure instead of as the product ending. + * + * Deliberately below the Shell and never above it: a boundary that also + * caught the navigation would leave nothing to navigate WITH. + */ +import { Component } from 'react' +import { useI18n } from '../i18n.jsx' +import { Card } from '../design/ui.jsx' +import { Alert } from '../design/icons.jsx' + +export class Boundary extends Component { + constructor(props) { + super(props) + this.state = { error: null } + } + + static getDerivedStateFromError(error) { + return { error } + } + + componentDidCatch(error, info) { + // The console has no error sink of its own, and inventing one would be a + // second, unaudited channel out of the operator's browser (J.5.13's + // premise). The devtools console is where a front-end failure belongs. + console.error('Studio console failed to render', error, info) // eslint-disable-line no-console + } + + componentDidUpdate(prev) { + // `resetKey` is the place: moving console, forest or node must clear a + // failure that belonged to where the operator no longer is. Without + // this, one broken document would poison every later navigation. + if (this.state.error && prev.resetKey !== this.props.resetKey) { + this.setState({ error: null }) + } + } + + render() { + if (!this.state.error) return this.props.children + return <Crashed error={this.state.error} + onRetry={() => this.setState({ error: null })} /> + } +} + +/** The report. A function component because the strings are translated and + * a class cannot hold a hook. */ +function Crashed({ error, onRetry }) { + const { t } = useI18n() + return ( + <Card> + <div className="py-6 text-center"> + <span className="mx-auto mb-3 grid h-11 w-11 place-items-center rounded-xl + bg-surface-2 text-danger"><Alert size={20} /></span> + <p className="text-[13.5px] font-medium text-text">{t('app.crashed')}</p> + <p className="mx-auto mt-1 max-w-[46ch] text-[12.5px] text-text-3"> + {t('app.crashed_hint')} + </p> + {error?.message && ( + <code className="mx-auto mt-3 block max-w-[60ch] truncate rounded-lg bg-surface-2 + px-3 py-1.5 text-left text-[11.5px] text-text-3"> + {String(error.message)} + </code> + )} + <button className="btn btn-primary btn-sm mt-4" onClick={onRetry}> + {t('app.crashed_retry')} + </button> + </div> + </Card> + ) +} diff --git a/apps/studio/src/locales/app/en.json b/apps/studio/src/locales/app/en.json index 52122be..9c92dc7 100644 --- a/apps/studio/src/locales/app/en.json +++ b/apps/studio/src/locales/app/en.json @@ -1,5 +1,8 @@ { "app.name": "MonkeyLLM", "app.studio": "Studio", - "app.tagline": "Console for a governed forest." + "app.tagline": "Console for a governed forest.", + "app.crashed": "This console stopped rendering", + "app.crashed_hint": "Something in this page failed. The forest is untouched and nothing was lost — try again, or move to another console.", + "app.crashed_retry": "Try again" } diff --git a/apps/studio/src/locales/app/es.json b/apps/studio/src/locales/app/es.json index 7004cf2..2326afd 100644 --- a/apps/studio/src/locales/app/es.json +++ b/apps/studio/src/locales/app/es.json @@ -1,5 +1,8 @@ { "app.name": "MonkeyLLM", "app.studio": "Studio", - "app.tagline": "Consola de un bosque gobernado." + "app.tagline": "Consola de un bosque gobernado.", + "app.crashed": "Esta consola dejó de renderizarse", + "app.crashed_hint": "Algo en esta página falló. El bosque está intacto y no se perdió nada — inténtalo de nuevo o ve a otra consola.", + "app.crashed_retry": "Intentar de nuevo" } diff --git a/apps/studio/src/locales/app/pt.json b/apps/studio/src/locales/app/pt.json index e45ce37..4bb53b0 100644 --- a/apps/studio/src/locales/app/pt.json +++ b/apps/studio/src/locales/app/pt.json @@ -1,5 +1,8 @@ { "app.name": "MonkeyLLM", "app.studio": "Studio", - "app.tagline": "Console de uma floresta governada." + "app.tagline": "Console de uma floresta governada.", + "app.crashed": "Este console parou de renderizar", + "app.crashed_hint": "Algo nesta página falhou. A floresta está intacta e nada foi perdido — tente de novo ou vá para outro console.", + "app.crashed_retry": "Tentar de novo" } From 7b76cf0e26fd09ef6c328ecc06bad9784060d19f Mon Sep 17 00:00:00 2001 From: Jimmy Wesley <rededown@hotmail.com> Date: Wed, 26 Aug 2026 23:33:18 -0300 Subject: [PATCH 4/9] The way into a document is a search, and it says what it searched MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two things in the reading console, one of which is the bug the boundary beside it was built for. The `<Field>` wrapping the share-window `<Select>` made React refuse an `<input>` with children (#137) and threw on every render of the share panel, which in React 18 unmounted the whole Studio. `Select` carries its own label, so the wrapper was never needed; it is gone, and the crash with it. The boundary is the answer to the class, this is the answer to the instance. The finder is now shaped like a search engine rather than like a form, because that is what somebody opening this console is doing. Each result is a real `href` through the router's helper, so middle click, "copy link" and the status bar all work — a list of buttons looks identical and answers none of them. Three honesty rules, and each of them is a place where the easy version lies: The clock is the engine's (J.10.6). `Server-Timing: vine` is the forest's own figure and the round trip is the internet's, so the round trip rides in the tooltip and never in the headline. When the header is absent — an older Station, a proxy that dropped it — the line carries no time at all, because printing the browser's stopwatch there is the exact claim J.10.6 forbids. The page is one page. `locate` answers inside an 800-token budget (C.6) and has no cursor, so ~10 entries is the whole of what one call can return whatever `k` says, and there is no page two to offer. When the budget cut the list the line SAYS there are more matches, instead of letting ten look like all of them. And the search names the search it did not do. `locate` reads curated metadata and never the bodies (C.6b), so `searched` reports how many documents that covered and the empty state points at Explore, which runs both halves. A silence here is a fact about titles and summaries, not about the forest. Signed-off-by: Jimmy Wesley <rededown@hotmail.com> --- apps/studio/src/locales/read/en.json | 12 +- apps/studio/src/locales/read/es.json | 14 +- apps/studio/src/locales/read/pt.json | 14 +- apps/studio/src/views/Read.jsx | 212 +++++++++++++++++++++------ 4 files changed, 201 insertions(+), 51 deletions(-) diff --git a/apps/studio/src/locales/read/en.json b/apps/studio/src/locales/read/en.json index 0844155..c1c46c9 100644 --- a/apps/studio/src/locales/read/en.json +++ b/apps/studio/src/locales/read/en.json @@ -1,6 +1,6 @@ { "read.title": "Read a document", - "read.finder_hint": "Find the document to read — or open one from Explore.", + "read.finder_hint": "Search the forest and open a document to read.", "read.finder_placeholder": "Search by title, summary or tag…", "read.finder_empty": "Nothing matched. Try other words, or browse in Explore.", "read.copy_raw": "Copy markdown", @@ -23,5 +23,13 @@ "read.share_expires": "expires {date}", "read.share_revoke": "Revoke this link", "read.shared_gone": "This link no longer works", - "read.shared_expires": "Shared document · link expires {date}" + "read.shared_expires": "Shared document · link expires {date}", + "read.finder_found": "{n} documents", + "read.finder_found_one": "1 document", + "read.finder_time": "{ms} in the forest", + "read.finder_roundtrip": "Round trip, network included: {ms}", + "read.finder_more": "There are more matches than one search can carry. Narrow the term, or use Explore, which reads the texts too.", + "read.finder_searched": "among {n} documents", + "read.finder_scent_only": "Titles, summaries and tags only — never the texts. Explore reads those too.", + "read.finder_branch": "branch" } diff --git a/apps/studio/src/locales/read/es.json b/apps/studio/src/locales/read/es.json index e461de5..6ff17fd 100644 --- a/apps/studio/src/locales/read/es.json +++ b/apps/studio/src/locales/read/es.json @@ -1,7 +1,7 @@ { "read.title": "Leer un documento", - "read.finder_hint": "Encuentra el documento para leer — o abre uno desde Explorar.", - "read.finder_placeholder": "Busca por título, resumen o etiqueta…", + "read.finder_hint": "Busca en el bosque y abre un documento para leer.", + "read.finder_placeholder": "Buscar por título, resumen o etiqueta…", "read.finder_empty": "Nada coincide. Prueba otras palabras, o navega en Explorar.", "read.copy_raw": "Copiar markdown", "read.download": "Descargar", @@ -23,5 +23,13 @@ "read.share_expires": "caduca {date}", "read.share_revoke": "Revocar este enlace", "read.shared_gone": "Este enlace ya no funciona", - "read.shared_expires": "Documento compartido · el enlace caduca {date}" + "read.shared_expires": "Documento compartido · el enlace caduca {date}", + "read.finder_found": "{n} documentos", + "read.finder_found_one": "1 documento", + "read.finder_time": "{ms} en el bosque", + "read.finder_roundtrip": "Ida y vuelta, red incluida: {ms}", + "read.finder_more": "Hay más coincidencias de las que una búsqueda puede llevar. Afina el término, o usa Explorar, que también lee los textos.", + "read.finder_searched": "entre {n} documentos", + "read.finder_scent_only": "Solo títulos, resúmenes y etiquetas — nunca los textos. Explorar también lee los textos.", + "read.finder_branch": "rama" } diff --git a/apps/studio/src/locales/read/pt.json b/apps/studio/src/locales/read/pt.json index c330233..f0f6700 100644 --- a/apps/studio/src/locales/read/pt.json +++ b/apps/studio/src/locales/read/pt.json @@ -1,7 +1,7 @@ { "read.title": "Ler um documento", - "read.finder_hint": "Encontre o documento para ler — ou abra um a partir do Explorar.", - "read.finder_placeholder": "Busque por título, resumo ou tag…", + "read.finder_hint": "Busque na floresta e abra um documento para ler.", + "read.finder_placeholder": "Buscar por título, resumo ou tag…", "read.finder_empty": "Nada encontrado. Tente outras palavras, ou navegue no Explorar.", "read.copy_raw": "Copiar markdown", "read.download": "Baixar", @@ -23,5 +23,13 @@ "read.share_expires": "expira em {date}", "read.share_revoke": "Revogar este link", "read.shared_gone": "Este link não funciona mais", - "read.shared_expires": "Documento compartilhado · link expira em {date}" + "read.shared_expires": "Documento compartilhado · link expira em {date}", + "read.finder_found": "{n} documentos", + "read.finder_found_one": "1 documento", + "read.finder_time": "{ms} na floresta", + "read.finder_roundtrip": "Ida e volta, rede incluída: {ms}", + "read.finder_more": "Há mais correspondências do que uma busca consegue carregar. Refine o termo, ou use o Explorar, que também lê os textos.", + "read.finder_searched": "entre {n} documentos", + "read.finder_scent_only": "Só títulos, resumos e tags — nunca os textos. O Explorar também lê os textos.", + "read.finder_branch": "ramo" } diff --git a/apps/studio/src/views/Read.jsx b/apps/studio/src/views/Read.jsx index 2434834..dd056f9 100644 --- a/apps/studio/src/views/Read.jsx +++ b/apps/studio/src/views/Read.jsx @@ -15,8 +15,9 @@ import { useEffect, useMemo, useRef, useState } from 'react' import { api } from '../api.js' import { useI18n } from '../i18n.jsx' +import { fmtMs, nodeLink } from './shared.jsx' import { - Badge, Card, CopyButton, Empty, ErrorNote, Field, Select, Spinner, + Badge, Card, CopyButton, Empty, ErrorNote, Select, Spinner, } from '../design/ui.jsx' import { Markdown } from '../design/markdown.jsx' import { @@ -24,61 +25,183 @@ import { } from '../design/icons.jsx' export default function Read({ forest, grant, node, setNode, goto }) { - const { t } = useI18n() if (!node) { - return <Finder forest={forest} onOpen={setNode} /> + return <Finder forest={forest} /> } return <Document key={`${forest}:${node}`} forest={forest} grant={grant} node={node} setNode={setNode} goto={goto} /> } -/** No selection: find the document to read. A thin `locate` — the full - * instrument lives in Explore; this is only the way to a page. */ -function Finder({ forest, onOpen }) { +/** The one call this page makes returns at most a budget's worth of entries + * (C.6): asking for more than fits changes nothing, so the page size and + * the ask are the same number. */ +const PAGE = 10 + +/** No selection: find the document to read. + * + * Shaped like a search engine and not like a form, because that is what a + * person opening this console is doing. Three things follow from that: + * + * 1. **The result is a link.** A real `href` through the router's own + * helper, so middle click, "copy link" and the status bar all work — a + * list of buttons looks the same and answers none of those. + * 2. **The clock is the engine's** (J.10.6). `Server-Timing: vine` is the + * forest's own figure; the round trip is the internet's and rides in the + * tooltip, never in the headline. When the header is absent — an older + * Station, a proxy that dropped it — the line simply carries no time, + * because printing the stopwatch there would be the exact claim J.10.6 + * forbids. + * 3. **The page is one page.** `locate` answers within a token budget + * (C.6, 800) and has no cursor, so ~10 entries is the whole of what one + * call can return: there is no page two to offer. When the budget cut + * the list, the line SAYS there are more rather than implying the + * forest holds ten. + * + * A thin `locate` on purpose — it searches curated metadata and never the + * bodies (C.6b), so the empty state names the search it did not do and + * points at Explore, which runs both halves. The full instrument lives + * there; this is only the way to a page. + */ +function Finder({ forest }) { const { t } = useI18n() const [q, setQ] = useState('') - const [hits, setHits] = useState(null) + const [res, setRes] = useState(null) const [busy, setBusy] = useState(false) const [error, setError] = useState(null) const search = async (e) => { e?.preventDefault() - if (!q.trim()) return + const query = q.trim() + if (!query) return setBusy(true); setError(null) + const t0 = performance.now() try { - const r = await api.call(forest, 'locate', { query: q, k: 8 }) - setHits(r.results || []) - } catch (err) { setError(err) } finally { setBusy(false) } + const { data, timing } = await api.timedCall( + forest, 'locate', { query, k: PAGE }) + setRes({ + query, + hits: data.results || [], + truncated: !!data.truncated, + // C.1.1: what an empty read owes its caller — how large the space + // was. Present only on the empty path, which is the only place the + // console has a use for it. + searched: data.searched ?? null, + engine: timing?.vine ?? null, + wall: performance.now() - t0, + }) + } catch (err) { setError(err); setRes(null) } finally { setBusy(false) } + } + + const box = ( + <SearchBox q={q} setQ={setQ} onSubmit={search} busy={busy} + placeholder={t('read.finder_placeholder')} + label={t('common.search')} /> + ) + + // Nothing asked yet: the whole page is the question. + if (!res && !error) { + return ( + <div className="grid min-h-[56vh] place-items-center px-4"> + <div className="w-full max-w-2xl text-center"> + <span className="mx-auto mb-4 grid h-12 w-12 place-items-center rounded-2xl + bg-surface-2 text-text-3"><Book size={22} /></span> + <h1 className="text-[19px] font-medium text-text">{t('read.title')}</h1> + <p className="mx-auto mt-1 max-w-[46ch] text-[12.5px] text-text-3"> + {t('read.finder_hint')} + </p> + <div className="mt-6">{box}</div> + </div> + </div> + ) } return ( - <Card title={t('read.title')} icon={Book}> - <p className="mb-3 text-[12.5px] text-text-3">{t('read.finder_hint')}</p> - <form onSubmit={search} className="flex gap-2"> - <input className="input flex-1" value={q} placeholder={t('read.finder_placeholder')} - onChange={(e) => setQ(e.target.value)} /> - <button className="btn btn-primary" type="submit" disabled={busy || !q.trim()}> - <Search size={14} /> {t('common.search')} - </button> - </form> - {error && <div className="mt-3"><ErrorNote error={error} /></div>} - {busy && <div className="mt-4"><Spinner label={t('common.loading')} /></div>} - {hits && !busy && (hits.length ? ( - <ul className="mt-4 space-y-1"> - {hits.map((h) => ( - <li key={h.id}> - <button className="w-full rounded-lg px-3 py-2 text-left hover:bg-surface-2" - onClick={() => onOpen(h.id)}> - <span className="block text-[13px] font-medium text-text">{h.title}</span> - <span className="block truncate text-[12px] text-text-3">{h.summary}</span> - </button> - </li> - ))} - </ul> + <div className="max-w-3xl"> + <div className="max-w-2xl">{box}</div> + {error && <div className="mt-4"><ErrorNote error={error} /></div>} + {busy && <div className="mt-6"><Spinner label={t('common.loading')} /></div>} + {res && !busy && (res.hits.length ? ( + <> + <Stats res={res} /> + <ol className="mt-4 space-y-6"> + {res.hits.map((h) => <Hit key={h.id} forest={forest} hit={h} />)} + </ol> + {res.truncated && ( + <p className="mt-8 border-t border-line pt-4 text-[12.5px] text-text-3"> + {t('read.finder_more')} + </p> + )} + </> ) : ( - <div className="mt-4"><Empty title={t('read.finder_empty')} icon={Search} /></div> + <div className="mt-8"> + <Empty title={t('read.finder_empty')} icon={Search}> + <span className="mt-1 block text-[12px] text-text-3"> + {res.searched != null && `${t('read.finder_searched', { n: res.searched })} · `} + {t('read.finder_scent_only')} + </span> + </Empty> + </div> ))} - </Card> + </div> + ) +} + +function SearchBox({ q, setQ, onSubmit, busy, placeholder, label }) { + return ( + <form onSubmit={onSubmit} className="flex items-center gap-2"> + <label className="relative min-w-0 flex-1"> + <Search size={16} className="pointer-events-none absolute left-4 top-1/2 + -translate-y-1/2 text-text-3" /> + <input + className="w-full rounded-full border border-line bg-surface-2 py-2.5 pl-11 pr-4 + text-sm text-text shadow-card outline-none transition + placeholder:text-text-3 focus:border-accent focus:bg-surface + focus:ring-2 focus:ring-accent/20" + value={q} placeholder={placeholder} autoFocus + onChange={(e) => setQ(e.target.value)} /> + </label> + <button className="btn btn-primary rounded-full px-4" type="submit" + disabled={busy || !q.trim()}> + <Search size={14} /> {label} + </button> + </form> + ) +} + +/** How many, and whose clock said how fast. */ +function Stats({ res }) { + const { t } = useI18n() + const n = res.hits.length + return ( + <p className="mt-5 text-[12px] text-text-3" + title={t('read.finder_roundtrip', { ms: fmtMs(res.wall) })}> + {n === 1 ? t('read.finder_found_one') : t('read.finder_found', { n })} + {res.engine != null && ` · ${t('read.finder_time', { ms: fmtMs(res.engine) })}`} + </p> + ) +} + +/** One result. The address above, the title as the link, the summary below — + * the shape a person already knows how to read. */ +function Hit({ forest, hit }) { + const { t } = useI18n() + const crumbs = hit.id.replace(/\/_index$/, '').split('/') + return ( + <li> + <div className="flex items-center gap-2 text-[11.5px] text-text-3"> + <span className="min-w-0 truncate">{crumbs.join(' › ')}</span> + {hit.kind === 'branch' && <Badge>{t('read.finder_branch')}</Badge>} + </div> + <a {...nodeLink(forest, hit.id, 'read')} + className="mt-0.5 block text-[16px] leading-snug text-accent hover:underline"> + {hit.title} + </a> + {hit.summary && ( + <p className="mt-1 max-w-[80ch] text-[13px] leading-relaxed text-text-2"> + {hit.summary} + </p> + )} + </li> ) } @@ -243,13 +366,16 @@ function SharePanel({ forest, node }) { <Card title={t('read.share_title')} icon={Share} bodyClass="p-3"> <p className="mb-2 text-[12px] text-text-3">{t('read.share_hint')}</p> <div className="flex items-end gap-2"> - <Field label={t('read.share_days')} className="flex-1"> - <Select value={days} onChange={(e) => setDays(e.target.value)}> - <option value="7">{t('read.days_7')}</option> - <option value="30">{t('read.days_30')}</option> - <option value="90">{t('read.days_90')}</option> - </Select> - </Field> + {/* The select carries its own label: wrapping it in a `Field` made + React render an <input> with children, which is a hard throw + (#137) — and with no boundary above it, that throw took the whole + console down every time a document opened. */} + <Select label={t('read.share_days')} className="flex-1" + value={days} onChange={(e) => setDays(e.target.value)}> + <option value="7">{t('read.days_7')}</option> + <option value="30">{t('read.days_30')}</option> + <option value="90">{t('read.days_90')}</option> + </Select> <button className="btn btn-primary btn-sm" onClick={mint} disabled={busy}> <Share size={13} /> {t('read.share_create')} </button> From cce8345fa25ea781e5033e0cf7f9bcf7edbe5a55 Mon Sep 17 00:00:00 2001 From: Jimmy Wesley <rededown@hotmail.com> Date: Wed, 26 Aug 2026 23:33:29 -0300 Subject: [PATCH 5/9] The LinkedIn covers, in the sizes that platform actually serves Brand art for the company page and the personal cover, kept in `docs/` beside `banner.png` and `social-preview.png` for the reason those are: the reasoning about what a public surface claims belongs where the project keeps its reasoning, and the images the README and the cards point at are absolute raw URLs against this repository, so they have to live in it. Five files because LinkedIn serves the page cover at more than one size and crops it differently by viewport: `page-cover` and its `@2x`, a `-tall` variant for the narrow crop, a `.jpg` for the upload paths that reject PNG, and `cover` for the personal profile. Signed-off-by: Jimmy Wesley <rededown@hotmail.com> --- docs/linkedin-cover.png | Bin 0 -> 258048 bytes docs/linkedin-page-cover-tall.png | Bin 0 -> 158635 bytes docs/linkedin-page-cover.jpg | Bin 0 -> 31430 bytes docs/linkedin-page-cover.png | Bin 0 -> 118515 bytes docs/linkedin-page-cover@2x.png | Bin 0 -> 290801 bytes 5 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/linkedin-cover.png create mode 100644 docs/linkedin-page-cover-tall.png create mode 100644 docs/linkedin-page-cover.jpg create mode 100644 docs/linkedin-page-cover.png create mode 100644 docs/linkedin-page-cover@2x.png diff --git a/docs/linkedin-cover.png b/docs/linkedin-cover.png new file mode 100644 index 0000000000000000000000000000000000000000..8cecba89bb2495d40eac5ed9fb540867e0c63d02 GIT binary patch literal 258048 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%0D)Aj<+uR*KRtH`f+26Mb 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�BPV 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 literal 0 HcmV?d00001 diff --git a/docs/linkedin-page-cover-tall.png b/docs/linkedin-page-cover-tall.png new file mode 100644 index 0000000000000000000000000000000000000000..a8c3d63f27d9df24bb184bc71b01a1affdc59dab GIT binary patch literal 158635 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%0DmTIAJ%(vh|ao3$A}0c(Sc0K2G3t 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¨Y!3oy|UNN}%gCIw;NWRnY38idpL_DTzrA5_w0T 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 V%`AZlv}6DP002ovPDHLkV1lI5sV@Kk literal 0 HcmV?d00001 diff --git a/docs/linkedin-page-cover.jpg b/docs/linkedin-page-cover.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c039d9270ce99c5ba551640468f2daa5a5a34766 GIT binary patch literal 31430 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%0AKJ=G#c+x+@OFOiW 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%0A=H|*N4)U0d3y$=s=b%Gn#n-qe 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 literal 0 HcmV?d00001 diff --git a/docs/linkedin-page-cover.png b/docs/linkedin-page-cover.png new file mode 100644 index 0000000000000000000000000000000000000000..d06b8d7a101f2f1cf72812feb85c38e1806ebe53 GIT binary patch literal 118515 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�|bLB*GAo1CH^z$0*<XZYYx+ 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 literal 0 HcmV?d00001 diff --git a/docs/linkedin-page-cover@2x.png b/docs/linkedin-page-cover@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..463902331d9b3bfb93c3700f68ccc122851a92cf GIT binary patch literal 290801 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¨7o>3 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�`6Dd&xB=yAy1*7fllacJ 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%0D(~OX(uzUDEXq2C_&!GkURNcq#^02DM3}#o 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 literal 0 HcmV?d00001 From 51d3aa46dcf16a20bef01e0e50d07fd2cdde65a2 Mon Sep 17 00:00:00 2001 From: Jimmy Wesley <rededown@hotmail.com> Date: Wed, 26 Aug 2026 23:35:57 -0300 Subject: [PATCH 6/9] Update trail.jsx Signed-off-by: Jimmy Wesley <rededown@hotmail.com> --- apps/studio/src/views/trail.jsx | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/apps/studio/src/views/trail.jsx b/apps/studio/src/views/trail.jsx index 5a04959..a0c5e63 100644 --- a/apps/studio/src/views/trail.jsx +++ b/apps/studio/src/views/trail.jsx @@ -67,6 +67,26 @@ const LABEL_LIMIT = 22 // past this a caption per hit whites out the map const clamp01 = (v) => (v < 0 ? 0 : v > 1 ? 1 : v) +/** Colours live in the stylesheet with every other colour, so the map + * repaints with the theme. Read once per theme change, never per frame. + * Each stage names its own token in `trailmap.js`, so a stage added there + * arrives here with a colour and no edit. */ +function readPalette() { + const css = getComputedStyle(document.documentElement) + const channel = (name, fallback) => { + const raw = css.getPropertyValue(`--${name}`).trim() + return raw ? `rgb(${raw.split(/\s+/).join(' ')})` : fallback + } + const out = { stage: {} } + for (const s of STAGES) out.stage[s.key] = channel(s.token, 'rgb(120 132 124)') + out.dot = channel('text-3', 'rgb(120 132 124)') + out.edge = channel('graph-edge', 'rgb(120 132 124)') + out.proposal = channel('graph-shortcut', 'rgb(200 132 40)') + out.trail = channel('graph-trail', 'rgb(202 146 18)') + out.label = channel('text-2', 'rgb(90 100 92)') + return out +} + export default function AnswerTrail({ forest, evidence, cited, trace, busy }) { const { t } = useI18n() const { resolved } = useTheme() From eeda1a1bc5bfd88ea45f3360fa26eeeeb17789d9 Mon Sep 17 00:00:00 2001 From: Jimmy Wesley <rededown@hotmail.com> Date: Wed, 26 Aug 2026 23:45:14 -0300 Subject: [PATCH 7/9] fix: prevent NUL bytes in source files to preserve git text diffs A literal NUL byte in the first 8000 bytes of a file causes Git to classify it as binary, stripping away diff and blame functionality for the file. This change removes such a byte from `apps/studio/src/trailmap.js` and adds a hygiene test, `test_no_tracked_source_file_reads_as_binary`, to ensure no tracked source files contain NUL bytes, maintaining readable history and reviews. Signed-off-by: Jimmy Wesley <rededown@hotmail.com> --- apps/studio/src/trailmap.js | Bin 6550 -> 6825 bytes tests/test_repo_hygiene.py | 23 +++++++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/apps/studio/src/trailmap.js b/apps/studio/src/trailmap.js index 8a064ee0b7c96d9a84ec0c2b8bfdc2e79e647677..613c2c63cbb35f362e7cb29d836efe86f9f04cbf 100644 GIT binary patch delta 289 zcmYjLu}TC{3~WTy#%lY4YnMAgZ2ShXI<c|I?#sFH-X+U>S&pslBLx4!PVfiK+UO7n zVJ0*4ar=4qb={mc8*B$g<&g@x6-Wi4o1J5+C59yQq-u`d)Je2OwV>cfyTUKRB*|{a zh1D^Vl)AixK4%FB(-_8{=QW;-xU+&HM!~1r)5!OKK7=gJg)$zW9v})|+Syck#)0-+ z@hXnOl!A$_$H8(imZr@ATq-(IDsvkG>4&INy&^s(*3xx}Pms$vyG#dOzh5+~^Oxx+ J@ZC0VXFn&!UFZM+ delta 18 ZcmZ2!I?Z?kzvyIHF&RdN&GuqhEC4m?1l0fl diff --git a/tests/test_repo_hygiene.py b/tests/test_repo_hygiene.py index db1eb73..2af5965 100644 --- a/tests/test_repo_hygiene.py +++ b/tests/test_repo_hygiene.py @@ -58,6 +58,29 @@ def test_no_tracked_text_file_starts_with_a_utf8_bom(): "signature — in source, the mark is artifact, not content.") +def test_no_tracked_source_file_reads_as_binary(): + """A NUL in source costs the file its history, and nothing else. + + Git decides text-or-binary by looking for a NUL in the first 8000 bytes. + A source file that trips that check still imports, still runs, still + passes every test about what it does — and arrives in every diff, every + blame and every review as `Bin 0 -> 6550 bytes`. It landed exactly once, + as a literal NUL used for a map key's separator, and nothing in the suite + noticed because the code was correct. + + Written as a whitelist of the extensions this project stores code in, so + a real binary that gains one of them would be the thing to explain. + """ + offenders = [ + path.relative_to(ROOT).as_posix() for path in _tracked() + if path.suffix in TEXT_SUFFIXES and path.is_file() + and b"\x00" in path.open("rb").read(8000)] + assert not offenders, ( + f"git will treat these as binary: {offenders}. A NUL byte belongs in " + "source as an escape (\\u0000), never as itself — as itself it costs " + "the file its diff and its blame.") + + def test_the_sweep_actually_reaches_the_repository(): """Guards the guard: a `git ls-files` that returned nothing would make every assertion above vacuously true.""" From f16cdf3d8808655d0b99386a05824f674069ac13 Mon Sep 17 00:00:00 2001 From: Jimmy Wesley <rededown@hotmail.com> Date: Wed, 26 Aug 2026 23:47:27 -0300 Subject: [PATCH 8/9] Release 0.65.0 Signed-off-by: Jimmy Wesley <rededown@hotmail.com> --- pyproject.toml | 2 +- src/monkeyllm/__init__.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index b1e37b4..8389c78 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "monkeyllm" -version = "0.64.0" +version = "0.65.0" description = "A knowledge engine for AI agents: your documents become a git-versioned markdown knowledge graph an agent navigates over MCP, instead of flat vector search." readme = "README.md" requires-python = ">=3.11" diff --git a/src/monkeyllm/__init__.py b/src/monkeyllm/__init__.py index dc41272..5c52e2a 100644 --- a/src/monkeyllm/__init__.py +++ b/src/monkeyllm/__init__.py @@ -6,5 +6,5 @@ from monkeyllm.errors import VineError from monkeyllm.vine import Vine -__version__ = "0.64.0" +__version__ = "0.65.0" __all__ = ["Vine", "VineError", "__version__"] From 36fba3045eb866b3c95b7730f7143057bb3f2f76 Mon Sep 17 00:00:00 2001 From: Jimmy Wesley <rededown@hotmail.com> Date: Thu, 27 Aug 2026 00:08:12 -0300 Subject: [PATCH 9/9] The suite runs once per commit, and once per push MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two duplications, measured on this repository's own history rather than assumed. A commit on `develop` that is also a pull request's head fired `tests` twice — once for `push`, once for `pull_request` — and each run is a two-version matrix, so ~20 runner-minutes answered one question. Neither run told anything the other did not: same checkout, same suite, same matrix. `push` is now `main` only. A required status check is matched by NAME against the head SHA whatever event produced it, so the pull_request run satisfies the ruleset exactly as the pair did. The trade, stated rather than discovered later: a push to `develop` with no pull request open is no longer tested until one is opened. That is not a new hole so much as an old one made visible — the ruleset already requires a pull request on `develop`, so such a push is a bypass of a rule this repository already set. The second duplication was in time rather than in events. Pushing three times in a row left the first two suites running to produce an answer nobody would read, because the third had already superseded them. `concurrency` keyed on the ref cancels a superseded run. Never for a tag. `release.yml` calls this file, and that run is the gate in front of an upload PyPI will not let anyone take back: a push to `main` landing while a release is mid-flight must not be able to cancel the thing standing between a mistake and a permanent version. Hence the guard on the flag rather than a bare `true`. Not touched: the release re-running the suite at all. That one is the same file and not a copy of it, on purpose — a release running a copy of the checks would drift from the copy the branches enforce, and the drift would surface as a published version nobody can reproduce. Five minutes before something permanent is the one place repetition pays. Signed-off-by: Jimmy Wesley <rededown@hotmail.com> --- .github/workflows/tests.yml | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 3f14180..c9324a1 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -7,8 +7,15 @@ name: tests on: + # `main` only. A commit on `develop` is a commit on a pull request's head — + # the ruleset requires one — so listing `develop` here ran the whole suite + # twice for the same SHA, once per event, on a two-version matrix: ~20 + # runner-minutes to learn one thing. The pull_request event is the one that + # gates the merge, and a required check is matched by name against the head + # SHA whichever event produced it. The trade named plainly: a push to + # `develop` with no pull request open is no longer tested until one is. push: - branches: [main, develop] + branches: [main] pull_request: branches: [main, develop] # `release.yml` calls this same file instead of restating the suite. A @@ -22,6 +29,15 @@ on: permissions: contents: read +# One run per ref at a time: pushing three times in a row used to leave two +# full suites racing to answer a question nobody would read the answer to. +# Never for a tag — that run is the gate in front of an irreversible upload +# (`release.yml` calls this file), and a push landing meanwhile must not be +# able to cancel it. +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ !startsWith(github.ref, 'refs/tags/') }} + jobs: tests: runs-on: ubuntu-latest