From ae384ee9289e8a53f81d16804a315f5fb4dfe989 Mon Sep 17 00:00:00 2001 From: Weksa Date: Tue, 10 Nov 2026 05:11:06 +0000 Subject: [PATCH] Map and README: the edit-accept cycle, the Decision row and the loop's live surface Co-Authored-By: Claude Sonnet 5.5 --- README.md | 5 +++-- docs/targets/interlingua-lowering-map.md | 8 +++++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index d327e48..e9aa0e9 100644 --- a/README.md +++ b/README.md @@ -32,8 +32,9 @@ measured. - `settings/`: setting-specific proving grounds for language projects. **Live versus planned.** Live: docs, fixtures, examples, ontology data and the -packet crate `crates/weksa`, including the scoring library. Planned: lowering, -the `weksa score` subcommand, and the golf loop that scores lowered English against an expressive corpus. No +packet crate `crates/weksa`, including lowering, `weksa lower` and `weksa score`, +and the golf loop's round and edit-accept cycle (`weksa loop open|round|cycle`). +Planned: a model lowerer, Score documents and the other panel languages. No daemon runs; the earlier Node daemon is parked at tag `parked/weksa-node-body`. ## Ownership Model diff --git a/docs/targets/interlingua-lowering-map.md b/docs/targets/interlingua-lowering-map.md index a0b3302..8946152 100644 --- a/docs/targets/interlingua-lowering-map.md +++ b/docs/targets/interlingua-lowering-map.md @@ -40,8 +40,9 @@ means no store holds it and nothing writes it. | Scene (cut `speaker-scene`) | Key `scene:@`, the item's split group; type `weksa.scene`: participants (speaker slugs) and, per ordered pair, relation features of slot `Scene` (relative status, intimacy, in-group, audience and whatever the loop adds), at an inventory revision, and an `Annotator` | As Speaker. Keyed by the group, so a scene never straddles the split | As Speaker | | Corpus item | Key `item::`, `n` canonical decimal >= 1 (no sign, no leading zero, from cut 2b); type `weksa.corpus_item` with text, language, speaker, split group, prior turns, source. Source `ModelWritten` carries a `ModelFamily` enum, the generator string as the fixture wrote it, and a prompt digest (cut 2b). The item carries no speaker state of its own: its speaker slug and group name the Speaker and Scene documents | Admitted once; the whole item is immutable (re-adding an identical item is a no-op, any difference is refused; a correction is a new item that `supersedes` the old); text already held under another key is refused unless the new item supersedes that key (cut 2b); withdrawn, never deleted, so old scores stay explainable | Importers and `weksa corpus add`, under `corpus-cast-plus-public-domain`; the source enum has no variant for Discord or any training-forbidden source (`corpus-clean`) | | Split assignment | Derived: `split(scheme, item.group)` | Fixed for a scheme; a new scheme is a new constant, never a reassignment. A model-written item whose group derives test is in no split; a superseding item keeps its predecessor's group | The hash function. Nobody assigns by hand, so there is no writer to forbid | -| Loop round | Key `run: