Wayfinder
Owns: investigation map, durable frontier, and uncertainty routing. It plans by default;
it does not execute the destination or define another ticket format.
All emitted or consumed ticket metadata uses the canonical
Ticket Envelope v1. Delegate
serialization to to-tickets or the shared CLI.
Defaults
- Maps live at
docs/specs/<slug>.md or docs/specs/<slug>-wayfinder.md.
- Every map has one
## Artifact Graph section, stable Artifact ID, Role: wayfinder,
and exactly Standalone: true or one Parent with a reciprocal owner edge.
- Tickets live at
docs/tickets/<spec-slug>/.
- Backward compatibility is opt-in. Still flag destructive migrations, breaking external
contracts, and irreversible changes.
- Ask one concise question only when the destination itself is ambiguous; otherwise state
assumptions.
Destination gate
- Clear destination: state assumptions and chart immediately.
- Do not invoke
grilling ceremonially.
- If unresolved answers would materially change the Destination, scope, or initial frontier,
invoke canonical grilling.
- Ask one question at a time and wait for confirmation.
- Create zero durable artifacts before confirmation.
Deferred decisions
- Known Destination with an unresolved decision: Do not run the interview inline.
- Use
to-tickets to emit a canonical Ticket Envelope with execution_mode: HITL; its
body must require grilling and confirmation of that decision.
- Keep that ticket on the frontier until the decision is confirmed.
- Do not add Ticket Envelope fields for interview state.
Process
- Reconstruct only enough context to identify destination, decisions, unknowns,
exclusions, and the next blocking edges.
- Create or update the map:
# <Title>
## Artifact Graph
- Artifact ID: `artifact:<stable-id>`
- Role: `wayfinder`
- Standalone: true
## Type
Wayfinding spec
## Status
Active
## Destination
Reachable target outcome.
## Decisions So Far
- Decision, evidence, and durable record.
## Not Yet Specified
- Unknown that blocks reliable execution.
## Out of Scope
- Explicit exclusion.
## Frontier / Blocking Edges
- Edge, why it blocks, unblock condition, and owning ticket.
## Ticket Plan
- ID, type, mode, blockers, title, expected output.
## Next Review
- What the next agent or human inspects.
- Record durable architecture/product/diagnostic decisions through
to-spec, then link
them from the map.
- Create narrow
research, prototype, grilling, or task tickets through
to-tickets. Each must name its question/outcome, evidence, frontier, work plan, and
exclusions.
- Parse existing tickets with the shared
ticket-parse command before using their mode,
blockers, or ID. Do not infer those fields from headings such as Blocked By.
- Stop at the map unless the user explicitly requests execution. Route one ready ticket
to
execute-ticket or a folder to ticket-autopilot.
Maintenance
- Reuse the persisted Destination and scope as confirmed context.
- Do not restart
grilling unless the user explicitly changes it or new evidence would
materially change the Destination, scope, or initial frontier.
- On such a change, return to the Destination gate before writing any durable update.
- Fold completed-ticket evidence and decisions back into the map.
- Remove resolved unknowns instead of leaving stale questions.
- Keep the frontier to the next few material edges.
- Prefer another investigation ticket over guessing.
- Report map path, ticket folder, ready/blocked frontier, and recommended next step.
1---2name: wayfinder3description: Maintain a persistent map and investigation frontier for huge or vague work, using canonical normalized tickets and opt-in compatibility.4---56# Wayfinder78Owns: investigation map, durable frontier, and uncertainty routing. It plans by default;9it does not execute the destination or define another ticket format.1011All emitted or consumed ticket metadata uses the canonical12[Ticket Envelope v1](../ticket-autopilot/references/ticket-envelope-v1.md). Delegate13serialization to `to-tickets` or the shared CLI.1415## Defaults1617- Maps live at `docs/specs/<slug>.md` or `docs/specs/<slug>-wayfinder.md`.18- Every map has one `## Artifact Graph` section, stable Artifact ID, `Role: wayfinder`,19 and exactly `Standalone: true` or one `Parent` with a reciprocal owner edge.20- Tickets live at `docs/tickets/<spec-slug>/`.21- Backward compatibility is opt-in. Still flag destructive migrations, breaking external22 contracts, and irreversible changes.23- Ask one concise question only when the destination itself is ambiguous; otherwise state24 assumptions.2526## Destination gate2728- Clear destination: state assumptions and chart immediately.29- Do not invoke `grilling` ceremonially.30- If unresolved answers would materially change the Destination, scope, or initial frontier,31 invoke canonical [grilling](../grilling/SKILL.md).32- Ask one question at a time and wait for confirmation.33- Create zero durable artifacts before confirmation.3435## Deferred decisions3637- Known Destination with an unresolved decision: Do not run the interview inline.38- Use `to-tickets` to emit a canonical Ticket Envelope with `execution_mode: HITL`; its39 body must require [grilling](../grilling/SKILL.md) and confirmation of that decision.40- Keep that ticket on the frontier until the decision is confirmed.41- Do not add Ticket Envelope fields for interview state.4243## Process44451. Reconstruct only enough context to identify destination, decisions, unknowns,46 exclusions, and the next blocking edges.472. Create or update the map:4849```markdown50# <Title>5152## Artifact Graph53- Artifact ID: `artifact:<stable-id>`54- Role: `wayfinder`55- Standalone: true5657## Type58Wayfinding spec5960## Status61Active6263## Destination64Reachable target outcome.6566## Decisions So Far67- Decision, evidence, and durable record.6869## Not Yet Specified70- Unknown that blocks reliable execution.7172## Out of Scope73- Explicit exclusion.7475## Frontier / Blocking Edges76- Edge, why it blocks, unblock condition, and owning ticket.7778## Ticket Plan79- ID, type, mode, blockers, title, expected output.8081## Next Review82- What the next agent or human inspects.83```84853. Record durable architecture/product/diagnostic decisions through `to-spec`, then link86 them from the map.874. Create narrow `research`, `prototype`, `grilling`, or `task` tickets through88 `to-tickets`. Each must name its question/outcome, evidence, frontier, work plan, and89 exclusions.905. Parse existing tickets with the shared `ticket-parse` command before using their mode,91 blockers, or ID. Do not infer those fields from headings such as `Blocked By`.926. Stop at the map unless the user explicitly requests execution. Route one ready ticket93 to `execute-ticket` or a folder to `ticket-autopilot`.9495## Maintenance9697- Reuse the persisted Destination and scope as confirmed context.98- Do not restart `grilling` unless the user explicitly changes it or new evidence would99 materially change the Destination, scope, or initial frontier.100- On such a change, return to the Destination gate before writing any durable update.101- Fold completed-ticket evidence and decisions back into the map.102- Remove resolved unknowns instead of leaving stale questions.103- Keep the frontier to the next few material edges.104- Prefer another investigation ticket over guessing.105- Report map path, ticket folder, ready/blocked frontier, and recommended next step.