{
  "$schema": "/characters/v2/schemas/state-machine.schema.json",
  "schemaVersion": "1.0.0",
  "kind": "nandarona.character-state-machine",
  "releaseId": "zurena@2.1.0",
  "initialState": "idle",
  "states": {
    "idle": {
      "status": "canonical",
      "intent": "見比べる前の基準状態",
      "allowedNext": [
        "compare",
        "idle"
      ],
      "visualChannel": "eye direction, body tilt, squash, stillness"
    },
    "compare": {
      "status": "canonical",
      "intent": "不一致の検出役としての compare 状態",
      "allowedNext": [
        "notice-gap",
        "idle"
      ],
      "visualChannel": "eye direction, body tilt, squash, stillness"
    },
    "notice-gap": {
      "status": "canonical",
      "intent": "不一致の検出役としての notice-gap 状態",
      "allowedNext": [
        "trace-edge",
        "idle"
      ],
      "visualChannel": "eye direction, body tilt, squash, stillness"
    },
    "trace-edge": {
      "status": "canonical",
      "intent": "不一致の検出役としての trace-edge 状態",
      "allowedNext": [
        "signal",
        "idle"
      ],
      "visualChannel": "eye direction, body tilt, squash, stillness"
    },
    "signal": {
      "status": "canonical",
      "intent": "不一致の検出役としての signal 状態",
      "allowedNext": [
        "confirm",
        "idle"
      ],
      "visualChannel": "eye direction, body tilt, squash, stillness"
    },
    "confirm": {
      "status": "canonical",
      "intent": "不一致の検出役としての confirm 状態",
      "allowedNext": [
        "idle"
      ],
      "visualChannel": "eye direction, body tilt, squash, stillness"
    }
  },
  "events": {
    "activate": "compare",
    "intensify": "trace-edge",
    "resolve": "signal",
    "reset": "idle"
  },
  "guards": [
    "断定の代弁者として扱わない",
    "口や人間的な歯を追加しない",
    "攻撃性を主性格にしない",
    "Unknown facts must remain unknown and must not be promoted to canonical by a transition.",
    "A transition must preserve common DNA, family DNA, and individual silhouette."
  ]
}
