Dancer

In plain words: Alternative generator (Dancer)

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

The planned role (Dancer) that takes one request and opens several alternative approaches under one declared angle, returning each with assumptions, requirements, unknowns and sources, without ranking them.

Why read it: Read this when designing brainstorming or option-generation steps in a workflow.
  1. 1Returns alternatives, assumptions, required_state, unknowns and provenance.
  2. 2Produces no score, rank, selection or live effect; it does not see siblings' output before the join.
  3. 3If budget runs out, it reports incomplete expansion instead of quietly picking one.

Designed No simulation config, schema or Dancer path ships.

Words on this page, decoded click one for its card

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

“Open another door, but do not call it the exit.”

Start with one source IntentRequest and ask what other forms it might take. Dancer opens those alternatives under a declared Shadow Lens, an operational Posture. As Shadow's expansion office, it makes several possibilities legible from the same starting point. Each keeps its assumptions and requirements, and none receives preference merely by being generated.

Dancer is Designed. No simulation RuneService Config File or schema ships, and no Dancer path runs. State of Work records delivery, while ADR 31 owns the design.

One bounded fork

A Dancer InvocationJob Request receives the source IntentRequest shared by its siblings, one operational Lens, and a pinned base and current ContextBriefing Pack. The owning Spellweaver Pattern supplies the containment and effect boundary, budget, branch limit, stop conditions, and expected output shape.

The Lens is one angle of examination or variation. It carries no Persona, identity, or permission. A Dancer does not receive sibling output before the declared join, nor does it receive Hunter's review context. SpellweaverWorkflow Engine owns fan-out, joins, budgets, cancellation, and termination; ShadowWhat-if Simulator owns branch identity and candidate lineage.

Return attributed alternatives

One bounded InvocationJob Request returns:

  • alternatives, each with a stable local identity;
  • assumptions for each alternative;
  • required_state each alternative presupposes;
  • unknowns left unresolved; and
  • provenance for every source or observation it uses.

ShadowWhat-if Simulator attaches that return to the common IntentRequest and pinned ContextBriefing Pack. Dancer supplies typed expansion material, not a private reasoning trace.

In ShadowWhat-if Simulator’s Vikalpa image, each alternative awaits measurement. Shadow keeps that literary correspondence and Phantasma, its isolated expansion mode, distinct from evidence, identity, and execution containment.

Dancer may open, combine, reframe, or vary candidate material. It produces no score, rank, pruning decision, certification, promotion, selection, live effect, or proof of novelty. An alternative may be useful, redundant, mistaken, or impossible without changing Dancer's duty to return it honestly.

Stop before selection

When the branch limit, time or token budget, or a declared stop condition is reached, return the expansion actually achieved and identify it as incomplete. Keep every existing alternative attributed, with its unknowns and provenance visible. Selecting the first or cheapest candidate would conceal the missing breadth, so Dancer cannot silently use that as a substitute.

A candidate may then enter Hunter through a separate InvocationJob Request, undergo deterministic checks, or become a Drift trial subject. Those passages may reject every alternative. Dancer neither argues their verdict nor repairs a candidate inside the same expansion context.