Patterns

Pattern spec and transitions

The fields every pattern has, and how situations hand over to each other.

Fields

FieldContent
id · name · definition
triggerEntry condition (sensor · voice · state)
sequenceComponent IDs only (no tokens or operators written directly)
exitExit condition
transitionsHand-over to the next situation (e.g. Calling → Face to Face → Leave)
priorityCommon priority (safety > call · touch > conversation > waiting)
state_overridesCarried · battery · quiet hours · error
edge_casesExceptions (e.g. reacting to a similar word on TV, then returning awkwardly / a delay for someone who pretends to leave and comes back)

Transitions

              ┌──────────── Safety (interrupts every situation) ───────────┐
              ▼                                                            │
By your side ──call──▶ Calling ──face──▶ Face to Face ──end──▶ Leave ──▶ By your side
     │                    ▲                 │   ├─ Conversation
     ├─passes─▶ Pass By ──┘                 │   ├─ Feedback / Guiding
     └─touch──▶ Touching ───────────────────┘   └─ Sudden
   lifted (anywhere) ──▶ Carried ──put down──▶ previous situation

The old line "the seven most common situations that never overlap" had no evidence and was removed; the transition diagram and priority replace it.