Turn

In plain words: Reach: One question-and-answer turn

Designed 2 min read 9 glossary terms 8 connected pages
The short version written for the Snayu team

The step-by-step life of one Discord question: authenticate and deduplicate, resolve caller authority, assemble the briefing, commit the answer, then attempt delivery and record whether it arrived.

Why read it: Read this before working on Reach's answer pipeline, privacy filtering for remote models, or delivery retries.
  1. 1The answer is committed before any send; delivery is recorded as known sent, rejected or unknown.
  2. 2Discord IDs, roles and unrelated history are stripped before any cloud model sees the question.
  3. 3An expired interaction leads to a status lookup, never to re-running the work.

Designed Public contract; tests use fixtures, no live Discord.

Words on this page, decoded click one for its card

The original text Underlined words open their plain-English card.

The question arrives with platform identity, delivery metadata, and possibly private words. Reach first decides what may enter this turn, then commits its answer before any credential-bearing edge attempts the reply.

  1. Authenticate Gateway and verify application, guild, channel, trigger, size, and adapter revision; deduplicate the event before cognition.
  2. Resolve guest or enrolled authority and assemble labelled ContextBriefing Pack for this person, purpose, and place.
  3. Select one exact PatternWorkflow for mention, /reach ask, or bounded presence under audience, quiet hours, budgets, cooldown, expiry, and dedupe.
  4. Commit ReachTurn@1 with Habitat/trigger/caller evidence, Persona/AgentSpec revisions, ContextBriefing Pack references, RunJob Record correlation, output class, and terminal state.
  5. Project at most one ReachDelivery@1, retaining target, effect identity, payload digest, platform observation, and known/unknown delivery. End the awakening.

Choose an eligible cognition road

A public corpus cannot make the caller's question public. Before remote formation, remove Discord application/user/guild/channel/event ids, roles, presence, mentions, unrelated history, and delivery metadata unless an exact field is task-essential and independently eligible. Send only bounded question, selected public evidence, output contract, and necessary citation ids. Secrets, private people/customer facts, and unique internal incidents retain their labels and normally stay local or refuse.

For reach.external_converse@1, a bounded answer may use local SoulstoneLocal Model capability, one exact PortalCloud Model model attempt while LychD owns retrieval/citations, or one outbound IntercomAgent-to-Agent Line task to an enrolled sovereign specialist for reach.public_corpus_answer@1. The A2AAgent-to-Agent Line road parks durably, quarantines the return, and adopts the first authenticated terminal. Repository inspection/mutation with an iterative CLI loop belongs to separate delegated-coding work; an admitted artifact can return later. Interactive coding subscriptions are outside Reach and SpellweaverWorkflow Engine automation.

Before each remote attempt, obtain its exact EgressDecision and any Privacy CutPrivacy Filter required by policy. Obtain another decision for a retry or fallback, or when the payload, model, peer, or destination changes. The returned output remains attributed hostile input until the attempt explicitly settles as success, refusal, dependency, expiry, failure, or indeterminate.

Formation alone cannot send the answer: only a committed delivery intent reaches the Discord credential owner. Deployment owns placement and custody, and the standalone E2E contract follows the full ledger chain.

Commands and interrupted delivery

/reach link and /reach unlink belong to WardSecurity Desk. /reach status shows only caller-owned or explicitly shared committed state. Messages, buttons, reactions, roles, and a fluent yes cannot authorize consent, deployment, repository/host mutation, deletion, secrets, authority change, or publication.

On Gateway replay, deduplicate against the namespaced event identity and payload digest. An expired interaction token may lead to status lookup, never to running the work again to manufacture a reply. A disconnect after send leaves delivery unknown until reconciliation accounts for the effect identity and payload.

If compromise is contained to the adapter, revoke its Principal, rotate the bot token, close Gateway, and mark deliveries uncertain while preserving secret-free evidence. Prove the containment boundary before recreating the unit from zero authority. A host/root compromise requires the selected profile's clean rebuild; an in-place restart cannot restore trust.

Proving one turn

Deterministic Gateway fixtures and fake text capability prove mention/command, no ambient-message records, guest/member separation, consequential-request refusal, restart dedupe, quiet-hour budgets, revocation, and no duplicate after uncertain delivery. No live Discord/model enters the proof.

Execution roads · Deployment profiles