Skip to content

History / Mesh Commands

Revisions

  • Mesh: trust verbs split; untrust removes the grant alone and refuses under an identity grant, block refuses an instance or an identity, unblock lifts only the deny or block, forget --identity erases; state table on the trust-model page, verb entries on the commands page, knock line says block --identity (TASK-176)

    @Dark-Alex-17 Dark-Alex-17 committed Oct 18, 2026
  • docs(mesh): brief note confirmations name the next command (TASK-175)

    @Dark-Alex-17 Dark-Alex-17 committed Oct 17, 2026
  • docs(mesh): brief sections separator (TASK-175)

    @Dark-Alex-17 Dark-Alex-17 committed Oct 17, 2026
  • docs(mesh): .mesh message, brief note, autostart notice (TASK-175)

    @Dark-Alex-17 Dark-Alex-17 committed Oct 16, 2026
  • docs(mesh): a relay restart re-announces the node (TASK-171)

    @Dark-Alex-17 Dark-Alex-17 committed Oct 16, 2026
  • docs(mesh): one heartbeat has passed, matching the propagation-node README

    @Dark-Alex-17 Dark-Alex-17 committed Oct 15, 2026
  • docs(mesh): read the peer age-out as about 3 h on Mesh-Commands The peer table's stale and age-out windows now derive from the heartbeat ticker's real period (3660 s), so the age-out is 10980 s and `.mesh peers` renders it as `about 3 h` in the stale marker and the legend. The sample and the quoted legend follow the code.

    @Dark-Alex-17 Dark-Alex-17 committed Oct 15, 2026
  • docs(mesh): heartbeat slack; superseded means a stale row whose identity moved The heartbeat is hourly plus a minute of slack so the relay never counts one as early; the quoted relay config comment says so in the same six lines as the scripts. A superseded row is a stale row whose identity has since announced from another destination; two live instances under one identity are never marked.

    @Dark-Alex-17 Dark-Alex-17 committed Oct 15, 2026
  • docs(mesh): heartbeat is hourly; peers legend and the stale/superseded markers Coyote announces hourly to match the Reticulum announce-rate default, so every twin of the old 15-minute figure moves: the peer-discovered throttle in Hooks, the walkthroughs and relay gotchas in Mesh-Deployment and Mesh-Platform-Support, the propagation-node deferral budget in Mesh and Mesh-Commands. The rnsd config quote carries the six comment lines the relay scripts now write. The .mesh peers sample shows the stale and superseded markers and ends with the legend the command prints; the prose explains both states. Brand-new peers appear within an hour; known peers are reachable at once.

    @Dark-Alex-17 Dark-Alex-17 committed Oct 15, 2026
  • docs(mesh): qualify the restart reach to one-peer requests, say W1-off fails at the link stage, quote the route line

    @Dark-Alex-17 Dark-Alex-17 committed Oct 14, 2026
  • docs(mesh): a request to a known peer asks for a path before it is refused The relay gotcha said Coyote never requests a path and that a restarted node waits up to a heartbeat before it can reach a peer it already knew. A request to a trusted peer the transport has no route to now asks the network for a path and waits up to 5 s; the refusal, quoted on the status, knock and fetch entries, says the request went unanswered and that nothing was queued. The Windows walkthrough no longer waits for W1's heartbeat after W2 rejoins, and the Timers section names the wait and the status sweep that skips it.

    @Dark-Alex-17 Dark-Alex-17 committed Oct 14, 2026
  • docs(mesh): mesh.enabled joins when a session is entered, .mesh off holds for the run, .exit session leaves

    @Dark-Alex-17 Dark-Alex-17 committed Oct 13, 2026
  • docs(mesh): a knock is not first contact The Trust Model's Knocks section and the .mesh knock entry say a knock is heard only by a peer that already trusts this identity (a new instance of a known identity), that a stranger's silence is reported as unanswered rather than unreachable, and that first contact is .mesh trust on both sides after exchanging destination hashes, as the two laptops walkthrough shows. The knock entry quotes the new preview tail, the stored-after- silence report and the no-propagation-node error as the code prints them.

    @Dark-Alex-17 Dark-Alex-17 committed Oct 13, 2026
  • docs: .mesh verbs accept a unique 8-character prefix of a known hash

    @Dark-Alex-17 Dark-Alex-17 committed Oct 12, 2026
  • docs: answer what a first-time mesh reader could not work out A read-through by someone new to Reticulum who wanted two laptops to coordinate stalled on: where function_calling_support lives, what a knock is (the three pages defined it three ways), which hash to verify out of band, who sees a .mesh reply, how to tell from rnstatus that the other daemon is there, which ports the firewall sentence means, whether anything hurries the up-to-15-minute announce wait, and what a "turn" is.

    @Dark-Alex-17 Dark-Alex-17 committed Oct 12, 2026
  • docs: Mesh Commands intro for readers new to Reticulum, ASCII samples

    @Dark-Alex-17 Dark-Alex-17 committed Oct 12, 2026
  • docs: drop the plan field from the status card pages The card no longer carries a plan title, so the fenced-fields list, the card fields sentence and the .mesh status sample lose it.

    @Dark-Alex-17 Dark-Alex-17 committed Oct 12, 2026
  • docs(TASK-151): mesh pages link the SCOPE specification repository instead of the removed in-repo protocol draft The eight PROTOCOL.md link sites on Mesh, Mesh Commands, Mesh Configuration and Mesh File Sharing now point at https://github.com/Dark-Alex-17/scope-protocol (repository root; the anchored section links went with the renumbered sections). The verification bullet on Mesh describes the conformance bake-off against the SCOPE specification in place of the in-repo coverage table.

    @Dark-Alex-17 Dark-Alex-17 committed Oct 11, 2026
  • docs(TASK-143): Mesh-Commands, Mesh-Configuration, Mesh-Containers follow the private 127.0.0.1:4242 default Mesh-Commands.md: .mesh on samples name the loopback relay; the three WARNING lines, the relay failure text, the loopback hint, the lan bind failure text and the connect idle line are quoted as the code prints them; the .mesh info sample shows the interfaces[i] rows at the 32-wide label column. Mesh-Configuration.md: the interfaces: block is the template's, the Keys row and the empty-interfaces validation sentence name the new default, the Directories prose says what two sessions share and when two identities split. Mesh-Containers.md: the image's ENTRYPOINT as the Dockerfile has it; two identities on one host link the new section; the propagation node is dialled by a host's rnsd with --relay.

    @Dark-Alex-17 Dark-Alex-17 committed Oct 10, 2026
  • docs(TASK-137): Mesh, Mesh-Commands: a revocation reaches every store whose index can be read; the rest is counted and named for .mesh memory forget all

    @Dark-Alex-17 Dark-Alex-17 committed Oct 9, 2026
  • docs(TASK-137): Mesh-Commands: stores whose index cannot be read, record files no index names; Mesh-Configuration: ttl_hours counts from the last written exchange

    @Dark-Alex-17 Dark-Alex-17 committed Oct 9, 2026
  • docs(TASK-137): Mesh-Commands: the refused-store sentence, TAB labels, where the cross-instance total shows

    @Dark-Alex-17 Dark-Alex-17 committed Oct 9, 2026
  • docs(TASK-137): Mesh: envoy conversation memory — .mesh memory forget, envoy_memory keys, what is remembered

    @Dark-Alex-17 Dark-Alex-17 committed Oct 9, 2026
  • docs(TASK-130): collision_protection covers a rotation known only from the peer table; trust labels show the grant

    @Dark-Alex-17 Dark-Alex-17 committed Oct 7, 2026
  • docs(TASK-130): .mesh peers labels a heard row by the verdict the node serves it under

    @Dark-Alex-17 Dark-Alex-17 committed Oct 7, 2026
  • docs(TASK-130): .mesh info counts every marked instance, a denied one included

    @Dark-Alex-17 Dark-Alex-17 committed Oct 7, 2026
  • docs(TASK-130): collision marking on every path, collision_protection, one clearing action Every name-hash collision now marks the colliding record and tells the owner (a warning when the presenting identity is served, an error when it is refused); mesh.collision_protection moves the collision rung ahead of the identity-wide grant; a mark clears only on .mesh trust of the new destination; an identity-tier rotation is surfaced from the peer table when heard, never marked. Mesh-Commands, Mesh-Trust-Model, Mesh-Configuration and Hooks reworded to match the shipped strings.

    @Dark-Alex-17 Dark-Alex-17 committed Oct 7, 2026
  • docs(TASK-128): the staging inbox keys peer directories by the full destination hash Mesh-File-Sharing.md's staging-inbox layout, Mesh-Configuration.md's inbox_dir paragraph and Mesh-Commands.md's `.mesh inbox` example all name the per-peer directory by the peer's full 32-hex destination hash (`<peer-dest32>`) instead of its first eight characters.

    @Dark-Alex-17 Dark-Alex-17 committed Oct 5, 2026
  • docs(TASK-120): fetch TAB note names only the mesh__list listing; protocol name with its em dash

    @Dark-Alex-17 Dark-Alex-17 committed Oct 5, 2026
  • docs(TASK-120): SCOPE name, file-sharing page, 27-verb layout, hooks 46, nine tools - Mesh.md leads with SCOPE - Session Coordination & Presence Exchange, the spec tagline and the reference-implementation sentence; destination derivation now scope.session.<instance_id>; nine mesh__* tools with the untrusted-content fence; envoy disposition table; [mesh:access] source; on-disk stores for shares, grants and the staging inbox; conformance section with the §20 pointer, Rust-only file-sharing vectors, interop 95 and the Windows exemption; single-segment fetch ceiling as a known gap. - New Mesh-File-Sharing.md: the share set (write rule, deny-wins, built-in deny, protected set, overrides), the three grant shapes, every file verb, the staging inbox, what a peer can and cannot learn, fenced fetched content, limits, notifications and hooks. - Mesh-Commands.md: the settled 27-verb table, untrust/forget refusal semantics, block remembers, sync replaces the LXMF-sync fetch, file verbs, --attach and --purge-files, TAB completion per verb, peer deny/undeny gone. - Mesh-Trust-Model.md: refusal vs forget vs block, the deny-only row and its remedy, hook silence, regular-files-only store writes. - Mesh-Configuration.md: about, fetch.inline_max_bytes, fetch.max_bytes, fetch.inbox_dir with their validation and the ceiling caveat; .mesh sync. - Hooks.md / Home.md: 46 events, mesh.fetch.served, mesh.access.requested, mesh.access.decided with their variables; Sidebar links the new page; Deployment and Platform Support refreshed.

    @Dark-Alex-17 Dark-Alex-17 committed Oct 5, 2026