Research Routes Plan
Create a route-neutral semantic context before choosing an implementation or experiment route. Compile it as research-pack/v1 when a durable Pack artifact is needed.
- Classify the context as
software,research-exploration, orhybridand preserve the exact starting point. - Create a question/problem/frame/shared-backbone record. Do not invent a claim when the input only supplies a question.
- Add one or more concurrent routes and branches. A route is a navigable hypothesis space, not a commitment.
- Represent claims, hypotheses, probes, experiments, evidence, observations, unknowns, decisions, implementation, canonical state, continuation, and provenance as distinct nodes.
- Label every evidence item with one of
support,counter,null,boundary,conflict,failure,context,mixed, orunknown; label every relation withsource-stated,deterministic-derived,candidate-inferred, orhuman-confirmed. - Preserve lifecycle events:
Create,Fork,Park,Reopen,Revive,Rewind,Reject,Supersede,Historical Context, andUnresolved. Forks receive new IDs and rewinds preserve history. - Mark CounterPilot work as a read-only boundary. It may challenge scope or assumptions but cannot mutate route state.
- Never present AI inference as fact. Canonical promotion and current continuation require an explicit HumanDecision with actor and provenance.
- Keep
FailureRecordpolarity,RewindProposal,Lesson,ReopenedProblem, canonical downgrade, and Human route authorization in separate Pack records. A failure may narrow a regime without invalidating every route.
Use the shared schema at shared/schema/research-routes.schema.json, semantic runtime in shared/core/model.py, and read-only validator shared/router/validate_context.py. The companion reference explains the node and lifecycle vocabulary.