Routing Sub-Menu UX Design

Status: Complete | Agent: PERISCOPE (UX Design) | Timestamp: 2026-05-11 14:30 UTC Target: Anbernic RG40XXV (640Γ—480, D-pad + A/B/X/Y, L1/R1, START/SELECT) Game: Turn-based strategy, hex-node traversal


1. Flow Overview

NODE OUTPUT VIEW β†’ [Route] β†’ CONTENT SELECTION β†’ METHOD SELECTION
                                                    ↓
                                              TARGET SELECTION (Grid)
                                                    ↓
                                              CONFIRMATION DIALOG
                                                    ↓
                                              EXECUTION / ANIMATION

2. Entry Point β€” Node Output View

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ β–“β–“β–“β–“β–“β–“ HEX 14: DESIGN β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“ [B:Back] β”‚
β”‚                                                            β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚ OUT: "Tile Dimensions & Hex Grid Layout"             β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚ Β§1  Grid Philosophy (120w)                           β”‚  β”‚
β”‚  β”‚ Β§2  Tile Dimensions (340w)    β—„ highlighted          β”‚  β”‚
β”‚  β”‚ Β§3  Viewport Constraints (180w)                      β”‚  β”‚
β”‚  β”‚ Β§4  Future Considerations (90w)                      β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚ ────────────────────────────────────────────────     β”‚  β”‚
β”‚  β”‚ [A:Route]  [Y:View Raw]  [X:Chain View]              β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                            β”‚
β”‚  β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
       640Γ—480 β€” 32px border, 14px mono font, 4-color palette

Entry trigger: Select a node that has produced output, press A to open output view, then press A again on "Route."


3. Screen 1 β€” Content Selection

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ β–“β–“β–“β–“β–“β–“ ROUTE FROM HEX 14 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“ [B:Cancel] β”‚
β”‚                                                            β”‚
β”‚  WHAT TO ROUTE?                                            β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚  β—‹  ENTIRE OUTPUT                (4 sections, 730w)  β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚  ●  SPECIFIC SECTION                                  β”‚  β”‚
β”‚  β”‚     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚  β”‚
β”‚  β”‚     β”‚ Β§1  Grid Philosophy                         β”‚  β”‚  β”‚
β”‚  β”‚     β”‚ Β§2  Tile Dimensions          β—„ selected     β”‚  β”‚  β”‚
β”‚  β”‚     β”‚ Β§3  Viewport Constraints                    β”‚  β”‚  β”‚
β”‚  β”‚     β”‚ Β§4  Future Considerations                   β”‚  β”‚  β”‚
β”‚  β”‚     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚  β—‹  CURATED SUBSET                (agent filters)     β”‚  β”‚
β”‚  β”‚     Agent reads source β†’ extracts what target needs   β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                            β”‚
β”‚  β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“ [A:Confirm] [Y:Next] β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Controls: - D-pad ↑↓: Navigate radio buttons / section list - A: Select / toggle radio - B: Back to output view - Y: Accept and proceed to method selection

State: Radio + optional sub-list (shown only when "Specific Section" selected).


4. Screen 2 β€” Method Selection

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ β–“β–“β–“β–“β–“β–“ DELIVERY METHOD β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“ [B:Back]   β”‚
β”‚                                                            β”‚
β”‚  CONTENT: Β§2 Tile Dimensions (340w)                         β”‚
β”‚                                                            β”‚
β”‚  HOW TO DELIVER?                                           β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚  ●  CURATED                                          β”‚  β”‚
β”‚  β”‚     Agent reads source, filters for relevance to     β”‚  β”‚
β”‚  β”‚     target's prompt thrust. Target receives a        β”‚  β”‚
β”‚  β”‚     distilled, context-optimized version.            β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”‚  β”‚
β”‚  β”‚     β”‚ βœ“ Reduces context window pressure          β”‚   β”‚  β”‚
β”‚  β”‚     β”‚ βœ“ Target gets only what matters            β”‚   β”‚  β”‚
β”‚  β”‚     β”‚ βœ— Adds agent latency (1–3s)               β”‚   β”‚  β”‚
β”‚  β”‚     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚  β—‹  POINTER                                          β”‚  β”‚
β”‚  β”‚     Target gets a read-only pointer to source.       β”‚  β”‚
β”‚  β”‚     Can inspect it but it's NOT injected into        β”‚  β”‚
β”‚  β”‚     target's context unless explicitly requested.    β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”‚  β”‚
β”‚  β”‚     β”‚ βœ“ Zero latency, no context cost            β”‚   β”‚  β”‚
β”‚  β”‚     β”‚ βœ“ Target checks on-demand                  β”‚   β”‚  β”‚
β”‚  β”‚     β”‚ βœ— Requires target to actively pull         β”‚   β”‚  β”‚
β”‚  β”‚     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                            β”‚
β”‚  β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“ [A:Confirm] [X:Toggle] [Y:Next] β–“β–“β–“β–“β–“β–“β–“  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Controls: - D-pad ↑↓: Select curated or pointer - A: Confirm choice - X: Toggle between options (fast swap) - B: Back to content selection - Y: Accept and proceed to target selection


5. Screen 3 β€” Target Selection (Hex Grid Routing Mode)

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ β–“β–“β–“β–“β–“β–“ ROUTING MODE β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“ [B:Cancel] β”‚
β”‚                                                            β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  PREVIEW:      β”‚
β”‚  β”‚                                        β”‚                β”‚
β”‚  β”‚     ⬑───⬑───⬑───⬑                     β”‚  Route: H14β†’H22β”‚
β”‚  β”‚    β•± β•² β•± β•² β•± β•² β•± β•²                    β”‚  Content: Β§2   β”‚
β”‚  β”‚   ⬑───⬑───⬑───⬑───⬑    β—„ Grid        β”‚  Method: CURATEDβ”‚
β”‚  β”‚    β•² β•± β•² β•± β•² β–“ β•² β•± β•²    Cursor: β–“    β”‚                β”‚
β”‚  β”‚     ⬑───⬑───●───⬑───⬑    Selected: ●  β”‚  PRESS A TO    β”‚
β”‚  β”‚      β•² β•± β•² β•± β•² β•± β•² β•±     Source: β—‰   β”‚  SELECT HEX 22 β”‚
β”‚  β”‚       ⬑───⬑───⬑───⬑                  β”‚                β”‚
β”‚  β”‚                                        β”‚                β”‚
β”‚  β”‚      β—‰ = H14 (DESIGN)    SOURCE        β”‚ [X] Method     β”‚
β”‚  β”‚      β–“ = H22 (DEVELOP)   CURSOR        β”‚ [Y] Scope      β”‚
β”‚  β”‚                                        β”‚ [L1/R1] Chains β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                β”‚
β”‚                                                            β”‚
β”‚  β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Routing Mode Controls: | Button | Action | |--------|--------| | D-pad | Navigate hex grid cursor | | A | Select highlighted hex as target | | B | Cancel β†’ back to method selection | | X | Toggle method: Curated ↔ Pointer | | Y | Toggle content scope: Entire β†’ Section β†’ Curated Subset | | L1/R1 | Cycle through pending routing chains | | START | Execute all pending routes immediately |

Visual states: - β—‰ = Source node (pulsing highlight) - ● = Already-confirmed target (solid) - β–“ = Current cursor position (blinking) - ⬑ = Empty / unselected hex - Valid targets glow green on hover; invalid (already targeted, offline) glow red

Info panel (right side): Shows live preview of the routing action as player navigates.


6. Screen 4 β€” Confirmation Dialog

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ β–“β–“β–“β–“β–“β–“ CONFIRM ROUTE β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“  β”‚
β”‚                                                            β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚    SOURCE:     HEX 14  (DESIGN)                      β”‚  β”‚
β”‚  β”‚    TARGET:     HEX 22  (DEVELOP)                     β”‚  β”‚
β”‚  β”‚    METHOD:     CURATED                               β”‚  β”‚
β”‚  β”‚    CONTENT:    Β§2 Tile Dimensions (340w)             β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”‚  β”‚
β”‚  β”‚    β”‚  "Tile dimensions are set at 64Γ—56px per   β”‚     β”‚  β”‚
β”‚  β”‚    β”‚   hex, with a 2px gutter. The grid uses    β”‚     β”‚  β”‚
β”‚  β”‚    β”‚   axial coordinates (q,r). Viewport is     β”‚     β”‚  β”‚
β”‚  β”‚    β”‚   640Γ—480 with a 32px HUD margin..."       β”‚     β”‚  β”‚
β”‚  β”‚    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”‚  β”‚
β”‚  β”‚    β”‚ ⚠ Agent will read source, filter for target β”‚   β”‚  β”‚
β”‚  β”‚    β”‚ prompt thrust, and inject curated context.   β”‚   β”‚  β”‚
β”‚  β”‚    β”‚ Est. latency: 2.1s                           β”‚   β”‚  β”‚
β”‚  β”‚    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                            β”‚
β”‚  β–“β–“β–“β–“β–“β–“ [A:EXECUTE]  [B:CANCEL]  [Y:EDIT] β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“  β”‚
β”‚        [X:Add to chain]  [SELECT:Edit source]               β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Controls: - A: Execute the route - B: Cancel β†’ back to target selection - Y: Edit β†’ go back through the flow (content β†’ method β†’ target) - X: Add to chain (queue this route, stay in routing mode for next hop) - SELECT: Edit source node β†’ re-enter target selection with different source

Content preview: Shows first ~200 characters of selected content, truncated with "…"


7. Screen 5 β€” Execution Feedback

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                                                            β”‚
β”‚                                                            β”‚
β”‚                                                            β”‚
β”‚                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                        β”‚
β”‚                    β”‚   ROUTING…   β”‚                        β”‚
β”‚                    β”‚              β”‚                        β”‚
β”‚                    β”‚  H14 ──→ H22 β”‚                        β”‚
β”‚                    β”‚   β–“β–“β–“β–‘β–‘β–‘β–‘    β”‚                        β”‚
β”‚                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                        β”‚
β”‚                                                            β”‚
β”‚           β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”           β”‚
β”‚           β”‚  Agent is curating Β§2 for DEVELOP  β”‚           β”‚
β”‚           β”‚  prompt thrust: "implement hex     β”‚           β”‚
β”‚           β”‚  grid renderer"                    β”‚           β”‚
β”‚           β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜           β”‚
β”‚                                                            β”‚
β”‚              [B:HALT]   [SELECT:Skip animation]            β”‚
β”‚                                                            β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Progress bar: Fills over ~2s (curated) or instant (pointer).

Controls during execution: - B: Halt β€” immediately stops the routing action (confirmation: "Halt routing? [A:Yes] [B:No]") - SELECT: Skip animation β†’ jump to completion message


8. Screen 6 β€” Completion

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                                                            β”‚
β”‚                                                            β”‚
β”‚                                                            β”‚
β”‚                      βœ“  ROUTED                             β”‚
β”‚                                                            β”‚
β”‚              H14 (DESIGN) ──────→ H22 (DEVELOP)            β”‚
β”‚                    Β§2 Tile Dimensions                       β”‚
β”‚                      Method: CURATED                       β”‚
β”‚                                                            β”‚
β”‚         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”         β”‚
β”‚         β”‚  HEX 22 can now access HEX 14's        β”‚         β”‚
β”‚         β”‚  output in its context.                β”‚         β”‚
β”‚         β”‚                                        β”‚         β”‚
β”‚         β”‚  Multi-hop chain:                      β”‚         β”‚
β”‚         β”‚    H14 β†’ H22 β—„                          β”‚         β”‚
β”‚         β”‚                                        β”‚         β”‚
β”‚         β”‚  [A:View target]  [Y:Route again]      β”‚         β”‚
β”‚         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜         β”‚
β”‚                                                            β”‚
β”‚              [B:Return to grid]    [X:Chain next]          β”‚
β”‚                                                            β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Controls: - A: Jump to target node's output view - B: Return to hex grid - X: Chain next β€” start routing from H22 to another node - Y: Route again β€” start new route from same source


9. Multi-Hop Chain View

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ β–“β–“β–“β–“β–“β–“ ROUTING CHAINS β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“  β”‚
β”‚                                                            β”‚
β”‚  ACTIVE CHAIN:  CHAIN 1/2          [L1/R1:Cycle chains]    β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚   H14 ──→ H22 ──→ H28 ──→ ?                         β”‚  β”‚
β”‚  β”‚  DESIGN  DEVELOP  TEST     (select next target)      β”‚  β”‚
β”‚  β”‚    Β§2       Β§2       Β§2                              β”‚  β”‚
β”‚  β”‚  CURATED  CURATED  CURATED                           β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚  PENDING ROUTES IN THIS CHAIN:                       β”‚  β”‚
β”‚  β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚  β”‚
β”‚  β”‚  β”‚ βœ“ H14β†’H22  (executed)                         β”‚  β”‚  β”‚
β”‚  β”‚  β”‚ βœ“ H22β†’H28  (executed)                         β”‚  β”‚  β”‚
β”‚  β”‚  β”‚ β—‹ H28β†’?    (pending β€” select target)          β”‚  β”‚  β”‚
β”‚  β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                            β”‚
β”‚  OTHER CHAINS:                                             β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚ CHAIN 2: H08 β†’ H15  (1 hop, executed)               β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                            β”‚
β”‚  β–“β–“β–“β–“ [A:Continue chain] [X:New chain] [Y:Clear chain] β–“  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Controls: - L1/R1: Cycle through active chains - A: Continue chain (enter routing mode for next hop) - X: Start new chain - Y: Clear current chain (confirmation required) - B: Return to grid


10. Clear / Halt / Clarify β€” Interruption States

10a. Clear (Dismiss pending route)

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚    CLEAR PENDING ROUTE?                              β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚    H14 β†’ H22  (CURATED, Β§2) β€” not yet executed       β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚    [A:Clear route]   [B:Keep it]                     β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Triggered by pressing B on the confirmation screen, or Y on the chain view.

10b. Halt (Stop in-progress routing)

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚    β–“β–“β–“β–“β–“β–‘β–‘β–‘  HALTING…                                β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚    Routing H14β†’H22 was interrupted.                  β”‚  β”‚
β”‚  β”‚    No context was injected.                          β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚    [A:Retry]  [B:Dismiss]  [Y:Change method]         β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Triggered by B during the "Routing…" progress screen.

10c. Clarify (Redo selection)

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ β–“β–“β–“β–“β–“β–“ WHAT NEEDS FIXING? β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“ [B:Nevermind]β”‚
β”‚                                                            β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚  β—‹  WRONG SOURCE NODE          (Hex 14 β†’ pick new)  β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚  β—‹  WRONG CONTENT SECTION      (Β§2 β†’ pick new)      β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚  β—‹  WRONG TARGET NODE          (Hex 22 β†’ pick new)  β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
│  │  ○  WRONG METHOD               (Curated→Pointer)    │  │
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β”‚  β—‹  DON'T WANT TO ROUTE AT ALL (dismiss)            β”‚  β”‚
β”‚  β”‚                                                      β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                            β”‚
β”‚  β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“ [A:Select] [B:Back] β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Triggered by holding SELECT for 0.5s on any routing screen, or by pressing Y on the confirmation screen.

Each option redirects: - "Wrong source" β†’ back to hex grid, pick new source node - "Wrong content" β†’ back to content selection - "Wrong target" β†’ back to routing mode grid - "Wrong method" β†’ back to method selection - "Don't want to route" β†’ dismiss everything, return to grid


11. Complete Button Map Reference

Button Context Action
D-pad ↑↓ All menus Navigate options / sections
D-pad ←→↑↓ Routing mode Move hex grid cursor
A Menu Select / confirm current item
A Routing mode Select hex under cursor as target
A Confirmation Execute route
B Any screen Back one step
B Execution Halt routing in progress
B (hold 0.5s) Any screen Open Clarify menu
X Routing mode Toggle method (Curated ↔ Pointer)
X Confirmation Add to chain (queue, don't execute)
X Completion Chain next (route from target onward)
Y Content select Accept and proceed
Y Routing mode Toggle content scope (Entire β†’ Section β†’ Curated)
Y Confirmation Edit (go back through flow)
Y Completion Route again (new route from same source)
L1 Any routing screen Previous pending chain
R1 Any routing screen Next pending chain
START Any routing screen Execute all pending routes
SELECT Confirmation Edit source node
SELECT (hold) Any routing screen Open Clarify menu
SELECT Execution Skip animation

12. State Machine

                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                    β”‚  GRID VIEW  β”‚
                    β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜
                           β”‚ [A on node with output]
                           β–Ό
                   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                   β”‚ OUTPUT VIEW   β”‚
                   β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
                           β”‚ [A:Route]
                           β–Ό
                   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”Œβ”€β”€β”€β–Άβ”‚   CONTENT     │◀──┐
              β”‚    β”‚  SELECTION    β”‚β”€β”€β”€β”˜
              β”‚    β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜    β”‚ [Y:Edit from confirm]
              β”‚            β”‚ [Y:Next]   β”‚
              β”‚            β–Ό            β”‚
              β”‚    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”‚
              β”‚    β”‚    METHOD     β”‚β—€β”€β”€β”€β”˜
              β”‚    β”‚  SELECTION   β”‚
              β”‚    β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
              β”‚            β”‚ [Y:Next]
              β”‚            β–Ό
              β”‚    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚    β”‚    TARGET    │◀──────────┐
              β”‚    β”‚  SELECTION   β”‚           β”‚
              β”‚    β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜           β”‚
              β”‚            β”‚ [A on hex]        β”‚
              β”‚            β–Ό                   β”‚
              β”‚    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”           β”‚
              β”‚    β”‚ CONFIRMATION  │───[Y:Edit]β”˜
              β”‚    β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
              β”‚            β”‚
              β”‚    β”Œβ”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”
              β”‚    β”‚               β”‚
              β”‚    β–Ό               β–Ό
              β”‚ [X:Chain]    [A:Execute]
              β”‚    β”‚               β”‚
              β”‚    β”‚               β–Ό
              β”‚    β”‚       β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚    β”‚       β”‚  EXECUTION   │───[B:Halt]──▢ HALTED
              β”‚    β”‚       β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
              β”‚    β”‚               β”‚
              β”‚    β”‚               β–Ό
              β”‚    β”‚       β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚    β”‚       β”‚  COMPLETION   β”‚
              β”‚    β”‚       β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
              β”‚    β”‚               β”‚
              β”‚    β”‚     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚    β”‚     β”‚         β”‚         β”‚
              β”‚    β”‚     β–Ό         β–Ό         β–Ό
              β”‚    β”‚ [B:Grid] [X:Chain] [Y:Route again]
              β”‚    β”‚               β”‚
              β””β”€β”€β”€β”€β”˜               β”‚
                     [Chain loops back to target selection
                      with previous target as new source]

13. Design Principles

  1. One thumb, four buttons. Every critical action maps to A/B/X/Y within thumb reach. No D-pad + button combos required for primary flow.

  2. Preview before commit. The confirmation screen shows everything: source, target, method, content snippet, estimated latency. No surprises.

  3. Undo is cheap. B always goes back. Clarify always offers granular correction. Clear always has a confirmation step.

  4. Chains are first-class. L1/R1 cycle chains everywhere. START executes all pending. Multi-hop isn't an afterthought β€” it's built into the core loop.

  5. Latency is visible. During curated routing, the progress bar + status text make the wait feel intentional, not broken. Pointer method is instant for impatient players.

  6. 640Γ—480 economy. Every pixel counts. No wasted chrome. ASCII-art borders are 1 character wide. Info panels share screen real estate with the grid. Content previews truncate at ~200 chars.

  7. Color as state, not decoration. Source nodes pulse. Valid targets glow green. Invalid targets glow red. Confirmed routes show chain lines. Color carries information β€” nothing is purely decorative.


14. Edge Cases

Case Behavior
Target node has no prompt yet Warn: "HEX 22 has no active prompt. Route will be stored until prompt is set." Confirm or cancel.
Target already has a route from same source "HEX 22 already has a route from HEX 14. Overwrite? [A:Yes] [B:No]"
Target == Source Cursor skips source hex. Grid shows source as β—‰, not selectable.
Chain loop (A→B→A) Detect and warn: "This creates a circular route. Continue? [A:Yes] [B:No]"
Agent offline (Curated method) "Agent unavailable. Use Pointer method instead?" Fallback offered.
Output has no sections (empty) "HEX 14 has no output to route." Only "Entire output" shown (with "(empty)" note).
Max chain length (10 hops) "Chain limit reached (10). Execute or start new chain."
Routing to off-grid / deleted node Node removed from valid target list. If already targeted, clear with warning.

15. Accessibility Notes