Repository navigation
v0.0.20
Pre-releaseThe terminal interface can now do everything the command line does to what you are looking at, behind the same gates. The decisions are DR-0066 to DR-0070 (the menu tree and :, the shared chooser, the write classes and the removing gate, plan then apply for ingest, the document summary workflow, and the terminal rule for promote), from the design brief tui-keys-and-write-flows-design.md and its plan. Everything was written and tested red first, including the built binary on a pseudo-terminal with real bytes. The race detector passed on darwin/arm64 at the last code commit, and the interface was tried by hand on Linux (Raspberry Pi OS) and macOS. It has not been run on Windows.
Writes. n on the project list, an observation or concept tab and the Records screens, and the New rows of the menus, open a form that asks the fields one at a time and ends with the command that does the same and y. s, e and r on the project list change a project's status, description and name; e on an observation writes a correction (a new observation that supersedes it, as kb observation update does) and on a concept renames it; u on a record makes it supersede another. d deletes a project, observation, concept or record behind a gate that shows what points at it and asks for its name to be typed. Each write is the command's own function, so its rules and refusals are the same, and the screen ends by showing the command that does the same.
Plans and the command line. Ingest, Records, Fuzzy-tag and Documents (Ingest a document, Tag, Fuzzy-tag) show the command's own --dry-run output first and apply on y; Index and Format files run at once. : opens a command line on the menus and browsing screens: any verb, run by the command line's own code, with the gate its write class calls for (reads and direct verbs run, additive and changing writes ask y, a delete meets the typed-name gate, plan verbs show their dry run, merge, import, init, export and completion are refused).
Documents. Documents, Review queue lists the sections waiting for a person; Enter writes the summary in $VISUAL or $EDITOR (the interface is suspended) or in a built-in text area, then shows it above its source, and y saves it as written by a person and promotes it. A section that already has a draft starts at that review, so a model's draft is read beside its source, and promoted as it is it keeps its author.
kb ingest now says which concepts it created, or with --dry-run would create, so a typo in a [[wikilink]] no longer adds a concept silently (concepts_created in -json; (*KnowledgeBase).HasConcept in the library).
Building: cmt is no longer part of make. make generate regenerates version.go, about.md, CITATION.cff and the installers from codemeta.json, and make release runs it, so the version and release hash change only when asked for.
Not in the interface yet: Documents Browse, Documents Frontmatter (document frontmatter is reachable through :), Concepts Recall and Suggest, Check, and the removing writes source remove, unlink and document delete; kb verbs --json does not yet carry the menu fields.
Full Changelog: v0.0.19...v0.0.20