A section registered before the controller's terminal took over, or set there, is replaced or removed by a proposal the operator approves
It could not be changed at all: propose refused a name set there and never replaced one. The ask now says plainly that it replaces or removes the registered section and binds its text's digest; on Approve every node renders the new text in the place of the old (a removal leaves it out); a replacement keeps the section's own heading form (issue 340 note 14). Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
This commit is contained in:
@@ -122,7 +122,7 @@ The agent kept reaching for `ssh <machine> journalctl` while the service manager
|
||||
- **The "instead of" table.** Every seat verb and module tool may say which shell commands it replaces
|
||||
(`replaces`, in the seat's definition or the module's manifest). The module reads the bus — the seats' verbs from the
|
||||
seats' contract, the placed modules' manifests from `mesh-delivery-indexer.modules` and `.manifests`, the
|
||||
machines and where each module runs from `mesh-delivery-assigner.placement` (issue 1126: the controller that
|
||||
machines and where each module runs from `mesh-delivery-assigner.assignments` (issue 1126: the controller that
|
||||
answered this is not placed) — at start, every ten minutes and on `claude_code_render`, keeps it in its
|
||||
state (`mesh-tools.json`), and renders it into `CLAUDE.md` as one row per seat or module: `<node>/<seat>.` and
|
||||
each verb with the commands it replaces. Generated, never written by hand: a verb that gains `replaces` is in
|
||||
@@ -206,10 +206,20 @@ judges the record as this module would have made it, composes the ask again from
|
||||
the text's digest, in time), and only then writes the section into its own `approved.json`, which the managed
|
||||
instruction file renders under "Instructions the operator approved". A proposal is decided once per node, and an approval older than the last change applied to its section is never applied; a record
|
||||
deleted from the bus removes nothing. Refused: shell lines, front matter, any `@` after a non-letter (a file the instruction file may read in), invisible or control characters, headings of level one to three, anything shaped like
|
||||
a secret, more than 16 KiB, a name the terminal sets, and — at once, naming the terminal's line — whenever no channel
|
||||
a secret, more than 16 KiB, and — at once, naming the terminal's line — whenever no channel
|
||||
that proves its sender is there. The controller's hand-act log records each warrant once (`warranted`), read from the
|
||||
router's record. The text is never logged.
|
||||
|
||||
**A section registered before is replaced or removed the same way** (hq issue 340, note 14): a section registered for the
|
||||
mesh or the node before the controller's terminal took that over, or set there, is proposed over by name. The proposal
|
||||
carries `over`, the digest of the registered text, which the act the operator's answer binds names; the ask says
|
||||
plainly that it replaces (or removes) the registered section, with the registered text's fingerprint, and shows the new
|
||||
text as any other. On Approve each node writes the section into `approved.json` with that `over`, and the managed
|
||||
instruction file renders it in the place of the registered section (a removal leaves the section out); on Decline or at
|
||||
expiry nothing changes. A replacement keeps the registered section's own heading form, because it replaces a mesh
|
||||
section; the heading rule stays for every new shared section. `claude_code_proposals` shows each proposal's `registered
|
||||
section` and `claude_code_registrations` lists what approvals replaced or removed.
|
||||
|
||||
**A session asks the operator a question on Telegram** (hq ADR 0332, issue 589). An agent that needs a decision while
|
||||
the operator may be away from the terminal calls `claude_code_ask` with a headline, the context in plain words, two to
|
||||
four options (a label and what choosing it means, exactly one recommended, with why), what it does if nobody
|
||||
|
||||
Reference in New Issue
Block a user