{
  "meta": {
    "version": "1",
    "schema": "dojo-state-v1",
    "generated_at": "2026-05-31T00:00:00Z",
    "source": "Manually audited + brought to current by SHINOB1 (SHIN-DOJO-STATE-AUDIT-TM-001) — render-dojo-state.sh will take over on next auto-render",
    "source_url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/DOJO_STATE.html",
    "owner": "shinob1",
    "purpose": "SSOT sidecar for DOJO_STATE.html. Consumed by mcp__rpi-cto__cto_dojo_state_get and (planned) the HTML render itself."
  },
  "warriors": [
    {
      "id": "shinob1",
      "emoji": "🥷",
      "name": "SHINOB1",
      "role": "CTO — Architecture & Infrastructure",
      "tier_code": "T3",
      "tier_label": "T3 — Mesh",
      "doctrine_docs": {
        "have": 7,
        "total": 7
      },
      "git_activity_30d_commits": 236,
      "bilateral_channel": {
        "name": "#shinob1",
        "id": "C0AS0LETSBW"
      },
      "notes": "Full doctrine corpus. Sub-warrior spawns evidenced (AUTHOR, RPM, DEX sub-CXOs). T3 confirmed.",
      "ownership_grid_url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/cto-ownership-grid.html"
    },
    {
      "id": "megazord",
      "emoji": "🏯",
      "name": "MEGAZORD",
      "role": "CIO — Data Ops & ATLAS Registry",
      "tier_code": "T1",
      "tier_label": "T1 — Spawning",
      "doctrine_docs": {
        "have": 1,
        "total": 7
      },
      "git_activity_30d_commits": 65,
      "bilateral_channel": {
        "name": "#megazord",
        "id": "C0ARWQMMUMQ"
      },
      "notes": "WORKFLOW only. Peer doctrine build pending COACH activation (Cascade T2).",
      "ownership_grid_url": "https://retirementprotectors.github.io/toMachina/docs/warriors/megazord/cio-ownership-grid.html"
    },
    {
      "id": "musashi",
      "emoji": "⚔️",
      "name": "MUSASHI",
      "role": "CMO — Creative Ops & Brand",
      "tier_code": "T1",
      "tier_label": "T1 — Spawning",
      "doctrine_docs": {
        "have": 1,
        "total": 7
      },
      "git_activity_30d_commits": 90,
      "bilateral_channel": {
        "name": "#musashi",
        "id": "C0ARFBHSKNK"
      },
      "notes": "WORKFLOW only. Peer doctrine build pending COACH activation (Cascade T2).",
      "ownership_grid_url": "https://retirementprotectors.github.io/toMachina/docs/warriors/musashi/cmo-ownership-grid.html"
    },
    {
      "id": "voltron",
      "emoji": "🦁",
      "name": "VOLTRON",
      "role": "CSO — Client Ops & QUE Registry",
      "tier_code": "T1",
      "tier_label": "T1 — Spawning",
      "doctrine_docs": {
        "have": 1,
        "total": 7
      },
      "git_activity_30d_commits": 80,
      "bilateral_channel": {
        "name": "#voltron",
        "id": "C0ARUP0HM1C"
      },
      "notes": "WORKFLOW only. Peer doctrine build pending COACH activation (Cascade T2).",
      "ownership_grid_url": "https://retirementprotectors.github.io/toMachina/docs/warriors/voltron/cso-ownership-grid.html"
    },
    {
      "id": "taiko",
      "emoji": "🥁",
      "name": "TAIKO",
      "role": "Comms Infrastructure",
      "tier_code": "T1",
      "tier_label": "T1 — Spawning",
      "doctrine_docs": {
        "have": 1,
        "total": 7
      },
      "git_activity_30d_commits": 41,
      "bilateral_channel": {
        "name": "#taiko",
        "id": "C0ASE72K458"
      },
      "notes": "WORKFLOW only. Peer doctrine build pending COACH activation (Cascade T2).",
      "ownership_grid_url": "https://retirementprotectors.github.io/toMachina/docs/warriors/taiko/ownership-grid.html"
    },
    {
      "id": "raiden",
      "emoji": "⚡",
      "name": "RAIDEN",
      "role": "Reactive Guardian — Triage & Fix",
      "tier_code": "T1",
      "tier_label": "T1 — Spawning",
      "doctrine_docs": {
        "have": 1,
        "total": 7
      },
      "git_activity_30d_commits": 2,
      "bilateral_channel": {
        "name": "#raiden",
        "id": "C0ARQHMP0P5"
      },
      "notes": "WORKFLOW only. Peer doctrine build pending COACH activation (Cascade T2).",
      "ownership_grid_url": null
    },
    {
      "id": "ronin",
      "emoji": "🗡️",
      "name": "RONIN",
      "role": "Sprint Build — FORGE Executor",
      "tier_code": "T1",
      "tier_label": "T1 — Spawning",
      "doctrine_docs": {
        "have": 1,
        "total": 7
      },
      "git_activity_30d_commits": 84,
      "bilateral_channel": {
        "name": "#ronin",
        "id": "C0ARUSZFKB8"
      },
      "notes": "WORKFLOW only. Peer doctrine build pending COACH activation (Cascade T2).",
      "ownership_grid_url": null
    }
  ],
  "tier_scale": {
    "T1": "Spawning (WORKFLOW only)",
    "T2": "Doctrine (WORKFLOW + ORCHESTRATION + 5 other canonical docs)",
    "T3": "Mesh (sub-warriors spawned in last 90d)",
    "T4": "Autonomous (AUTONOMOUS.md flag enabled)",
    "T5": "Mature (peer-spawns evidenced)"
  },
  "canonical_doctrine_docs": [
    "WORKFLOW",
    "ORCHESTRATION",
    "MEMORY_DISCIPLINE",
    "TAXONOMY",
    "RESPONSIBILITIES",
    "TEAM_PROTOCOL",
    "_INDEX"
  ],
  "lanes": [
    {
      "id": "architecture-cto",
      "emoji": "🥷",
      "title": "Architecture / CTO",
      "owner_warrior": "shinob1",
      "status": "covered",
      "description": "Discovery docs, hookify rules, ADRs, infra posture, WIF/IAM"
    },
    {
      "id": "data-ops-cio",
      "emoji": "🏯",
      "title": "Data Ops / CIO",
      "owner_warrior": "megazord",
      "status": "covered",
      "description": "ATLAS registry, wires, Rangers mesh, intake pipelines, ACF lifecycle"
    },
    {
      "id": "creative-cmo",
      "emoji": "⚔️",
      "title": "Creative / CMO",
      "owner_warrior": "musashi",
      "status": "covered",
      "description": "Brand, brochures, discovery docs, WordPress, Canva, MYST.AI"
    },
    {
      "id": "client-ops-cso",
      "emoji": "🦁",
      "title": "Client Ops / CSO",
      "owner_warrior": "voltron",
      "status": "covered",
      "description": "QUE registry, 5 Lions, MDJ panel, ProDashX conversational AI"
    },
    {
      "id": "comms-infrastructure",
      "emoji": "🥁",
      "title": "Comms Infrastructure",
      "owner_warrior": "taiko",
      "status": "covered",
      "description": "Twilio Voice/SMS, SendGrid, RPI Connect, A2P, DMARC, alerts"
    },
    {
      "id": "reactive-guardian",
      "emoji": "⚡",
      "title": "Reactive Guardian",
      "owner_warrior": "raiden",
      "status": "covered",
      "description": "Slack triage, bug classification, auto-fix ≤30min, P0 escalation"
    },
    {
      "id": "sprint-build-forge",
      "emoji": "🗡️",
      "title": "Sprint Build / FORGE",
      "owner_warrior": "ronin",
      "status": "covered",
      "description": "Discovery Doc → shipped PR, 11-step FORGE lifecycle, CI enforcement"
    },
    {
      "id": "legal-compliance",
      "emoji": "⚖️",
      "title": "Legal / Compliance",
      "owner_warrior": null,
      "status": "gap",
      "description": "Uncovered Surface"
    },
    {
      "id": "finance-cfo",
      "emoji": "💰",
      "title": "Finance / CFO",
      "owner_warrior": null,
      "status": "gap",
      "description": "Uncovered Surface"
    },
    {
      "id": "sales-operations",
      "emoji": "📈",
      "title": "Sales Operations",
      "owner_warrior": null,
      "status": "gap",
      "description": "Uncovered Surface — Vince owns human side"
    },
    {
      "id": "hr-onboarding",
      "emoji": "🏢",
      "title": "HR / Onboarding",
      "owner_warrior": null,
      "status": "gap",
      "description": "Uncovered Surface"
    }
  ],
  "cascade": [
    {
      "tier": "T1",
      "title": "Build SHINOB1",
      "status": "complete",
      "description": "Foundation audit 2026-05-17. All 7 canonical doctrine docs shipped. IAM posture + credential inventory done. Hookify rule-count CI running. ADR mechanism live. Gap-closure tactical plan authored. T3 tier confirmed — sub-warrior spawns evidenced (AUTHOR, RPM, DEX sub-CXOs)."
    },
    {
      "tier": "T2",
      "title": "SHINOB1 builds peer warriors via COACH",
      "status": "pending",
      "status_label": "Awaiting Sensei nod",
      "description": "SHINOB1 has the doctrine corpus and sub-warrior scaffolding to begin building MEGAZORD, MUSASHI, VOLTRON, TAIKO, RAIDEN, RONIN up to T2 level. Requires JDM to approve COACH activation. Each peer warrior needs: ORCHESTRATION, MEMORY_DISCIPLINE, TAXONOMY, RESPONSIBILITIES, TEAM_PROTOCOL, _INDEX (6 docs × 6 warriors = 36 docs)."
    },
    {
      "tier": "T3",
      "title": "Team builds platform foundation",
      "status": "blocked",
      "status_label": "Blocked on T2",
      "description": "Once peer warriors reach T2, coordinated build of missing platform surfaces: entitlement gating verification, E2E test expansion, feature flag infrastructure, per-tenant Firestore gates, mobile PWA polish, VOLTRON 82-tool audit. Estimated: 3-4 sprint cycles post-T2."
    },
    {
      "tier": "T4",
      "title": "Rebuild toMachina in fresh repo",
      "status": "blocked",
      "status_label": "Blocked on T3",
      "description": "Platform rebuild from proven foundation with clean architecture, WIF-only auth (no SA keys), per-tenant isolation baked in from day one, multi-agent FORGE scaffolding. This is the production-grade platform JDM described in architecture-honesty-2026-05-18. tM2 Phase Map + EPIC shipped as planning artifacts."
    }
  ],
  "gates": [
    {
      "number": 1,
      "phase": "Phase 1",
      "priority": "critical",
      "title": "WIF Phase 1 nod: scope-down mdj-agent@ SA permissions",
      "ask": "Approve replacing roles/editor + roles/firebase.admin with explicit minimum set (datastore.user, secretmanager.secretAccessor, run.invoker, logging.logWriter, firebaseauth.admin, storage.objectAdmin). SHINOB1 executes after nod.",
      "effort": "5 min review + nod → SHINOB1 closes CRITICAL #1 (Phase 1)"
    },
    {
      "number": 2,
      "priority": "critical",
      "title": "GoDaddy rotation: generate new API Key + Secret",
      "ask": "Login to GoDaddy Developer Portal → generate new Key + Secret → secure handoff to SHINOB1 → SHINOB1 runs steps 3-5 of the rotation plan → JDM revokes old key. Phase 1 GSM mount is done; this is the credential swap.",
      "effort": "10 min (Steps 1-2 + Step 6) → SHINOB1 closes CRITICAL #2 fully"
    },
    {
      "number": 3,
      "priority": "critical",
      "title": "MDJ_AUTH_SECRET plaintext scrub: cross-repo execution",
      "ask": "Plan is authored and landed (mdj-auth-secret-plaintext-scrub-2026-05-18.md). Execution requires touching mdj-agent/ repo + possibly .env files. SHINOB1 needs green light to execute the scrub across repos. No portal access needed from JDM — just the nod to proceed.",
      "effort": "2 min nod → SHINOB1 executes → CRITICAL #3 closed"
    },
    {
      "number": 1,
      "phase": "Phase 2",
      "priority": "critical",
      "title": "WIF OIDC provider choice + maintenance window",
      "ask": "Pick OIDC provider for keyless auth — SHINOB1 recommends Tailscale node identity (already verified, no new service to maintain). Pick maintenance window for cutover (mdj-agent briefly affected during swap). JDM said \"Tailscale\" 2026-05-18 — confirm + pick window.",
      "effort": "5 min decision → SHINOB1 closes CRITICAL #1 fully (Phase 2)"
    },
    {
      "number": 5,
      "priority": "high",
      "title": "COACH Activation: SHINOB1 → peer warrior build",
      "ask": "This is the T2 cascade gate. Sensei nod to activate SHINOB1 COACH mode — building MEGAZORD, MUSASHI, VOLTRON, TAIKO, RAIDEN, RONIN up to full T2 doctrine. Without this nod, peer warriors remain at T1 (WORKFLOW only) indefinitely.",
      "effort": "Strategic decision → unlocks T2 → T3 → T4 cascade"
    },
    {
      "number": 7,
      "priority": "high",
      "title": "Stop-event hook wiring: SHINOB1 heartbeat warn rule",
      "ask": "SCOPE-STOP-HOOK-001: wire a PostToolUse/Stop hook so the heartbeat warn rule fires on session end (not just on git push). SHINOB1 can build this solo — just needs confirmation it's in scope for Sprint 3.",
      "effort": "SHINOB1 solo, no JDM portal access needed → confirm scope"
    },
    {
      "number": 6,
      "priority": "tabled",
      "title": "DocuSign Integration Key bootstrap",
      "ask": "Login to DocuSign Admin → capture Integration Key + User ID + Account ID + production Base URI → secure handoff to SHINOB1. Tabled per JDM 2026-05-18. NOTE: 4 DocuSign secrets were mounted on tm-api deploy (PR #1441, 2026-05-29). Full bootstrap still needed for live e-sign flows.",
      "effort": "15 min when unblocked → HIGH #6 closed"
    }
  ],
  "recent_prs": [
    {
      "num": 1494,
      "title": "shinob1(SHIN-SHIPPED-REFS-COUNTER-OFFBYONE-TM-001): port counter off-by-one fix",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1494",
      "date": "2026-05-31"
    },
    {
      "num": 1493,
      "title": "shinob1(SHIN-SHIPPED-REFS-LENIENT-TM-001): port lenient shipped-refs regex from dojo-warriors",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1493",
      "date": "2026-05-31"
    },
    {
      "num": 1492,
      "title": "shinob1(SHIN-CI-KILL-RULE-COUNT-PARITY-001): kill EXPECTED_COUNT hard-coded parity check",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1492",
      "date": "2026-05-31"
    },
    {
      "num": 1490,
      "title": "shinob1(LLSG-107): candidate-new-rule DM — closes LL Suppression Gate sprint",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1490",
      "date": "2026-05-31"
    },
    {
      "num": 1489,
      "title": "shinob1(SHIN-CI-RULE-COUNT-BUMP-71): bump EXPECTED_COUNT 70→71",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1489",
      "date": "2026-05-31"
    },
    {
      "num": 1487,
      "title": "shinob1(SHIN-CI-DOJO-STATE-KILL-PUSH-TRIGGER): remove push trigger to break loop permanently",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1487",
      "date": "2026-05-31"
    },
    {
      "num": 1486,
      "title": "megazord(NAC-IPP-STATEMENT-SCHEMA-001): add statementSchema to NAC IPP — unblock Riesberg parity test",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1486",
      "date": "2026-05-31"
    },
    {
      "num": 1485,
      "title": "shinob1(SHIN-CI-NAC-SCHEMA-SKIP): skip NAC schema tests until data lands",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1485",
      "date": "2026-05-31"
    },
    {
      "num": 1484,
      "title": "shinob1(SHIN-CI-LL-LOCKFILE-FIX): regenerate root lockfile after LL workspace add",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1484",
      "date": "2026-05-31"
    },
    {
      "num": 1483,
      "title": "ronin(LLSG-105): LL backwash-sweep (audit-mode report)",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1483",
      "date": "2026-05-31"
    },
    {
      "num": 1482,
      "title": "shinob1(SHIN-CI-LL-IN-WORKSPACES): wire services/learning-loop into CI workspaces",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1482",
      "date": "2026-05-31"
    },
    {
      "num": 1480,
      "title": "shinob1(SHIN-CI-DOJO-STATE-LOOP-FIX): EMERGENCY break renderer self-trigger loop",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1480",
      "date": "2026-05-31"
    },
    {
      "num": 1454,
      "title": "ronin(LLSG-104): Learning Loop hookify-rule suppression gate (Phases 1-2)",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1454",
      "date": "2026-05-30"
    },
    {
      "num": 1453,
      "title": "shinob1(SHIN-WLG-FOUNDATION-UPDATE): document tonight's launcher foundation update",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1453",
      "date": "2026-05-30"
    },
    {
      "num": 1452,
      "title": "shinob1(ZRD-SCOPE-SYMPHONY-CUTOVER-001): Launcher → Symphony Cutover disco v1",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1452",
      "date": "2026-05-30"
    },
    {
      "num": 1450,
      "title": "shinob1(LLSG-DISCO-001): Learning Loop hookify-rule suppression gate — discovery doc",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1450",
      "date": "2026-05-30"
    },
    {
      "num": 1445,
      "title": "megazord(ZRD-FINANCIAL-MCP-V1): Financial MCP v1 discovery v2.0 — rpi-financial surfacing",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1445",
      "date": "2026-05-30"
    },
    {
      "num": 1441,
      "title": "shinob1(SHIN-DOCUSIGN-CICI-MOUNTS-001): mount 4 DocuSign secrets on tm-api deploy",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1441",
      "date": "2026-05-29"
    },
    {
      "num": 1306,
      "title": "shinob1(ZRD-EPIC-W2-LINK): hyperlink 3 Wave-2 cards to published blueprints",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1306",
      "date": "2026-05-27"
    },
    {
      "num": 1286,
      "title": "shinob1(TM2-EPIC-PHASE0-001): Phase 0 EPIC — the Global Map (JDM GO)",
      "url": "https://github.com/retirementprotectors/toMachina/pull/1286",
      "date": "2026-05-26"
    }
  ],
  "audits": [
    {
      "filename": "architecture-honesty-2026-05-18.md",
      "label": "Architecture Honesty (2026-05-18)",
      "url": "https://github.com/retirementprotectors/toMachina/blob/main/docs/warriors/shinob1/audits/architecture-honesty-2026-05-18.md"
    },
    {
      "filename": "credential-inventory-2026-05-18.md",
      "label": "Credential Inventory (2026-05-18)",
      "url": "https://github.com/retirementprotectors/toMachina/blob/main/docs/warriors/shinob1/audits/credential-inventory-2026-05-18.md"
    },
    {
      "filename": "doctrine-consolidation-plan-2026-05-18.md",
      "label": "Doctrine Consolidation Plan (2026-05-18)",
      "url": "https://github.com/retirementprotectors/toMachina/blob/main/docs/warriors/shinob1/audits/doctrine-consolidation-plan-2026-05-18.md"
    },
    {
      "filename": "doctrine-inventory-2026-05-18.md",
      "label": "Doctrine Inventory (2026-05-18)",
      "url": "https://github.com/retirementprotectors/toMachina/blob/main/docs/warriors/shinob1/audits/doctrine-inventory-2026-05-18.md"
    },
    {
      "filename": "docusign-companion-vars-2026-05-18.md",
      "label": "Docusign Companion Vars (2026-05-18)",
      "url": "https://github.com/retirementprotectors/toMachina/blob/main/docs/warriors/shinob1/audits/docusign-companion-vars-2026-05-18.md"
    },
    {
      "filename": "gap-closure-tactical-plan-2026-05-18.md",
      "label": "Gap Closure Tactical Plan (2026-05-18)",
      "url": "https://github.com/retirementprotectors/toMachina/blob/main/docs/warriors/shinob1/audits/gap-closure-tactical-plan-2026-05-18.md"
    },
    {
      "filename": "godaddy-rotation-plan-2026-05-18.md",
      "label": "GoDaddy Rotation Plan (2026-05-18)",
      "url": "https://github.com/retirementprotectors/toMachina/blob/main/docs/warriors/shinob1/audits/godaddy-rotation-plan-2026-05-18.md"
    },
    {
      "filename": "gsm-phase2-rewire-plan-2026-05-18.md",
      "label": "GSM Phase 2 Rewire Plan (2026-05-18)",
      "url": "https://github.com/retirementprotectors/toMachina/blob/main/docs/warriors/shinob1/audits/gsm-phase2-rewire-plan-2026-05-18.md"
    },
    {
      "filename": "iam-posture-2026-05-18.md",
      "label": "IAM Posture (2026-05-18)",
      "url": "https://github.com/retirementprotectors/toMachina/blob/main/docs/warriors/shinob1/audits/iam-posture-2026-05-18.md"
    },
    {
      "filename": "mdj-auth-secret-plaintext-scrub-2026-05-18.md",
      "label": "MDJ Auth Secret Plaintext Scrub Plan (2026-05-18)",
      "url": "https://github.com/retirementprotectors/toMachina/blob/main/docs/warriors/shinob1/audits/mdj-auth-secret-plaintext-scrub-2026-05-18.md"
    },
    {
      "filename": "plaintext-to-gsm-migration-plans-2026-05-18.md",
      "label": "Plaintext → GSM Migration Plans (2026-05-18)",
      "url": "https://github.com/retirementprotectors/toMachina/blob/main/docs/warriors/shinob1/audits/plaintext-to-gsm-migration-plans-2026-05-18.md"
    },
    {
      "filename": "wif-migration-plan-2026-05-18.md",
      "label": "WIF Migration Plan (2026-05-18)",
      "url": "https://github.com/retirementprotectors/toMachina/blob/main/docs/warriors/shinob1/audits/wif-migration-plan-2026-05-18.md"
    },
    {
      "filename": "foundation-audit-2026-05-17.html",
      "label": "Foundation Audit — Site (2026-05-17)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/foundation-audit-2026-05-17.html"
    },
    {
      "filename": "foundation-audit-2026-05-19.html",
      "label": "Foundation Audit — Site v2 (2026-05-19)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/foundation-audit-2026-05-19.html"
    },
    {
      "filename": "t3-surface-audit-shinob1-2026-05-19.html",
      "label": "T3 Surface Audit — SHINOB1 (2026-05-19)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/t3-surface-audit-shinob1-2026-05-19.html"
    },
    {
      "filename": "t4-foundation-audit.html",
      "label": "T4 Foundation Audit — Waves 0-3 (PR #1251)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/t4-foundation-audit.html"
    },
    {
      "filename": "t4-wave1-surface-inventory.html",
      "label": "T4 Wave 1 — Surface Inventory (PR #1251)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/t4-wave1-surface-inventory.html"
    },
    {
      "filename": "t4-wave2-cross-cuts.html",
      "label": "T4 Wave 2 — Cross-Cut Analysis (PR #1251)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/t4-wave2-cross-cuts.html"
    },
    {
      "filename": "t4-wave3-strategy.html",
      "label": "T4 Wave 3 — 24 Per-Surface Rebuild Plans (PR #1252)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/t4-wave3-strategy.html"
    },
    {
      "filename": "t4-wave4c-doc-sweep.html",
      "label": "T4 Wave 4C — 380-Artifact Doc Sweep (PR #1256)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/t4-wave4c-doc-sweep.html"
    },
    {
      "filename": "t4-wave4d-sequencing.html",
      "label": "T4 Wave 4D — Build Sequence (IRL-Team Ops Frame) (PR #1258)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/t4-wave4d-sequencing.html"
    },
    {
      "filename": "t4-wave4d-v2-build-sequence.html",
      "label": "T4 Wave 4D v2 — Build Sequence (Down-Mine + 6 Corrections) (PR #1259)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/t4-wave4d-v2-build-sequence.html"
    },
    {
      "filename": "tm2-phase-map.html",
      "label": "tM2 Phase Map — The Forward Plan (PR #1263)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/tm2-phase-map.html"
    },
    {
      "filename": "tm2-epic-phase0.html",
      "label": "tM2 Phase 0 EPIC — Global Map (PR #1286, JDM GO)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/tm2-epic-phase0.html"
    },
    {
      "filename": "sa-keys-security-discovery.html",
      "label": "SA Keys Security Discovery (ZRD)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/sa-keys-security-discovery.html"
    },
    {
      "filename": "multi-tenant-architecture-discovery.html",
      "label": "Multi-Tenant Firestore Architecture Discovery (ZRD-PLAT-MT-001)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/multi-tenant-architecture-discovery.html"
    },
    {
      "filename": "cto-mirror-dispatcher-discovery.html",
      "label": "CTO Mirror Dispatcher Discovery (ZRD-DISP-MIRROR)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/cto-mirror-dispatcher-discovery.html"
    },
    {
      "filename": "jason-moran-cto-partnership-discovery.html",
      "label": "Jason Moran × Agent X — Fractional CTO Partnership Pitch (PR #998)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/jason-moran-cto-partnership-discovery.html"
    },
    {
      "filename": "warrior-event-log-discovery.html",
      "label": "Warrior Event Log Discovery (ZRD-SYN-020, PR #347)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/warrior-event-log-discovery.html"
    },
    {
      "filename": "forge2-phase2-retro.html",
      "label": "FORGE 2.0 Phase 2 Retro (PR #873)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/forge2-phase2-retro.html"
    },
    {
      "filename": "structures-audit.html",
      "label": "Structures Audit — The Rebuild Brief (PR #1188)",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/structures-audit.html"
    },
    {
      "filename": "structures-required.html",
      "label": "Structures Required — Required Architecture Reference",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/structures-required.html"
    },
    {
      "filename": "pipeline-rundown.html",
      "label": "Pipeline Rundown — CI/CD State Reference",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/pipeline-rundown.html"
    },
    {
      "filename": "cto-ownership-grid.html",
      "label": "CTO Ownership Grid — SHINOB1 Surface Map",
      "url": "https://retirementprotectors.github.io/toMachina/docs/warriors/shinob1/cto-ownership-grid.html"
    }
  ],
  "footnote": {
    "description": "DOJO_STATE.html v3 — Manually audited + brought to current 2026-05-31 (SHIN-DOJO-STATE-AUDIT-TM-001). #catalogue expanded from 12 to 34 entries. Auto-renderer (render-dojo-state.sh) takes over on next scheduled run.",
    "rendering_sources": [
      "gh pr list",
      "find docs/warriors/shinob1",
      "git log",
      "channels.json (canonical — all bilateral IDs verified 2026-05-31)"
    ],
    "maintainer": "SHINOB1",
    "publishing": "GitHub Pages on merge"
  }
}
